Requirements Engineering for the Masses D L Bush, University College, London

Size: px
Start display at page:

Download "Requirements Engineering for the Masses D L Bush, University College, London"

Transcription

1 Requirements Engineering for the Masses D L Bush, University College, London 1. Research Background - The Engineering Doctorate (EngD). Perhaps unconventionally, this initial section will address the nature of the research degree being undertaken a variation justified by relatively unconventional nature of the Engineering Doctorate (EngD) programme! The EngD degree is equivalent in academic standing to a conventional PhD but is achieved through research which is much more industrially focused and which is designed to produce graduates who have a sound understanding of the business implications of industrial research activity. The requirements of the EngD are met primarily through project work that may consist of one or more significant projects. These can cover a wide range of topics, however the projects need to have the potential for innovation and are of significance to the business. Models other than the traditional thesis, for example the portfolio thesis approach, may be adopted. Assessment of an award of an EngD will be based on considerations wider than a single report on project work, and will include evidence of competence in engineering management in a research context. The extract of the work presented here will address only one part of evidence that will be used to contribute to some of these claims, albeit the major part of the project work presented. In this case, the work is being carried out in the UKs recently privatised National Air Traffic Services (NATS) - which is responsible for providing safe and efficient air traffic control for aircraft in UK airspace. This role is complex and safety critical. It places considerable demands on systems and software engineering processes, and improvements in its procurement process - effective use of COTS, less gold plating of requirements and sharper time to market for complex safety related systems will all be necessary to achieve the cost reductions required. Better elicitation and management of requirements can contribute strongly to this. 2. Scope of the Work. The work is centred in the elicitation and management of the requirements for complex systems. These complex systems may be procured through COTS approaches, or use COTS elements alongside custom elements to implement hybrid systems, or they may be developed special to purpose. To elicit and validate these requirements an active engagement is made with systems and software architectures, the whole approach being capable of being usefully applied in an industrial setting. 3. The Requirements Engineering Problem. Investigations into Requirements Engineering practices in NATS [1] have established that there are a number of weaknesses perceived in the discipline by practitioners. These include a lack of tracability to stakeholders; a weakness of tracability from requirements to design and testing; inadequate training and no internal champion to assist projects in requirements elicitation. Such issues are not unique to NATS, and are seen also in other organisations. In addition this project has identified other areas for improvement: a tendency to over specify in relation to COTS

2 solutions; a weak recording of rationale for decisions; and a linear - top down approach to requirements and procurement. In practice many of the requirements (particularly safety or HCI issues) which drive systems procurement will not be met from COTS, and may NOT be able to be foregone so, like other procurers, NATS often needs to overcome this problem. This is often achieved by 'Buy and Adapt' or by 'Component Integration' [2]. Therefore a practical RE approach will need to meet the needs of COTS, hybrid and custom build aspects of any solution. 4. An Industrially Useable Solution. The proposed solution is to implement a revised approach to requirements engineering in the organisation that is: Goal Based. A goal-based approach offers many advantages [3]. For the mix of custom, COTS and hybrid procurements of the type undertaken by NATS, the most important of these are: Requirements Acquisition. By asking WHY, HOW and HOW ELSE we can evaluate and understand customer requirements, requirements emerging from COTS evaluations and derived requirements. Relating Requirements to Organisational and Business Context and providing rationale. This aids in defining the criticality of requirements and in assessing the impact of requirements not being met by COTS offerings. Clarifying Requirements. By providing a graphical representation of the requirements, we make them easier to communicate. Driving Design. Goal structures can provide the necessary linkages to the design of systems that need to be adapted, or to be customised to meet essential requirements. Additionally the Goal based approach naturally supports the necessarily incremental approach to requirements definition and solution evaluation by starting from high level Goals and continually refining these with more detail. Architecture Aware. It has always been necessary to take the 'feed back' of information about the solution into account in developing the requirements for the system. The constraints imposed by available solutions from COTS vendors make this even more critical in COTS and hybrid procurement approaches - where, for example, requirements are derived from the solutions themselves [4]. This approach integrates a description of architectures based on components and services, which supports the investigation and validation of requirements through a range of analysis mechanisms. Like the Goals, these also are incremental ranging from simple box-and-line representations at early stages through to ADL like animation and analysis as solutions become more definite. Modelling at each stage is sophisticated enough to address the requirements engineering needs of that stage [5] without requiring huge investments of time or training but retaining the form of the model from stage to stage.

3 Provides Enhanced Tracability. Goals are traced to stakeholders to enable negotiation and expectation management in the light of conflicts, or emerging COTS capabilities. The record of discussion is also maintained in relation to the changes to Goals. Disconnects Goals from Solutions through Services. This allows an evidence based, traceable analysis of the degree to which a range of COTS solutions meet the stated Goals. Furthermore, by the definition of a Quality of Service for each Service offered by a COTS element a measure of comparison with the Acceptance Criteria for a Goal can be made. Implemented in commercially available tools. The information model, process and evolution can be implemented in commercially available tools. Easily taken up by the practice community. The elements of the solution need to be easily taken up by the community, without extended training and reskilling. It will need to be capable of being applied piecemeal, but expanding as necessary. 5. Previous Work This work draws on techniques and solutions largely already identified in the software and systems engineering community. Goal based approaches have already been developed for requirements in general (KAOS [6], GBRAM [7],) as well as COTS based procurement (PORE [8]). COTS evaluation is supported by a number of approaches ([8] reviews and compares five for example), CRE [9] applies a Goal directed approach to COTS selection, but based on Non- Functional Requirements. Architectural modelling and evaluation is also an established concept, but based in a plethora of ADLs (for example [10] lists 10 in it comparison and evaluation!). Requirements change management is provided for by, for example, the Inquiry Cycle[11] (again with its own tool support) as well as being embedded in many Requirements Management tools. However, research has not solved this problem because the problem still presents in industry. This may seem a little simplistic, and one might counter that research has addressed and solved many if not all of these problems - but these academic solutions have not been widely transferred into business solutions - and so the problem in industry still exists. Previous work in the areas of requirements tracability and management have often been validated against limited Case Studies in which the researcher applies their own technique, and the tools devised to support the discoveries are individual and purpose built. This presents two problems for widespread industrial application: Firstly, the concepts are often difficult to apply for someone who has not spent years developing the new approach. Secondly, the purpose built tools rarely interface neatly with existing systems engineering tools in use in organisations. Some more industrially focussed approaches to RE have achieved a measure of acceptance in industry (REVEAL, VOLERE), but these still retain weaknesses for COTS based procurement that can be improved upon.

4 It is the particular contribution of this work that it addresses the question of industrial relevance (by combining COTS/hybrid procurements) and application (by being easily usable by practitioners). 6. The Research Approach The approach for this research is to base the new approach strongly on industrially and academically established thinking - but adapted for the COTS/Hybrid procurement needs, and for ease of use and ease of implementation for practitioners. The project is therefore founded on a broad literature review in the areas of Requirements Engineering, Systems and Software Architectural development methods; Architectural modelling and COTS procurement and evaluation. This will be augmented by a review of Requirements Engineering practice in the organisation - in those places where more advanced or innovative techniques have been applied. A final foundational element is a proposed requirement information model developed by NATS and UCL. The second stage of the project is to critically evaluate the full information model in the light of the literature and practice reviews. An internal R&D case study has been used to situate the information model and process. In addition further, separate projects, were commissioned to identify and evaluate alternative practical approaches within the domain of the work - this particularly involved alternative Goal Based requirements approaches and investigation of architectural description used as a means of requirements validation. The case study identified an important series of lessons. It identified: Which aspects of the approach were easiest to conceive, and offered most immediate benefit - and to which sorts of procurement projects. Which aspects were unclear, poorly developed or in need of improvement. Which elements of Requirements Management practice and theory were omitted from the approach, but which could be included. How well commercial tool support met the needs of the information model and research ideas emerging from the literature review. How well the information model and process would match NATS practices, and where additional assistance might be needed. The penultimate stage of the work is the field trial of aspects of the approach in live NATS projects. This is to be carried out on an incremental basis - initially working alongside projects and developing requirements and specification in parallel with them, eventually intending to move to a full-scale trial. Each trial may adopt and evaluate only parts of the model or approach as befits the nature of the project. Each trial will be accompanied by an interactive and continuing evaluation based mainly on questionnaire and interview which will seek to identify the benefits the approach gave to practitioners, specific examples of those benefits, and which parts of the approach, or which specific techniques contributed to the benefit.

5 7. The Contributions of this Work. The contributions of this work are in: The bringing together of a range of ideas and approaches from academia and industry into a system - usable by the practitioners - for carrying out requirements engineering in COTS/hybrid systems procurements. The critical assessment of their constituent parts and implementing the most valuable and usable parts in industrially available tools. The demonstration of evolutionary architectural modelling for requirements elicitation and validation in an industrial setting. The measurement of their value to practitioners through qualitative and quantitative evaluation. This is an important and original contribution to the industrial application of computer science to engineering practice. At present, this work is at the initial stage of the fielding and evaluation. The ideas and concepts are being used in parallel with practitioners in the development of the specifications for a replacement radio system in NATS, and qualitative and quantitative information is being collected. References: [1] Effective Requirement Engineering in Practice Internal NATS Report, [2] M.R. Vigdar, W. M. Gentleman and J. Dean COTS Software Integration: State of the Art.", Technical Report 39198, National Research Council of Canada, January [3] E. Yu and J. Mylopoulos Why Goal-Oriented Requirements Engineering? Proceedings of the Fourth International Workshop on Requirements Engineering: Foundation for Software Quality (REFSQ '98), Pisa, Italy, June [4] A. Finkelstein, G. Spanoudakis and M. Ryan, Software Package Requirements & Procurement, In Proceedings of 8th International Workshop on Software Specification and Design, Schloss Velen, Germany, IEEE CS Press, 1996, pp [5] B. Nuseibeh & S. Easterbrook, Requirements Engineering: A Roadmap In A. Finkelstein, Ed, "The Future of Software Engineering", ACM Press, 2000, pp [6] A. Dardenne, A. van Lamsweerde, and S. Fickas. Goal-Directed Requirements Acquisition., Science of Computer Programming, 20(1-2), pp.3-50, April [7] A. Antón. Goal Identification and Refinement in the Specification of Software-Based Information Systems, PhD Thesis, Georgia Institute of Technology, Atlanta, USA, June [8] C. Ncube PORE: Procurement Oriented Requirements Engineering. PhD Thesis, City University, London. [9] C. Alves, F. de Alencar and J Castro, Requirements Engineering for COTS Selection, III Workshop on Requirements Engineering. Rio de Janeiro, [10] N. Medvidovic and R.N. Taylor. "A Framework for Classifying and Comparing Architecture Description Languages". In Proceedings of the Sixth European Software Engineering Conference, Lecture Notes in Computer Science 1301, pp , SpringerVerlag, [11] C. Potts and K. Takahashi, "An Active Hypertext Model for System Requirements", Proceedings IWSSD 7, pp , IEEE, December 1993.