Lecture Software process improvement: Lesson 6 provide students with knowledge about: process modeling technique; critical software process issues; product technology; requirements instability; unknown requirements; unstable requirements; misunderstood requirements;... Please refer to the detailed content of the lecture!
ETVX: Process Modeling Technique Lecture # 6 Critical Software Process Issues • Quality • Product technology • Requirements instability – Unknown requirements – Unstable requirements – Misunderstood requirements • Complexity Critical Software Process Issues • Organizations that face the issues of quality, product technology, requirements stability, and/or complexity need to define ways to address them • A process architecture permits these organizations to represent and manipulate the process at the U level and then selectively to refine it to the W and A level Process Framework • The universal, worldly, and atomic levels of process models can be presented in the process framework – in other words • Thus, the framework would give established policies, procedures and standards Process Framework • The architectural framework of a process helps in providing a definition for • basic elements • how they interact • how they are decomposed into increasing level of detail A Unit Cell • The basic element of the process architecture is the unit cell • Each cell is defined to accomplish a specified task and is uniquely identified A Unit Cell Input Output Detailed description of Unit Cell Input Entry Task Out Exit Output In Feedback Entry Conditions of a Unit Cell • Each cell has required entry conditions specified for task initiation that include the inputs (one or more with their sources) • Task standards, procedures, methods, responsibilities, and required measures are also defined Exit Conditions of a Unit Cell • Exit conditions define the results produced, their level of validation, and any posttask conditions • Cell feedback refers to any data provided to or received from other stages in the process 10 Tasks • The Task section defines work to be carried in performing the process. The order of the task is generally, but not strictly sequential. Some tasks may be concurrent with other tasks 16 Verification • The verification section defines steps for verifying that the process has been properly executed, and that the associated work products meet project objectives 17 Exit • The Exit section defines the exit criteria that must be satisfied for the process to be terminated. The exit criteria usually define completion and verification work products, in terms of qualitative aspects of the products 18 ETVX model • An ETVX model indicates the relationship and flow among the four aspects of an activity and between activities • The notion of formal entry, exit, and criteria go back to the evolution of the waterfall development process • The idea is that every process step, inspection, function test, or software design has a precise entry and exit criteria 19 Characteristics of ETVX • ETVX is a taskbased model • Each task must be explicitly defined • The basic cells can be combined to create process • "bottomup" approach (A level to W and U levels) 20 An Example of ETVX 21 Example of ETVX • The generic activities of different process models from the Ulevel’s perspective can be listed as “design”, “implementation”, and “test” • When these activities are broken into more detail, however, significant differences show up. 22 Example of ETVX • Even with all these variations at the W level, however, many software activities can relatively standardized across different projects • It is thus possible to establish some basic process cells that can be interconnected in different ways to meet projectunique needs 23 Example of ETVX • The detailed structures of these standard cells are then further defined by Alevel models as needed 24 Example of ETVX • Let’s look at the “design”, “implementation”, and “test” activities in any process model using the ETVX technique 25 ULevel Developmental Process 26 Unit Cell Definitions for Process Model 1 Cell 001 002 003 Entry Approved Inspected and requirements, approved design changes and and changes development plan Inspected and approved code and changes Exit Inspected and approved design changes Inspected and approved code and changes Inspected, tested and approved software Feedback in Design Issues Implementation Issues 27 Unit Cell Definitions for Process Model 2 Cell 001 002 003 Feedback out Requirements Issues Requirements and Requirements, Design Issues Design Issues, and Implementation Issues Task Design Implementation, Inspection and Unit test Testing: Integration, Function, System, and Acceptance Measures Resources, Product; Changes, Errors, Design, Document Pages Resources, Product: Changes, Errors, Code, Document Pages Resources, Product: Changes, Errors, Code, Document Pages, 28 Test Suite Summary 29 References • Managing the Software Process by Watts S. Humphrey (Chapter 13.6 onwards) 30 ...Critical? ?Software? ?Process? ?Issues • Quality • Product technology • Requirements instability – Unknown requirements – Unstable requirements – Misunderstood requirements • Complexity Critical? ?Software? ?Process? ?Issues... “implementation”, and “test” activities in any? ?process? ?model using the ETVX technique 25 ULevel Developmental? ?Process 26 Unit Cell Definitions for? ?Process? ? Model 1 Cell 001 002 003 Entry Approved ... The universal, worldly, and atomic levels of process? ?models can be presented in the process? ?framework – in other words • Thus, the framework would give established policies, procedures and standards Process? ?Framework