152,221 research outputs found

    A requirements-based software process maturity model

    Get PDF
    The requirements phase of software development is an on-going problem for the software engineering community. The many disparate recommendations and best practices found in the literature make it difficult for software organisations to recognise which practices apply to their individual needs. The aim of this thesis is to pull together key solutions into a framework that allows practitioners to assess where their requirements process needs strengthening and to provide a means in which improvements can be achieved. In this thesis I show how I design, develop and validate a model of requirements engineering processes. This requirements capability maturity model (R-CMM) adheres to the characteristics of the Software Engineering Institute's Software Capability Maturity Model (SW-CMM) and is designed to take practitioners from an immature process capability through to an advanced capability. I contribute to the body of knowledge in both software process improvement and requirements engineering (RE) by providing rigorous detail of how a process maturity framework is developed to support RE practices. The model is generic and should apply to many software development organisations. The R-CMM guides users towards a view of RE that is based on goals and is problem driven. The SW-CMM framework is transformed into a simplified model that relates goals and problems to individual RE practises

    A CMMI-compliant requirements management and development process

    Get PDF
    Requirements Engineering has been acknowledged an essential discipline for Software Quality. Poorly-defined processes for eliciting, analyzing, specifying and validating requirements can lead to unclear issues or misunderstandings on business needs and project’s scope. These typically result in customers’ non-satisfaction with either the products’ quality or the increase of the project’s budget and duration. Maturity models allow an organization to measure the quality of its processes and improve them according to an evolutionary path based on levels. The Capability Maturity Model Integration (CMMI) addresses the aforementioned Requirements Engineering issues. CMMI defines a set of best practices for process improvement that are divided into several process areas. Requirements Management and Requirements Development are the process areas concerned with Requirements Engineering maturity. Altran Portugal is a consulting company concerned with the quality of its software. In 2012, the Solution Center department has developed and applied successfully a set of processes aligned with CMMI-DEV v1.3, what granted them a Level 2 maturity certification. For 2015, they defined an organizational goal of addressing CMMI-DEV maturity level 3. This MSc dissertation is part of this organization effort. In particular, it is concerned with the required process areas that address the activities of Requirements Engineering. Our main goal is to contribute for the development of Altran’s internal engineering processes to conform to the guidelines of the Requirements Development process area. Throughout this dissertation, we started with an evaluation method based on CMMI and conducted a compliance assessment of Altran’s current processes. This allowed demonstrating their alignment with the CMMI Requirements Management process area and to highlight the improvements needed to conform to the Requirements Development process area. Based on the study of alternative solutions for the gaps found, we proposed a new Requirements Management and Development process that was later validated using three different approaches. The main contribution of this dissertation is the new process developed for Altran Portugal. However, given that studies on these topics are not abundant in the literature, we also expect to contribute with useful evidences to the existing body of knowledge with a survey on CMMI and requirements engineering trends. Most importantly, we hope that the implementation of the proposed processes’ improvements will minimize the risks of mishandled requirements, increasing Altran’s performance and taking them one step further to the desired maturity level

    How can Software Packages Certification Improve Software Process

    Get PDF
    Popular software assessment models such as CMM, BOOTSTRAP, SPICE or ISO 9000 ignore the impact of software product certification on software quality. The first standard for software product quality was German DIN 66285. Based on this standard, the ISO developed a international standard for quality requirements and testing procedures for software packages: ISO/IEC 12119. This paper presents our experience with classical testing models based on ISO/IEC 12119 and DIN 66285 and with our improved model, called the cooperative model of testing. With this model we can achieve improvements in testing of efficiency and software production process. Practical experience shows that the roles of all parties in the testing process have changed. Knowledge transfer between the testing laboratory and supplier depends on supplier\u27s maturity level

    A Vision of DevOps Requirements Change Management Standardization

    Full text link
    DevOps (development and operations) aims to shorten the software development process and provide continuous delivery with high software quality. To get the potential gains of DevOps, the software development industry considering global software development (GSD) environment to hire skilled human resources and round-the-clock working hours. However, due to the lack of frequent communication and coordination in GSD, the planning and managing of the requirements change process becomes a challenging task. As in DevOps, requirements are not only shaped by development feedback but also by the operations team. This means requirements affect development, development affects operations and operations affect requirements. However, DevOps in GSD still faces many challenges in terms of requirement management. The purpose of this research project is to develop a DevOps requirement change management and implementation maturity model (DevOps-RCMIMM) that could assist the GSD organizations in modifying and improving their requirement management process in the DevOps process. The development of DevOps-RCMIMM will be based on the existing DevOps and RCM literature, industrial empirical study, and understanding of factors that could impact the implementation of the DevOps requirement change management process in the domain of GSD. This vision study presents the initial results of a systematic literature review that will contribute to the development of maturity levels of the proposed DevOps-RCMIMM

    Enhancement in V- model for Component Based Development

    Get PDF
    In Component based software development, one of the commonly used methodology is V-shaped development model. The focus of this study was to enlighten the major drawbacks of an existing immature change controlling and up grading mechanism in V-model for Component based software development projects.  In previous model approach, if any change request occurs from customer or by any means while developing the system, the process has to be re-started from scratch. Secondly, the up gradation mechanism for developed and implemented system after deployment is improper. While having these lacks, extra cost, time and other resource are not saved. In this study, a new agent-based approach is introduced that implements a continuous monitoring and collaboration activities with all phases of development during the whole project life cycle. This strategy covers the gaps of this model efficiently regarding software quality assurance, time saving and it provides proper support to meet new change requirements during and after the software development. This addition not only extends the acceptability and maturity of this model to accomplish complex projects in time but also makes the deliverable more accurate. Keywords: Component based development, Up-gradation mechanis

    BIM communication waste

    Get PDF
    Developments in Information and Communication Technology can bring about significant improvements in the efficiency of the Architecture, Engineering and Construction and Facilities Management industry. Building Information Modelling (BIM), is a term which encompasses a type of software but more importantly a set of processes which, at their core, support an approach for integrated project delivery enabled by interoperable software systems. The last three years have seen intensified and coordinated adoption of BIM in the UK mainly as a result of the mandate of the UK government. One facet of these developments is the growing need for BIM collaboration tools which can interoperate effectively with the various BIM software systems, support the required standards and codes of practice and provide for requirements of construction project information production and management such as model-based workflows, model-based communication, model-based procurement, role-based data access and role-based privileges. The pre-requisites for collaboration can be broadly divided into two categories: (1) coordination of information and responsibilities, and (2) communication. This research recognizes the strong focus of recent and ongoing efforts to provide for coordination and aims to support the communication aspect. Additionally, successful collaborative practice results from (1) the "softer" or "human-aspect" issues: collaborative culture, software training and adherence to protocols as well as from (2) the provision of appropriate, intuitive and configurable collaboration tools and, more generally, digital collaboration environments. This research focuses on the latter. Despite efforts from a variety of software-as-a-service (SaaS) collaboration tool vendors to achieve dominance in the market, there is still uncertainty as to what type of solutions would best support BIM collaboration. Additionally, there is considerable variation in software configurations and a lack of a universally applicable method for evaluating the communication capabilities of BIM collaboration tools in a meaningful way. Vendors lack a robust conceptual framework to guide the long-term development of their tools and evaluate them. The process of requirements engineering, which in this context involves a diversity of stakeholders and involves projects at different BIM maturity levels would benefit significantly from a robust, context-specific conceptual model-ontology. The aim of this research is to produce a context-specific conceptual model-ontology which can support the discourse of requirements engineering and provide a robust and widely applicable framework for evaluating the communication capabilities of BIM collaboration tools. It is anticipated that this would help reduce BIM communication waste . To meet this aim, BIM collaboration tools were studied from five perspectives: 1.Users: their opinions, requirements and requests were collected through an online questionnaire survey. 2.Vendor: their perspective was captured through semi-structured interviews. 3.Schemata for interoperability: effectiveness of tools and schemata was evaluated through analysis of software by data fidelity study and scenario-based testing. 4.Tool use: patterns of digitally-enabled communication were explored through an analysis of communication data and meta-data collected from a collaboration tool. 5.Tool improvement: a successful approach in improving a collaboration tool was examined through the development of a context-specific requirements engineering process. This process was evaluated through semi-structured interviews with collaboration tool implementation consultants. Each perspective helped produce more specific requirements from the model as well as elements of the model itself. The end result was the Model for communication waste in BIM process interactions (WIMBIM). WIMBIM has the BIM process transmission as the fundamental unit of analysis and focuses on BIM communication waste and how it results from sub-optimal collaboration tools and schemata. The ultimate purpose of WIMBIM is to support the development of technology which would reduce this waste. This model was converted into a communicable format and was related to BIM standards to aid contextualization and gap identification. To evaluate the validity and utility of this model, interviews with BIM experts were conducted, and the proposed model was found to be a valid approach to address aspects of BIM waste, which is not usually examined and could potentially complement the existing model for BIM maturity. Additionally, the model provides a useful lens for further academic research into BIM collaboration tools

    A Semantics-Rich Information Technology Architecture for Smart Buildings

    Get PDF
    The design of smart homes, buildings and environments currently suffers from a low maturity of available methodologies and tools. Technologies, devices and protocols strongly bias the design process towards vertical integration, and more flexible solutions based on separation of design concerns are seldom applied. As a result, the current landscape of smart environments is mostly populated by defectively designed solutions where application requirements (e.g., end-user functionality) are too often mixed and intertwined with technical requirements (e.g., managing the network of devices). A mature and effective design process must, instead, rely on a clear separation between the application layer and the underlying enabling technologies, to enable effective design reuse. The role of smart gateways is to enable this separation of concerns and to provide an abstracted view of available automation technology to higher software layers. This paper presents a blueprint for the information technology (IT) architecture of smart buildings that builds on top of established software engineering practices, such as model-driven development and semantic representation, and that avoids many pitfalls inherent in legacy approaches. The paper will also present a representative use case where the approach has been applied and the corresponding modeling and software tools

    Requirements Engineering and Management Effects on Downstream Developer Performance in a Small Business Findings from a Case Study in a CMMI/CMM Context

    Get PDF
    Abstract— This thesis is a case study explaining how I tried to improve the requirements engineering process at company X (not its real name), a small software development company in Waterloo, ON, Canada. I assessed X’s practices and standards using the Capability Maturity Model Integration (CMMI) and the Requirements Definition and Management (RDM) Maturity Model (RDMMM). I chose CMMI because it defines and measures a company to assess its maturity as an organization. Higher levels of CMMI have been found to have a correlation with the better success of projects, with regards to delivering the product on-time, on-budget, and on function. For analysis, initial measurements of the company’s performance were gathered to compare results in order to measure X’s process improvements. Six common performance metrics were analyzed: error density, software development productivity, percentage of rework, cycle time for the completion of a typical software project, schedule fidelity, and error detection effectiveness. In addition, I gave a questionnaire to X’s employees based on Ellis’s RDM which is a process for defining, documenting, and maintaining documents that take its reference point from empirical studies on the effectiveness of CMMI. [19] This case study’s survey questions were used to elicit the data necessary to answer whether higher levels of the RDMMM in strategic projects lead to the success of projects at X. The different levels of RDMMM within the company were measured by comparing the questionnaire results taken in 2017 and 2019. Many of the conclusions and the results of this paper are based on the interviews and personal statements from employees at X about their experience in software development

    Requirements engineering for computer integrated environments in construction

    Get PDF
    A Computer Integrated Environment (CIE) is the type of innovative integrated information system that helps to reduce fragmentation and enables the stakeholders to collaborate together in business. Researchers have observed that the concept of CIE has been the subject of research for many years but the uptake of this technology has been very limited because of the development of the technology and its effective implementation. Although CIE is very much valued by both industrialists and academics, the answers to the question of how to develop and how to implement it are still not clear. The industrialists and researchers conveyed that networking, collaboration, information sharing and communication will become popular and critical issues in the future, which can be managed through CIE systems. In order for successful development of the technology, successful delivery, and effective implementation of user and industry-oriented CIE systems, requirements engineering seems a key parameter. Therefore, through experiences and lessons learnt in various case studies of CIE systems developments, this book explains the development of a requirements engineering framework specific to the CIE system. The requirements engineering process that has been developed in the research is targeted at computer integrated environments with a particular interest in the construction industry as the implementation field. The key features of the requirements engineering framework are the following: (1) ready-to-use, (2) simple, (3) domain specific, (4) adaptable and (5) systematic, (6) integrated with the legacy systems. The method has three key constructs: i) techniques for requirements development, which includes the requirement elicitation, requirements analysis/modelling and requirements validation, ii) requirements documentation and iii) facilitating the requirements management. It focuses on system development methodologies for the human driven ICT solutions that provide communication, collaboration, information sharing and exchange through computer integrated environments for professionals situated in discrete locations but working in a multidisciplinary and interdisciplinary environment. The overview for each chapter of the book is as follows; Chapter 1 provides an overview by setting the scene and presents the issues involved in requirements engineering and CIE (Computer Integrated Environments). Furthermore, it makes an introduction to the necessity for requirements engineering for CIE system development, experiences and lessons learnt cumulatively from CIE systems developments that the authors have been involved in, and the process of the development of an ideal requirements engineering framework for CIE systems development, based on the experiences and lessons learnt from the multi-case studies. Chapter 2 aims at building up contextual knowledge to acquire a deeper understanding of the topic area. This includes a detailed definition of the requirements engineering discipline and the importance and principles of requirements engineering and its process. In addition, state of the art techniques and approaches, including contextual design approach, the use case modelling, and the agile requirements engineering processes, are explained to provide contextual knowledge and understanding about requirements engineering to the readers. After building contextual knowledge and understanding about requirements engineering in chapter 2, chapter 3 attempts to identify a scope and contextual knowledge and understanding about computer integrated environments and Building Information Modelling (BIM). In doing so, previous experiences of the authors about systems developments for computer integrated environments are explained in detail as the CIE/BIM case studies. In the light of contextual knowledge gained about requirements engineering in chapter 2, in order to realize the critical necessity of requirements engineering to combine technology, process and people issues in the right balance, chapter 4 will critically evaluate the requirements engineering activities of CIE systems developments that are explained in chapter 3. Furthermore, to support the necessity of requirements engineering for human centred CIE systems development, the findings from semi-structured interviews are shown in a concept map that is also explained in this chapter. In chapter 5, requirements engineering is investigated from different angles to pick up the key issues from discrete research studies and practice such as traceability through process and product modelling, goal-oriented requirements engineering, the essential and incidental complexities in requirements models, the measurability of quality requirements, the fundamentals of requirements engineering, identifying and involving the stakeholders, reconciling software requirements and system architectures and barriers to the industrial uptake of requirements engineering. In addition, a comprehensive research study measuring the success of requirements engineering processes through a set of evaluation criteria is introduced. Finally, the key issues and the criteria are comparatively analyzed and evaluated in order to match each other and confirm the validity of the criteria for the evaluation and assessment of the requirements engineering implementation in the CIE case study projects in chapter 7 and the key issues will be used in chapter 9 to support the CMM (Capability Maturity Model) for acceptance and wider implications of the requirements engineering framework to be proposed in chapter 8. Chapter 6 explains and particularly focuses on how the requirements engineering activities in the case study projects were handled by highlighting strengths and weaknesses. This will also include the experiences and lessons learnt from these system development practices. The findings from these developments will also be utilized to support the justification of the necessity of a requirements engineering framework for the CIE systems developments. In particular, the following are addressed. • common and shared understanding in requirements engineering efforts, • continuous improvement, • outputs of requirement engineering • reflections and the critical analysis of the requirements engineering approaches in these practices. The premise of chapter 7 is to evaluate and assess the requirements engineering approaches in the CIE case study developments from multiple viewpoints in order to find out the strengths and the weaknesses in these requirements engineering processes. This evaluation will be mainly based on the set of criteria developed by the researchers and developers in the requirements engineering community in order to measure the success rate of the requirements engineering techniques after their implementation in the various system development projects. This set of criteria has already been introduced in chapter 5. This critical assessment includes conducting a questionnaire based survey and descriptive statistical analysis. In chapter 8, the requirements engineering techniques tested in the CIE case study developments are composed and compiled into a requirements engineering process in the light of the strengths and the weaknesses identified in the previous chapter through benchmarking with a Capability Maturity Model (CMM) to ensure that it has the required level of maturity for implementation in the CIE systems developments. As a result of this chapter, a framework for a generic requirements engineering process for CIE systems development will be proposed. In chapter 9, the authors will discuss the acceptance and the wider implications of the proposed framework of requirements engineering process using the CMM from chapter 8 and the key issues from chapter 5. Chapter 10 is the concluding chapter and it summarizes the findings and brings the book to a close with recommendations for the implementation of the Proposed RE framework and also prescribes a guideline as a way forward for better implementation of requirements engineering for successful developments of the CIE systems in the future

    Active Mirror Predictive and Requirements Verification Software (AMP-ReVS)

    Get PDF
    This software is designed to predict large active mirror performance at various stages in the fabrication lifecycle of the mirror. It was developed for 1-meter class powered mirrors for astronomical purposes, but is extensible to other geometries. The package accepts finite element model (FEM) inputs and laboratory measured data for large optical-quality mirrors with active figure control. It computes phenomenological contributions to the surface figure error using several built-in optimization techniques. These phenomena include stresses induced in the mirror by the manufacturing process and the support structure, the test procedure, high spatial frequency errors introduced by the polishing process, and other process-dependent deleterious effects due to light-weighting of the mirror. Then, depending on the maturity of the mirror, it either predicts the best surface figure error that the mirror will attain, or it verifies that the requirements for the error sources have been met once the best surface figure error has been measured. The unique feature of this software is that it ties together physical phenomenology with wavefront sensing and control techniques and various optimization methods including convex optimization, Kalman filtering, and quadratic programming to both generate predictive models and to do requirements verification. This software combines three distinct disciplines: wavefront control, predictive models based on FEM, and requirements verification using measured data in a robust, reusable code that is applicable to any large optics for ground and space telescopes. The software also includes state-of-the-art wavefront control algorithms that allow closed-loop performance to be computed. It allows for quantitative trade studies to be performed for optical systems engineering, including computing the best surface figure error under various testing and operating conditions. After the mirror manufacturing process and testing have been completed, the software package can be used to verify that the underlying requirements have been met
    • …
    corecore