Copyright © 1994 Carnegie Mellon University1Disciplined SoftwareEngineeringLecture #14 Software Engineering Institute Carnegie Mellon University Pittsburgh, PA 15213 Sponsored by the U.S. Department of DefenseCopyright © 1994 Carnegie Mellon University2Lecture # 14 Overview Process terms Why define a process Process definition•process elements•process architecture•process evolution A process development processCopyright © 1994 Carnegie Mellon University3Selected Process Terms - 1 Accuracy - the degree to which the processproduces the intended result Agent - the person or machine that enacts theprocess Fidelity - the faithfulness with which theprocess is followed Fitness - the degree to which the agents canfaithfully follow the processCopyright © 1994 Carnegie Mellon University4Selected Process Terms - 2 Precision - the degree to which the process-defined actions produce accurate results Process architecture - a process designframework Process definition - a process implementation Process design - an embodiment of a processarchitectureCopyright © 1994 Carnegie Mellon University5Selected Process Terms - 3 Process element - a component of a process Process script - a process definition suitable fora human agent Process step - an atomic process action with novisible external substructure Process tailoring - the act of adopting a processdesign to support a particular purposeCopyright © 1994 Carnegie Mellon University6Why Define a Process The principal purpose of a defined process is tohelp agents to faithfully enact it. To help to automate the process To provide a framework for processmeasurement To improve the process - if you don’t know whatyou are doing, you can’t improve itCopyright © 1994 Carnegie Mellon University7Software Process Elements Defined scripts for performing the tasks A set of planning, tracking, and recording formsand templates A set of standards and checklists An improvement procedure, with processimprovement proposal (PIP) forms and facilitiesCopyright © 1994 Carnegie Mellon University8Process Formats There are many possible process formats. A convenient format is helpful but not critical. The textbook follows the principles ofinformation mapping.Copyright © 1994 Carnegie Mellon University9Information Mapping The principles of information mapping•group information into manageable chunks•place only like things together in chunks•provide a label for each chunk•be consistent with terms, organization, format•use tables, illustrations, diagrams•write at the most usable level of detail•provide a clear hierarchy of chunksCopyright © 1994 Carnegie Mellon University10Process Architecture - 1 Process architecture: a conceptual frameworkfor consistently incorporating, relating, andtailoring process elements into enactableprocesses An effective process architecture•provides consistency among processes•facilitates unit process development andreuse•identifies missing process elements•enables the use of consistent support tools•provides a common measurement frameworkCopyright © 1994 Carnegie Mellon University11Process Architecture - 2 Process architectures will ultimately be veryhelpful in guiding process development. At present, no general process architectureshave been developed and there are noguidelines for their development. Until we have experience with developingmultiple related processes, we will not likely beable to develop sound process architecturalprinciples and guidelines.Copyright © 1994 Carnegie Mellon University12Defining the Software Process The steps in defining a software process are•determine agent needs and priorities•define process objectives, goals and qualitycriteria•characterize the target process•characterize the current process•establish the development strategy•define the initial process•validate the initial process•install and enhance the processCopyright © 1994 Carnegie Mellon University13Agent Needs and Priorities - 1 The actions involved in determining agentneeds and priorities are•identify the potential process agents•determine the nature of the products that theprocess is to produce•identify the principal product attributes•determine the relative priorities of theseattributes•determine the process features needed toproduce these attributesCopyright © 1994 Carnegie Mellon University14Agent Needs and Priorities - 2 Note the relationships among the productattributes and the process features•strong•medium•weak Categorize these process features into priorities•HP - high priority•P - priority•N - needed•NN - not neededCopyright © 1994 Carnegie Mellon University15Objectives, Goals, Quality To determine the process objectives, goals, andquality criteria define what a good processwould look like to each using constituency.•the product customer•the agents•project management•organization management Considering the agent’s needs, set compositeproduct and process objectives.Copyright © 1994 Carnegie Mellon University16PSP Example Using the PSP as an example, define the usingconstituencies.•the developers of the PSP•agents using the PSP Specify the nature of products to be produced.•small experimental programs•the PSP process•process improvement dataCopyright © 1994 Carnegie Mellon University17Example Product Priorities - 1 Highest priority•meet the program functional objectives•minimize the number of defectsCopyright © 1994 Carnegie Mellon University18Example Product Priorities - 2 Priority•meet the performance objectives•minimize the development time•maintain the development cost within 10% ofplanCopyright © 1994 Carnegie Mellon University19Example Product Priorities - 3 Needed•an easy to use product•a maintainable end product•a reusable object asset libraryCopyright © 1994 Carnegie Mellon University20Example Process Priorities - 1 Highest priority•process improvement feedback•comprehensive process measurements•a fully planned and tracked processCopyright © 1994 Carnegie Mellon University21Example Process Priorities - 2 Priority•assure minimum latent product errors•minimize test and rework cost•maximize process predictabilityCopyright © 1994 Carnegie Mellon University22Example Process Priorities - 3 Needed•minimize cycle time•minimize development resourceCopyright © 1994 Carnegie Mellon University23Example Goals and Criteria - 1 Goal 1: learn how to produce an effective PSP•process
View Full Document