Software engineering -1

Slides:



Advertisements
Similar presentations
Unified process(UP) UP is an OO system development methodology offered by Rational(Rational Rose) s/w, now a part of IBM Developed by Booach,Rambaugh,Jacobson--
Advertisements

Chapter 3 Prescriptive Process Models
CS487 Software Engineering Omar Aldawud
Chapter 3 Process Models
Arlow and Neustadt ch.21 What is the unified process? People are more important than any process. Good people with a good process will outperform good.
Chapter 2 Software Process Models
1 Prescriptive Process Models. 2 Prescriptive Models Prescriptive process models advocate an orderly approach to software engineering Prescriptive process.
Requirements - Why What and How? Sriram Mohan. Outline Why ? What ? How ?
Iterative development and The Unified process
Objectives Explain the purpose and various phases of the traditional systems development life cycle (SDLC) Explain when to use an adaptive approach to.
Chapter 6 View Alignment Techniques and Method Customization (Part I) Object-Oriented Technology From Diagram to Code with Visual Paradigm for UML Curtis.
Principles of Object Technology Module 1: Principles of Modeling.
What is UML? What is UP? [Arlow and Neustadt, 2005] January 23, 2014
UML - Development Process 1 Software Development Process Using UML (2)
Introduction to RUP Spring Sharif Univ. of Tech.2 Outlines What is RUP? RUP Phases –Inception –Elaboration –Construction –Transition.
Unified Software Development Process (UP) Also known as software engineering process SEP describes how requirements are turned into software Defines who,
RUP Fundamentals - Instructor Notes
2Object-Oriented Analysis and Design with the Unified Process Objectives  Explain the purpose and various phases of the traditional systems development.
Chapter 2 The process Process, Methods, and Tools
-Nikhil Bhatia 28 th October What is RUP? Central Elements of RUP Project Lifecycle Phases Six Engineering Disciplines Three Supporting Disciplines.
Software Processes lecture 8. Topics covered Software process models Process iteration Process activities The Rational Unified Process Computer-aided.
Software development process ธนวัฒน์ แซ่ เอียบ. The development process Process –set of rules which define how a development project. Methodology and.
1/23 Prescriptive Process Models. 2/23 Prescriptive Models Prescriptive process models advocate an orderly approach to software engineering Prescriptive.
Unified Modeling Language* Keng Siau University of Nebraska-Lincoln *Adapted from “Software Architecture and the UML” by Grady Booch.
Fifth Lecture Hour 9:30 – 10:20 am, September 9, 2001 Framework for a Software Management Process – Life Cycle Phases (Part II, Chapter 5 of Royce’ book)
Rational Unified Process Mr Hisham AlKhawar. Iterative versus Waterfall  We need to use a life cycle model in order to approach developing a system easily,
2 2009/10 Object Oriented Technology 1 Topic 2: Introduction to Object-Oriented Approach Reference: u Ch.16 Current Trends in System Development (Satzinger:
Chapter 13: Software Life Cycle Models Omar Meqdadi SE 273 Lecture 13 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
Chapter 8 Workflows of the Process Taken from Walker Royce’s textbook – Software Project Management plus a number of Personal Comments.
The principles of an object oriented software development process Week 04 1.
Overview of RUP Lunch and Learn. Overview of RUP © 2008 Cardinal Solutions Group 2 Welcome  Introductions  What is your experience with RUP  What is.
Ivar Jacobson, Grady Booch, and James Rumbaugh The Unified Software Development Process Addison Wesley, : James Rumbaugh's OOMD 1992: Ivar Jacobson's.
Rational Unified Process Fundamentals Best Practices of Software Engineering Rational Unified Process Fundamentals Best Practices of Software Engineering.
Meghe Group of Institutions Department for Technology Enhanced Learning 1.
Unified Software Practices v 5.0 Copyright  1998 Rational Software, all rights reserved 1 R Rational Unified Process  “de facto standard”, framework.
Unified Process Software Development Darren Roback/Ravali Kallem CMIS Fall 2009.
RUP RATIONAL UNIFIED PROCESS Behnam Akbari 06 Oct
Review of Definitions Software life cycle: –Set of activities and their relationships to each other to support the development of a software system Software.
Software Development Framework
Iterative development and The Unified process
TK2023 Object-Oriented Software Engineering
Process 4 Hours.
Chapter 3 Prescriptive Process Models
CSC 355 – Newer Approaches to System Development Life Cycles & Processes, Spring 2017 March 2017 Dr. Dale Parson.
Chapter 1: Introduction to Systems Analysis and Design
What is UML? What is UP? [Arlow and Neustadt, 2005] October 5, 2017
Process Models.
Unified Process Source & Courtesy: Jing Zou.
UNIFIED PROCESS.
Approaches to Systems Development
UML: Unified modeling language
Software Processes.
Prescriptive Process Models
Requirements and the Software Lifecycle
Introduction to Software Engineering
COMP 350: Object Oriented Analysis and Design Lecture 2
Object Oriented Analysis and Design
Rational Worldwide Software Symposium
Rational Unified Process
Chapter 2 – Software Processes
Rational Worldwide Software Symposium
The Unified/Rational Unified Process (UP/RUP) Defined
Chapter 3 Prescriptive Process Models
SOFTWARE LIFE-CYCLES Beyond the Waterfall.
Chapter 1: Introduction to Systems Analysis and Design
Rational Worldwide Software Symposium
Chapter 1: Introduction to Systems Analysis and Design
Prescriptive Process Models Pertemuan-3
CSCI 360: Software Architecture & Design
Presentation transcript:

Software engineering -1 SE-1-Session 4 12/28/2018 Software engineering -1

Unified/Rational unified process modeling-RUP 12/28/2018 Software engineering -1

Rational Unified Process (RUP) Rational Unified Process (RUP) is called after the Rational Corporation (subsequently acquired by IBM), an early contributor to the development and refinement of the UP and a builder of complete environments (tools and technology) that support the process. 12/28/2018 Software engineering -1

Software engineering -1 History of RUP During the early 1990s James Rumbaugh, Grady Booch, and Ivar Jacobson began working on a “unified method” that would combine the best features of each of their individual object-oriented analysis and design methods and adopt additional features proposed by other experts. The result was UML—a unified modeling language that contains a robust notation for the modeling and development of object-oriented systems. By 1997,UML became a de facto industry standard for object-oriented software development. UML is used to represent both requirements and design models. 12/28/2018 Software engineering -1

Software engineering -1 History of RUP UML provided the necessary technology to support object-oriented software engineering practice, but it did not provide the process framework to guide project teams in their application of the technology. Over the next few years, Jacobson, Rumbaugh and Booch developed the Unified Process, a framework for object-oriented software engineering using UML. Today, the Unified Process (UP) and UML are widely used on object-oriented projects of all kinds. The iterative, incremental model proposed by the UP can and should be adapted to meet specific project needs. 12/28/2018 Software engineering -1

Software engineering -1 Why we need RUP Need for a “use case driven, architecture-centric, iterative and incremental” software process. Today, the trend in software is toward bigger, more complex systems. That is due in part to the fact that computers become more powerful every year, leading users to expect more from them. This trend has also been influenced by the expanding use of the Internet for exchanging all kinds of information. Our appetite for ever-more sophisticated software grows as we learn from one product release to the next how the product could be improved. 12/28/2018 Software engineering -1

Software engineering -1 We want software that is better adapted to our needs, but that, in turn, merely makes the software more complex. In short, we want more. In some ways the Unified Process is an attempt to draw on the best features and characteristics of traditional software process models, but characterize them in away that implements many of the best principles of agile software development. 12/28/2018 Software engineering -1

Software engineering -1 The Unified Process recognizes the importance of customer communication and streamlined methods for describing the customer’s view of a system. It emphasizes the important role of software architecture and “helps the architect focus on the right goals, such as understandability, reliance to future changes, and reuse” . It suggests a process flow that is iterative and incremental, providing the evolutionary feel that is essential in modern software development. 12/28/2018 Software engineering -1

Software engineering -1 Phases of RUP The inception phase of the UP encompasses both customer communication and planning activities. By collaborating with stakeholders, business requirements for the software are identified; a rough architecture for the system is proposed; and a plan for the iterative, incremental nature of the ensuing project is developed. Prepare Project Environments. Fundamental business requirements are described through a set of preliminary use cases that describe which features and functions each major class of users desires. 12/28/2018 Software engineering -1

Software engineering -1 Architecture at this point is nothing more than a tentative outline of major subsystems and the function and features that populate them. Later, the architecture will be refined and expanded into a set of models. That will represent different views of the system Planning identifies resources, assesses major risks, defines a schedule, and establishes a basis for the phases that are to be applied as the software increment is developed. 12/28/2018 Software engineering -1

Software engineering -1 The Elaboration phase encompasses the communication and modeling activities of the generic process model. Elaboration refines and expands the preliminary use cases that were developed as part of the inception phase and expands the architectural representation to include five different views of the software. Five different views—the use case model, the requirements model, the design model, the implementation model, and the deployment model. The architectural baseline demonstrates the viability of the architecture but does not provide all features and function s required to use the system. 12/28/2018 Software engineering -1

Software engineering -1 In addition, the plan is carefully reviewed at the culmination of the elaboration phase to ensure that scope, risks, and delivery dates remain reasonable. Modifications to the plan are often made. 12/28/2018 Software engineering -1

Software engineering -1 The Construction phase of the UP is identical to the construction activity defined for the generic software process. Using the architectural model as input, the construction phase develops or acquires the software components that will make each use case operational for end users. To accomplish this, requirements and design models that were started during the elaboration phase are completed to reflect the final version of the software increment. All necessary and required features and functions for the software increment (i.e., the release) are then implemented in source code. 12/28/2018 Software engineering -1

Software engineering -1 As components are being implemented, unit tests are designed and executed for each. In addition, integration activities (component assembly and integration testing) are conducted. Use cases are used to derive a suite of acceptance tests that are executed prior to the initiation of the next UP phase. 12/28/2018 Software engineering -1

Software engineering -1 The Transition phase of the UP encompasses the latter stages of the generic construction activity and the first part of the generic deployment (delivery and feedback) activity. Software is given to end users for beta testing and user feedback reports both defects and necessary changes. In addition, the software team creates the necessary support information (e.g., user manuals, troubleshooting guides, installation procedures) that is required for the release. At the conclusion of the transition phase, the software increment becomes a usable software release. 12/28/2018 Software engineering -1

Software engineering -1 The Production phase of the UP coincides with the deployment activity of the generic process. During this phase, the ongoing use of the software is monitored, support for the operating environment (infrastructure) is provided, and defect reports and requests for changes are submitted and evaluated. It is likely that at the same time the construction, transition, and production phases are being conducted, work may have already begun on the next software increment. 12/28/2018 Software engineering -1

Software engineering -1 Note The five UP phases do not occur in a sequence, but rather with staggered concurrency. A software engineering workflow is distributed across all UP phases. In the context of UP, a workflow is analogous to a task set . That is, a workflow identifies the tasks required to accomplish an important software engineering action and the work products that are produced as a consequence of successfully completing the tasks. It should be noted that not every task identified for a UP workflow is conducted for every software project. The team adapts the process(actions, tasks, subtasks, and work products) to meet its needs. 12/28/2018 Software engineering -1

Software engineering -1 12/28/2018 Software engineering -1 Life cycle objective Life cycle architecture Initial operational capability

Software engineering -1 12/28/2018 Software engineering -1

Thank you all for your time. 12/28/2018 Software engineering -1