Professional Documents
Culture Documents
Characteristics
Introduction to the Waterfall Process
Feasibility Study
Characteristics
Delays confirmation of critical
Unified Process
Evaluation
Deployment
Test
Each iteration
results in an
executable release
3 4
Resilient, Component-Based Purpose of a Component-Based
Architectures Architecture
Resilient Basis for reuse
Component-based Component reuse
Meets current and future requirements
architecture with Architecture reuse
Improves extensibility layers
Basis for project management
Enables reuse
Planning
Encapsulates system dependencies Application- Staffing
Component-based specific
Delivery
Business-
Reuse or customize components specific
Intellectual control
Select from commercially-available components Middleware Manage complexity
Evolve existing software incrementally. System- Maintain integrity.
5 software 6
DocumentList
Use Case 1 FileMgr Document
add( )
Actor A Actor B fetchDoc( ) delete( )
name : int
docid : int
sortByName( ) numField : int
add file [ numberOffile==MAX ] / Writing
flag OFF
get( )
open( ) read() fill the
Use Case 2 close( ) code..
fillDocument( ) close file
add( )
delete( )
1
software
rep
File
Deployment
Repository
read( )
readDoc( )
Collaboration
open( )
readFile( )
create( )
Diagram
fillFile( )
FileManager
Repository DocumentList
Window9 5
Windows9 5
Windows9 5
Identifying and resolving problems earlier result in
more realistic and reliable development schedules
1: Doc view request ( )
2: fetchDoc( ) ¹®¼-°ü¸®
Ŭ¶óÀ̾ ðÆ ®.EXE
4: create ( )
gFile : GrpFile Document ¹®¼-°ü¸® ¾ÖÇà ¸ ´
8: fillFile ( ) Windows
NT
IBM
7: readFile ( ) Mainframe
5: readDoc ( )
document : Document
repository : Repository
µ¥ÀÌŸº£ À̽º¼- ¹ö
user
mainWnd fileMgr :
FileMgr
document :
Document
gFile repository
Component
ƯÁ¤¹® ¼-¿¡ ´ëÇÑ º¸±â¸¦
»ç¿ëÀÚ°¡ ¿äÃ»Ç Ñ´Ù.
1: Doc vie w requ est ( )
Diagram
Target
2: fetchDo c( )
3: create ( )
Forward and
4: create ( )
5: readDo c ( )
System
È-ÀÏ°ü¸®ÀÚ´Â Àоî¿Â 6: fillDocument ( )
¹®¼-ÀÇ Á¤º¸¸¦ ÇØ´ç ¹® ¼-
°´Ã¼¿¡ ¼ ³Á¤À» ¿äÃ»Ç Ñ´Ù.
Reverse
7: readFile ( )
8: fillFile ( )
Engineering
Sequence 7 8
Diagram
Test Each Iteration What Do You Want to Control?
Parallel
UML Workspace
Management Development
model and
implemen- CM is more than ALERT
11 12
A Team-Based Definition of Process Phases in the Process
A process defines who is doing what, when and UP has four phases:
how to reach a certain goal. Inception: Define the scope of project
Elaboration: Plan project, specify features, baseline architecture
Construction: Build the product
Software
Software new or changed Transition: Transition the product into end user community
new or changed
Engineering
requirements Engineering system time
Process
Process
Inception Elaboration Construction Transition
Major
13 Milestones 14
Test Workflow 23 24
Test Model
Workflows Guide Iterative Workflows Guide Iterative
Development Development
Business Modeling: Analysis and Design:
Workflow Details Workflow Details
Requirements: Implementation:
Workflow Details Workflow Details
25 26
⊗
phases of requirement analysis, design, implementation,
integration and test.
UP represents an iterative approach:
It lets you take into account changing requirements.
Integration is not one “big bang” at the end; instead, elements are
integrated progressively. With UP, what used to be a lengthy
time of uncertainty and pain -- taking up to 40% of the total effort
at the end of a project -- is broken down into six to nine smaller
integrations involving fewer elements.
27 28
For More Reading For More Reading
Develop Iteratively Develop Iteratively
Risks are usually discovered or addressed during integration. Project managers often resist the iterative approach,
With the iterative approach, you can mitigate risks earlier.
seeing it as a kind of endless and uncontrolled
Iterative development provides management with a means of
making tactical changes to the product -- to compete with hacking. In UP, the iterative approach is very
existing products, for example. It allows you to release a product controlled; the number, duration, and objectives of
early with reduced functionality to counter a move by a iterations are carefully planned, and the tasks and
competitor, or to adopt another vendor for a given technology.
Iteration facilitates reuse; it is easier to identify reusable
responsibilities of participants are well defined.
components as they are partially designed or implemented than to
recognize them during planning.
When you can correct errors over several iterations, the result is a
more robust architecture.
29 30