1 / 28

Understanding Software Process Management for Efficient Development

Learn about defining, measuring, and evaluating software processes to enhance productivity and quality. Explore process description, measurement types, metrics normalization, and quality assessment.

rojasa
Download Presentation

Understanding Software Process Management for Efficient Development

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Computing and SE IIChapter 15: Software Process Management Er-Yu Ding Software Institute, NJU

  2. Main Contents Activities of Process Management Defining Process Process Measurement Process Evaluation

  3. 1. Activities of Process Management

  4. 1. Activities of Process Management Specific work to do Definition tasks Defining Process Monitoring executions of tasks Process Measurement Evaluation executions of tasks Process Evaluation

  5. 2. Defining Process A set of processes is chosen that will meet the organization’s unique needs Common software process models are references Process definition may be the bulk of the work, especially for lower-maturity organizations Software life cycles are references Processes must be relevant, correct, consistent, useful, flexible, extensible, and adaptable.

  6. 2. Defining Process

  7. 2. Defining Process ---Process Description Policy – A statement of the organizational expectations for the process, when and under what conditions the process is to be followed, and why it is needed Process – Used to name the “what” level of process description. Outlines what the process accomplishes, activities, roles, deliverables, and portraying component interconnections

  8. 2. Defining Process --- Process Description Procedure – defines “how” each component part of the process is conducted; a step-by-step description is made that identifies specific techniques, methods, and tools to be used. Role – a defined set of role titles and descriptions should be used consistently; roles may be responsible for, accountable for, consultedwith, or informed of an event

  9. 2. Defining Process --- Process Description Activity – “Work that is performed to carry out a process. This generic term is used to refer to a breakdown into phases, steps, tasks, and so on, and sometimes organized into a hierarchy of work detail into a process description.” Work Products – “The tangible items consulted while performing an activity or produces as a result of performing the activity. Synonyms are ‘deliverable’ and ‘artifact’.”

  10. 3. Process Measurement process project metrics process metrics measurement product metrics product Making the process visible and controllable!

  11. 3. Process Measurement ---Measurement, Measures, Metrics Measurement is the act of obtaining a measure Measure provides a quantitative indication of the size of some product or process attribute Metric is a quantitative measure of the degree to which a system, component, or process possesses a given attribute

  12. 3. Process Measurement --- Types of Measures Direct Measures (internal attributes) Cost, effort, LOC, speed, memory Indirect Measures (external attributes) Functionality, quality, complexity, efficiency, reliability, maintainability

  13. 3. Process Measurement --- Process Metrics majority focus on quality achieved as a consequence of a repeatable or managed process statistical SQA data error categorization & analysis defect removal efficiency propagation from phase to phase reuse data

  14. 3. Process Measurement --- Project Metrics Effort/time per SE task Errors uncovered per review hour Scheduled vs. actual milestone dates Changes (number) and their characteristics Distribution of effort on SE tasks

  15. 3. Process Measurement --- Product Metrics focus on the quality of deliverables measures of analysis model complexity of the design internal algorithmic complexity architectural complexity data flow complexity code measures measures of process effectiveness e.g., defect removal efficiency

  16. 3. Process Measurement --- Normalization for Metrics Normalized data are used to evaluate the process and the product (but never individual people) size-oriented normalization —the line of code approach function-oriented normalization —the function point approach

  17. 3. Process Measurement --- Typical Size-Oriented Metrics errors per KLOC (thousand lines of code) defects per KLOC $ per LOC page of documentation per KLOC errors / person-month LOC per person-month $ / page of documentation

  18. 3. Process Measurement --- Typical Function-Oriented Metrics errors per FP (thousand lines of code) defects per FP $ per FP pages of documentation per FP FP per person-month

  19. 3. Process Measurement --- Object-Oriented Metrics Number of scenario scripts (use-cases) Number of support classes (required to implement the system but are not immediately related to the problem domain) Average number of support classes per key class (analysis class) Number of subsystems (an aggregation of classes that support a function that is visible to the end-user of a system)

  20. 3. Process Measurement --- Measuring Quality Correctness — the degree to which a program operates according to specification Maintainability—the degree to which a program is amenable to change Integrity—the degree to which a program is impervious to outside attack Usability—the degree to which a program is easy to use

  21. 3. Process Measurement --- Defect Removal Efficiency DRE = (errors) / (errors + defects) where errors = problems found before release defects = problems found after release

  22. 3. Process Measurement --- Example : Productivity and Process Quality

  23. 4. Process Evaluation “The quality of a software product is governed by the quality of the process used to develop and maintain it” Focus on process as well as product. Evaluating process and improving it

  24. 4. Process Evaluation ---Software Process Improvement Process model SPI Process improvement recommendations Improvement goals Process metrics

  25. 4. Process Evaluation --- CMM(I) Assessment A software process assessment is an appraisal by a trained team of software professionals to determine state of an organization's software process, high-priority software process-related issues and to obtain support for software process improvement

  26. 4. Process Evaluation --- The Five Levels of CMM(I) Continuously Improving Process 5.Optimizing Focus on process improvement 4. Managed Predictable Process Managing Change Process measured and controlled Standard, Consistent Process 3. Defined Product and Process Quality Process characterized, fairly well understood 2. Repeatable Disciplined Process Integrated Engineering Process Can repeat previously mastered tasks 1. Initial Project Management Unpredictable and poorly controlled

  27. The End Activities of Process Management Defining Process Process Measurement Process Evaluation

  28. The End Readings None Next Lecture Software Quality Management

More Related