Tải bản đầy đủ (.pdf) (87 trang)

Lecture Software process improvement: Lesson 32 - Dr. Ghulam Ahmad Farrukh

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.03 MB, 87 trang )

Process Patterns
Lecture # 32

1


Process
• A series of actions in which one or more 
inputs are used to produce one or more 
outputs

2


Patterns
• A general solution to a common (recurring) 
problem or issue, one from which a specific 
solution may be derived
• Patterns can exist at all scales
– Christopher Alexander

3


Process Patterns
• A process pattern is a collection of general 
techniques, actions, and/or tasks (activities) 
for developing software
• A process pattern describes what you 
should do but not the exact details of how 
you should do something



4


Process Patterns
• When applied together in an organized 
manner, process patterns can be used to 
construct software process for your 
organization

5


Process Patterns
• Since process patterns do not specify how 
to perform a given task, they can be used as 
reusable building blocks from which you 
may tailor a software process that meets the 
specific needs of your organization
– Why?

6


Process Patterns
• Software development patterns come in 
many flavors, including but not limited to 
analysis patterns, design patterns, 
organizational patterns, and process patterns
• A process pattern is a pattern which 

describes a proven, successful approach 
and/or series of actions for developing 
software
7


Process Patterns
• It can be argued that process patterns and 
organizational patterns go hand in hand
• Organizational patterns describe common 
management techniques or organizational 
structures
• Organization patterns describe proven, 
successful approaches for organizing and 
managing people involved with the 
software process

8


Process Patterns
• An important feature of process patterns is 
that it is possible to develop them for all 
aspects of development
• The point to be made is that the scope of a 
single process pattern may range from a 
high­level view of how applications are 
developed to a more­detailed view of a 
specific portion of the software process
9



Types of Process Patterns
• There are at least three types of process 
patterns that we are interested in

10


Following slide to be inserted
Types of Process Patterns

11


Types of Process Patterns
• Task process patterns
• Stage process patterns
• Phase process patterns

12


Task Process Patterns
• Task process patterns depict the detailed 
steps to perform a specific task, such as the 
Technical Review and Reuse First process 
patterns

13



Stage Process Patterns
• Stage process patterns depict the steps, 
which are often performed iteratively, of a 
single project stage
• A project stage is a higher­level form of 
process pattern, one that is often composed 
of several task process patterns
• A stage process pattern is presented for 
each project stage such as the Program and 
Rework stages
14


Phase Process Patterns ­ 1
• Phase process patterns depict the 
interactions between the stage process 
patterns for a single project phase, such as 
Initiate and Delivery phases
• A phase process pattern is a collection of 
two or more stage process patterns
• Project phases are performed in a serial 
manner, this is true of both structured 
15
development and object development


Phase Process Patterns ­ 2
• Phase process patterns are performed in 

serial order, made up of stage process 
patterns which are performed iteratively

16


Documenting Process Patterns

17


• We can combine the existing work in 
process patterns with that of the existing 
process improvement community
• The implication is the need for a 
format/template that both communities 
understand and agree to
• In that light, let’s discuss one way of 
documenting a process pattern
18


Following slide to be inserted
Process Patterns Format

19


Process Patterns Format









Name
Forces
Initial context/Entry conditions
Solution
Resulting context/Exit conditions
Related Patterns
Known Uses/Examples
20


Name
• Provide a concise, strong name for the 
pattern, such as Program or Reuse First

21


Forces
• Applicable forces motivating the process 
pattern

22



Initial Context/Entry Conditions
• Indicate the situation to which the pattern 
solution applies, and if applicable the entry 
conditions that must be true before the 
process may begin

23


Solution
• Describe in detail how to perform the 
steps/activities of the process pattern. You 
may also choose, particularly for phase and 
stage process patterns, to describe 
management, quality assurance, and risk 
management issues, as well as indicate 
potential metrics to collect when working 
the process
24


Resulting Context/Exit 
Conditions
• Indicate the situation/context which will 
result from performing the process pattern 
solution, including if applicable the 
conditions that must be true for the process 
to be considered complete


25


×