04 - OOD Intro.CSC4071 Software Design ‘Requirements’ defines –The goals the system needs to satisfy. ‘Specification’ defines –The externally-observable.

Slides:



Advertisements
Similar presentations
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 12Slide 1 Software Design l Objectives To explain how a software design may be represented.
Advertisements

ARCH-05 Application Prophecy UML 101 Peter Varhol Principal Product Manager.
Object-Oriented Application Development Using VB.NET 1 Chapter 5 Object-Oriented Analysis and Design.
Systems Analysis and Design 8th Edition
Chapter 22 Object-Oriented Systems Analysis and Design and UML Systems Analysis and Design Kendall and Kendall Fifth Edition.
The Problem Domain Component (PDC) [Coad/Yourdon]
Chapter 1 Object Oriented Analysis and Design. UML, Patterns, and Object-Oriented Analysis and Design  The essential skills for the creation of well-designed,
Unified Modeling Language
Object-Oriented Analysis and Design
Chapter 1 Object-Oriented System Development
Introduction To System Analysis and Design
1 Software Testing and Quality Assurance Lecture 12 - The Testing Perspective (Chapter 2, A Practical Guide to Testing Object-Oriented Software)
Object Oriented Analysis and Design
Object Oriented System Development with VB .NET
Basic OOP Concepts and Terms
Object Oriented Design OOD. OOD characteristics - I conceptual compatibility with OOA notational consistency with OOA clean traceability of OOA results.
© Wolfgang Pelz Introduction Object-Oriented Methods: Analysis, Design & Programming Dr. Wolfgang Pelz Dr. Yingcai Xiao The University of Akron.
Java Programming, 3e Concepts and Techniques Chapter 1 An Introduction to Java and Program Design.
Object Oriented Analysis and Design Chapter 1 Applying UML and Patterns -Craig Larman.
Systems Analysis & Design Sixth Edition Systems Analysis & Design Sixth Edition Toolkit Part 5.
The OOD Process Design as a Logical Continuation of Analysis.
Introduction To System Analysis and design
OO Analysis and Design CMPS OOA/OOD Cursory explanation of OOP emphasizes ▫ Syntax  classes, inheritance, message passing, virtual, static Most.
Java Programming, 2E Introductory Concepts and Techniques Chapter 1 An Introduction to Java and Program Design.
Object Oriented Analysis By: Don Villanueva CS 524 Software Engineering I Fall I 2007 – Sheldon X. Liang, Ph. D.
1 Object-Oriented Testing CIS 375 Bruce R. Maxim UM-Dearborn.
Design Patterns OOD. Course topics Design Principles UML –Class Diagrams –Sequence Diagrams Design Patterns C#,.NET (all the course examples) Design Principles.
A Development Process Lecture Oo13 Objectory based method.
CIT241 Prerequisite Knowledge ◦ Variables ◦ Operators ◦ C++ Syntax ◦ Program Structure ◦ Classes  Basic Structure of a class  Concept of Data Hiding.
Unified Modeling Language, Version 2.0
Eng. Mohammed Timraz Electronics & Communication Engineer University of Palestine Faculty of Engineering and Urban planning Software Engineering Department.
Chapter 6: Structured Vs. Object Oriented Analysis and Design.
Introduction To System Analysis and Design
Object-Oriented Analysis and Design An Introduction.
Object Management Group (OMG) Specifies open standards for every aspect of distributed computing Multiplatform Model Driven Architecture (MDA)
1 UML Basic Training. UML Basic training2 Agenda  Definitions: requirements, design  Basics of Unified Modeling Language 1.4  SysML.
Systems Analysis and Design in a Changing World, 3rd Edition
Systems Analysis & Design 7 th Edition Chapter 5.
IT 21103/41103 System Analysis & Design. Chapter 05 Object Modeling.
Systems Analysis and Design 8 th Edition Chapter 6 Object Modeling.
1 COMP 350: Object Oriented Analysis and Design Lecture 1Introduction References: Craig Larman Chapter 1.
ECE450 Software Engineering II Lecture 6 – Object Oriented Design.
CS 4850: Senior Project Fall 2014 Object-Oriented Design.
Basic OOP Concepts and Terms. In this class, we will cover: Objects and examples of different object types Classes and how they relate to objects Object.
Computing and SE II Chapter 9: Design Methods and Design Models Er-Yu Ding Software Institute, NJU.
1/26 On-demand Learning Series Software Engineering of Web Application - Object-Oriented Development & UML Hunan University, Software School.
CS 8532: Advanced Software Engineering Dr. Hisham Haddad Overview of Object-Oriented Design Highlights of OOD Concepts, Components, and Process.
Introduction to OOAD and the UML
Object Oriented Analysis and Design Chapter 1 Applying UML and Patterns -Craig Larman.
Chapter 1 OBJECT-ORIENTED ANALYSIS AND DESIGN Objectives Describe the book goals and scope Define OOA/D (Object-Oriented Analysis and Design) Illustrate.
1 Unified Modeling Language, Version 2.0 Chapter 2.
Object-Oriented Application Development Using VB.NET 1 Chapter 5 Object-Oriented Analysis and Design.
CSIS 4850: CS Senior Project – Spring 2009 CSIS 4850: Senior Project Spring 2009 Object-Oriented Design.
07 - OODCSC4071 OOA/OOD/OOP Example example OODCSC4072 Requirements See eg/req.htmleg/req.html Want a program to help a software company plan new.
Rational Rose For System Design What is Rational Rose? Rational Rose is the visual modeling software solution that lets you create, analyze, design,
Object Oriented Programming and Data Abstraction Earl Huff Rowan University.
1 Design Object Oriented Solutions Object Oriented Analysis & Design Lecturer: Mr. Mohammed Elhajj
Slide 1 Unified Modeling Language, Version 2.0 Object-Oriented SAD.
Object-Oriented Techniques
Chapter 6: Structured Vs. Object Oriented Analysis and Design.
Chapter 5: Object Oriented Analysis and Design
Chapter 1 OBJECT-ORIENTED ANALYSIS AND DESIGN
The Object Oriented Approach to Design
Object-Oriented Design
Chapter 6: Structured Vs. Object Oriented Analysis and Design.
CS 8532: Advanced Software Engineering
Basic OOP Concepts and Terms
Chapter 22 Object-Oriented Systems Analysis and Design and UML
CIS 644  Object-Oriented Design and Development. (3) 
Presentation transcript:

04 - OOD Intro.CSC4071 Software Design ‘Requirements’ defines –The goals the system needs to satisfy. ‘Specification’ defines –The externally-observable behaviour of the system. ‘Architecture’ defines –The major system-level components –Their methods of interaction –Technology used ‘Design’ of a component –The code that needs to be written. –We will focus exclusively on OO design.

04 - OOD Intro.CSC4072 Output of Design A document: –Prose description –UML Classes –Associations –Methods –Attributes Object diagrams Sequence and collaboration diagrams Statechart and activity diagrams –Formulae & algorithms Must relate to the architecture Can reference the requirements and specification Must be sufficient to allow coding to commence

04 - OOD Intro.CSC4073 Necessary Background Experience in OO programming Experience in OO analysis An understanding of OO concepts –Encapsulation (data hiding) –Objects, classes, meta-classes –Classes v.s. interfaces (types) –Inheritance, multiple inheritance –Polymorphism (run-time typing) –Implementation inheritance v.s. interface inheritance

04 - OOD Intro.CSC4074 Goal To teach you to create good OO designs. What you need: –Tools (UML notation) –Experience How we will teach you: –UML in tutorials –Next best thing to experience: Other people’s experience Design Patterns

04 - OOD Intro.CSC4075 Object-Oriented Design Take OOA and extend to build the ‘Problem Domain Component’ Design the ‘Human Interaction Component’ Design the ‘Task Management Component’ Design the ‘Data Management Component’ [Peter Coad & Edward Yourdon, OOD, Yourdon Press, 1991]

04 - OOD Intro.CSC4076 Problem Domain Component Reuse design and programming classes. Group problem-domain-specific classes and establish a protocol by adding generalization classes. Accommodate inheritance limitations in implementation language. Add design classes –Associations –Run-time modifiability –…–… Improve performance –Speed, memory, perceived speed Support the data management component