COMP 6471 Software Design Methodologies Winter 2006 Dr Greg Butler

Slides:



Advertisements
Similar presentations
A Brief Introduction. Acknowledgements  The material in this tutorial is based in part on: Concurrency: State Models & Java Programming, by Jeff Magee.
Advertisements

Presented by Benjamin Kehrer [CSCI 360, CofC, 03/17/08]
Object-Oriented Analysis and Design CHAPTERS 12-14: INTRODUCTION TO DESIGN 1.
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.
Graphical User Interface (GUI) Nelson Padua-Perez Bill Pugh Department of Computer Science University of Maryland, College Park.
Overview of Swing’s MVC Architecture By Geoffrey Steffens (BCSi), Socket Software, Australia Copyright © Socket Software, 2002.
Graphical User Interface (GUI) Nelson Padua-Perez Chau-Wen Tseng Department of Computer Science University of Maryland, College Park.
7M822 UML Introduction 7 September 2010.
Object-Oriented Analysis and Design
COMP1007 Introduction to Requirements Analysis © Copyright De Montfort University 2002 All Rights Reserved COMP1007 Introduction to Requirements Analysis.
Logical Architecture and UML Package Diagrams
Web Application Architecture: multi-tier (2-tier, 3-tier) & mvc
Basic Concepts The Unified Modeling Language (UML) SYSC System Analysis and Design.
Chapter 13 Starting Design: Logical Architecture and UML Package Diagrams.
MVC pattern and implementation in java
1COM6030 Systems Analysis and Design © University of Sheffield 2005 COM 6030 Software Analysis and Design Lecture 4 - System modelling Dr Richard Clayton.
MVC and MVP. References enter.html enter.html
Model View Controller (MVC) Rick Mercer with a wide variety of others 1.
CIT UPES | Sept 2013 | Unified Modeling Language - UML.
CS 160: Software Engineering October 8 Class Meeting
BTS430 Systems Analysis and Design using UML Domain Model Part 1—Finding Conceptual Classes.
Slide 1 UML Review Chapter 2: Introduction to Object-Oriented Systems Analysis and Design with the Unified Modeling Language, Version 2.0 Alan Dennis,
Unified Modeling Language, Version 2.0
1 SYS366 Lecture Visual Modeling and Business Use Case Diagrams.
Lecture 3: Visual Modeling & UML 1. 2 Copyright © 1997 by Rational Software Corporation Computer System Business Process Order Item Ship via “ Modeling.
Requirements To Design--Iteratively Chapter 12 Applying UML and Patterns Craig Larman.
Chapter 6: Structured Vs. Object Oriented Analysis and Design.
Object-Oriented Analysis and Design An Introduction.
(c) University of Washington08-1 CSC 143 Models and Views Reading: Ch. 18.
Pemrograman Web MVC Programming and Design Pattern in PHP 5.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 8 Slide 1 Object-oriented and Structured System Models.
Chapter 6 – Architectural Design CSE-411, Dr. Shamim H Ripon.
Systems Analysis and Design in a Changing World, 3rd Edition
1 COMP 350: Object Oriented Analysis and Design Lecture 1Introduction References: Craig Larman Chapter 1.
M ODEL -V IEW -C ONTROLLER. I NTRODUCTION This is a software development concept that developed for the purpose of implementing multiple User interfaces.
MODULE 13:. Principles of Information Systems Analysis & DesignDesign © 2009 by Dr. Martin Schedlbauer Visualizing Scenarios UML offers three diagrams.
1/26 On-demand Learning Series Software Engineering of Web Application - Object-Oriented Development & UML Hunan University, Software School.
Chapter 6 – Architectural Design Lecture 1 1Chapter 6 Architectural design.
12 Chapter 12: Advanced Topics in Object-Oriented Design Systems Analysis and Design in a Changing World, 3 rd Edition.
University of Toronto at Scarborough © Kersti Wain-Bantin CSCC40 UML 1 UML unified modeling language 1994 first attempts - largely theoretical 1997 UML.
Practical Object-Oriented Design with UML 2e Slide 1/1 ©The McGraw-Hill Companies, 2004 PRACTICAL OBJECT-ORIENTED DESIGN WITH UML 2e Chapter 1: Introduction.
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.
SOEN 343 Software Design Section H Fall 2006 Dr Greg Butler
1 Unified Modeling Language, Version 2.0 Chapter 2.
TK2023 Object-Oriented Software Engineering CHAPTER 8 LOGICAL ARCHITECTURE.
2/3/ Many facts about MVC A design pattern for the architecture of GUI applications. It works to separate data, UI and its control for a more.
Object-Oriented Systems. Goals Object-Oriented Methodologies – The Rumbaugh et al. OMT – The Booch methodology – Jacobson's methodologies.
Unified OO becomes commonly used in the late 1980s Various analysis and design methods The “three amigos” join forces in Rational Software Also include.
Object-Oriented Software Engineering Practical Software Development using UML and Java Modelling with Classes.
Model-View-Controller A Design Pattern SE-2030 Dr. Rob Hasker 1 Based on slides written by Dr. Mark L. Hornick Used with permission.
1 SYS366 Week 2 - Lecture 2 Visual Modeling & UML.
Basic Characteristics of Object-Oriented Systems
UML. Model An abstract representation of a system. Types of model 1.Use case model 2.Domain model 3.Analysis object model 4.Implementation model 5.Test.
UA. Unified Approach ( UA ) It combines best practices, methods process, guidelines & methodology (Rumbaugh, Booch and Jacobson) along with UML notations.
SWE 214 (071) Introduction to UML Slide 1 Introduction to UML.
CHAP-1 OBJECT ORIENTED SYSTEM DESIGN (IT-703)
Modified from Sommerville’s originalsSoftware Engineering, 7th edition. Chapter 14 Slide 1 Object-Oriented Design.
11 Systems Analysis and Design in a Changing World, Fifth Edition.
Presented by Alexey Vedishchev Developing Web-applications with Grails framework American University of Nigeria, 2016 Intro To MVC Architecture.
Slide 1 Unified Modeling Language, Version 2.0 Object-Oriented SAD.
Architecture Brief Pepper
Systems Analysis and Design With UML 2
Object-Oriented Modeling and Design
The Object Oriented Approach to Design
Chapter 13 Logical Architecture.
CS102 – Bilkent University
Starting Design: Logical Architecture and UML Package Diagrams
Chapter 13 Logical Architecture.
Chapter 13 Logical Architecture.
Presentation transcript:

COMP 6471 Software Design Methodologies Winter 2006 Dr Greg Butler

Design Model

Logical Architecture – Simple Layers

Logical Architecture – Layers

Logical Architecture – Layers & Partitions

Domain Model and Domain Layer Low representational gap

SSDs, System Operations & Layers

Model-View Separation Principle (MVC) UI layer has views Domain layer has model

Model-View-Control Architecture (MVC) MVC is an acronym for Model View Controller It represents a software design pattern developed at Xerox PARC in 1978 (!) It explains a method of separating the visual, interaction and data components. Very popular, used extensively in Java and other languages

Model-View-Control Architecture (MVC) Model maintains the state and data of the application - the XML document View A rendering of the XML document Controller The user interface presented to the user to manipulate the application

Why use MVC Makes it very easy to have multiple different displays of the same information. For example: a graph and a table could both display and edit the same data. Essentially provides greater control over the UI and it’s behaviour.

MVC Model The “Model” contains the data Has methods to access and possibly update it’s contents. Often, it implements an interface which defines the allowed model interactions. Implementing an interface enables models to be pulled out and replaced without programming changes.

MVC Controller Users interact with the controller. It interprets mouse movement, clicks, keystrokes, etc Communicates those activities to the model – eg: delete row, insert row, etc It’s interaction with the model indirectly causes the View(s) to update

MVC View The View provides a visual representation of the model. There can be multiple views displaying the model at any one time. For example, a companies finances over time could be represented as a table and a graph. These are just two different views of the same data. When the model is updated, all Views are informed and given a chance to update themselves.

14.4 Design Objects Spend plenty of time on dynamic models (see notation chapter 15)

Jacobson’s Objectory Design Objects

Robustness model has Entity objects Boundary (interface objects) Control objects Essentially UML collaboration (communication) diagram

Jacobson’s Robustness Analysis Bridges Analysis-Design Gap

What are the users doing? (Jacobson) What are the objects in the real world? (Rumbaugh) What objects are needed for each use case? (Jacobson) How do the objects collaborate with each other? (Jacobson and Booch) How will we implement real-time control? (state models) How are we really going to build this system? (Booch)

Traceability