UML Package Diagrams. Package Diagrams UML Package Diagrams are often used to show the contents of components, which are often packages in the Java sense.

Slides:



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

® IBM Software Group © 2006 IBM Corporation Rational Software France Object-Oriented Analysis and Design with UML2 and Rational Software Modeler 04. Other.
October 23, 2001 Software Design-Layering and Packaging1 Architecture: Layers and Packages.
March R McFadyen1 Architecture Architecture involves the set of significant decisions about the organization of a software system, decisions.
Technical Architectures
© Lethbridge/Laganière 2001 Chapter 9: Architecting and designing software1 Layers Data from IBM-Rational and Craig Larman…
© 2005 Prentice Hall12-1 Stumpf and Teague Object-Oriented Systems Analysis and Design with UML.
Understanding Metamodels. Outline Understanding metamodels Applying reference models Fundamental metamodel for describing software components Content.
The Need for Packages How do you break down a large system into smaller systems? Structured methods use functional decomposition Functions represent something.
Software Issues Derived from Dr. Fawcett’s Slides Phil Pratt-Szeliga Fall 2009.
CMPT 370: Information Systems Design Instructor: Curtis Cartmill, Simon Fraser University – Summer 2003 Lecture Topic: Layered Architecture Class Exercise:
1 A Student Guide to Object- Orientated Development Chapter 9 Design.
Logical Architecture and UML Package Diagrams
March R McFadyen1 Figure 30.2 Layers in NextGen They only have three layers in this architecture Each layer is shown as a UML Package No separate.
System Design Decomposing the System. Sequence diagram changes UML 2.x specifications tells that Sequence diagrams now support if-conditions, loops and.
Web Application Architecture: multi-tier (2-tier, 3-tier) & mvc
Enterprise Resource Planning
Software Development Architectures Ankur K. Rajopadhye Louisiana Tech University.
Objectives Design Class Diagrams Issues in system design Generalization Review UML papers.
Copyright © 2012 Accenture All Rights Reserved. Copyright © 2012 Accenture All Rights Reserved. Accenture, its logo, and High Performance Delivered are.
Copyright © 2012 Accenture All Rights Reserved.Copyright © 2012 Accenture All Rights Reserved. Accenture, its logo, and High Performance Delivered are.
The Design Discipline.
Chapter 13 Starting Design: Logical Architecture and UML Package Diagrams.
Systems Analysis and Design in a Changing World, Fifth Edition
Logical Architecture and UML Package Diagrams 徐迎晓 复旦大学软件学院.
DAT602 Database Application Development Lecture 12 C/S Model Database Application.
BTS430 Systems Analysis and Design using UML Domain Model Part 1—Finding Conceptual Classes.
12 Systems Analysis and Design in a Changing World, Fifth Edition.
4/2/03I-1 © 2001 T. Horton CS 494 Object-Oriented Analysis & Design Software Architecture and Design Readings: Ambler, Chap. 7 (Sections to start.
SWE © Solomon Seifu ELABORATION. SWE © Solomon Seifu Lesson 11 Subsystem Design.
CPSC 875 John D. McGregor C16 - DSMs. Partitioning _jetta_horn_recall/index.htm?hpt=T2
Requirements To Design--Iteratively Chapter 12 Applying UML and Patterns Craig Larman.
1 ITEC 3010 “Systems Analysis and Design, I” LECTURE 10: Use Case Realizations [Prof. Peter Khaiter]
Nicolas Teirlinckx Made for Software Engineering Groep 1 (2009 – 2010)
MACIASZEK, L.A. (2001): Requirements Analysis and System Design. Developing Information Systems with UML, Addison Wesley Chapter 6 - Tutorial Guided Tutorial.
Chapter 13 Logical Architecture and UML Package Diagrams 1CS6359 Fall 2012 John Cole.
Real Time Systems Modeling Structure in UML (Part I)
© 2005 Prentice Hall10-1 Stumpf and Teague Object-Oriented Systems Analysis and Design with UML.
Software Engineering 1 Object-oriented Analysis and Design Applying UML and Patterns An Introduction to Object-oriented Analysis and Design and Iterative.
GRASP: Designing Objects with Responsibilities
What to remember from Chap 13 (Logical architecture)
Part VII: Design Continuous
1 CMPT 275 High Level Design Phase Modularization.
Chapter 10 Drawing System Sequence Diagrams
Software Design: Principles, Process, and Concepts Getting Started with Design.
Component, Deployment and Package Diagrams CSIS3600.
Slide 1 What the business needs  How to build it Functional requirements  + Nonfunctional requirements Performance System environment issues Problem.
SOEN 343 Software Design Section H Fall 2006 Dr Greg Butler
Computer Science 340 Software Design & Testing Software Architecture.
TK2023 Object-Oriented Software Engineering CHAPTER 8 LOGICAL ARCHITECTURE.
CSIS 4850: CS Senior Project – Spring 2009 CSIS 4850: Senior Project Spring 2009 Object-Oriented Design.
Introduction. System Design Hardware/Software Platform Selection Software Architectures Database Design Human-Computer Interaction (HCI) Interface Object.
OBJECT ORIENTED VS STRUCTURED WHICH ONE IS YOUR CHOICE.
Copyright © Craig Larman All Rights Reserved Large-Scale System Partitioning.
Design Engineering 1. Analysis  Design 2 Characteristics of good design 3 The design must implement all of the explicit requirements contained in the.
Logical Architecture and UML Package Diagrams. The logical architecture is the large-scale organization of the software classes into packages, subsystems,
Design Concepts ch-8
Deployment Diagram.
Deployment Diagram.
N-Tier Architecture.
OO Methodology OO Architecture.
Chapter 13 Logical Architecture.
Figure 30.2 Layers in NextGen
Starting Design: Logical Architecture and UML Package Diagrams
Chapter 13 Logical Architecture.
Design Tips.
Software Design Lecture : 8
The Islamia University Bahawalpur
Chapter 13 Logical Architecture.
Logical Architecture & UML Package Diagrams
Presentation transcript:

UML Package Diagrams

Package Diagrams UML Package Diagrams are often used to show the contents of components, which are often packages in the Java sense. Each package represents a namespace. Packages, as components, can be nested inside other packages.

Package Diagram UIDomain SwingWebSales

Logical vs. Process and Deployment of Architecture Architectural Layers are a logical view of the architecture They are not a deployment view of elements to process. Depending on platform, all layers could be deployed within the same process on same node. Or across many computers.

Terminology:Tier, Layers, and Partitions Tier relates to physical processing node or clusters of node, such as “client tier”. Layers of an architecture represent the vertical slices Partitions represents a horizontal division of relatively parallel subsystems of a layer.

Copyright © 2004 Glenn L. Ray (From Larman 2004) Layers and Partitions

Outline Definition Architectural Dimension and Views Architectural Pattern: Layers Package Diagrams Logical vs. Process and Deployment of Architecture Terminology:Tier, Layers, and Partitions How do we design application logic with objects? Domain Layer and Domain Model Information Systems Two-tier Design The Model-View Separation Principle Need for Model-View separation

How do we design application logic with objects? We could create one class and put all logic in it, but that violates the whole spirit of object orientation. We create software objects with names drawn from the real world, and assign application logic responsibilities to them. It takes a lot of skill and experience to do a good job of choosing objects and assigning responsibilities.

Domain Layer and Domain Model These are not the same thing. Domain model shows the real world, while the Domain layer shows the software architecture. But the Domain model inspires the Domain layer, and is the source of many of the concept, especially class names. Do not confuse the problem with the solution.

Information Systems In IS layered architecture was known as three-tier architecture. A three-tier architecture has interface, Application logic and a storage. The singular quality of 3-tier architecture is: Separation of the application logic into distinct logical middle tier of software. The interface tier is relatively free of application processing.

Information Systems(cont..) The middle tier communicates with the back-end storage layer. The following is an example of 3-tier architecture.

Example:

Two-tier Design In this design, the application logic is placed within window definitions, which read and writes directly to database. There is no middle tier that separates out the application logic.

The Model-View Separation Principle The principle states that model(domain) objects should not have direct knowledge of view(presentation) objects. Furthermore, the domain classes should encapsulate the information and behavior related to application logic.

Need for Model-View separation To support cohesive model definitions that focus on the domain process, rather than on interfaces. To allow separate development of the model and user interface layers. To minimize the impact of requirements changes in the interface upon the domain layer. To allow new views to be easily connected to an existing domain layer, without affecting the domain layer.

Continue.. To allow multiple simultaneous views on the same model object. To allow execution of the model layer independent of the user interface layer To allow easy porting of the model layer to another user interface framework.