Download presentation
Presentation is loading. Please wait.
Published byDwayne Lawrence Modified over 9 years ago
1
The Software Process Chapter – II
2
Topics S/w Engg – A layered Technology A Process Framework Process Patterns Process Assessment Product and Process Process Technology CMMI (Capability Maturity Model Integration)
3
S/W Engg A Layered Technology The Layers of S/W Engg are- Process A Quality Focus Methods Tools
4
Contd…. S/w Engg is a discipline that integrates process, methods and tools for the development of computer software. The bedrock that supports software engg is a quality focus. Any engg approach must rest on an organization commitment to quality. Total Quality Management, Six Sigma foster a continuous improvement culture.
5
The Process Layer The foundation for S/w engg is the process layer. It is the glue that holds layers together and enables rational and timely development of computer s/w. The s/w process forms the basis for management control, establishes the context in which technical methods are applied work products are produced and milestones are established and quality is ensured and change is properly managed
6
Methods Method provide the technical “how to’s” It includes a broad array of tasks Communication Requirement analysis Design Modelling Program construction Testing and support
7
Tools They provide automated and semi automated support for the process and the methods. Tools can be integrated so that information provided by one tool can be used as input for the other And a system for the support of s/w development called computer aided s/w engg can be developed.
8
A process framework What is it ? When you work to build a system or product its important to go through a series of predictable steps-a road map that helps you to create a timely high quality result. The roadmap that is followed is called a software process. “A process defines who is doing what, and how to reach a certain goal.”
9
Process Frameword A process framework
10
What are the Generic Process Framework Activities? Communication-Involves heavy communication and collaboration with the customer and also incl requirement analysis. Planning- This activity establishes a plan for the s/w engineering work that follows it incl technical task to be completed, risk that are likely to occur and the work product to be produced and the work schedule. Modeling-It allows creation of some models through which s/w engg can better understand the requirements and the design which will better achieve those requirements.
11
Contd… Construction – This activity combines code generation and the testing that is required to uncover the errors. Deployment-The s/w whether partial or complete is delivered to the customer who evaluates the delivered product and gives the necessary feedback based on the evaluation.
12
Umbrella Activities The generic process framework is complemented by a set of activities which are S/w Project Tracking and Control- (maintaining of S/w Schedules) Risk Mgt – assesses the risk that may effect outcome of the project or the quality of the product.
13
Contd… S/w Quality Assurance – Defines and conduct activities required to ensure s/w quality. Formal Technical Reviews-To uncover the errors and remove errors before the propogated to next activity. S/w Configuration Mgt-manages the effect of change throughout the s/w process.
14
Contd… Reusability Management-Define criteria for work product reuse. Work product preparation and production- Includes all other activities required to create work product such as models, documents, logs, forms and files.
15
Task Set The Task set defines the actual work to be done to accomplish the objectives of s/w engg action, for eg requirement analysis is an important engg action. The goal of requirement gathering is to understand what various customers want from that project. Taking an example
16
Contd… For a small and relatively simple project the task set might look like this- a)Make a list of stakeholder for the project. b)Invite all stakeholders for informal meeting. c)Ask each stakeholder to make a list of features and functions required. d)Discuss requirement and build a final list. e)Prioritize reuirements f)Note areas of uncertainity.
17
Contd… For a large project a different task set is required. a)Make a list of stakeholder for the project. b)Interview each stakeholders separately c)Build a preliminary list of functions and features d)Schedule a series of meetings. e)Conduct meetings f)Produce informal user scenarios as a part of meeting g)Build a new list of requirements.
18
Contd.. Use quality factors deployment techniques to prioritize requirements. Note Constraints and requirements Discuss methods for validating the system.
19
Characteristics of software Process Predictability – A process determines how accurately the outcome of following process in the project can be predicted before the project is completed. Predictability can considered fundamental property of any process.for eg if 20 errors per 100 loc have been detected in a past for a process then it is expected that with a high probability this is a range of errors that will be detected during testing in future.Still it is possible that in some projects this may not happen.
20
Support Testability and Maintainability One of the important objectives of the development project should be to produce software that is to maintain. Effort Distribution with Phases Requirement – 10% Design – 20 % Coding – 20% Testing – 50 %
21
How programmers spend their Time Writing programs - 13% Reading programs and manuals – 16% Job Communication – 32% Others – 39% The important observations from the data about effort distribution with phases is that testing consumes the most resources during development.
22
Contd.. Underestimating the testing effort often causes the planners to allocate insufficient resources for testing, which in turn results in unreliable software Overall we can say that the goal of process should not be to reduce the effort of design and coding but to reduce the cost of testing and maintenance.
23
Early Defect Removal and Defect Prevention An example distribution of errors occurrences by phases is Requirement 20% Design 30% Coding 50% As we can see that the errors occur throughout the development process.The greater the delay in detecting an error after it occurs the more expensive it is to correct.
24
Process Improvement Having process improvement as a fundamental objective requires that the software process be a closed loop. That is the process must learn from various experiences and each project done using the existing process should feed information back into the process itself which can then use this information for self improvement.
25
Process Patterns A process pattern provides us with a template – a consistent method for describing an important characteristics of a software process. For example This pattern describes an approach that may be applicable when stakeholders have a general idea of what may be done but are unsure of specific requirements.
26
Pattern Name : Prototyping Intent – The objective of the pattern is to build a model of prototyping that can be accessed iteratively by stakeholders in an effort to identify and solidify software requirements. Type : Phase Pattern Initial Context – Specifies the conditions to be met before execution of process. For this eg
27
1.All the stakeholders have been identified 2.A mode of communication between two has been established 3.An initial understanding of the project has been established. Problem – The next is the recognition of the problem and the problem must also be addressed with a software solution. Solution – A description of the process is provided here.
28
Resulting Context – where the software process is approved by the stakeholders Related Patterns – List of related patterns as customer-communication, customer assessment etc. Known uses / example – Prototyping is recommended where requirements are uncertain.
29
Process Assessment Assessment attempts to understand the software process with the intent of improving it. Reasons for assessment To check so that it meets the customer requirements. To check so that it meets the basic process characteristics For process improvement
30
Assessment Standards The ISO has provided the following two standards for process assessment SPICE – it defines a set of requirements for software process assessment. ISO 9001 : 2000 – Is a generic standard that applies to any organization that wants to improve the overall quality of the products.
31
Process Technology Tools These tools have been developed to help software organizations to analyze their current process, organize work tasks, control and monitor progress and manage technical quality. Tools: Igrafx Process Tools – Distributed by corel corporation is a set that enable a team to map, measure and model the software process Objexis Team portal – Developed by objexis corporation provides full process workflow definition and control.
32
The capability Maturity Model Integration (CMMI) The CMMI is a model provided by SEI. It defines in over 700 pages the process characteristics that should exist if an organization wants to establish a software process which is complete.
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.