Processing Requirements by Software Configuration Management
|
|
|
- Bertina Burns
- 10 years ago
- Views:
Transcription
1 Processing Requirements by Software Configuration Management Ivica Crnkovic 1, Peter Funk 1, Magnus Larsson 2 1 Mälardalen University, Department of Computer Engineering, S Västerås, Sweden {ivica.crnkovic, peter.funk}@mdh.se 2 ABB Automation Products AB, Västerås [email protected] Abstract Short development life cycles, the importance of timeto-market and fast changes in technology influence the requirements engineering process. Requirements are exposed to changes during the entire development life cycle, and decisions related to requirements and system design are moving toward developers. For this reason it is important to keep requirement changes under control during the entire development process. This control can be achieved by utilizing Configuration Management (CM) functions and in particular Change Management. This paper describes a model for managing requirements using CM functions. A requirements specification is defined as an hierarchic structure, in which elements of the structure are isolated requirements designated Requirements Specification Items. Having items under version control it is possible to get a better overview of the requirements change process. In the implementation phase, requirement items are associated with Change Requests which define implementations to be introduced in the system. When using Change Requests as links between requirements and the implemented functions we achieve a greater awareness of requirements and a better overview over the requirement process. Furthermore it provides a foundation for reuse of requirements when new systems are built. 1. Introduction Requirements are exposed to changes during entire development lifecycle. They are often incomplete and inconsistent when first defined. The process of the requirement clarification does not finish with a well-defined requirement specification. The process continues also during the development process, especially when using software development models such as incremental development, prototyping, etc. In managing requirements we are now facing new problems, such as: Faster changing technologies, methods and tools used in the design, implementation and change processes as well as changing technologies for implementing the system (hardware and software), frequently even during he development of the system. The time-to-market becoming a particularly important factor. The use of external components, such as COTS (commercial-off-the-shelf), influences system design and requirements. Those working with requirements not always completely understanding the new technologies, and developers, mastering development technologies, not being familiar with the background to requirements. This means that the requirements are far from being correctly defined at the beginning of the implementation process. All these factors influence the relation between the system design and requirements. The final decisions about requirements tend to become the responsibility of the developers. Requirements are increasingly exposed to changes, and the following problems become more apparent: Inadequate use of requirements and inadequate guidance by requirements during software design and development. Inadequate awareness of changes in requirements during system development. Inadequate control over which requirements are under implementation, which are fully implemented. Inadequate validation and verification of implementation against the requirements. The basic idea in this paper is to keep requirements under Configuration Management (CM). This paper presents a model, in which requirements are under strict CM control. Using features from CM, especially from Change Management, it is possible to achieve better control and
2 awareness of the requirements. It simplifies tracing of requirements by means of reuse or by identification of problems. For efficient CM control, every requirement is saved as a separate configuration item. By means of this separation it is easier to control particular requirements. The structure of a requirements specification and the interaction of requirements with CM features are described in chapter 2. Chapter 3 describes the behavior of the requirements during the implementation phase. Their relation to Change Requests, documents which describe a change to be implemented in the system, are discussed. Using Change Requests as links between the requirements and implementations promotes awareness of the requirements and the entire development process. Chapter 4 discuses certain limitations of the model. Finally, chapter 5 provides a conclusion of the paper. 2. Requirements Specification Structure and Configuration Management The idea is to keep the requirements under CM control. The same CM process and tools which are used in the implementation phase can also be used for versioning requirements. 2.1 Requirements Specification Structure If a requirements specification is prepared as one document, we can manage different versions of it, but we cannot control the requirement items separately. For this reason we define a requirements specification as a virtual document which consists of Requirements Specification Items (s), organized in a structure as shown in Figure 1. Requirement Specification FIGURE 1. Requirements Specification An is the description of one particular requirement. The top level of the structure contains basic requirements and these requirements are refined on the lower levels. s can be described in a natural language, but there are other alternatives, such as: forms, design description languages, graphs, or formal specifications [5]. A predefined format of an makes it possible to extract particular information from the entire requirements specification or from a part of it (i.e. from the entire tree or from a sub-tree). To process a requirements specification efficiently, we need an application, a so-called RS browser, which can manage individual s, a group of items, or the entire requirements specification. 2.2 Versioning Requirements Specification As RS items are separate entities we can place them under version control. Every is treated as an CM item. We can create new items, or modify or remove old items. We get new versions on those items which we change. The identification of each item version is a part of the CM tool: Each Item has an identity, title and other features related to each version, such as version identity, author, creation date, and a set of other attributes, depending on which CM tool we use. The hierarchic structure is also managed by the CM tool. A logical relation between different RS items, such as requirements on inputs or outputs, can be a part of the RS item data. The requirements specification structure is however defined within the CM environment, and not within the RS items themselves. It is thereby easier to move RS Items within the structure. A particular version of the requirements specification is generated from specified versions of RS items, i.e. from a specific configuration of RS items, designated a baseline [4]. 2.3 Processing Requirements We also use other CM features to manage the requirements change process. Using CM report facilities we can easily trace: Which requirements, or parts of them, have been changed since the latest baseline. Who has made the change. When the change was made. Version attributes can be used to describe possible states of s, as shown in Figure 2.
3 Initiated Accepted Developing Implemented Tested Approved Obsolete Analysis/Design phase Implementation phase Verification phase FIGURE 2. States As s are organized in a hierarchic structure, the functions we can apply to them can affect individual RS Items or a sub-tree of Items. For example, we may want to designated all s lying under a main as Tested. Such functions are provided by certain CM tools. 3. Processing Requirements during the Implementation Phase When we place Requirements Specification under version control, we obtain control over the requirements changes. This control is however not sufficient, we also need a mechanism to relate requirements to the implementation parts. This relation is often not clearly defined, especially in the beginning of the development process when requirements are not clear and not completely understood. In general, we have many-to many-relations between s and system modules 1 : A module can be affected by several requirements, and, on the contrary, a requirement can be implemented in different modules. These relations are even more complicated if we take into considerations that some requirements are related to other requirements, and the same applies to modules. System modules can consist of a number of items, such as documents and source files, and in such a complex relationship keeping track of requirements is a challenge. We wish to make requirements more visible during the implementation. Developers should be aware of the requirements they are expected to implement, and they should be aware of possible changes in the requirements, of which requirements are being implemented and of which new requirements have appeared. One possibility of relating requirements with system modules is to use Change Management support from CM. CM provides a basic support for change process operations and the CM functions can be utilized for providing links between requirements and the final result of the development process. The basic purpose of the change-oriented CM tools is to control changes instead of files. Change management controls the connections between logical changes and physical changes implemented in the files within a system. The term Change Request is used to refer to a logical change [1], [2], [6], [7], [9], [11]. Any kind of change can be addressed by Change Request, for example a request to solve a problem or improve a function or implement a new function. To allow changes to be managed at the logical level rather than the physical level, it is essential to associate physical changes, i.e. changes performed on files, with Change Requests. SDE, a CM tool developed and used at ABB [3], uses Change Requests and, differing from other CM tools, keeps Change Requests under version control [4]. As requirements are starting points for the design and implementation of a system, it is natural to relate them to Change Requests which initiate activities in the implementation phase. Change Requests can be also used for implementation of completely new functions, assuming that they change an empty set to something new. A more appropriate name in this case would be Implementation Requests. 1. By a system module we mean a part of the system which can be designed, developed and maintainend relatively independent of other modules. For example, a component library is a system module.
4 3.1 Associating Requirements Specification Items with Change Requests We treat requirements specifications in the same way as any other item under version control. We define a tree structure under CM control which we use for RS items. For example, if we use a check in/check out CM model, we check out and check in items from the tree structure or those RS items which we wish to modify. The check in/out procedure is performed by an Browser, or simply by CM functions. In addition to the standard version management of the requirements, we also define a bidirectional relation between s and Change Requests. To avoid a risk that the relation to Change Requests remains unclear, it is important to define: Which types of relations exist between Change Requests and system modules on the one side, and on the other side between Change Requests and RS items. How the process of information exchange between Change Requests and s works, and how to ensure a consistent description of the entire process. We can group Change Requests in the same way as RS Items. If a CM tool does not support this grouping, it is possible to develop additional functions managing this grouping. Change Requests grouped together are related to the same logical change. This means that they are related to the same. Each Change Request can refine the requirement, or can refer to another part of the system. For this reason, we can relate Change Requests from one group to an RS item. When it is decided to begin with the implementation of the requirement, one or several Change Requests are created. Change Requests uniquely address system modules where the requests are to be implemented (Figure 3). The relation between s and Change Requests is bidirectional. An refers to the associated Change Request, and, if a Change Request is generated from an RS Item, it contains a reference to the corresponding. A B C D E F D E.2 F.2 A B C D.1 D.2 E.1 F.1 E F M1 M2 M3 M4 M5 M6 one to one many to one one to many many to many FIGURE 3. Relation between s, Change Requests and system modules One of the intentions of this model is to increase the awareness of the developers of requirements during the implementation process. This can be achieved by making requirements more visible to them. Since developers deal with Change Requests - they refer to Change Requests when performing check out/in - they can access s via Change Requests. The CM tool should provide this possibility. s specified in Change Requests can in fact be treated in a way similar to any other item (source code, document). All versions of items related to a Change Request should be easily accessible and from it.
5 3.2 Processing s and Change Requests During the requirements engineering process and during the implementation process both s and Change Requests are being changed, which means that new versions of them will be created. This implies that only particular versions of s and Change Requests make a consistent combination. The consistency between different versions can be treated in the same way as the consistency between source code files. Taking care of the consistency is a typical CM function - one possibility is to relate the latest versions of all items and generate a baseline at the synchronization points. A baseline in this case will comprise source code, s and Change Requests into a manageable entity. Figure 4 shows a comprehensive process of managing s, Change Requests and system modules. Initiated Accepted Working Developing Implemented Tested Approved v1 v2 v3 v4 v5 v6 v7 Create a Update Update RS Change Request Initiated Implemented Files changed v1 v1 v2 v2 Check in/ Update Time FIGURE 4. Processing s, Change Requests and modules In the first phase of the requirements engineering process the RS items will be changed (or removed and new added) by means of to analysis and validation, problem identifications and requirements negotiations [8], until they reach the Accepted state. The second phase, the implementation, begins with the initiation of Change Requests. The RCS Item reaches the Developing state. In this state s are being implemented. A new Change Request is generated from an RS Item. The new Change Request inherits some parts of the such as title, identity, etc. It also contains a reference to the and its version. The implementation phase includes implementation of the requirement, i.e. creation and modification of items of modules. Information about which files and versions have been modified is saved in the Change Request. A developer is responsible for correct updating of Change Requests with files being modified and placed under CM control. When performing these actions the developer can easily refer to the related RS Items and in that sense become aware of it. It can happen that RS items are modified even during the implementation phase. In such a case, the engineers responsible for the requirements can easily determine the current state of the s and how of the implementation has been performed. This data can be suitable input for an analysis of the implications the change can have. If an has been changed, the associated Change Request will be updated - a new version of the and a short change description will be recorded in the Change Request. The Change Request owner will be informed simultaneously (via ) of the change in the and Change Request. When the required changes are implemented the developer responsible for the Change Request closes it. This action triggers an updating procedure which sets the corresponding in the Implemented state. The tests and verification activities now performed conclude with approval and closing both of Change Request and.
6 4. Limitations of the Model The presented model contains certain limitations which originate in the nature of requirements. We recognize two types of requirements [10]: Functional requirements are statements of services which the system should provide, and how the system will respond to particular inputs. Non-functional requirements are constraints on the system in general, for example standards, timing constraints, quality constraints, etc. While functional requirements can be more or less directly mapped to the functions which should be implemented, the non-functional requirements usually concern the entire system. For this reason it is difficult to relate Change Requests to the later. The non-functional requirements are also specified as RS items, but their internal format will not be the same as those of functional requirements. It is difficult to relate them to particular Change Requests. This implies that we can not use the same mechanism for referring to s, and we do not have the same support in achieving a higher degree of awareness of requirements. It must be obtained in another way. Another problem originates in ambiguities and lack of clarity regarding requirements. If a requirement is not precisely defined it is difficult to relate it to a specific Change Request, which describes a requirement for implementation in a particular system module. Such requirements are more often changed, even during the implementation phase and this causes difficulties in maintaining consistency in relation to Change Requests. The old Change Requests, perhaps partly implemented, become irrelevant, and new Change Requests must be created. Of course such a RS Item indicates the possible problems with the requirement's design. These indications can be detected by measurement - if there are many versions of an RS item and changes in references to Change Requests, a more serious analysis of the is called for. 5. Conclusion The goal of the model presented is to manage requirements in a controlled way. This is performed by placing requirements under Configuration Management and by utilizing Change Management functions. The use of requirements management and its combination with CM has the following advantages: It provides support in controlling how and when requirements are changed, if they are under implementation or if they have already been implemented. It provides designers and programmers with direct and easy access to related requirements information. It simplifies keeping of requirements consistent with implementation and free of redundancy. It simplifies reuse of requirements previously used and implemented. The model can be only partially implemented by using of standard tools. While most of the functions related to versioning and configuring are available in most of the CM tools, the functions related to requirements management must be implemented. 6. References [1] Continuus Software Corporation, Task-Based Configuration Management, Version 2.0, [2] Continuus Software Corporation, [3] Ivica Crnkovic, Experience with Change Oriented SCM Tools, Software Configuration Management SCM-7, Springer Verlag, ISBN , 1997, pages [4] Ivica Crnkovic, A Change Process Model in a SCM tool, Proceedings Euromicro 98, IEEE Computer Society, OSBN , pages [5] P.J., Robertson D., Case-Based Support for the Design of Dynamic System Requirements, Advances in Case- Based Reasoning, Selected Papers, Keane M., Haton J.P., Manago M. (eds.), Springer-Verlag, 1995, pp [6] David B. Leblang, The CM Challenge: Configuration Management that Works, Configuration Management, edited by Walter F. Tichy, Jown Wiley & Sons, ISBN [7] David B. Leblang, Managing the Software Development Process with ClearGuide, Software Configuration Management SCM-7, Springer Verlag, ISBN , 1997, pages [8] Pete Sawyer, Ian Sommerville and Stephen Viller, Improving the Requirements Process, Technical report: CSEG/30/1997, Lancaster University _rep.html [9] Rational [10] Ian Sommerville, Software Engineering, Addison Wesley, ISBN [11] Darcy Wiborg Weber, Change Sets versus Change Packages, Software Configuration Management SCM-7, Springer Verlag, ISBN , 1997, pages 25-35
Component-based Development Process and Component Lifecycle Ivica Crnkovic 1, Stig Larsson 2, Michel Chaudron 3
Component-based Development Process and Component Lifecycle Ivica Crnkovic 1, Stig Larsson 2, Michel Chaudron 3 1 Mälardalen University, Västerås, Sweden, [email protected] 2 ABB Corporate Research,
SystemDesign Methodologies
SystemDesign Methodologies CM 3380-3 Maintenance is not part of the design process by Claudia Buder, bq923372 Anne Holzapfel, hq923380 Abstract In context of the level three module of System design Methodology
System Software Product Line
System Software Product Line 2 1 Introduction The concept of Software Product Lines has been developed for more than a decade. Being initially an academic topic, product lines are more and more incorporated
CHAPTER 7 Software Configuration Management
CHAPTER 7 Software Configuration Management ACRONYMS CCB CM FCA MTBF PCA SCCB SCI SCM SCMP SCR SCSA SEI/CMMI SQA SRS USNRC INTRODUCTION Configuration Control Board Configuration Management Functional Configuration
Software Configuration. Management Issues in Product Development
Software Configuration Management Issues in Product Development A Annie Ibrahim, Muhammad Waseem (National University of Computer and Emerging Sciences, Lahore) Abstract After more than 20 years of research
CASSANDRA: Version: 1.1.0 / 1. November 2001
CASSANDRA: An Automated Software Engineering Coach Markus Schacher KnowGravity Inc. Badenerstrasse 808 8048 Zürich Switzerland Phone: ++41-(0)1/434'20'00 Fax: ++41-(0)1/434'20'09 Email: [email protected]
IndustrialIT System 800xA Engineering
IndustrialIT System 800xA Engineering Overview Features and Benefits Integrated Engineering Environment: Supports the engineering of the entire extended automation system from field devices to plant management
TRADITIONAL VS MODERN SOFTWARE ENGINEERING MODELS: A REVIEW
Year 2014, Vol. 1, issue 1, pp. 49-56 Available online at: http://journal.iecuniversity.com TRADITIONAL VS MODERN SOFTWARE ENGINEERING MODELS: A REVIEW Singh RANDEEP a*, Rathee AMIT b a* Department of
Software Processes. The software process. Generic software process models. Waterfall model. Waterfall model phases
Software Processes CSC 221 Introduction to Software Engineering software processes extract from Sommerville s chapter 3 slides Alan Dix Coherent sets of activities for specifying, designing, implementing
ESTABLISHING A MEASUREMENT PROGRAM
ESTABLISHING A MEASUREMENT PROGRAM The most important rule is to Understand that software measurement is a means to an end, not an end in itself Three key reasons for Software Measurement Understanding
Chapter 13 Configuration Management
Object-Oriented Software Engineering Using UML, Patterns, and Java Chapter 13 Configuration Management Outline of the Lecture Purpose of Software Configuration Management (SCM)! Motivation: Why software
Page 1. Outline of the Lecture. What is Software Configuration Management? Why Software Configuration Management?
Books: Software Configuration Management 1. B. Bruegge and A. H. Dutoit, Object-Oriented Software Engineering: Using UML, Patterns, and Java (Chapter 13) Outline of the Lecture Purpose of Software Configuration
An Overview of Challenges of Component Based Software Engineering
An Overview of Challenges of Component Based Software Engineering Shabeeh Ahmad Siddiqui Sr Lecturer, Al-Ahgaff University, Yemen Abstract Nowadays there is trend of using components in development of
Candle Plant process automation based on ABB 800xA Distributed Control Systems
Candle Plant process automation based on ABB 800xA Distributed Control Systems Yousef Iskandarani and Karina Nohammer Department of Engineering University of Agder Jon Lilletuns vei 9, 4879 Grimstad Norway
How Silk Central brings flexibility to agile development
How Silk Central brings flexibility to agile development The name agile development is perhaps slightly misleading as it is by its very nature, a carefully structured environment of rigorous procedures.
Software Configuration Management. Addendum zu Kapitel 13
Software Configuration Management Addendum zu Kapitel 13 Outline Purpose of Software Configuration Management (SCM) Motivation: Why software configuration management? Definition: What is software configuration
JOURNAL OF OBJECT TECHNOLOGY
JOURNAL OF OBJECT TECHNOLOGY Online at www.jot.fm. Published by ETH Zurich, Chair of Software Engineering JOT, 2006 Vol. 5. No. 8, November-December 2006 Requirements Engineering Tasks Donald Firesmith,
(Refer Slide Time: 01:52)
Software Engineering Prof. N. L. Sarda Computer Science & Engineering Indian Institute of Technology, Bombay Lecture - 2 Introduction to Software Engineering Challenges, Process Models etc (Part 2) This
Configuration management. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 29 Slide 1
Configuration management Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 29 Slide 1 Objectives To explain the importance of software configuration management (CM) To describe key CM activities
Introduction for Software Configuration Management Training
Introduction for Software Configuration Management Training I thought I knew it all! History of 12207 ISO/IEC 12207 1995: Standard for Information Technology Software Life Cycle Processes IEEE/EIA 12207.0
Bidirectional Tracing of Requirements in Embedded Software Development
Bidirectional Tracing of Requirements in Embedded Software Development Barbara Draxler Fachbereich Informatik Universität Salzburg Abstract Nowadays, the increased complexity of embedded systems applications
Chapter 13 Configuration Management
Chapter 13 Configuration Management Using UML, Patterns, and Java Object-Oriented Software Engineering Outline of the Lecture Purpose of Software Configuration Management (SCM)! Motivation: Why software
Objectives. The software process. Basic software process Models. Waterfall model. Software Processes
Software Processes Objectives To introduce software process models To describe three generic process models and when they may be used To describe outline process models for requirements engineering, software
Verification and Validation of Software Components and Component Based Software Systems
Chapter 5 29 Verification and Validation of Software Components and Component Based Christina Wallin Industrial Information Technology Software Engineering Processes ABB Corporate Research [email protected]
Peter Mileff PhD SOFTWARE ENGINEERING. The Basics of Software Engineering. University of Miskolc Department of Information Technology
Peter Mileff PhD SOFTWARE ENGINEERING The Basics of Software Engineering University of Miskolc Department of Information Technology Introduction Péter Mileff - Department of Information Engineering Room
Requirements Traceability. Mirka Palo
Requirements Traceability Mirka Palo Seminar Report Department of Computer Science University of Helsinki 30 th October 2003 Table of Contents 1 INTRODUCTION... 1 2 DEFINITION... 1 3 REASONS FOR REQUIREMENTS
Business Modeling with UML
Business Modeling with UML Hans-Erik Eriksson and Magnus Penker, Open Training Hans-Erik In order to keep up and be competitive, all companies Ericsson is and enterprises must assess the quality of their
Configuration & Build Management
Object-Oriented Software Engineering Using UML, Patterns, and Java Configuration & Build Management Outline of the Lecture Purpose of Software Configuration Management (SCM) Some Terminology Software Configuration
IT3205: Fundamentals of Software Engineering (Compulsory)
INTRODUCTION : Fundamentals of Software Engineering (Compulsory) This course is designed to provide the students with the basic competencies required to identify requirements, document the system design
Software Configuration Management. http:\\www.francisxavier.ac.in
Software Configuration Management Outline Introduction what is SCM, who are involved, why it is imp? what are the steps? Basic Concepts of SCM Configuration Management Activities Configuration Management
SOFTWARE ARCHITECTURE QUALITY EVALUATION
SOFTWARE ARCHITECTURE QUALITY EVALUATION APPROACHES IN AN INDUSTRIAL CONTEXT Frans Mårtensson Blekinge Institute of Technology Licentiate Dissertation Series No. 2006:03 School of Engineering Software
The V-Model. Prepared for. Prepared by. Christian Bucanac [email protected] Software Engineering Student, University Of Karlskrona/Ronneby
Course: Quality Management, DPT404 Teacher: Conny Johansson Department: IDE, University Of Karlskrona/Ronneby The V-Model Prepared for Conny Johansson [email protected] IDE, University Of Karlskrona/Ronneby
7 Component-based Development Process and Component Lifecycle
7 Component-based Development Process and Component Lifecycle The process of component and component-based system development differs in many significant ways from the classical development process of
Combining Models for Business Decisions and Software Development
Combining Models for Business Decisions and Software Development 1 Christina Wallin, 2 Stig Larsson, 3 Fredrik Ekdahl, 1 Ivica Crnkovic 1 Mälardalen University, Department of Computer Engineering, Västerås,
Evaluation of a Use-Case-Driven Requirements Analysis Tool Employing Web UI Prototype Generation
Evaluation of a Use-Case-Driven Requirements Analysis Tool Employing Web UI Prototype Generation SHINPEI OGATA Course of Functional Control Systems, Graduate School of Engineering Shibaura Institute of
SWEBOK Certification Program. Software Engineering Management
SWEBOK Certification Program Software Engineering Management Copyright Statement Copyright 2011. All rights reserved. No part of this publication may be reproduced, stored in a retrieval system, or transmitted
Component Based Development in Software Engineering
Component Based Development in Software Engineering Amandeep Bakshi, Rupinder Singh Abstract--In today s world, Component Based development is an active research area for more than a decade in software
Simplifying development through activity-based change management
IBM Rational ClearCase and IBM Rational ClearQuest October 2004 Simplifying development through activity-based change management Allan Tate Product Manager IBM Software Group Karen Wade SCM Product Marketing
Web Application Development Processes: Requirements, Demands and Challenges
Web Application Development Processes: Requirements, Demands and Challenges THAMER AL-ROUSAN 1, BASEM HADIDI 2, SHADI ALJAWARNEH 3 1, 3 Faculty of Science and Information Technology, Isra University, Amman,
VAIL-Plant Asset Integrity Management System. Software Development Process
VAIL-Plant Asset Integrity Management System Software Development Process Document Number: VAIL/SDP/2008/008 Engineering For a Safer World P u b l i c Approved by : Ijaz Ul Karim Rao Revision: 0 Page:2-of-15
Advancements in the V-Model
Advancements in the V-Model Sonali Mathur Asst. Professor, CSE Dept. ABES Institute of Technology Ghaziabad, U.P-201009 Shaily Malik Lecturer, CSE Dept. Maharaja Surajmal Institute of Tech. Janakpuri,
Software Configuration Management. Wingsze Seaman COMP250SA February 27, 2008
Software Configuration Management Wingsze Seaman COMP250SA February 27, 2008 Outline CM and SCM Definitions SCM History CMMI and SCM SCM Tools SCM/Dynamic Systems SCM/Software Architecture Resources 2
Chap 1. Introduction to Software Architecture
Chap 1. Introduction to Software Architecture 1. Introduction 2. IEEE Recommended Practice for Architecture Modeling 3. Architecture Description Language: the UML 4. The Rational Unified Process (RUP)
Rapid software development. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 17 Slide 1
Rapid software development Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 17 Slide 1 Objectives To explain how an iterative, incremental development process leads to faster delivery of
Do you know? "7 Practices" for a Reliable Requirements Management. by Software Process Engineering Inc. translated by Sparx Systems Japan Co., Ltd.
Do you know? "7 Practices" for a Reliable Requirements Management by Software Process Engineering Inc. translated by Sparx Systems Japan Co., Ltd. In this white paper, we focus on the "Requirements Management,"
Software Configuration Management and Change Management
School of Innovation, Design and Engineering Mälardalen University Västerås, Sweden - April, 2009 - Sha Liu Master Thesis in Computer Science Software Configuration Management and Change Management Supervisor:
Example Software Development Process.
Example Software Development Process. The example software development process is shown in Figure A. The boxes represent the software development process kernels. The Software Unit Testing, Software Component
Keywords Aspect-Oriented Modeling, Rule-based graph transformations, Aspect, pointcuts, crosscutting concerns.
Volume 4, Issue 5, May 2014 ISSN: 2277 128X International Journal of Advanced Research in Computer Science and Software Engineering Research Paper Available online at: www.ijarcsse.com Functional and Non-Functional
11 Tips to make the requirements definition process more effective and results more usable
1 11 Tips to make the s definition process more effective and results more usable This article discusses what I believe are the key techniques for making s definition process repeatable from project to
BUSINESS RULES CONCEPTS... 2 BUSINESS RULE ENGINE ARCHITECTURE... 4. By using the RETE Algorithm... 5. Benefits of RETE Algorithm...
1 Table of Contents BUSINESS RULES CONCEPTS... 2 BUSINESS RULES... 2 RULE INFERENCE CONCEPT... 2 BASIC BUSINESS RULES CONCEPT... 3 BUSINESS RULE ENGINE ARCHITECTURE... 4 BUSINESS RULE ENGINE ARCHITECTURE...
Story Card Based Agile Software Development
Story Card Based Agile Software Development Chetankumar Patel, and Muthu Ramachandran Leeds Metropolitan University, UK [email protected] Abstract The use of story cards for user stories in many Extreme
Configuration Management. Software Configuration Management. Example of System Families. Configuration Management
Configuration Management Software Configuration Management New versions of software systems are created as they change: For different machines/os; Offering different functionality; Tailored for particular
19 Configuration Management
TIMe TIMe Electronic Textbook 19 Configuration Management Introduction.......................................................2 What...................................................................2 Why
Different Approaches used in Software Product Families
Different Approaches used in Software Product Families Rafia Inam Mälardalens University. [email protected] Abstract The use of software in consumer products is growing tremendously in current era. Further
TECH. Requirements. Why are requirements important? The Requirements Process REQUIREMENTS ELICITATION AND ANALYSIS. Requirements vs.
CH04 Capturing the Requirements Understanding what the customers and users expect the system to do * The Requirements Process * Types of Requirements * Characteristics of Requirements * How to Express
Credit value: 10 Guided learning hours: 60
Unit 18: Database Design Unit code: QCF Level 3: Credit value: 10 Guided learning hours: 60 Aim and purpose J/601/6617 BTEC Nationals The aim of this unit is to enable learners to understand the features
Service Level Agreements based on Business Process Modeling
Service Level Agreements based on Business Process Modeling Holger Schmidt Munich Network Management Team University of Munich, Dept. of CS Oettingenstr. 67, 80538 Munich, Germany Email: [email protected]
WHITEPAPER. Managing Design Changes in Enterprise SBM Installations
WHITEPAPER Managing Design Changes in Enterprise SBM Installations By Tom Clement Serena Software, Inc. October 2013 Summary This document explains how to organize your SBM maintenance and development
Software Engineering 1
THE BCS PROFESSIONAL EXAMINATIONS Diploma April 2006 EXAMINERS REPORT Software Engineering 1 General Comments Most of the scripts produced by candidates this year were well structured and readable, showing
Fundamentals of Measurements
Objective Software Project Measurements Slide 1 Fundamentals of Measurements Educational Objective: To review the fundamentals of software measurement, to illustrate that measurement plays a central role
Software Engineering for Software-Intensive Systems: III The Development Life Cycle
Software Engineering for Software-Intensive Systems: III The Development Life Cycle Assistant Professor Dr. Room E 3.165 Tel. 60-3321 Email: [email protected] Outline I Introduction II Foundations III The Development
Chapter 23 Software Cost Estimation
Chapter 23 Software Cost Estimation Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 23 Slide 1 Software cost estimation Predicting the resources required for a software development process
The structured application of advanced logging techniques for SystemVerilog testbench debug and analysis. By Bindesh Patel and Amanda Hsiao.
Logging makes sense for testbench debug The structured application of advanced logging techniques for SystemVerilog testbench debug and analysis. By Bindesh Patel and Amanda Hsiao. SystemVerilog provides
Verona: On-Time, On-Scope, On-Quality
Verona: On-Time, On-Scope, On-Quality All project teams struggle to meet the potentially conflicting objectives of delivering ontime, with all committed features and with the highest levels quality. And
Acknowledgement. Software Engineering. CS 3141: Team Software Project Introduction
CS 3141: Team Software Project Introduction Ali Ebnenasir Department of Computer Science Michigan Technological University Acknowledgement Betty H.C. Cheng Software Engineering Systematic approach for
Lecture 10 CS5702. Requirements Engineering. Managing change optimising Value - A bit more about Agile RE. Requirements Engineering.
Requirements Engineering Overview Lecture 10 CS5702 Requirements Engineering Semester 1 2009/10 Professor Kevin Ryan 1. Introduction (Week 1) 2. Elicitation of requirements (2 & 3) 3. Standards, Templates
Outline. III The Development Life Cycle. Characteristics of Software Development Methodologies. The Prototyping Process
Software Engineering for Software-tensive Systems: Assistant Professor Dr. Room E 3.165 Tel. 60-3321 Email: [email protected] line I troduction II Foundations IV Requirements V Analysis & Design VI Implementation
CONDIS. IT Service Management and CMDB
CONDIS IT Service and CMDB 2/17 Table of contents 1. Executive Summary... 3 2. ITIL Overview... 4 2.1 How CONDIS supports ITIL processes... 5 2.1.1 Incident... 5 2.1.2 Problem... 5 2.1.3 Configuration...
An Effective Requirement Engineering Process Model for Software Development and Requirements Management
2010 International Conference on Advances in Recent Technologies in Communication and Computing An Effective Requirement Engineering Process Model for Software Development and Management Dhirendra Pandey
Surveying and evaluating tools for managing processes for software intensive systems
Master Thesis in Software Engineering 30 Credits, Advanced Level Surveying and evaluating tools for managing processes for software intensive systems Anuradha Suryadevara IDT Mälardalen University, ABB
Continuous User Experience Development
Continuous User Experience Development Kati Kuusinen Tampere University of Technology Tampere, Finland Korkeakoulunkatu 1, FI-33101 Tampere [email protected] Abstract. Continuous approaches for software
REQUIREMENTS SPECIFICATION AND MANAGEMENT. Requirements Analysis and Specification
REQUIREMENTS SPECIFICATION AND MANAGEMENT In this note we give the requirements process in a software organization, a template for the requirements document, and the process to manage changes to the requirements.
Karunya University Dept. of Information Technology
PART A Questions 1. Mention any two software process models. 2. Define risk management. 3. What is a module? 4. What do you mean by requirement process? 5. Define integration testing. 6. State the main
DEVELOPING REQUIREMENTS FOR DATA WAREHOUSE SYSTEMS WITH USE CASES
DEVELOPING REQUIREMENTS FOR DATA WAREHOUSE SYSTEMS WITH USE CASES Robert M. Bruckner Vienna University of Technology [email protected] Beate List Vienna University of Technology [email protected]
LECTURE 1. SYSTEMS DEVELOPMENT
LECTURE 1. SYSTEMS DEVELOPMENT 1.1 INFORMATION SYSTEMS System A system is an interrelated set of business procedures used within one business unit working together for a purpose A system has nine characteristics
Lecture Slides for Managing and Leading Software Projects. Chapter 1: Introduction
Lecture Slides for Managing and Leading Software Projects Chapter 1: Introduction developed by Richard E. (Dick) Fairley, Ph.D. to accompany the text Managing and Leading Software Projects published by
Rapid Software Development
Software Engineering Rapid Software Development Based on Software Engineering, 7 th Edition by Ian Sommerville Objectives To explain how an iterative, incremental development process leads to faster delivery
Web Integration Technologies
Web Integration Technologies Application and Benefits Introduction In every corporation, the browser has become the most prominent and effective means to access applications systems and the data they provide.
Writing a Requirements Document For Multimedia and Software Projects
Writing a Requirements Document For Multimedia and Software Projects Rachel S. Smith, Senior Interface Designer, CSU Center for Distributed Learning Introduction This guide explains what a requirements
Best-Practice Software Engineering: Software Processes to Support Project Success. Dietmar Winkler
Best-Practice Software Engineering: Software Processes to Support Project Success Dietmar Winkler Vienna University of Technology Institute of Software Technology and Interactive Systems [email protected]
Knowledge-based Approach in Information Systems Life Cycle and Information Systems Architecture
5 th Slovakian-Hungarian Joint Symposium on Applied Machine Intelligence and Informatics January 25-26, 2007 Poprad, Slovakia Knowledge-based Approach in Information Systems Life Cycle and Information
Chapter 5. Choose the answer that mostly suits each of the sentences given:
Chapter 5 Software Configuration Management Choose the answer that mostly suits each of the sentences given: 1. No matter where you are in the system lifecycle, the system will change, and the desire to
SOFTWARE LOCALIZATION FOR AGILE, WATERFALL, AND HYBRID DEVELOPMENT
1 4 FOR AGILE, WATERFALL, AND HYBRID DEVELOPMENT AGILE METHOD Business Requirements SPRINT#1 Technical Coding & ing SPRINT#2 WATERFALL METHOD Client OK & Launch SPRINT#3 Irrespective of the type of software
Software Quality Assurance in Agile, XP, Waterfall and Spiral A Comparative Study
Software Quality Assurance in Agile, XP, Waterfall and Spiral A Comparative Study S. Vijayakumar [email protected] School of Computer and Information Science University of South Australia,
Software Engineering. Software Processes. Based on Software Engineering, 7 th Edition by Ian Sommerville
Software Engineering Software Processes Based on Software Engineering, 7 th Edition by Ian Sommerville Objectives To introduce software process models To describe three generic process models and when
3SL. Requirements Definition and Management Using Cradle
3SL Requirements Definition and Management Using Cradle November 2014 1 1 Introduction This white paper describes Requirements Definition and Management activities for system/product development and modification
ISSUES OF STRUCTURED VS. OBJECT-ORIENTED METHODOLOGY OF SYSTEMS ANALYSIS AND DESIGN
ISSUES OF STRUCTURED VS. OBJECT-ORIENTED METHODOLOGY OF SYSTEMS ANALYSIS AND DESIGN Mohammad A. Rob, University of Houston-Clear Lake, [email protected] ABSTRACT In recent years, there has been a surge of
Requirements Traceability
UNIVERSITY OF WATERLOO Faculty of Mathematics School of Computer Science CS 645 - Software Requirements Specification and Analysis Requirements Traceability prepared by Michael Morckos ID : 20363329 Electrical
