160 likes | 275 Views
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. Ch 1 OOA/D. UML and patterns UML is a collection of techniques, a notation One case study throughout text NextGenPOS
E N D
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 91.3913 Ron McFadyen
Ch 1 OOA/D • 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 91.3913 Ron McFadyen
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 Player 1 2 Die name rolls 1 faceValue 2 plays 1 includes DiceGame 1 faceValue 91.3913 Ron McFadyen
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) :DiceGame die1:Die die2:Die play() roll() getFaceValue() roll() getFaceValue() 91.3913 Ron McFadyen
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 name faceValue 1 2 roll() getFaceValue() rolls 1 plays 1 2 DiceGame faceValue includes 1 play() 91.3913 Ron McFadyen
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 91.3913 Ron McFadyen
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 91.3913 Ron McFadyen
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 91.3913 Ron McFadyen
Figure 2.4 Illustrates the activities in UP used to develop a system • Iterative development is central to the UP 91.3913 Ron McFadyen
Figure 2.3 illustrates the 4 phases comprising the UP More requirements gathering More programming 91.3913 Ron McFadyen
Section 2.7 Waterfall Development Process analysis design implementation testing • 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 maintenance 91.3913 Ron McFadyen
Section 2.7 Waterfall Development Process analysis design implementation testing maintenance • Not iterative • errors in earlier phases are really expensive to fix • doesn’t allow for prototyping which is a strong aid for confirming requirements 91.3913 Ron McFadyen
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 91.3913 Ron McFadyen
NextGen POS Layered architecture 91.3913 Ron McFadyen
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 Inception Ch 4-8 Elaboration Iteration 1 Ch 9-20 The elaboration phase Text uses 3 iterations to develop NextGenPOS Note that Java code is presented in Ch 20 Elaboration Iteration 2 Ch 21-23 Iteration 3 Elaboration Ch 24-34 91.3913 Ron McFadyen
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 91.3913 Ron McFadyen