SlideShare a Scribd company logo
1 of 19
RUP 
RATIONAL UNIFIED PROCESS 
Behnam Akbari 
06 Oct 2014 
1
Topics 
 What is RUP? 
 RUP Overview. 
 RUP phases & Disciplines. 
 RUP good practice. 
2
What is the Rational Unified Process? 
3
What is the Rational Unified Process? 
 The Rational Unified Process® or RUP® is a software engineering process 
developed by Rational Software, IBM 
 It provides a disciplined approach to assigning tasks and responsibilities 
within a development organization. 
 Its goal is to ensure the production of high-quality software that meets 
the needs of its end-users, within a predictable schedule and budget. 
 It is a guide for how to effectively use the Unified Modeling 
Language(UML). 
 The Rational Unified Process is a configurable process. No single process 
is suitable for all software development. 
 The Unified Process fits small development teams as well as large 
development organizations. 
4
RUP Overview: 
 described from 2 perspectives 
 A dynamic perspective that shows 
phases over time; 
 A static perspective that shows 
process activities; 
5
RUP Overview: 
 The first dimension represents time and 
shows the lifecycle aspects of the process 
as it unfolds. 
– it is enacted, and it is expressed in 
terms of phases, iterations, and milestones. 
 The second dimension represents the static 
aspect of the process. 
– how it is described in terms of process 
components, disciplines, activities,workflows, 
artifacts, and roles. 
 The graph shows how the emphasis varies 
over time. 
– For example, in early iterations, spend 
more time on requirements, and in later 
iterations, spend more time on 
implementation. 
6
RUP Phases: 
 TheRational Unified Process divides one development cycle in four 
consecutive phases. The software lifecycle is broken into cycles, 
each cycle working on a new generation of the product. 
• Inception phase 
• Elaboration phase 
• Construction phase 
• Transition phase 
 Each phase is concluded with a well-defined milestone ,a point in 
time at which certain critical decisions must be made, and 
therefore key goals must have been achieved 
7
Inception Phase: 
 During the inception phase, you establish the business case for the system and 
delimit the project scope. To accomplish this you must identify all external 
entities with which the system will interact (actors) and define the nature of 
this interaction at a high-level. This involves identifying all use cases. 
 Milestone: 
• Stakeholder concurrence on scope definition and cost/schedule estimates. 
• Requirements understanding as evidenced by the fidelity of the primary use 
cases. 
• Credibility of the cost/schedule estimates, priorities, risks, and development 
process. 
• Depth and breadth of any architectural prototype that was developed. 
• Actual expenditures versus planned expenditures. 
 The project may be cancelled or considerably re-thought if it fails to pass this 
milestone. 
8
Elaboration Phase: 
 Elaboration is the second of the four phases in the RUP approach. The goal of the 
Elaboration phase is to define and baseline the architecture of the system in order to provide 
a stable basis for the bulk of the design and implementation effort in the Construction 
phase. The architecture evolves out of a consideration of the most significant requirements 
(those that have a great impact on the architecture of the system) and an assessment of risks. 
 ? 
 Is vision Stable? 
 Is architecture stable? 
 Does executable show true risk management? 
 Is next phase (Construction) plane is accurate? 
 Does current vision could be achieved? 
 Is the actual resource expenditure versus planned expenditure 
acceptable? 
9
Construction Phase: 
 During the construction phase, all remaining components and 
application features are developed and integrated into the 
product, and all features are thoroughly tested. 
 System design, programming and testing. 
 The Construction phase ends with an important project milestone, 
which is used to determine whether the product is ready to be 
deployed into a beta test environment by answering (among 
others) the following questions 
• Is this product release stable and mature enough to be deployed in the user 
community? 
• Are all stakeholders ready for the transition into the user community? 
• Are the actual resource expenditures versus planned expenditures still 
acceptable? 
10
Transition Phase: 
 The transition phase is entered when a baseline is mature enough to be 
deployed in the end-user domain. 
 Once the product has been given to the end user, issues usually arise that 
require you to develop new releases, correct some problems, or finish the 
features that were postponed. 
• “beta testing” to validate the new system against user expectations 
• conversion of operational databases 
• training of users and maintainers 
• roll-out the product to the marketing, distribution, and sales teams 
11
Iterations: 
 Each phase in the Rational Unified Process can be further broken 
down into iterations. An iteration is a complete development loop 
resulting in a release (internal or external) of an executable product, 
a subset of the final product under development, which grows 
incrementally from iteration to iteration to become the final system. 
• Risks are mitigated earlier 
• Change is more manageable 
• The project team can learn along the way 
• Better overall quality 
12
Static Aspect of RUP: 
 Static dimension of RUP consist of Some Roles ,Activities , Artifacts 
and workflows. 
Workflow is a way to describe meaningful sequences of activities that 
produce some valuable result and to show interactions between 
roles.Roles in RUP are assigned to Workers , and preparing an artifact 
assign to Roles . Activities shows how a Role will do an assignment. 
 Static Elements 
• Worker (Who) 
• Activity (How) 
• Artifact (What) 
• Workflows or Disciplines (when) 
13
Worker,Activity ,Artifact: 14
workflows in the RUP: 
 Business modelling: The business processes are modelled using 
business use cases. 
 Requirements :Actors who interact with the system are identified 
and use cases are developed to model the system requirements. 
 Analysis and design: A design model is created and documented 
using architectural models, component models, object models and 
sequence models. 
 Implementation: The components in the system are implemented 
and structured into implementation sub-systems. Automatic code 
generation from design models helps accelerate this process. 
 Testing: Testing is an iterative process that is carried out in 
conjunction with implementation. System testing follows the 
completion of the implementation. 
15
workflows in the RUP: 
 Deployment:A product release is created, distributed to users and 
installed in their workplace. 
 Configuration and change management:This supporting workflow 
managed changes to the system 
 Project management:This supporting workflow manages the system 
development 
 Environment:This workflow is concerned with making appropriate 
software tools available to the software development team. 
16
RUP Good Practice: 
 Develop software iteratively 
Plan increments based on customer priorities and deliver highest priority 
increments first. 
 Manage requirements 
Explicitly document customer requirements and keep track of changes to 
these requirements. 
 Use component-based architectures 
Organize the system architecture as a set of reusable components. 
 Visually model software 
Use graphical UML models to present static and dynamic views of the 
software. 
17
RUP Good Practice: 
 Verify software quality 
Ensure that the software meet’s organizational quality standards. 
 Control changes to software 
Manage software changes using a change management system and 
configuration management tools. 
18
END 
19

More Related Content

What's hot

What's hot (20)

What Is Agile Scrum
What Is Agile ScrumWhat Is Agile Scrum
What Is Agile Scrum
 
Scrum In 15 Minutes
Scrum In 15 MinutesScrum In 15 Minutes
Scrum In 15 Minutes
 
Introduction to Bdd and cucumber
Introduction to Bdd and cucumberIntroduction to Bdd and cucumber
Introduction to Bdd and cucumber
 
Scrum Training
Scrum TrainingScrum Training
Scrum Training
 
Agile Scrum software methodology
Agile Scrum software methodologyAgile Scrum software methodology
Agile Scrum software methodology
 
Agile testing - Testing From Day 1
Agile testing - Testing From Day 1Agile testing - Testing From Day 1
Agile testing - Testing From Day 1
 
Agile Overview
Agile OverviewAgile Overview
Agile Overview
 
QA-presentation
QA-presentationQA-presentation
QA-presentation
 
What is Scrum? SlideShare
What is Scrum? SlideShareWhat is Scrum? SlideShare
What is Scrum? SlideShare
 
Introduction To Scrum
Introduction To ScrumIntroduction To Scrum
Introduction To Scrum
 
Agile Project Management (Workshop)
Agile Project Management (Workshop)Agile Project Management (Workshop)
Agile Project Management (Workshop)
 
Scrum refinement
Scrum refinementScrum refinement
Scrum refinement
 
Scrum for Beginners
Scrum for BeginnersScrum for Beginners
Scrum for Beginners
 
What is Agile Methodology?
What is Agile Methodology?What is Agile Methodology?
What is Agile Methodology?
 
Introduction agile scrum methodology
Introduction agile scrum methodologyIntroduction agile scrum methodology
Introduction agile scrum methodology
 
Herramientas para la automatización de pruebas en el proceso de certificación...
Herramientas para la automatización de pruebas en el proceso de certificación...Herramientas para la automatización de pruebas en el proceso de certificación...
Herramientas para la automatización de pruebas en el proceso de certificación...
 
Agile Software Development Overview
Agile Software Development OverviewAgile Software Development Overview
Agile Software Development Overview
 
Scrum In Ten Slides
Scrum In Ten SlidesScrum In Ten Slides
Scrum In Ten Slides
 
BDD WITH CUCUMBER AND JAVA
BDD WITH CUCUMBER AND JAVABDD WITH CUCUMBER AND JAVA
BDD WITH CUCUMBER AND JAVA
 
Automated Test Framework with Cucumber
Automated Test Framework with CucumberAutomated Test Framework with Cucumber
Automated Test Framework with Cucumber
 

Viewers also liked (7)

The Future of User Interfaces
The Future of User InterfacesThe Future of User Interfaces
The Future of User Interfaces
 
Getting Started With Version Control
Getting Started With Version ControlGetting Started With Version Control
Getting Started With Version Control
 
Cultural Factor Analysis in Project Management
Cultural Factor Analysis in Project ManagementCultural Factor Analysis in Project Management
Cultural Factor Analysis in Project Management
 
Spam and Anti Spam Techniques
Spam and Anti Spam TechniquesSpam and Anti Spam Techniques
Spam and Anti Spam Techniques
 
Rup
Rup Rup
Rup
 
RUP model
RUP modelRUP model
RUP model
 
Rational Unified Process
Rational Unified ProcessRational Unified Process
Rational Unified Process
 

Similar to Rup

process models- software engineering
process models- software engineeringprocess models- software engineering
process models- software engineering
Arun Nair
 
CH02_Software_development_life_cycle (1).pptx
CH02_Software_development_life_cycle (1).pptxCH02_Software_development_life_cycle (1).pptx
CH02_Software_development_life_cycle (1).pptx
KhcThKhnhHuyn1T20ACN
 

Similar to Rup (20)

Rational unified process lecture-5
Rational unified process lecture-5Rational unified process lecture-5
Rational unified process lecture-5
 
Lec_Rational Unified Process
Lec_Rational Unified ProcessLec_Rational Unified Process
Lec_Rational Unified Process
 
process models- software engineering
process models- software engineeringprocess models- software engineering
process models- software engineering
 
Software Engineering Methodology
Software Engineering MethodologySoftware Engineering Methodology
Software Engineering Methodology
 
CH02_Software_development_life_cycle (1).pptx
CH02_Software_development_life_cycle (1).pptxCH02_Software_development_life_cycle (1).pptx
CH02_Software_development_life_cycle (1).pptx
 
SE Lecture 2.ppt
SE Lecture 2.pptSE Lecture 2.ppt
SE Lecture 2.ppt
 
An overview of software development methodologies.
An overview of software development methodologies.An overview of software development methodologies.
An overview of software development methodologies.
 
vnd.openxmlformats-officedocument.presentationml.presentation&rendition=1.pptx
vnd.openxmlformats-officedocument.presentationml.presentation&rendition=1.pptxvnd.openxmlformats-officedocument.presentationml.presentation&rendition=1.pptx
vnd.openxmlformats-officedocument.presentationml.presentation&rendition=1.pptx
 
RUP
RUPRUP
RUP
 
software engineering
software engineering software engineering
software engineering
 
Software models
Software modelsSoftware models
Software models
 
Software Maintenance
Software MaintenanceSoftware Maintenance
Software Maintenance
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software Engineering
 
Process Models IN software Engineering
Process Models IN software EngineeringProcess Models IN software Engineering
Process Models IN software Engineering
 
Week_02.pptx
Week_02.pptxWeek_02.pptx
Week_02.pptx
 
ISE_Lecture Week 2-SW Process Models.ppt
ISE_Lecture Week 2-SW Process Models.pptISE_Lecture Week 2-SW Process Models.ppt
ISE_Lecture Week 2-SW Process Models.ppt
 
Software Development Life Cycle (SDLC)
Software Development Life Cycle (SDLC)Software Development Life Cycle (SDLC)
Software Development Life Cycle (SDLC)
 
Unified process
Unified processUnified process
Unified process
 
Tiara Ramadhani - Program Studi S1 Sistem Informasi - Fakultas Sains dan Tekn...
Tiara Ramadhani - Program Studi S1 Sistem Informasi - Fakultas Sains dan Tekn...Tiara Ramadhani - Program Studi S1 Sistem Informasi - Fakultas Sains dan Tekn...
Tiara Ramadhani - Program Studi S1 Sistem Informasi - Fakultas Sains dan Tekn...
 
3. ch 2-process model
3. ch 2-process model3. ch 2-process model
3. ch 2-process model
 

Recently uploaded

+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
Health
 
The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is inside
shinachiaurasa2
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
masabamasaba
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
VishalKumarJha10
 

Recently uploaded (20)

Announcing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareAnnouncing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK Software
 
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionIntroducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
 
The Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdfThe Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdf
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand
 
%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...
 
Exploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdfExploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdf
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
SHRMPro HRMS Software Solutions Presentation
SHRMPro HRMS Software Solutions PresentationSHRMPro HRMS Software Solutions Presentation
SHRMPro HRMS Software Solutions Presentation
 
The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is inside
 
Define the academic and professional writing..pdf
Define the academic and professional writing..pdfDefine the academic and professional writing..pdf
Define the academic and professional writing..pdf
 
Generic or specific? Making sensible software design decisions
Generic or specific? Making sensible software design decisionsGeneric or specific? Making sensible software design decisions
Generic or specific? Making sensible software design decisions
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
 

Rup

  • 1. RUP RATIONAL UNIFIED PROCESS Behnam Akbari 06 Oct 2014 1
  • 2. Topics  What is RUP?  RUP Overview.  RUP phases & Disciplines.  RUP good practice. 2
  • 3. What is the Rational Unified Process? 3
  • 4. What is the Rational Unified Process?  The Rational Unified Process® or RUP® is a software engineering process developed by Rational Software, IBM  It provides a disciplined approach to assigning tasks and responsibilities within a development organization.  Its goal is to ensure the production of high-quality software that meets the needs of its end-users, within a predictable schedule and budget.  It is a guide for how to effectively use the Unified Modeling Language(UML).  The Rational Unified Process is a configurable process. No single process is suitable for all software development.  The Unified Process fits small development teams as well as large development organizations. 4
  • 5. RUP Overview:  described from 2 perspectives  A dynamic perspective that shows phases over time;  A static perspective that shows process activities; 5
  • 6. RUP Overview:  The first dimension represents time and shows the lifecycle aspects of the process as it unfolds. – it is enacted, and it is expressed in terms of phases, iterations, and milestones.  The second dimension represents the static aspect of the process. – how it is described in terms of process components, disciplines, activities,workflows, artifacts, and roles.  The graph shows how the emphasis varies over time. – For example, in early iterations, spend more time on requirements, and in later iterations, spend more time on implementation. 6
  • 7. RUP Phases:  TheRational Unified Process divides one development cycle in four consecutive phases. The software lifecycle is broken into cycles, each cycle working on a new generation of the product. • Inception phase • Elaboration phase • Construction phase • Transition phase  Each phase is concluded with a well-defined milestone ,a point in time at which certain critical decisions must be made, and therefore key goals must have been achieved 7
  • 8. Inception Phase:  During the inception phase, you establish the business case for the system and delimit the project scope. To accomplish this you must identify all external entities with which the system will interact (actors) and define the nature of this interaction at a high-level. This involves identifying all use cases.  Milestone: • Stakeholder concurrence on scope definition and cost/schedule estimates. • Requirements understanding as evidenced by the fidelity of the primary use cases. • Credibility of the cost/schedule estimates, priorities, risks, and development process. • Depth and breadth of any architectural prototype that was developed. • Actual expenditures versus planned expenditures.  The project may be cancelled or considerably re-thought if it fails to pass this milestone. 8
  • 9. Elaboration Phase:  Elaboration is the second of the four phases in the RUP approach. The goal of the Elaboration phase is to define and baseline the architecture of the system in order to provide a stable basis for the bulk of the design and implementation effort in the Construction phase. The architecture evolves out of a consideration of the most significant requirements (those that have a great impact on the architecture of the system) and an assessment of risks.  ?  Is vision Stable?  Is architecture stable?  Does executable show true risk management?  Is next phase (Construction) plane is accurate?  Does current vision could be achieved?  Is the actual resource expenditure versus planned expenditure acceptable? 9
  • 10. Construction Phase:  During the construction phase, all remaining components and application features are developed and integrated into the product, and all features are thoroughly tested.  System design, programming and testing.  The Construction phase ends with an important project milestone, which is used to determine whether the product is ready to be deployed into a beta test environment by answering (among others) the following questions • Is this product release stable and mature enough to be deployed in the user community? • Are all stakeholders ready for the transition into the user community? • Are the actual resource expenditures versus planned expenditures still acceptable? 10
  • 11. Transition Phase:  The transition phase is entered when a baseline is mature enough to be deployed in the end-user domain.  Once the product has been given to the end user, issues usually arise that require you to develop new releases, correct some problems, or finish the features that were postponed. • “beta testing” to validate the new system against user expectations • conversion of operational databases • training of users and maintainers • roll-out the product to the marketing, distribution, and sales teams 11
  • 12. Iterations:  Each phase in the Rational Unified Process can be further broken down into iterations. An iteration is a complete development loop resulting in a release (internal or external) of an executable product, a subset of the final product under development, which grows incrementally from iteration to iteration to become the final system. • Risks are mitigated earlier • Change is more manageable • The project team can learn along the way • Better overall quality 12
  • 13. Static Aspect of RUP:  Static dimension of RUP consist of Some Roles ,Activities , Artifacts and workflows. Workflow is a way to describe meaningful sequences of activities that produce some valuable result and to show interactions between roles.Roles in RUP are assigned to Workers , and preparing an artifact assign to Roles . Activities shows how a Role will do an assignment.  Static Elements • Worker (Who) • Activity (How) • Artifact (What) • Workflows or Disciplines (when) 13
  • 15. workflows in the RUP:  Business modelling: The business processes are modelled using business use cases.  Requirements :Actors who interact with the system are identified and use cases are developed to model the system requirements.  Analysis and design: A design model is created and documented using architectural models, component models, object models and sequence models.  Implementation: The components in the system are implemented and structured into implementation sub-systems. Automatic code generation from design models helps accelerate this process.  Testing: Testing is an iterative process that is carried out in conjunction with implementation. System testing follows the completion of the implementation. 15
  • 16. workflows in the RUP:  Deployment:A product release is created, distributed to users and installed in their workplace.  Configuration and change management:This supporting workflow managed changes to the system  Project management:This supporting workflow manages the system development  Environment:This workflow is concerned with making appropriate software tools available to the software development team. 16
  • 17. RUP Good Practice:  Develop software iteratively Plan increments based on customer priorities and deliver highest priority increments first.  Manage requirements Explicitly document customer requirements and keep track of changes to these requirements.  Use component-based architectures Organize the system architecture as a set of reusable components.  Visually model software Use graphical UML models to present static and dynamic views of the software. 17
  • 18. RUP Good Practice:  Verify software quality Ensure that the software meet’s organizational quality standards.  Control changes to software Manage software changes using a change management system and configuration management tools. 18

Editor's Notes

  1. یک فرآیند مهندسی نرم افزار است که یک روش منظم برای تعیین وظایف و مسؤولیت ها در یک سازمان تولید کننده نرم افزار ارائه می دهد. هدف آن، اطمینان از تولید نرم افزار با کیفیت بالاست که نیازهای کاربران نهایی را با زمان بندی و بودجه ی قابل پیش بینی برآورده سازد. همانطور که از این تعریف پیداست، پروسه تولید نرم افزار روشی است که برای بهتر انجام شدن روند انجام پروژه های نرم افزاری از آن استفاده می شود . تا کنون در صنعت نرم افزار Rapid Prototyping ،Waterfall : روشهای گوناگونی برای تولید نرم افزار ارائه شده اند مانند برای هر نوع از این فرآیند ها .Object Oriented و Iterative & Incremental ،Spiral ،(RAD1) Oracle ،SSADM هم تا کنون گروه ها و شرکت های مختلف فرآیندهایی معرفی کرده اند، مانند در زیر چند روش تولید . RUP و Uinfied Process ،Booch ،Oracle CDM ،Case * Method نرم افزار که شناخته شده تر هستند بصورت مختصر معرفی شده اند. پرکاربردترین فرآیند تولید و توسعه ،Rational متدولوژی ارائه شده توسط شرکت ،RUP پذیرفته شده IT نرم افزاری در دنیای کنونی است و به عنوان یک استاندارد صنعتی بالفعل در دنیای است. مزیت بزرگ این متدولوژی، استفاده از روش تکرار در تولید و مدیریت تولید نرم افزار است که این امر، امکان تولید مبتنی بر کاهش ریسک و مواجه با مشکلات اصلی در ابتدای کار و در نتیجه احتمال موفقیت بیشتر را فراهم می کند.
  2. • محور افقی نمایانگر زمان است و با پیشرفت خود جنبه های چرخه ی حیات فرآیند را نشان می دهد. (بعد اول) • محور عمودی نشان دهنده ی دیسیپلین ها است که فعالیت ها را با استفاده از ماهیتشان به صورت منطقی دسته بندی می کند. (بعد دوم) در سطرهای افقی نمایش داده شده اند و فازها در ستون های عمودی . RUP دیسیپلین های همانگونه که مشاهده می شود وزن فعالیت های دیسیپلین های مختلف با توجه به تکرارها و فازها متغییر است . و همانگونه که پیش از این گفته شد در هر فاز ممکن است یک یا چند تکرار وجود داشته باشد و در هر تکرار عملیات دیسپیلین های مختلف انجام می گیرند.
  3. انجام هر پروژه به چند قسمت تقسیم می شود که به هر کدام از این قسمت ها فاز گفته م ی شود. فازهای یک پروژه نشان دهنده تاکید بیشتر بر روی زمین ه های ک اری مختلف یک پروژه می باشند.
  4. Milestoneمجموعه ای از دست آوردها –با ویژگی های مشخص - که رسیدن به آنها مجوزی برای رفتن به مرحله بعدی انجام پروژه می باشد. هدف اصلی این فاز دستیابی به توافق میان کلیه ی ذینفعان بر روی اهداف چرخه ی حیات پروژه است. اهداف اصلی فاز آغازین شامل موارد زیر است : • بدست آوردن محدوده نرم افزاری پروژه و محدودیت های آن که شامل یک دید عملیاتی، معیار پذیرش و اینکه چه چیز باید در محصول باشد و چه چیز نباید باشد، می شود. مشخص کردن Use-Caseهای اساسی سیستم، سناریوهای اصلی عملیات که مسائل مربوط به طراحی اصلی را ایجاد می کند. • نمایش و شاید توضیح حداقل یک معماری کاندیدا برای بعضی سناریوهای اصلی • برآورد هزینه و زمان کلی برای کل پروژه
  5. هدف فاز جزئیات تعیین معماری کلی سیستم به منظور فراهم آوردن یک زمینه ی مناسب برای قسمت عمده ی طراحی و پیاده سازی در فاز ساخت است. • اطمینان از اینکه معماری، نیازمندی ها و طرح ها به اندازه ی کافی پایدارند و ریسک ها به اندازه ی کافی کاهش یافته اند بطوریکه بتوان هزینه و زمان بندی لازم برای تکمیل تولید را پیش بینی کرد . برای اکثر پروژه ها، گذر از این مرحله ی مهم مانند انتقال از یک عملیات سبک و سریع و با ریسک پایین به یک عملیات با هزینه و ریسک بالا همراه با اجبار سازمانی است. • بیان همه ی ریسک های پروژه که از نظر ساختاری اهمیت دارند. • ایجاد یک معماری پایه، مشتق شده از سناریوهای مهم که از لحاظ ساختاری اهمیت دارند، که این معماری ریسک های فنی عمده پروژه را نیز مشخص می کند. • تولید یک نمونه ی اولیه ی تکاملی از مولفه های با کیفیت تولیدی خوب، و همچنین یک یا چند نمونه ی اولیه ی اکتشافی و نمونه های اولیه ی غیر قابل استف اده
  6. هدف این فاز واضح سازی نیازمندی های باقیمانده و تکمیل تولید سیس تم بر اساس معماری مبنا می باشد. فاز ساخت به نوعی یک فرآیند ساخت 1 است که در آن تأکید بر مدیریت منابع و کنترل عملیات به منظور بهینه سازی هزینه ها، زمان بندی ها و کیفیت است. اهداف اصلی فاز ساخت شامل موارد زیر می باشد : • کمینه کردن هزینه های تولید با بهینه سازی منابع و پرهیز از دور انداختن و دوباره کاری غیر ضروری • دستیابی هرچه سریعتر به کیفیت کافی • دستیابی هر جه سریعتر به ویرایش های مفید (آلفا، بتا و سایر نسخه های تست) • کامل کردن تحلیل، طراحی، تولید و تست کارآیی مورد نیاز • تولید تکراری و گام به گام یک محصول کامل که آماده ی انتقال به محیط کاربران باشد • تصمیم در مورد اینکه آیا نرم افزار، سایت ها و کاربران همه برای استقرار طرح آمادگی دارند
  7. تمرکز این فاز بر این است که تضمین نماید نرم افزار برای کاربران نهایی آماده می باشد. فاز انتقال می تواند به چندین تکرار تقسیم شود، و شامل تست کردن محصول برای آماده سازی جهت انتشار و ایجاد تنظیم ات کوچک بر اساس بازخورد کاربر می باشد. اهداف مهم فاز انتقال عبارتند از : • تست بتا برای تشخیص اعتبار سیستم جدید با توجه به انتظارات کاربر • تست بتا و عملیات موازی همراه با یک سیستم قدیمی که در حال جایگزینی می باشد. • تبدیل پایگاه های داده ی عملیاتی • آموزش کاربران و نگهداری کنندگان • بازاریابی، توزیع و فروش برای نخستین انتشار محصول • تنظیم فعالیت ها از قبیل رفع اشکال، افزایش کارایی و قابلیت استفاده • ارزیابی خط مبناهای استقرار در مقایسه با تصویر کلی و معیار قابلیت قابل قبول برای محصول • دستیابی به موافقت ذینفع در مورد اینکه خط مبناهای استقرار کامل می باشند • دستیابی به موافقع ذینفع در مور ای نکه خط مبناهای استقرار با معیار ارزیابی تصویر کلی سازگارند.
  8. متدولوژی از یک روند تکراری و تکاملی پیروی می کند . بدین معنی که در طی چرخه ی عمر تولید یک محصول، تعدادی تکرار 1 در نظر گرفته شده است بگونه ای که در هر تکرار با انجام فعالیت های مربوط به دیسیپلین های مختلف، سعی می شود یکی از ریسک های مهم پروژه رفع شود، در انتهای تکرار یک محصول ارائه خواهد شد
  9. (Role) به هر نقش در rupگفته می شود . نقش نمایشگر مجموعه ای از رفتارها و مسئولیتهای یک فرد یا چند نفر از یک تیم توسعه می باشد . توجه شود که نقش با شخصی که آن نقش را بازی می ک ند تفاوت دارد عبارتند از : مدیر پروژه، برنامه نویس، تحلیلگر RUP. مثالهایی از نقش های سیستم، تست کننده و ... Activityکاری که هر نقش باید انجام بدهد و این کار نتیجه ای با ارزش برای پروژه دارد. فعالیت ها ورودی و خروجی هایی دارند که با نام دست آورد شناخته می شوند. Artifactدست آوردها لزوماً یک مستند کاغذی مثل نیستند و می توانند یک قطعه برنامه، UML Diagram یک ، Database وغیره باشند. Dicsiplinesدیسیپلین مجموعه ای از کارهای به هم مرتبطی است که برای انجام جنبه خاصی. از یک پروژه انجام می شوند Workflowsهر جریان کار مجموعه ای از فعالیت های مربوط به یک دیسیپلین است که با ترتیب خاصی انجام می شوند و در نهایت به تولید نتایج قابل مشاهده ای (دست آورد) منجر گردند.
  10. دیسیپلین مدل سازی کسب و کار توضیح می دهد که برای رسیدن به این هدف چگونه می توان یک تصویر کلی از سازمان را تو لید نمود، و براساس این تصویر کلی فرآیندها، نقش ها ومسؤولیت های آن سازمان را در یک مدل use-case کسب وکار و یک مدل شیء کسب و کار تعریف کرد. اهداف دیسیپلین نیازمندی ها عبارتند از : • تشخیص و نگهداری موارد توافق با مشتری ها و سایر ذینفعان در مورد کارهایی که سیستم باید انجام دهد. • فرآهم آوردن شناخت بهتر از نیازمندی های سیستم برای تولید کنندگان سیستم • تعریف مرزها و حدود سیستم اهداف تحلیل و طراحی عبارتند از: • تبدیل نیازمندی ها به طراحی سیستم که قرار است بوجود آید. • پیدایش یک معماری مستحکم برای سیستم • سازگار ساختن طراحی برای هماهنگ شدن با محیط پیاده سازی و طراحی آن برای کارایی بهتر اهداف پیاده سازی عبارتند از : • تعریف سازمان کد، برحسب زیر مجموعه ای از مجموعه های پیاده سازی سازمان یافته در لایه ها • پیاده سازی کلاس ها و اشیاء بوسیله مؤلفه ها (فایل های منبع، باینری ها، فایل هایاجرایی و ...) • تست اجزاء تولید شده به عنوان واحد ها Test: • یافتن و مستند کردن نقایص در کیفیت نرم افزار • آگاهی دادن در مورد کیفیت نرم افزار بررسی شده • اثبات اعتبار فرضیاتی که در طراحی و مشخصات نیازمندی ها ساخته شدند، ازطریق نمایش های واقعی • تصدیق عملکردهای محصول نرم افزار همانطور که طراحی شده است. • تصدیق اینکه نیازمندی ها بدرستی پیاده سازی شده اند.
  11. دیسیپلین استقرار فعالیت هایی را توضیح می دهد که تضمین می کنند محصول نرم افزاری برای کاربران نهایی اش در دسترس می باشد. دیسیپلین استقرار سه حالت استقرار محصول را توضیح می دهد : • نصب اختصاصی • آماده فروش کردن محصول نهایی • دستیابی به نرم افزار از طریق اینترنت دیسیپلین محیط بر فعالیت هایی که برای پیکربندی فرآیند برای یک پروژه لازم و ضروری اند، متمرکز می شود. این دیسیپلین فعالیت های مورد نیاز برای تولید رهنمودهایی که در جهت پشتیبانی از یک پروژه لازم می باشند را توضیح می دهد مدیریت پروژه نرم افزاری، هنر متوازن ساختن اهداف متقابل، مدیریت ریسک و غلبه بر محدودیت ها برای تحویل موفقیت آمیز محصولی است که هم نیازهای مشتریان ( کسانی که برای سیستم پول می پردازند) و هم نیازهای کاربران را برآورده کند پیکربندی و درخواست تغییر 2، تغییرات را به سمت خروجی های یک پروژه کنترل می کند و همچنین صحت و تمامیت خروجی های پروژه را حفظ می کند.