1,257 research outputs found

    Expert Elicitation for Reliable System Design

    Full text link
    This paper reviews the role of expert judgement to support reliability assessments within the systems engineering design process. Generic design processes are described to give the context and a discussion is given about the nature of the reliability assessments required in the different systems engineering phases. It is argued that, as far as meeting reliability requirements is concerned, the whole design process is more akin to a statistical control process than to a straightforward statistical problem of assessing an unknown distribution. This leads to features of the expert judgement problem in the design context which are substantially different from those seen, for example, in risk assessment. In particular, the role of experts in problem structuring and in developing failure mitigation options is much more prominent, and there is a need to take into account the reliability potential for future mitigation measures downstream in the system life cycle. An overview is given of the stakeholders typically involved in large scale systems engineering design projects, and this is used to argue the need for methods that expose potential judgemental biases in order to generate analyses that can be said to provide rational consensus about uncertainties. Finally, a number of key points are developed with the aim of moving toward a framework that provides a holistic method for tracking reliability assessment through the design process.Comment: This paper commented in: [arXiv:0708.0285], [arXiv:0708.0287], [arXiv:0708.0288]. Rejoinder in [arXiv:0708.0293]. Published at http://dx.doi.org/10.1214/088342306000000510 in the Statistical Science (http://www.imstat.org/sts/) by the Institute of Mathematical Statistics (http://www.imstat.org

    Understanding requirements dependency in requirements prioritization: a systematic literature review

    Get PDF
    Requirement prioritization (RP) is a crucial task in managing requirements as it determines the order of implementation and, thus, the delivery of a software system. Improper RP may cause software project failures due to over budget and schedule as well as a low-quality product. Several factors influence RP. One of which is requirements dependency. Handling inappropriate handling of requirements dependencies can lead to software development failures. If a requirement that serves as a prerequisite for other requirements is given low priority, it affects the overall project completion time. Despite its importance, little is known about requirements dependency in RP, particularly its impacts, types, and techniques. This study, therefore, aims to understand the phenomenon by analyzing the existing literature. It addresses three objectives, namely, to investigate the impacts of requirements dependency on RP, to identify different types of requirements dependency, and to discover the techniques used for requirements dependency problems in RP. To fulfill the objectives, this study adopts the Systematic Literature Review (SLR) method. Applying the SLR protocol, this study selected forty primary articles, which comprise 58% journal papers, 32% conference proceedings, and 10% book sections. The results of data synthesis indicate that requirements dependency has significant impacts on RP, and there are a number of requirements dependency types as well as techniques for addressing requirements dependency problems in RP. This research discovered various techniques employed, including the use of Graphs for RD visualization, Machine Learning for handling large-scale RP, decision making for multi-criteria handling, and optimization techniques utilizing evolutionary algorithms. The study also reveals that the existing techniques have encountered serious limitations in terms of scalability, time consumption, interdependencies of requirements, and limited types of requirement dependencies

    Integrating requirements prioritization and selection into goal models

    Get PDF
    Requirements engineering is the first main activity in software development process. It must address the individual goals of the organization. The inadequate, inconsistent, incomplete and ambiguous requirements are main obstacles on the quality of software systems. Goal Oriented Requirements Engineering (GORE) starts with abstracts high level goals. These goals are refined to lower levels until they are assignable to agents. During GORE analysis, decisions need to be made among alternatives at various positions. Decisions involve different stakeholders which may contradict with each other based on certain criteria. In the context of GORE, the support for identifying and managing the criteria for requirements selection process is required. The criteria are based on stakeholders needs and preferences and therefore stakeholders opinions need to be involved in selection process. It helps to identify the importance of requirement according to stakeholders understandings and needs. It also helps in the understanding of interaction between system and stakeholders (stakeholders involvement in making important decisions) and by documenting the stakeholder preferences early in GORE, helps to identify inconsistencies early in the requirements engineering. Software quality requirements are essential part for the success of software development. Defined and guaranteed quality in software development requires identifying, refining, and predicting quality properties by appropriate means. Goal models and quality models are useful for modelling of functional goals as well as for quality goals. This thesis presents the integration of goal models with quality models, which helps to involve stakeholders opinions and the representation of dependencies among goals and quality models. The integration of goal models and quality models helps in the derivation of customized quality models. The integrated goal-quality model representing the functional requirements and quality requirements is used to rank each functional requirement arising from functional goals and quality requirement arising from quality goals. Triangular Fuzzy Numbers (TFN) are used to represent stakeholder opinions for prioritizing requirements. By defuzzification process on TFN, stakeholders opinions are quantified. TFN and defuzzification process is also used to prioritize the identified relationships among functional and non-functional requirements. In the last step development constraints are used to re-prioritize the requirements. After final prioritization, a selection algorithm helps to select the requirements based on benefit over cost ratio. The algorithm makes sure that maximum number of requirements are selected while fulfilling the upper cost limit. Thus the whole process helps in the selection of requirements based on stakeholders opinions, goal-quality models interaction and development constraints. The thesis also presents an integrative model of influence factors to tailor product line development processes according to different project needs, organizational goals, individual goals of the developers or constraints of the environment. Tailoring is realized with prioritized attributes, with which the resulting elements of the product, process and project analysed are ranked. An integrative model for the description of stakeholder needs and goals in relation to the development process artefacts and the development environment specifics is needed, to be able to analyse potential influences of changing goals early in the project development. The proposed tailoring meta-model includes goal models, SPEM models and requirements to development processes. With this model stakeholder specific goals can be used to support binding a variable part of the development process. This support addresses soft factors as well as concrete requirements.Requirements Engineering ist der erste Schritt im Softwareentwicklungsprozess. Er dient zur Aufnahme organisationsabhängiger Ziele und Anforderungen. Unangemessene, inkonsistente, unvollständige oder mehrdeutige Anforderungen können die Qualität von Softwaresystem stark negativ beeinflussen. Goal Oriented Requirements Engineering (GORE) beginnt mit der Entwicklung von übergeordneter Zielen, welche in weiteren Entwicklungsstufen verfeinert werden, bis sie einer verantwortlichen Person zugewiesen werden können. Während einer GORE Analyse werden an verschiedenen Stellen Entscheidungen über Alternativen getroffen. Diese Entscheidungen betreffen unterschiedliche Akteure, die sich in ihren Ansichten widersprechen können. Im Rahmen von GORE wird die Unterstützung zur Identifizierung und Verwaltung von Kriterien zur Auswahl von Anforderungen benötigt. Diese Kriterien basieren auf den Vorstellungen und Vorlieben von Stakeholdern, daher ist eine Integration aller Stakeholder in den Auswahlprozess erforderlich. Dies soll dabei helfen, die Bedeutung bestimmter Anforderungen auf Basis der betroffenen Personen zu identifizieren und aufzuarbeiten. Darüber hinaus hilft GORE bei der Kommunikation zwischen System und Akteuren durch ihren Einbezug in wichtige Entscheidungen. Durch frühzeitige Dokumentation des tatsächlichen Stakholderbedarfs können Inkonsistenzen im Requirements Engineering frühzeitig ermittelt werden. Die Bestimmung von Software Qualitätsmerkmalen ist wesentlicher Erfolgsfaktor in der Software Entwicklung. Zur Gewährleistung einer qualitativen Softwareentwicklung und eines entsprechenden Produktes sind die Identifizierung, die Verfeinerung und die Vorhersage von Qualitätseigenschaften jederzeit durch geeignete Maßnahmen erforderlich. Goal Models und Quality Models sind wertvolle Werkzeuge zur Ermittlung und Modellierung funktionaler und nicht-funktionaler Anforderungen und Ziele. Diese Arbeit enthält einen Lösungsansatz zur Integration von Goal Models und Quality Models, der dazu beitragen soll, Stakeholder und Abhängigkeiten zwischen Goal und Quality Models einzubeziehen und sichtbar zu machen. Die Integration von Goal Models und Quality Models soll zur Ableitung spezifischer Quality Models beitragen. Somit kann das integrierte Goal-Quality Model, welches die funktionalen Anforderungen und die Qualitätsanforderungen vereint, zur Priorisierung aller funktionalen Anforderung, die sich aus den funktionalen Zielen ergeben, und aller Qualitätsanforderungen, die aus Qualitätszielen resultieren, dienen. Zur Priorisierung der Anforderung auf Basis der Stakeholderbedarfe werden Triangular Fuzzy Numbers (TFN) verwendet. Nach der endgültigen Priorisierung dient ein spezieller Algorithmus zur Einschätzung und Auswahl der Anforderungen auf Basis einer Kosten-Nutzen-Analyse. Dieser Algorithmus stellt sicher, dass unter Einhaltung einer von der Organisation gewählten Kostenobergrenze die maximale Anzahl der Anforderungen umgesetzt werden kann. Der gesamte Prozess dient demnach zur Anforderungsanalyse unter Berücksichtigung verschiedener Interessengruppen, Abhängigkeiten, sowie durch den Einbezug von Grenzen, die sich beim Zusammenspiel von Goal-Quality Models und der Softwareentwicklung ergeben können. Darüber hinaus enthält die Arbeit ein integratives Modell, um Entwicklungsprozesse während der Erstellung von Produktlinien an Einflussfaktoren, wie Projektbedürfnisse, Organisationsziele, individuelle Ziele von Entwicklern oder an Umweltbedingungen anzupassen. Dieses sogenannte Tailoring wird durch Priorisierung von Attributen erreicht, welche verschiedene Elemente des zu erzeugende Produktes, des Prozesses oder des Projektes analysieren und nach Bedeutung sortieren. Ein integratives Modell zur Beschreibung von Stakeholderbedürfnissen und -zielen in Bezug auf die Artefakte des Entwicklungsprozesses und die Besonderheiten einer Entwicklungsumgebung wird benötigt, um potenzielle Einflüsse sich verändernder Ziele frühzeitig während der Projektentwicklung zu analysieren. Das hier vorgestellte Tailoring-Meta-Model beinhaltet Goal-Models, SPEM Models und Requirements hinsichtlich Entwicklungsprozesse. Mithilfe dieses Modells können stakeholderspezifische Ziele dazu verwendet werden, um einen variablen Teil eines Entwicklungsprozesses projektbezogen zu gestalten. Auf diese Weise können weiche Faktoren genauso integriert werden, wie konkrete Anforderungen

    Requirements Prioritization Techniques for Global Software Engineering

    Get PDF
    Increase in globalization of the industry of software requires an exploration of requirements engineering (RE) in software development institutes at multiple locations. Requirements engineering task is very complicated when it is performed at single site, but it becomes too much complex when stakeholder groups define well-designed requirements under language, time zone and cultural limits. Requirements prioritization (RP) is considered as an imperative part of software requirements engineering in which requirements are ranked to develop best-quality software. In this research, a comparative study of the requirements prioritization techniques was done to overcome the challenges initiated by the corporal distribution of stakeholders within the organization at multiple locations. The objective of this study was to make a comparison between five techniques for prioritizing software requirements and to discuss the results for global software engineering. The selected techniques were Analytic Hierarchy Process (AHP), Cumulative Voting (CV), Value Oriented Prioritization (VOP), Binary Search Tree (BST), and Numerical Assignment Technique (NAT). At the end of the research a framework for Global Software Engineering (GSE) was proposed to prioritize the requirements for stakeholders at distributed locations

    AHP based Optimal Reasoning of Non-functional Requirements in the i∗ Goal Model

    Get PDF
    Goal-Oriented Requirements Engineering (GORE) has been found to be a valuable tool in the early stages of requirements engineering. GORE plays a vital role in requirements analysis like alternative design/ goal selection during decision-making. The decision-making process of alternative design/ goal selection is performed to assess the practicability and value of alternative approaches towards quality goals. Majority of the GORE models manage alternative selection based on qualitative approach, which is extremely coarse-grained, making it impossible for separating two alternatives. A few works are based on quantitative alternative selection, yet this does not provide a consistent judgement on decision-making. In this paper, Analytic Hierarchy Process (AHP) is modified to deal with the evaluation of selecting the alternative strategies of inter-dependent actors of i∗ goal model. The proposed approach calculates the contribution degrees of alternatives to the fulfilment of top softgoals. It is then integrated with the normalized relative priority values of top softgoals. The result of integration helps to evaluate the alternative options based on the requirements problem against each other. To clarify the proposed approach, a simple telemedicine system is considered in this paper

    Model and Technique over Software Requirement Prioritization

    Get PDF
    Requirement prioritization play a significant part in overcoming problems related to requirements and it use to increase customer satisfaction. Requirement prioritization is use to verify the correct functionality of product and guarantee that the software is built within the given constrains, like budget, cost, value, time and etc. Requirements prioritization reliant on the specific requirements of customer along with prediction of importance and cost of each requirements. The approaches proposed in modern days to prioritize requirements have not been widely used because of its complexity, its inconsistency and its time-consuming factor. This paper represents an analysis on obtainable prioritization techniques based on cost and benefit and drawbacks evaluation of requirements. This paper represents a new approach of requirement prioritization, which can be easily managed, implemented and used as decision-making device by decision maker for requirement prioritization. It also overcomes the drawback of existing requirement approaches. The results of newly proposed approach shows thatproposed model for requirement prioritization is simple and is useful for more refined critical decisions of prioritization, keeping in view the cost and benefit

    An Approach for Integrating the Prioritization of Functional and Nonfunctional Requirements

    Get PDF
    Due to the budgetary deadlines and time to market constraints, it is essential to prioritize software requirements. The outcome of requirements prioritization is an ordering of requirements which need to be considered first during the software development process. To achieve a high quality software system, both functional and nonfunctional requirements must be taken into consideration during the prioritization process. Although several requirements prioritization methods have been proposed so far, no particular method or approach is presented to consider both functional and nonfunctional requirements during the prioritization stage. In this paper, we propose an approach which aims to integrate the process of prioritizing functional and nonfunctional requirements. The outcome of applying the proposed approach produces two separate prioritized lists of functional and non-functional requirements. The effectiveness of the proposed approach has been evaluated through an empirical experiment aimed at comparing the approach with the two state-of-the-art-based approaches, analytic hierarchy process (AHP) and hybrid assessment method (HAM). Results show that our proposed approach outperforms AHP and HAM in terms of actual time-consumption while preserving the quality of the results obtained by our proposed approach at a high level of agreement in comparison with the results produced by the other two approaches

    A survey on preferences of quality attributes in the decision-making for self-adaptive systems:The bad, the good and the ugly

    Get PDF
    Different techniques have been used to specify preferences for quality attributes and decision-making strategies of self-adaptive systems (SAS). These preferences are defined during requirement specification and design time. Further, it is well known that correctly identifying the preferences associated with the quality attributes is a major difficulty. This is exacerbated in the case of SAS, as the preferences defined at design time may not apply to contexts found at runtime. This paper aims at making an exploration of the research landscape that have addressed decision-making and quality attribute preferences specification for selfadaptation, in order to identify new techniques that can improve the current state-of-the-art of decision-making to support self-adaptation. In this paper we (1) review different techniques that support decisionmaking for self-adaptation and identify limitations with respect to the identification of preferences and weights (i.e. the research gap), (2) identify existing solutions that deal with current limitations
    corecore