15 research outputs found

    How Management Control Portfolios are Developed for Modularized ISD Projects

    Get PDF
    Information Systems Development projects often modularize the work by decomposing complex tasks to enable better management and control. While the objectives are noble, modularization itself can introduce interdependencies. Using the control theory perspective and leveraging case study research approach, we examine eight projects to unearth the four types of interdependencies in modularized Information Systems Development projects. Next, for the four types of interdependencies derived through the study, corresponding control portfolio is developed, making theoretical contributions and recommendations for practice

    Dependency-Aware Software Requirements Selection using Fuzzy Graphs and Integer Programming

    Full text link
    Software requirements selection aims to find an optimal subset of the requirements with the highest value while respecting the project constraints. But the value of a requirement may depend on the presence or absence of other requirements in the optimal subset. Such Value Dependencies, however, are imprecise and hard to capture. In this paper, we propose a method based on integer programming and fuzzy graphs to account for value dependencies and their imprecision in software requirements selection. The proposed method, referred to as Dependency-Aware Software Requirements Selection (DARS), is comprised of three components: (i) an automated technique for the identification of value dependencies from user preferences, (ii) a modeling technique based on fuzzy graphs that allows for capturing the imprecision of value dependencies, and (iii) an Integer Linear Programming (ILP) model that takes into account user preferences and value dependencies identified from those preferences to reduce the risk of value loss in software projects. Our work is verified by studying a real-world software project. The results show that our proposed method reduces the value loss in software projects and is scalable to large requirement sets.Comment: arXiv admin note: text overlap with arXiv:2003.0480

    Toward collisions produced in requirements rankings: A qualitative approach and experimental study

    Full text link
    Requirements prioritization is an important issue that determines the way requirements are selected and processed in software projects. There already exist specific methods to classify and prioritize requirements, most of them based on quantitative measures. However, most of existing approaches do not consider collisions, which are an important concern in large-scale requirements sets and, more specifically, in agile development processes where requirements have to be uniquely selected for each software increment. In this paper, we propose QMPSR (Qualitative Method for Prioritizing Software Requirements), an approach that features the prioritization of requirements by considering qualitative elements that are related to the project's priorities. Our approach highlights a prioritization method that has proven to reduce collisions in software requirements rankings. Furthermore, QMPSR improves accuracy in classification when facing large-scale requirements sets, featuring no scalability problems as the number of requirements increases. We formally introduce QMPSR and then define prioritization effort and collision metrics to carry out comprehensive experiments involving different sets of requirements, comparing our approach with well-known existing prioritization methods. The experiments have provided satisfactory results, overcoming existing approaches and ensuring scalabilityThis work was partially supported by the Spanish Government [grant number RTI2018-095255-B-I00 ] and the Madrid Research Council [grant number P2018/TCS-4314

    Survey on Safety Evidence Change Impact Analysis in Practice: Detailed Description and Analysis

    Get PDF
    Critical systems must comply with safety standards in many application domains. This involves gathering safety evidence in the form of artefacts such as safety analyses, system specifications, and testing results. These artefacts can evolve during a system’s lifecycle, and impact analysis might be necessary to guarantee that system safety and compliance are not jeopardised. Although extensive research has been conducted on impact analysis and on safety evidence management, the knowledge about how safety evidence change impact analysis is addressed in practice is limited. This technical report presents a survey targeted at filling this gap by analysing the circumstances under which safety evidence change impact analysis is addressed, the tool support used, and the challenges faced. We obtained 97 valid responses representing 16 application domains, 28 countries, and 47 safety standards. The results suggest that most projects deal with safety evidence change impact analysis during system development and mainly from system specifications, the level of automation in the process is low, and insufficient tool support is the most frequent challenge. Other notable findings are that safety case evolution should probably be better managed, no commercial impact analysis tool has been reported as used for all artefact types, and experience and automation do not seem to greatly help in avoiding challenges

    Analysis of requirements incompleteness using metamodel specification

    Get PDF
    Incompleteness of requirements has been treated as a huge challenge in software development projects. Since it is hard to obtain all required information before software design and implementation starts, the software modeling process may start with an incomplete requirements specification. In order to help analyzing the incompleteness in requirements, I propose a metamodel approach for detecting the missing requirements that are needed for constructing conceptual models for a software system, and implement it in MetaEdit+. The detected missing information in a conceptual model is reported in natural language, which is easy to understand. Furthermore, the conceptual modelers can identify the potential problems indicated by the report to analyze and update the model. The contribution of my thesis is twofold, i.e. analyzing the link between business rules and the ER models, and implementing a method to automatically detect and show the incompleteness in ER models

    Incorporation of models in automatic requirement dependencies detection

    Get PDF
    In this work, an approach to the automatic detection of dependencies in NL requirements is presented. The approach is based on an ontology containing knowledge defining dependency relations between requirements. In order to manage the requirements' information, NLP and ML algorithms are used

    Entwicklung eines Verfahrens zur Modellierung von Abhängigkeiten zwischen Modulen für die modulare Absicherung automatisierter Fahrfunktionen

    Get PDF
    Eine wesentliche Herausforderung beim automatisierten Fahren stellt die Gewährleistung der funktionalen Sicherheit dar. Die Entwicklung von Methoden zur Erbringung eines solchen validen Sicherheitsnachweises ist Teil des Forschungsprojekts UNICARagil. Im Rahmen dieses Projekts werden modulare und dienstorientierte automatisierte Fahrzeuge entwickelt, deren Architektur eine individuelle Erprobung und somit eine Abkehr von der Absicherung auf Gesamtsystemebene ermöglicht. Die individuelle Absicherung einzelner Module erfordert die Berücksichtigung der Abhängigkeiten zu anderen Modulen und zur Umgebung. In dieser Arbeit wird im ersten Schritt ein Verfahren zur Ermittlung und Darstellung von Abhängigkeiten hinsichtlich einer modularen Absicherung entwickelt. Dieses basiert auf einem Modellierungswerkzeug, welches für kritische Infrastrukturen entwickelt wurde. In einem iterativen Prozess wird die Systemarchitektur modelliert und das Abhängigkeitsnetz aufgebaut. Im zweiten Schritt dieser Arbeit wird ein Verfahren zur Definition von Testfällen auf Grundlage ermittelter Abhängigkeiten entwickelt, welches auf einem szenariobasierten Ansatz basiert. Mittels einer experten- und anforderungsbasierten Szenariogenerierung werden Testfälle für die ermittelten Abhängigkeiten erzeugt. Die Durchführung der Testfälle in der bestehenden Simulationsumgebung bestätigt die ermittelten Abhängigkeiten und deckt weitere unbekannte Abhängigkeiten auf

    Impact estimation: IT priority decisions

    Get PDF
    Given resource constraints, prioritization is a fundamental process within systems engineering to decide what to implement. However, there is little guidance about this process and existing IT prioritization methods have several problems, including failing to adequately cater for stakeholder value. In response to these issues, this research proposes an extension to an existing prioritization method, Impact Estimation (IE) to create Value Impact Estimation (VIE). VIE extends IE to cater for multiple stakeholder viewpoints and to move towards better capture of explicit stakeholder value. The use of metrics offers VIE the means of expressing stakeholder value that relates directly to real world data and so is informative to stakeholders and decision makers. Having been derived from prioritization factors found in the literature, stakeholder value has been developed into a multi-dimensional, composite concept, associated with other fundamental system concepts: objectives, requirements, designs, increment plans, increment deliverables and system contexts. VIE supports the prioritization process by showing where the stakeholder value resides for the proposed system changes. The prioritization method was proven to work by exposing it to three live projects, which served as case studies to this research. The use of the extended prioritization method was seen as very beneficial. Based on the three case studies, it is possible to say that the method produces two major benefits: the calculation of the stakeholder value to cost ratios (a form of ROI) and the system understanding gained through creating the VIE table

    An Architecture-based Approach for Change Impact Analysis of Software-intensive Systems

    Get PDF
    A main property of software-intensive technical systems is sustainability. Sustainable systems need to change continuously. A change to a system element can result in further changes to other system elements. If these elements originate from different domains, the change can also propagate between several domains. This book presents an architecture-based approach to change propagation analysis of software-intensive technical systems that considers heterogeneous elements from different domain

    An Architecture-based Approach for Change Impact Analysis of Software-intensive Systems

    Get PDF
    Die vorliegende Dissertation präsentiert eine automatische domänenübergreifende Wartbarkeitsanalyse basierend auf der Architektur der Systeme, in deren Entwicklung und Evolution verschiedene Domänen zusammenarbeiten müssen. Eine der integralen Eigenschaften software-intensiver technischer Systeme ist ihre Langlebigkeit. Langlebige Systeme unterliegen kontinuierlichen Anpassungen aufgrund externer Änderungen, wie Änderungen ihrer Umgebung, oder auch interner Änderungen, wie zum Beispiel Fehlerbeseitigungen. Die Eigenschaft des Systems, die angibt, welcher Aufwand erforderlich ist, um ein System gemäß eines gegebenen Änderungsszenarios zu ändern, wird als Wartbarkeit bezeichnet. Somit ist Wartbarkeit ein wichtiges Qualitätsattribut langlebiger Systeme. Eine initiale Änderung an einem Element im System kann weitere Änderungen an anderen Systemelementen zur Folge haben. Stammen die betroffenen Systemelemente aus mehreren Domänen, wie zum Beispiel aus den Domänen der Informationssysteme, Geschäftsprozesse oder automatisierten Produktionssysteme, können sich die Änderungen auch über mehrere Domänen hinweg mit Abhängigkeiten in alle Richtungen ausbreiten. Ein automatisiertes Produktionssystem kann zum Beispiel aus mechanischen und elektrischen Bauteilen, sowie Steuerungssoftware bestehen. Eine Änderung an mechanischen und/oder elektrischen Bauteilen, wie zum Beispiel Sensoren, kann zu Folgeänderungen in der entsprechenden Steuerungssoftware führen. Zudem gibt es viele unterschiedliche Möglichkeiten, wie eine Änderungsanfrage in einem System umgesetzt werden kann. Verschiedene Möglichkeiten zur Umsetzung einer Änderungsanfrage können zu verschiedenen Änderungsaufwänden, sowie unterschiedlichen Systemen bezüglich ihrer Qualitätsattribute führen. Das Abschätzen der Änderungsfolgen hat deshalb besondere Relevanz im Entscheidungsprozess. Jedoch können manuelle Änderungsabschätzungen mit hohem Zeit- und Kostenaufwand verbunden sein. Somit kann eine automatische und domänenübergreifende Änderungsausbreitungsanalyse vor der Umsetzung einer Änderungsanfrage die Vorhersage der Änderungsaufwände und den Entscheidungsfindungsprozess zu deren Umsetzung unterstützen. Eine Möglichkeit zur automatischen Änderungsausbreitungsanalyse ist ein modell-, sowie szenariobasierter Ansatz zur Wartbarkeitsabschätzung, der Systeme aus mehreren Domänen berücksichtigt. Jedoch konzentrieren sich bestehende modellbasierte und szenariobasierte Ansätze meist auf die Änderungsausbreitung in einer Domäne und vernachlässigen Änderungsaufwände der Elemente aus Domänen, die in einer gegenseitigen Abhängigkeitsbeziehung zur betrachteten Domäne stehen. Dies führt zu einer unzureichenden Abschätzung der Änderungsauswirkungen. Die vorliegende Dissertation stellt eine generische Methode für eine automatische und domänenübergreifende Änderungsausbreitungsanalyse vor. Durch die Instanziierung der generischen Methode in verschiedenen Domänen kann ein vollständiger Ansatz zur automatischen Änderungsausbreitungsanalyse in der jeweiligen Domäne erstellt werden. Somit hat die generische Methode zum Ziel, den Entwicklungsprozess einer modellbasierten Änderungsausbreitungsanalyse durch die Wiederverwendung von bestehenden Konzepten zu verbessern. Die generische Methode basiert auf dem Karlsruhe Architectural Maintainability Prediction (KAMP) Ansatz zur Änderungsausbreitungsanalyse in Informationssystemen. Weitere Beiträge dieser Dissertation können wie folgt zusammengefasst werden: i) Software-Systeme sind integrale Bestandteile der Geschäftsprozesse moderner Unternehmen. Daher beeinflussen sich Software-Systeme und Geschäftsprozesse gegenseitig während der Evolution. Angesichts komplexer gegenseitiger Beeinflussung bietet der Ansatz als eine Instanz der generischen Methode und eine Erweiterung des KAMP-Ansatzes eine automatische Änderungsausbreitungsanalyse in den sich gegenseitig beeinflussenden Domänen der Informationssysteme und der Geschäftsprozesse. ii) Basierend auf Metamodellen zur Darstellung von mechanischen und elektrischen Teilen, als auch der Steuerungssoftware im Standard IEC 61131-3 für speicherprogrammierbare Steuerungen wurde ein weiterer Ansatz (ebenfalls als eine Instanziierung der generischen Methode) für die Domänen der automatisierten Produktionssysteme entwickelt. Mit dem Ansatz ist es möglich Änderungen über Systemelemente aus mehreren Sub-Domänen von automatisierten Produktionssystemen zu verfolgen, um eine umfassende Liste von Wartbarkeitsaufwänden zu erstellen. iii) Die Änderungsauslöser können sich entweder auf Architekturmodellebene oder auf Anforderungsebene befinden. Basierend auf Modellen zur Erfassung von Anforderungen und Entwurfsentscheidungen in der Domäne der Informationssysteme, Geschäftsprozesse, sowie automatisierten Produktionssysteme wurden die bestehenden Instanzen der generischen Methode zur Berücksichtigung von Anforderungsänderungen erweitert. Somit ergänzt dieser Beitrag die bisherigen Beiträge bezüglich der domänen-spezifischen Änderungsausbreitungsanalysen. iv) Die Änderungsausbreitung in den Instanzen der Methode wird durch Änderungsausbreitungsregeln betrachtet. Hierzu wurde eine domänenspezifische Sprache zum Beschreiben der häufig benutzten Änderungsausbreitungsregeln zur besseren Lesbarkeit der Regeln sowie zur Vermeidung von technischem Code vorgestellt. v) Weiter wurde ein mehrdimensionales Kategorisierungsschema für die Änderungsauslöser in Geschäftsprozessen basierend auf den Ergebnissen einer umfassenden Literaturrecherche vorgestellt. Die Beiträge dieser Dissertation zur automatischen Änderungsausbreitungsanalyse wurden anhand von Fallstudien in der jeweiligen Domäne evaluiert. Für jede Fallstudie wurde die Genauigkeit der Ergebnisse des jeweiligen Ansatzes im Vergleich zu manuell erstellten Ergebnissen angegeben. Zudem wurde die Aufwandsersparnis durch eine automatische Änderungsausbreitungsanalyse anhand des Vergleichs zweier Metriken gezeigt: i) Die erste Metrik repräsentiert die Rate der Anzahl der tatsächlich zu ändernden Modellelemente zur Anzahl der gesamten Modellelemente. ii) Die zweite Metrik repräsentiert die Rate der Anzahl der vom Ansatz vorgeschlagenen Modellelemente zur Anzahl der gesamten Modellelemente. Für die Validierung des Ansatzes zur automatischen Änderungsausbreitungsanalyse in den Domänen der Informationssysteme und der Geschäftsprozesse wurde basierend auf den Ergebnissen der systematischen Literaturrecherche zur Ermittlung der Änderungsauslöser in Geschäftsprozessen repräsentative Änderungsauslöserklassen identifiziert. Diese repräsentativen Änderungsauslöserklassen wurden jeweils auf die Community-Fallstudien "Common Component Modeling Example (CoCoME)" und "modular Rice University Bidding System (mRUBiS)" angewendet. Für die externe Validität der Methode wurde die Domäne der automatisierten Produktionssysteme betrachtet. Hierzu wurde die Instanz der Methode zur automatischen Änderungsausbreitungsanalyse in der Domäne der automatisierten Produktionssysteme auf die Community-Fallstudie "extended Pick and Place Unit (xPPU)" angewendet. Die betrachtete Anlage beinhaltet die elektrischen und mechanischen Bauteile sowie die Steuerungssoftware im Standard IEC 61131-3 für speicherprogrammierbare Steuerungen
    corecore