Upload
lynne-parrish
View
215
Download
2
Embed Size (px)
Citation preview
Sept 2004 91.3913 Ron McFadyen 1
Today Sept 16:
Chapters 1, 2, 3
Introductory material
Next Tuesday Sept 21:
Rational Rose and Use Cases
Chapter 6 - Use Cases
Followed by Chapters 9 and 25
Sept 2004 91.3913 Ron McFadyen 2
UML and patterns
UML is a collection of techniques, a notation
One case study throughout text
NextGenPOS
Text makes reference to the UP in order to set UML and the applications of patterns into a context
UP is an iterative development methodology
Iterative is very different from Waterfall
Ch 1 OOA/D
Sept 2004 91.3913 Ron McFadyen 3
Ch 1 OOA/D
OO analysis
Emphasizes finding and describing the objects in the problem domain
Example: playing a dice game
One artifact is the Domain Model
PlayerDie
DiceGame
1
1
1 2
2
1
plays
rolls
includes
name
faceValue
faceValue
Sept 2004 91.3913 Ron McFadyen 4
Ch 1 OOA/D
OO design
Emphasizes defining software objects and how they collaborate to fulfill requirements
To investigate and document the nature of how objects behave, we use interaction diagrams (and other techniques)
die1:Die:DiceGame die2:Die
play()roll()
roll()
getFaceValue()
getFaceValue()
Sept 2004 91.3913 Ron McFadyen 5
Ch 1 OOA/D
OO design
As we design, we assign responsibilities to classes and our domain model evolves to a design class diagram
Player Die
DiceGame
1
1
1 2
2
1
plays
rolls
includes
name faceValue
faceValue
play()
roll()
getFaceValue()
Sept 2004 91.3913 Ron McFadyen 6
Ch 1 OOA/D
Unified Modeling Language (UML)
Standard language for documenting OO systems
Emerged due to efforts of Booch, Rumbaugh and Jacobson – the 3 amigos
Sept 2004 91.3913 Ron McFadyen 7
Ch 2 Iterative Development and the Unified Process (UP)
Presented as an example process/methodology to give some structure/context to the presentation of the case study, UML, and patterns.
•Up is a from the Rational Corporation
•An iterative development process
•each iteration yields a working system
•iterations last anywhere from 2 weeks to 6 months
•many iterations make a project
•risk-driven
•early iterations prove out the major risks or show-stoppers
Sept 2004 91.3913 Ron McFadyen 8
Unified Process
•several activities
•deliverables are referred to as artifacts - works produced (use cases, code, database designs, …)
•Each iteration involves choosing some requirements and quickly designing, implementing and testing
•Relies on feedback. System converges towards the appropriate design
•4 phases
• inception, elaboration, construction, transition
•Inception
•Use case model is started
Sept 2004 91.3913 Ron McFadyen 9
Figure 2.4 Illustrates the activities in UP used to develop a system
•Iterative development is central to the UP
Sept 2004 91.3913 Ron McFadyen 10
Figure 2.3 illustrates the 4 phases comprising the UP
More requirements gathering More programming
Sept 2004 91.3913 Ron McFadyen 11
design
analysis
implementation
testing
maintenance
Waterfall Development Process
Linear
•one phase is completed before the next begins
•in practice, must revise earlier decisions based on experience in project - I.e. there is feedback
Section 2.7
Sept 2004 91.3913 Ron McFadyen 12
design
analysis
implementation
testing
maintenance
Waterfall Development Process
Not iterative
•errors in earlier phases are really expensive to fix
•doesn’t allow for prototyping which is a strong aid for confirming requirements
Section 2.7
Sept 2004 91.3913 Ron McFadyen 13
Ch 3 Case Study: the NextGen POS System
Record sales
Handle payments
Retail store
Interfaces to service applications
Tax calc
Inventory control
Client – web browser
Commercial application – sell to different clients
Sept 2004 91.3913 Ron McFadyen 14
NextGen POS
Layered architecture
Sept 2004 91.3913 Ron McFadyen 15
Elaboration Iteration 1Ch 9-20
Elaboration Iteration 1Ch 9-20
Elaboration Iteration 2Ch 21-23
Elaboration Iteration 2Ch 21-23
Iteration 3 Elaboration Ch 24-34
Iteration 3 Elaboration Ch 24-34
InceptionCh 4-8
InceptionCh 4-8
The inception phase
An initial step to investigate the prospective system, develop a vision, and make a decision to proceed or not
We focus on the Use Case Model that is started in the Inception phase
The elaboration phase
Text uses 3 iterations to develop NextGenPOS
Note that Java code is presented in Ch 20
Sept 2004 91.3913 Ron McFadyen 16
3C13
Lab can be used to work with Rational Rose
Other tools you might use: Argo/UML, Poseidon, Visio, …
Userid/password will be available Next week