Presentation is loading. Please wait.

Presentation is loading. Please wait.

Unified Modeling Language(UML) AND Rational Unified Process(RUP)

Similar presentations


Presentation on theme: "Unified Modeling Language(UML) AND Rational Unified Process(RUP)"— Presentation transcript:

1 Unified Modeling Language(UML) AND Rational Unified Process(RUP) ySHIN,JANGWOO(shinj@gradient.cis.upenn.edu)

2 OUTLINE zINTRODUCTION zUnified Modeling Language zReal-Time Programming in UML zRational Unified Process zDEMO Rational Rose(tm) zQ & A zReferences

3 SCOPE OF THE PRESENTATION zWhat is NOT ? yStill another OOAD tutorial yReview of the UML notations yRational OO Tool sales zThen what is it? yIndustrial standard approach to real OO yTouch of both language and process

4 THE LAST METHOD WAR IN 1990’s zBrief history of UML UML 1.1 UML 1.0 UML 1.3 Feb. ‘99 Unified Method 0.8 Booch ‘93 OMT - 2 OOSE OMT - 1 Booch ‘91 Mellor, Yourdon, Odell, Etc.

5 THE THREE AMIGOS Grady Booch Dr.James RumbaughDr.Ivar Jacobson

6 WHO CARES ABOUT UML? Results of AltaVista(US) Search hits(as of 11/2/98) Formal Method : 2,208 Structured Analysis : 5,360 Real-Time System : 7,730 Monica Lewinski : 20,750 C++ Language : 49,099 UML : 62,100 Stock Market : 177,398 Object-Oriented : 274,789 Y2K : 698,060 Java : 8,945,473 Sex : 13,985,476

7 MOTIVATIONS FOR MODELING zMaking A Dog House ySimple material/tool yNo need for helper yCan freshly restart anytime yCost for failure is nominal z Building Your House yMore material/tool yReasonable planning required

8 ypre-built materials with sub-contractors yCost for failure is medium-high zConstructing A Skyscraper yMassive spending of "others' money" yMany things to consider : Aesthetic feature, economy, versatility, etc. yAbsurd to try "DIY” yRisk/Cost for failure is almost unbearable

9 MODELING SOFTWARE zControl the complexity through abstraction zVisualize the system as it is or as want it to be zSpecify the structure and behavior of a system zProvide a template that guide the implementors in constructing a system zDocument the decisions we have made zVarious Modeling Methods yStructured Analysis and Design yEntity-Relationship Model yObject-Oriented Model

10 THREE AMIGOS SAID...

11 UML AND 4+1 VIEW Use Case Diagram & scenario Class Diagram : Logical View Activity Diagram : Process View State Diagram : Process View Interaction Diagrams : Process View Sequence Diagram Collaboration Diagram Package(Component) Diagram : Development View Deployment Diagram : Physical View * Diagrams are orthogonal views of a model

12 UML REDEFINED zUML is a language for yvisualizing yspecifying yconstructing ydocumenting software models zUML is not ya Visual Programming Language yonly for software systems

13 USE CASE DIAGRAM yA use case models the interaction between the system and an actor yAn actor invokes a certain functionality of the system yGranularity: A use case is a complete and meaningful flow of events yTaken together, all use cases constitute all possible ways of using the system ySeveral use cases may overlap

14 EXAMPLE - USE CASE DIAGRAM

15 USE CASE DIAGRAM(CONT)

16 USE CASE NOTATION

17 CLASS DIAGRAM zTop level is package diagram zShows all/some classes in the system zRelationships among classes yGeneralization(is-a-kind-of) yAssociation(relates-to) yAggregation(has-a) zAttributes and Operations with scope

18 CLASS DIAGRAM(TOP LEVEL)

19 CLASS DIAGRAM

20 CLASS DIAGRAM - EXAMPLE

21 ACTIVITY DIAGRAM zAction States(undecomposable) and Activity States(decomposable) are connected by Triggerless transitions zObject Swimlanes zBetter to show concurrency using Fork and Join than State-machine zBranch with Guard Expression zNot offered in Rose (yet)

22 ACTIVITY DIAGRAM - EXAMPLE OHP #1

23 STATE DIAGRAM zModel the lifetime of EACH object zEvent/Guard Conditions/Action associated with a transition zConcurrency can be shown zSub-machine concept

24 STATE DIAGRAM - NOTATION

25 INTERACTION DIAGRAM zSEQUENCE DIAGRAM ybetter to show the workflows zCOLLABORATION DIAGRAM ybetter to show object inter-relations zPer Use case secenarios zShows actions between Objects

26 SEQUENCE DIAGRAM

27 COLLABORATION DIAGRAM

28 PACKAGE DIAGRAM zStandard Stereotype includes yFacade : Part of a package viewable to some other package yFramework : Patterns(See Gang of Five book) ySubsystem : Package representing independent part of the system ySystem : Package representing the whole system zTop Level view of the class diagram

29 DEPLOYMENT DIAGRAM zNodes are some computing resources(Processor or Device) zH/W and S/W allocation diagram zPerformance concerns zDistributed Systems design

30 DEPLOYMENT DIAGRAM - EXAMPLE

31 REAL-TIME SYSTEMS AND UML zJoint-developed by Rational and ObjecTime yCapsules as a special class yPorts sends signals and queues incoming signals yConnectors connects each ports zSupports Real-Time OS's xWindRiver Systems' VxWorks xIntegrated Systems' pSOS, xMicrotec's VRTX

32 REAL-TIME UML EXAMPLE

33 REAL-TIME UML COLLABORATION DIAGRAM

34 RATIONAL UNIFIED PROCESS(RUP) Software Projects: "Unsuccessful software projects fail in their unique ways, but all successful projects are alike in many ways” The Keys to success: right people; right tool; right focus

35 OUTLINE - RUP zWhat is it? zProcess Architecture zKey Features of RUP zCore Process Workflows zImplementing the process

36 WHAT IS RUP? zProcess Product : yCollective know-hows on why a successful project works zExtensive tool uses and Process workflow integrated zA new breed of Process On-line & Process Manuals w/ 20,000+ licensees

37 PROBLEMS ADDRESSED zIterative S/W Development xability to deal with changing requirements xindependent of heroic programmers xdiscovery of serious flaws earlier as possible xincorporates both management and technical perspectives xAvoid big-bang on the product release date zGoal : Provide a disciplined approach to assigning tasks and responsibilities

38 OVERALL ARCHITECTURE OF RUP

39 FOUR PHASES zInception xDefining scope of the project zElaboration xPlanning the necessary Activities and resources xBaselining the architecture zConstruction xImplementation phase zTransition xTransitioning the product into its user community

40 INCEPTION PHASE yEntry Criteria xoriginal vision, asses, legacy system, needs yExit Criteria xSuccess Criteria xInitial Risk Assessment xResource Estimate for Elaboration Phase yTop Key 20% Use-Cases to drive Architectural Effort yMilestone : Lifecycle Objectives(LCO) xConceptual Prototype yGo-no-go decision

41 ELABORATION PHASE yEntry Criteria xConceptual Prototype from Inception Phase xList of Assets (Software, Know-how, Financial assets) yExit Criteria xSoftware development plan(risk assessment, staffing, iteration plan, etc) xA set of evaluation criteria for the final product xSoftware Architecture Description yMilestone : Lifecycle Architecture(LCA) xGo-no-go decision

42 CONSTRUCTION PHASE yEntry Criteria xArtifacts of the previous iteration xRisk being migrated from the previous iteration xAdditional capabilities beng developed, use cases and scenarios being covered xDefects being fixed during the iteration yExit Criteria xRelease Description xIteration plan of the next iteration xevaluation criteria of the next iteration

43 CONSTRUCTION PHASE(CONT) yAdditional exit criteria toward the end of the Construction phase iterations : xpackaging/pricing/roll out /support/traning/production plans xuser documentation yMilestone : Initial Operational Capability(IOC) "beta"

44 TRANSITION PHASE yEntry Criteria xSuffciently mature product to release to the user community yExit Criteria xSoftware delivered xUpdated document

45 RUP INTEGRATES TOOLS zSales Pitch zRationalRose : Visual Modeling zRequisitePro : Requirement Management zSQA-Suite : Automated Testing zSoDA : Automated Documentation zRationalApex : Iterative C++ and Ada development tool

46 RATIONAL ROSE DEMO zWhat is it? yIntegrated visual modeling tool supports UML yPrimitive code generator yRound-trip engineening supported zWhat Rose can’t do: xHomogenizing Use Cases xClass combining/splitting/eliminating xConsistency Check between static and dynamic views(Surprise) xEvent Tracing

47 GREETINGS FROM THREE AMIGOS

48 REFERENCES UML Grady Booch, James Rumbaugh, Ivar Jacobson, The Unified Modeling Language User Guide, Addison-Wesley, 1998 Philippe Kruchten, "The 4+1 View Model of Architecture," IEEE Software, 12(6), Nov 1995, pp42-50 Martin Fowler, Kendall Scott, UML Distilled: Applying the Standard Object Modeling Language, Addison-Wesley, 1998 http://www.rational.com http://www.iLogix.com Real-Time & UML http://www.objectime.com Bruce Powel Douglas, Real-Time UML, Addison-Wesley, 1998

49 Rational Unified Process Ivar Jacobson, Object-Oriented Software Engineering, A-W, 1994 Philippe Kruchten, http://www.rational.com/support/techpapers/devprcs/ Philippe Kruchten, Rational Unified Process, Tutorial Notes from OOPSLA '98 Rational Rose Terry Quatrani, Visual Modeling with Rational Rose and UML, A-W, 1998 Software Architecture Mary Shaw, "Comparing Architectural Design Styles," IEEE Software, 12(6), Nov 1995, pp27-41


Download ppt "Unified Modeling Language(UML) AND Rational Unified Process(RUP)"

Similar presentations


Ads by Google