Lecture Software process improvement: Lesson 5 provide students with knowledge about: process models; software process; software engineering; process trade-off factors; process standardization; customization and standardization;... Please refer to the detailed content of the lecture!
Trang 1Process Models
Lecture # 5
Trang 2• Software development can be exceedingly complex and there are often many
Trang 3software professionals through tasks, which can be performed in a number of ways, in
an orderly way
• This results in the establishment of a
process definition they can understand
Trang 4• This enable software professionals to better understand
Trang 5• Operational definitions are “something
everyone can communicate about and work to” – Deming
• They provides organizations with a
permitting individual adjustments to unique needs
5
Trang 6• Software engineering is not a routine
activity that can be structured and
regimented like repetitive manufacturing or clerical procedure
• It is an intellectual process that must
dynamically adjust to the creative needs of the professionals and their tasks; tradeoff is
6
Trang 7• Since software projects have differences, their software engineering processes must have differences as well
• In the absence of a universal software
engineering process, organizations and
projects must define processes that meet their own unique needs
Trang 8Process Tradeoff Factors 2
• The process used for a given project must consider the experience level of the
members, current product status and the
available tools and facilities
Trang 9• Let’s see what are the compelling reasons for process standardization
9
Trang 10Process Standards 1
• Process standardization helps to reduce the problems of training, review, and tool
support
• With standard methods, each project’s
experiences can contribute to overall
process improvement
Trang 12• The conflicting needs for customization and standardization can often be resolved by
into tailored process models
12
Trang 13• The term software refers to a program and all the associated information and materials needed to support its installation, operation, repair, and enhancement
13
Trang 14• Software Engineering Process
– The total set of software engineering activities needed to transform a user’s requirements into software
Trang 16• Careful analysis results in …
16
Trang 18• Typically taskoriented
Trang 19• The fundamental problem with simplistic U –level software process models is that they
19
Trang 21Software design
Programming and
unit testing
System testing
System operation
Trang 22Risk analysis Risk
analysis Risk
analysis
Risk analysis Proto-
Simulations, models, benchmarks
S/W requirements Requirement
validation Design V&V
Product design Detailed
design Code Unit test Integr ation test Acceptance
test Service Develop, verify
next-level product
Evaluate alternatives identify, resolve risks
Determine objectives alternatives and constraints
Plan next phase
Integration and test plan
Development plan
Requirements plan Life-cycle plan
REVIEW
Trang 23• The model becomes very difficult if not
impossible to understand
23
Trang 24• When such process models are used to
guide the process automation, project
management, or contract administration, the resulting process rigidity can cause serious problems
24
Trang 25• The question, therefore, is not “what is the
is the most appropriate way to model this process for this purpose?”
25
Trang 26• W process models are most useful to
practicing software engineers
• It guides the sequence of their working tasks and defines task prerequisites and results
• They look like procedures
Trang 28• “A” process models are enormously
detailed
• They are used to automate specific process activity or use a standardized method or
procedure to guide execution of a task
Trang 29• Precise data definitions, algorithmic
specifications, information flows, and user procedures are essential at this level
Trang 31– What are standards and/or tools?
Trang 32• Policies establish a high level framework
and set of principles that guide the overall behavior of organizations
Trang 33• All work will be subjected to an inspection before it is incorporated in a baseline
• The quality of each product, at the time of new shipment, shall be better than its
predecessor or leading competitor
33
Trang 34• All commitments for software cost or
delivery will be supported by a documented and approved software engineering plan
Trang 3535
Trang 36• At the Wlevel, for example, a procedure
might define the points at which Quality
Assurance reviews are to be conducted and how resulting issues are to be handled
• This might specify what percent of work is to be reviewed , how statistical samples are to be
selected, and whether , when , how SQA
independently tests or monitors the software
engineering work as it is being done
36
Trang 38• The developers would use this standard to guide their actions
• The SQA people would review their actions and work products against this standard
38
Trang 4040
Trang 41• Managing the Software Process by Watts S. Humphrey (Chapter 13.113.6)
41