Скачать презентацию Unified Process An Introduction Presented by Jing Zou Скачать презентацию Unified Process An Introduction Presented by Jing Zou

69779f95d09ce4a3ee31182f59a7958a.ppt

  • Количество слайдов: 56

Unified Process An Introduction Presented by Jing Zou May 9, 2003 1 Unified Process An Introduction Presented by Jing Zou May 9, 2003 1

Outline • • UP INTRODUCTION(what and why) UP HISTORY THREE KEY ASPECTS LIFECYCLE OF Outline • • UP INTRODUCTION(what and why) UP HISTORY THREE KEY ASPECTS LIFECYCLE OF UP RUP EUP CONCLUSION 2

Preface Good Start Unified Process (UP) is a de facto standard development process within Preface Good Start Unified Process (UP) is a de facto standard development process within the object-oriented and component-based software communities. Product Rational Unified Process (RUP) More Needed Enterprise Unified Process (EUP) is a software process that reflects the full lifecycle of software-based systems. 3

Reasons for UP 1) Software becomes more complex and is updated fast 2) Software Reasons for UP 1) Software becomes more complex and is updated fast 2) Software developers uses methods 3) that are as old as 25 years ago. 3) Development process is diverse 4

Precursor of UP Set of activities to transform a user’s requirements into a software. Precursor of UP Set of activities to transform a user’s requirements into a software. User’s Requirement Software development Process (diversity) Software System UP 5

What does UP do? 1) 2) 3) 4) Provides guidance to the order of What does UP do? 1) 2) 3) 4) Provides guidance to the order of team’s activities Integrates team’s work and individual’s work Specifies artifacts Offers criteria for monitoring and measuring 6

Outline • • UP INTRODUCTION(what and why) UP HISTORY THREE KEY ASPECTS LIFECYCLE OF Outline • • UP INTRODUCTION(what and why) UP HISTORY THREE KEY ASPECTS LIFECYCLE OF UP RUP EUP CONCLUSION 7

History of UP 1 8 History of UP 1 8

History of UP 2 9 History of UP 2 9

About authors Ivar Jacobson James Rumbaugh Grady Booch 10 About authors Ivar Jacobson James Rumbaugh Grady Booch 10

Outline • • UP INTRODUCTION(what and why) UP HISTORY THREE KEY ASPECTS LIFECYCLE OF Outline • • UP INTRODUCTION(what and why) UP HISTORY THREE KEY ASPECTS LIFECYCLE OF UP RUP EUP CONCLUSION 11

3 Key Aspects of UP 1) Use-case driven 2) 2) Architecture-centric 3) 3) Iterative 3 Key Aspects of UP 1) Use-case driven 2) 2) Architecture-centric 3) 3) Iterative and incremental 12

I. Use-Case Driven Use-Case driven means: Development process proceeds through a series of workflows I. Use-Case Driven Use-Case driven means: Development process proceeds through a series of workflows that derive from use cases. 13

 3 Terminologies Users: someone or something that interact with system. Use Case: interaction 3 Terminologies Users: someone or something that interact with system. Use Case: interaction between users and system, ---what is the system supposed to do for each user? Use Case Model: collection of use cases; description of complete functionality 14

 Initiate AND bind 1) Tool for specifying requirements 2) Driving design 1) 3) Initiate AND bind 1) Tool for specifying requirements 2) Driving design 1) 3) Source for testing 15

II. Architecture-Centric Architecture is the view of the whole design with key Characteristics and II. Architecture-Centric Architecture is the view of the whole design with key Characteristics and without too many details Only 5 -10% use cases growth with use case in parallel (structure and function) 16

 Simplified Process 1) Rough outline (use case independent) 2) Subset of the identified Simplified Process 1) Rough outline (use case independent) 2) Subset of the identified use cases (5 -10%) 1) 3) More use cases specified, more architecture discovered 17

 Use case & Architecture Use case drive influence System architecture 18 Use case & Architecture Use case drive influence System architecture 18

III. Iterative and Incremental ? ? Iteration: Steps in the workflow (mini-project) Create a III. Iterative and Incremental ? ? Iteration: Steps in the workflow (mini-project) Create a design for relevant use cases Implement with components Required iteration in logical order for economy Increments: Growth in the product (might not be additive) 19

 Benefits to controlled iteration 1) 2) 3) 4) Reduce the cost risk to Benefits to controlled iteration 1) 2) 3) 4) Reduce the cost risk to the expenditures on a single increment Reduce the risk of delayed product delivery (find the risks earlier) Speed up the tempo of the whole development effort Easier to adapt to the requirement modification 20

Relationship of 3 concepts USE CASE define Goals drive influence ITERATION guide ARCHITECTURE 21 Relationship of 3 concepts USE CASE define Goals drive influence ITERATION guide ARCHITECTURE 21

Outline • • UP INTRODUCTION(what and why) UP HISTORY THREE KEY ASPECTS LIFECYCLE OF Outline • • UP INTRODUCTION(what and why) UP HISTORY THREE KEY ASPECTS LIFECYCLE OF UP RUP EUP CONCLUSION 22

Lifecycle of UP • Each cycle concludes with a product release to customers. • Lifecycle of UP • Each cycle concludes with a product release to customers. • Each cycle consists of 4 phases: 1) Inception 2) Elaboration 3) Construction 4) Transition 23

Phases within the cycle X-abscissa Y-ordinate 24 Phases within the cycle X-abscissa Y-ordinate 24

End of a Cycle At the end, a software product is releasable Finished product End of a Cycle At the end, a software product is releasable Finished product includes 1) requirements 2) use cases 3) nonfunctional requirements 4) test cases 5) artifacts modeled by the UML 25

For New Cycle For every new cycle, we need • • Use-case model Analysis For New Cycle For every new cycle, we need • • Use-case model Analysis model Design model Implementation Model Deployment model Test model Representation of the architecture 26

Phases within the cycle X-abscissa Y-ordinate 27 Phases within the cycle X-abscissa Y-ordinate 27

Phase I --> Inception • Develop a good idea into a vision of the Phase I --> Inception • Develop a good idea into a vision of the end product • Business case for the product is presented -Establish goals -Build business case -Identify essential system requirement -Initiate risk management(cost, time, political environment ) 28

Phase II --> Elaboration Here, architecture is expressed as a view of different models Phase II --> Elaboration Here, architecture is expressed as a view of different models - Develop architecture - Capture functional requirements as use cases - Identify non-functional requirements - Plan the construction - Continue risk management 29

Phase III --> Construction Muscle built : software added to the architecture - Build Phase III --> Construction Muscle built : software added to the architecture - Build the System - Maintain architectural integrity (Architecture is stable but might has minor changes) - Iterative, Incremental -However, is it sufficient to take early delivery? 30

Phase IV --> Transition Products move to beta release. Trial Defects and deficiencies are Phase IV --> Transition Products move to beta release. Trial Defects and deficiencies are reported. Corrections and improvements - Final testing( system, acceptance, beta ) - Training customer personnel - Documentation, installation and consultation - Perform postmortem review 31

Modeling Disciplines of UP Business Modeling: Model the business context, the scope, of the Modeling Disciplines of UP Business Modeling: Model the business context, the scope, of the system. Requirement: Engineer the requirements for the project, Analysis and Design: Evolve a robust architecture for the system Enterprise Management: Encompasses activities that are outside of the scope of a single project, 32

Outline • • UP INTRODUCTION(what and why) UP HISTORY THREE KEY ASPECTS LIFECYCLE OF Outline • • UP INTRODUCTION(what and why) UP HISTORY THREE KEY ASPECTS LIFECYCLE OF UP RUP EUP CONCLUSION 33

RUP and UP UP is more of a philosophy of how to run development RUP and UP UP is more of a philosophy of how to run development projects RUP is Rational commercial product 34

Rational Corporate Introduction Background Introduction Products Introduction: 1) Requirements & analysis Rational Suite® Analyst. Rational Corporate Introduction Background Introduction Products Introduction: 1) Requirements & analysis Rational Suite® Analyst. Studio 2) Visual modeling & development Rational Suite® Development. Studio 3)Automated Testing Rational Suite® Test. Studio® 4)Project Management Rational Unified Process® 5)Configurable Process RUP 35

UML and RUP UML: international standard for object-oriented modeling. RUP uses UML to prepare UML and RUP UML: international standard for object-oriented modeling. RUP uses UML to prepare blueprints of the software How to build a use case diagram? “…We are making inroads into many corporations today, and it's our goal to get there. We don't think it would be an easy thing to make the Unified Process a standard; … And I think that everyone that looks at the Rational Unified Proce convinced this is the way they've got to do it…. ” 36

Successful Cases 1. 2. 3. 4. ARINC, Inc. Lawrence Livermore National Laboratory Smith and Successful Cases 1. 2. 3. 4. ARINC, Inc. Lawrence Livermore National Laboratory Smith and Barney IBM 37

RUP view I 38 RUP view I 38

RUP view II Arrow Diagram 39 RUP view II Arrow Diagram 39

Build Web Solutions with RUP 40 Build Web Solutions with RUP 40

1) 2) 3) 4) 5) 6) Requirement Creative Design Brief Navigation Map Creative Design 1) 2) 3) 4) 5) 6) Requirement Creative Design Brief Navigation Map Creative Design Comps (prototype the user interface) Web Design Elements … 41

42 42

RUP Demos http: //www. rational. com/demos/viewlets/rup_platform/ RUP_Platform_viewlet. html Show demo 1 -8 Show demo RUP Demos http: //www. rational. com/demos/viewlets/rup_platform/ RUP_Platform_viewlet. html Show demo 1 -8 Show demo 23 -30 43

RUP strengths Strength of RUP: 1) Based on sound Sw. E principles 2) Mechanisms RUP strengths Strength of RUP: 1) Based on sound Sw. E principles 2) Mechanisms that provide management visibility into the development process 3) HTML-based description of the RUP 44

RUP weaknesses Weaknesses of RUP: 1) 2) 3) 4) Only developing process, not the RUP weaknesses Weaknesses of RUP: 1) 2) 3) 4) Only developing process, not the entire software process Not supporting multi-system infrastructure development efforts Iterative nature foreign to experienced developers Tool-driven approach, not sufficient for complex system 45

Outline • • UP INTRODUCTION(what and why) UP HISTORY THREE KEY ASPECTS LIFECYCLE OF Outline • • UP INTRODUCTION(what and why) UP HISTORY THREE KEY ASPECTS LIFECYCLE OF UP RUP EUP CONCLUSION 46

Extend RUP to EUP 1) Add processes for operation, support, and maintenance. 2) 2) Extend RUP to EUP 1) Add processes for operation, support, and maintenance. 2) 2) Add support for the management of a portfolio of projects 47

The Lifecycle for the EUP 48 The Lifecycle for the EUP 48

Tailored RUP 49 Tailored RUP 49

Augmented lifecycle for the EUP 50 Augmented lifecycle for the EUP 50

Milestones & Phase Each phase terminates in a milestone (significant point in development) Purposes: Milestones & Phase Each phase terminates in a milestone (significant point in development) Purposes: • Make decision to move on • Enable management/developers to monitor work process • Keep track of time and effort 51

Phase V --> Production Keep software in production until it is 1) Replaced with Phase V --> Production Keep software in production until it is 1) Replaced with a new version 2) Retired and removed from the production 3) 4) (note: no iteration) 52

Phase VI --> Retirement Remove system from production because: 1) No longer needed 2) Phase VI --> Retirement Remove system from production because: 1) No longer needed 2) Being replaced 3) 4) 5) 6) 7) 8) 9) Activities: Comprehensive analysis Redesign and rework of other existing systems Transformation of existing legacy data Archival of data Configuration management of the removed software System integration testing of the remaining system 53

Outline • • UP INTRODUCTION(what and why) UP HISTORY THREE KEY ASPECTS LIFECYCLE OF Outline • • UP INTRODUCTION(what and why) UP HISTORY THREE KEY ASPECTS LIFECYCLE OF UP RUP EUP CONCLUSION 54

Conclusion 1. 6 Best Practices 2. 3. 4. 5. 6. 7. Iterative Software Deployment Conclusion 1. 6 Best Practices 2. 3. 4. 5. 6. 7. Iterative Software Deployment Manage Requirements Component-based architecture Visually model software Quality Control Configuration Management 55

 • RUP is component based. • RUP uses visual modeling standard UML and • RUP is component based. • RUP uses visual modeling standard UML and rely on 3 aspects • Establishes a framework that integrates all different facets such as workflows, risk mitigation, quality control and etc. • Developers can build different models 56