Chapter – 1. The UML Approach USECASE DRIVEN ARCHITECTURE CENTRIC ITERATIVE & INCREMENTAL.

Slides:



Advertisements
Similar presentations
Prescriptive Process models
Advertisements

Lecture # 2 : Process Models
CS487 Software Engineering Omar Aldawud
Software Process Model
Chapter 3 Process Models
CHAPTER 1 SOFTWARE DEVELOPMENT. 2 Goals of software development Aspects of software quality Development life cycle models Basic concepts of algorithm.
Software Modeling SWE5441 Lecture 3 Eng. Mohammed Timraz
L4-1-S1 UML Overview © M.E. Fayad SJSU -- CmpE Software Architectures Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I.
The Unified Software Development Process - Workflows Ivar Jacobson, Grady Booch, James Rumbaugh Addison Wesley, 1999.
Chapter 1 Software Development. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 1-2 Chapter Objectives Discuss the goals of software development.
1/31 CS 426 Senior Projects Chapter 1: What is UML? Chapter 2: What is UP? [Arlow and Neustadt, 2005] January 22, 2009.
© Copyright Eliyahu Brutman Programming Techniques Course.
Software Engineering: A Practitioner’s Approach, 6/e Chapter 3 Prescriptive Process Models copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc.
1 CS 426 Senior Projects Chapter 1: What is UML? Chapter 2: What is UP? [Arlow and Neustadt, 2002] January 26, 2006.
The web application development process Basharat Mahmood, COMSATS Institute of Information Technology, Islamabad, Pakistan. 1.
Object Oriented Analysis and Design Using the UML
Enterprise Architecture
Chapter 3 Software Processes.
CIS 321—IS Analysis & Design
UML - Development Process 1 Software Development Process Using UML (2)
UML Unified Markup Language Ziya Karakaya Atılım University, Computer Engineering
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,
1 IBM Software Group ® Mastering Object-Oriented Analysis and Design with UML 2.0 Module 1: Best Practices of Software Engineering.
Software Engineering: A Practitioner’s Approach, 7/e Chapter 2 Prescriptive Process Models copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc.
The Rational Unified Process
© 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1 A Discipline of Software Design.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
Understand Application Lifecycle Management
©Ian Sommerville 2000, Mejia-Alvarez 2009 Slide 1 Software Processes l Coherent sets of activities for specifying, designing, implementing and testing.
Identify steps for understanding and solving the
 CS 5380 Software Engineering Chapter 2 – Software Processes Chapter 2 Software Processes1.
Systems Design Approaches The Waterfall vs. Iterative Methodologies.
Key Takeaway Points A use case is a business process; it begins with an actor, ends with the actor, and accomplishes a business task for the actor. Use.
Lecture 3 Uses Cases Topics UML Use Cases pop quiz Readings: Chapter 3 January 24, 2008 CSCE 492 Software Engineering.
Object Oriented Analysis and Design using the UML CIS 520 Advanced Object-Oriented Design.
Unified Modeling Language* Keng Siau University of Nebraska-Lincoln *Adapted from “Software Architecture and the UML” by Grady Booch.
1 Software Development Software Engineering is the study of the techniques and theory that support the development of high-quality software The focus is.
L6-S1 UML Overview 2003 SJSU -- CmpE Advanced Object-Oriented Analysis & Design Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I College.
CEN5011, Fall CEN5011 Software Engineering Dr. Yi Deng ECS359, (305)
Chapter 4 프로세스 모델 Process Models
PROC-1 1. Software Development Process. PROC-2 A Process Software Development Process User’s Requirements Software System Unified Process: Component Based.
Introduction to Software Development (Software Engineering - I)
Chapter 13: Software Life Cycle Models Omar Meqdadi SE 273 Lecture 13 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
1-1 Software Development Objectives: Discuss the goals of software development Identify various aspects of software quality Examine two development life.
1 Software Engineering: A Practitioner’s Approach, 7/e Chapter 2 Process: A Generic View Software Engineering: A Practitioner’s Approach, 7/e Chapter 2.
 Dr. Syed Noman Hasany.  Review of known methodologies  Analysis of software requirements  Real-time software  Software cost, quality, testing and.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
1 Unified Modeling Language, Version 2.0 Chapter 2.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 4 Slide 1 Software Processes.
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
Rational Unified Process Fundamentals Best Practices of Software Engineering Rational Unified Process Fundamentals Best Practices of Software Engineering.
Design and implementation Chapter 7 – Lecture 1. Design and implementation Software design and implementation is the stage in the software engineering.
From Use Cases to Implementation 1. Structural and Behavioral Aspects of Collaborations  Two aspects of Collaborations Structural – specifies the static.
28 June 2000P. Mato, CERN1 Software Checklist Proposal for controlling and documenting all the steps in developing software Program of Work Meeting, June.
From Use Cases to Implementation 1. Mapping Requirements Directly to Design and Code  For many, if not most, of our requirements it is relatively easy.
Review of Definitions Software life cycle: –Set of activities and their relationships to each other to support the development of a software system Software.
The Web Application Development Process Models
Unified Process Source & Courtesy: Jing Zou.
Software Engineering: A Practitioner’s Approach, 7/e Chapter 2 Prescriptive Process Models copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc.
Software Engineering: A Practitioner’s Approach, 7/e Chapter 2 Prescriptive Process Models copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc.
Chapter 2 – Software Processes
Process Models Coming up: Prescriptive Models.
Software Design Lecture : 15.
Software Engineering: A Practitioner’s Approach, 6/e Chapter 3 Prescriptive Process Models copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc.
Software Engineering: A Practitioner’s Approach, 6/e Chapter 3 Prescriptive Process Models copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc.
Software Engineering: A Practitioner’s Approach, 6/e Chapter 3 Prescriptive Process Models copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc.
From Use Cases to Implementation
Presentation transcript:

Chapter – 1

The UML Approach USECASE DRIVEN ARCHITECTURE CENTRIC ITERATIVE & INCREMENTAL

What is Software Engineering Software development process. Set of activities needed to transform a user’s requirement into a software system SOFTWARE DEVELOPMENT PROCESS User’s Requirement Software System

Aspects of the Unified Process Component Based –Software Components (Classes) –Well Defined Interface (Class Methods) Use-Case Driven Architecture Centric. Iterative and Incremental.

Use-Case Driven A software system is brought into existence to serve its users. To build a successful system we must know what its users want and need. The user can represent someone or something. The user interacts with the system being developed to obtain some utility.

Use-Case Driven The interaction with the system is called a USE CASE. USE CASE is functionality of the system which a user a result of value. All the USE CASEs together make up the USE CASE MODEL.

Use-Case Driven Select Items And quantities Store Personal Information Browse Catalog Order Login Send to Customer Send Order to Store Secure Payment

Use-Case Driven What is the system suppose to do for each user? Focus on User Requirement and not the functions that might be good to have. It drives the development process. Developed in tandem with the system architecture.

Architecture Centric Is a view of the whole design with important characteristics made more visible by leaving details aside. Helps focus on the right goals such as under- standability, resilience to future changes and reuse. Addresses the static and dynamic aspect of the system. Grows out of the need of the enterprise, as sensed by the users, stockholders and as reflected in the Use Cases.

Architecture Centric Use Case when realized must fit into the architecture. The architecture must allow the use case, when realized, to fit into it. Use Cases and architecture must evolve in parallel. The architecture is designed so as to allow the system to evolve, not only during its initial development but through future generations.

Architecture Centric The architect : Creates an rough outline of the architecture that is not specified in the use cases. A general understanding of the use cases is required. Work with subset of identified use cases, the ones that represent key functions. As the use cases are specified & they mature More architecture is discovered. This in turn leads to maturation of more use cases.

Iterative and Incremental Divide work into small size mini-projects. Each mini project is an iteration that results into an increment. What to implement in an iteration: –Implement use cases that together extends the usability of the product developed so far. –Attempt the use cases which deals with most important risks.

Iterative and Incremental In every iteration the developer : 1. Identifies and specifies the relevant use cases. 2. Creates a design using the chosen architecture as a guide. 3. Implement the design in components. 4. Verify that components satisfies the use cases

Stages in Software Development Process THE SPIRAL MODEL

Stages in Software Development Process ITERATIONS

Stages in Software Development Process RELEASES