Requirements Models to Architectural Design Models: A Simple Library Example Robert France Colorado State University.

Slides:



Advertisements
Similar presentations
Ch:8 Design Concepts S.W Design should have following quality attribute: Functionality Usability Reliability Performance Supportability (extensibility,
Advertisements

©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 12Slide 1 Software Design l Objectives To explain how a software design may be represented.
Deliverable #8: Detailed Design - Overview due: Wednesday, 7 March All Deliverable materials are to be posted into Team Concert. Your to.
Chapter 22 Object-Oriented Systems Analysis and Design and UML Systems Analysis and Design Kendall and Kendall Fifth Edition.
1 Layers Data from IBM-Rational and Craig Larman’s text integrated into these slides. These are great references… Slides from these sources have been modified.
Robert B. Jackson Brigham Young University John W. Satzinger
2-1 © Prentice Hall, 2007 Chapter 2: Introduction to Object Orientation Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph.
© Lethbridge/Laganière 2001 Chapter 9: Architecting and designing software1 Layers Data from IBM-Rational and Craig Larman…
Practical Object-Oriented Design with UML 2e Slide 1/1 ©The McGraw-Hill Companies, 2004 PRACTICAL OBJECT-ORIENTED DESIGN WITH UML 2e Chapter 5: Restaurant.
Revision Session 1.UML Overview 2.Detailed software design : operation specification, designing for re-use.
Copyright W. Howden1 Lecture 3: Elaboration and System Architecture.
1 SWE Introduction to Software Engineering Lecture 25 – Object-Oriented Design (Chapter 14)
1 Lecture 3: Elaboration and System Architecture.
System Architecture Lecture 3 CSE 111 Spring /22/20151Copyright William E. Howden.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 14 Slide 1 Object-oriented design 2.
Oct. 9, 2003CS WPI1 CS 509 Design of Software Systems Lecture #6 Thursday, Oct. 9, 2003.
UML and the Software Lifecycle
Objectives Explain the purpose and objectives of object- oriented design Develop design class diagrams Develop interaction diagrams based on the principles.
1 A Student Guide to Object- Orientated Development Chapter 9 Design.
Object Oriented Analysis and Design Using the UML
An Introduction to Rational Rose Real-Time
The Design Discipline.
Chapter 13 Starting Design: Logical Architecture and UML Package Diagrams.
UML - Development Process 1 Software Development Process Using UML (2)
Systems Analysis and Design in a Changing World, Fifth Edition
Smith’s Aerospace © P. Bailey & K. Vander Linden, 2005 Architecture: Component and Deployment Diagrams Patrick Bailey Keith Vander Linden Calvin College.
SOFTWARE ENGINEERING BIT-8 APRIL, 16,2008 Introduction to UML.
Implementation Yaodong Bi. Introduction to Implementation Purposes of Implementation – Plan the system integrations required in each iteration – Distribute.
An Introduction to Software Architecture
CS 360 Lecture 6.  A model is a simplification of reality  We build models to better understand the system being developed.  We build models of complex.
RUP Design RUP Artifacts and Deliverables
Object Oriented Design Jerry KotubaSYST Object Oriented Methodologies1.
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.
School of Electrical Engineering and Informatics | ITB | 2010Arry Akhmad Arman Case Study #1 Library System Arry Akhmad Arman School of Electrical Engineering.
Modeling Shari L. Pfleeger and Joanne M. Atlee, Software Engineering: Theory and Practice, 4 th edition, Prentice Hall, Hans Van Vliet, Software.
Systems Analysis and Design in a Changing World, 3rd Edition
Component & Deployment Diagram © copyright 2001 SNU OOPSLA Lab.
Chapter 10 Analysis and Design Discipline. 2 Purpose The purpose is to translate the requirements into a specification that describes how to implement.
What to remember from Chap 13 (Logical architecture)
Logical view –show classes and objects Process view –models the executables Implementation view –Files, configuration and versions Deployment view –Physical.
Unified Modelling Language (UML) Software Engineering Lab. Sharif University of Technology.
Introduction to OOAD & Rational Rose cyt. 2 Outline RUP OOAD Rational Rose.
CIM LAB MEETING Presentation on UML Rakesh Mopidevi Kwangyeol Ryu.
Week 04 Object Oriented Analysis and Designing. What is a model? A model is quicker and easier to build A model can be used in simulations, to learn more.
Lecture 14 22/10/15. The Object-Oriented Analysis and Design  Process of progressively developing representation of a system component (or object) through.
Analysis Yaodong Bi. Introduction to Analysis Purposes of Analysis – Resolve issues related to interference, concurrency, and conflicts among use cases.
Introduction to UML Todd Bacastow Rational Unified Process A process for the effective implementation of key “Best Practices” Control Changes Manage.
OOD OO Design. OOD-2 OO Development Requirements Use case analysis OO Analysis –Models from the domain and application OO Design –Mapping of model.
Gerhard Dueck -- CS3013Analysis 1. Gerhard Dueck -- CS3013Analysis 2 Why analysis?  Yield a more precise specification of the requirements.  Introduce.
1 Unified Modeling Language Michael K. Wildes University of California, Riverside – Extension Program Presentation 2.
BTS430 Systems Analysis and Design using UML
Fall 2007 Week 9: UML Overview MSIS 670: Object-Oriented Software Engineering.
From Use Cases to Implementation 1. Structural and Behavioral Aspects of Collaborations  Two aspects of Collaborations Structural – specifies the static.
Object Oriented Programming and Data Abstraction Earl Huff Rowan University.
Gerhard Dueck -- CS3013Architecture 1 Architecture-Centric Process  There is more to software development then going blindly through the workflows driven.
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.
11 Systems Analysis and Design in a Changing World, Fifth Edition.
Elaboration popo.
Layers Data from IBM-Rational and Craig Larman’s text integrated into these slides. These are great references… Slides from these sources have been modified.
Architecture Concept Documents
OO Methodology OO Architecture.
CH#3 Software Designing (Object Oriented Design)
The Process of Object Modeling
Layers Data from IBM-Rational and Craig Larman’s text integrated into these slides. These are great references… Slides from these sources have been modified.
Unified Modeling Language
Starting Design: Logical Architecture and UML Package Diagrams
Design and Implementation
Software Design Lecture : 15.
The Islamia University Bahawalpur
Chapter 22 Object-Oriented Systems Analysis and Design and UML
Presentation transcript:

Requirements Models to Architectural Design Models: A Simple Library Example Robert France Colorado State University

What is architectural design? Concerned with identifying subsystems and their relationships Architectural design is an example of programming-in-the-large –Basic element of construction is a subsystem or layer or system component (unlike programming- in-the-small where the basic unit of construction is a statement in a programming language) Subsystems are systematically refined to show more details in detailed design.

Architecture Types Logical Architecture –Organization of a system into logical units (e.g., layers, subsystems) –Logical units do not necessarily result in units of implementation (e.g., Java packages, components) Implementation (Deployment) Architecture –Organization of a system into physical units (e.g., source files, Java packages, components)

Layered Architectures Separate presentation and application logic, and other areas of concern. UI Layer “Domain” or “Application Logic” Layer Services Layer Persistence Subsystem Logging Subsystem...

Component Architectures An architectural component is an architectural unit provides a well defined set of services. An architecture is constructed by composing components. A component has two types of interfaces –Provided interface: describes the services provided by a component –Required interface: describes the services that the component requires to provide its services

Transitioning to Architectural Design Requirements class model Requirements use case Architectural static model Architectural sequence models Identify subsystems by grouping use cases Identify subsystems by grouping classes Describe how subsystems interact to accomplish use cases

Simple Library Example Library consists of reference and general copies –Only general copies can be chacked out; reference copies cannot be checked out A borrower cannot check out a copy if they have outstanding fines. A borrower is charged $1 for each week after its due date that it is not returned.

Library Example: required services CheckOutCopy ReturnCopy AddCopy DeleteCopy AddBorrower DeleteBorrower FindCopy

CheckOutCopy UseCase (draft form) UseCase: CheckOutCopy Main flow 1.Clerk enters borrower and copy identifiers 2.If borrower is registered, does not have fines, and copy is a general copy then system indicates that checkout is successful; else system indicates that checkout is not successful

Requirements Class Model

Architectural Static Model Use cases grouped into borrower services and administrative services; two subsystems for each of these groupings is created – one responsible for borrower services, the other for administrative services Both administrative and borrower services need copy and borrower information. This observation results in a decision to include two subsystems for managing copies and borrowers.

CheckOut Sequence Model

ReturnCopy Sequence Model