07 - OODCSC4071 OOA/OOD/OOP Example example. 07 - OODCSC4072 Requirements See eg/req.htmleg/req.html Want a program to help a software company plan new.

Slides:



Advertisements
Similar presentations
Database System Concepts and Architecture
Advertisements

Ch:8 Design Concepts S.W Design should have following quality attribute: Functionality Usability Reliability Performance Supportability (extensibility,
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 12Slide 1 Software Design l Objectives To explain how a software design may be represented.
1 Software Testing and Quality Assurance Lecture 13 - Planning for Testing (Chapter 3, A Practical Guide to Testing Object- Oriented Software)
Chapter 7 – Object-Oriented Design
Free Mini Course: Applying UML 2.0 with MagicDraw.
Chapter 4.
1 Software Requirement Analysis Deployment Package for the Basic Profile Version 0.1, January 11th 2008.
Introduction To System Analysis and Design
Discovering Computers Fundamentals, 2011 Edition Living in a Digital World.
Object Oriented Design OOD. OOD characteristics - I conceptual compatibility with OOA notational consistency with OOA clean traceability of OOA results.
Java Programming, 3e Concepts and Techniques Chapter 1 An Introduction to Java and Program Design.
CS 432 Object-Oriented Analysis and Design
Software engineering Olli Alm Lecture 2: requirements, modelling & representation.
The OOD Process Design as a Logical Continuation of Analysis.
Chapter 4.
Object-Oriented Analysis and Design
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.
1 Chapter One A First Program Using C#. 2 Objectives Learn about programming tasks Learn object-oriented programming concepts Learn about the C# programming.
Java Programming, 2E Introductory Concepts and Techniques Chapter 1 An Introduction to Java and Program Design.
A First Program Using C#
Orion Project Proposal HTML Tutorial Website. Define.
Systems Analysis and Design in a Changing World, Fifth Edition
Object Oriented Analysis By: Don Villanueva CS 524 Software Engineering I Fall I 2007 – Sheldon X. Liang, Ph. D.
Aurora: A Conceptual Model for Web-content Adaptation to Support the Universal Accessibility of Web-based Services Anita W. Huang, Neel Sundaresan Presented.
Implementation Yaodong Bi. Introduction to Implementation Purposes of Implementation – Plan the system integrations required in each iteration – Distribute.
PowerDesigner 与对象建模. 2 Why Using UML? Visually define and communicate the structure and behavior of an application Represent systems using Object-Oriented.
Object-Oriented Analysis and Design OVERVIEW. Objectives  Describe Information Systems  Explain the role of a systems analyst  Introduce object-oriented.
Mid Morning Discussion Introduction to the IBIS-Q Front-End System ("Module" Emphasis) What is the front end Where does the front end fit in What is a.
2/6/01D-1 © 2001 T. Horton CS 494 Object-Oriented Analysis & Design Using PARTS to Illustrate Requirements Concepts.
12 Systems Analysis and Design in a Changing World, Fifth Edition.
Introduction To System Analysis and Design
SE: CHAPTER 7 Writing The Program
Systems Analysis and Design in a Changing World, 3rd Edition
Requirements as Usecases Capturing the REQUIREMENT ANALYSIS DESIGN IMPLEMENTATION TEST.
COMU114: Introduction to Database Development 1. Databases and Database Design.
Towards an Experience Management System at Fraunhofer Center for Experimental Software Engineering Maryland (FC-MD)
5 - 1 Copyright © 2006, The McGraw-Hill Companies, Inc. All rights reserved.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 14 Slide 1 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.
R R R CSE870: UML Component Diagrams Implementation Diagrams.
Documentation Dr. Andrew Wallace PhD BEng(hons) EurIng
Deliverable 10. Deliverable #10 Class Design and Implementation #1 due 9 April Executive Summary and Statement of Work Iteration Plan (Updated) for remaining.
Chapter 4 enterprise modeling
1 CSCD 326 Data Structures I Software Design. 2 The Software Life Cycle 1. Specification 2. Design 3. Risk Analysis 4. Verification 5. Coding 6. Testing.
® A Proposed UML Profile For EXPRESS David Price Seattle ISO STEP Meeting October 2004.
Software Engineering and Object-Oriented Design Topics: Solutions Modules Key Programming Issues Development Methods Object-Oriented Principles.
1 Technical & Business Writing (ENG-715) Muhammad Bilal Bashir UIIT, Rawalpindi.
N. HARIKA Lecturer(csc). 3 General Structure Of A Java Program.
Model Design using Hierarchical Web-Based Libraries F. Bernardi Pr. J.F. Santucci {bernardi, University of Corsica SPE Laboratory.
04 - OOD Intro.CSC4071 Software Design ‘Requirements’ defines –The goals the system needs to satisfy. ‘Specification’ defines –The externally-observable.
CSIS 4850: CS Senior Project – Spring 2009 CSIS 4850: Senior Project Spring 2009 Object-Oriented Design.
Object-Oriented Software Engineering Practical Software Development using UML and Java Modelling with Classes.
Presentation on Database management Submitted To: Prof: Rutvi Sarang Submitted By: Dharmishtha A. Baria Roll:No:1(sem-3)
Object Oriented Programming and Data Abstraction Earl Huff Rowan University.
Object Oriented Analysis & Design By Rashid Mahmood.
DBS201: Data Modeling. Agenda Data Modeling Types of Models Entity Relationship Model.
© 2010 IBM Corporation RESTFul Service Modelling in Rational Software Architect April, 2011.
Unit 1 - Introducing Abstract Data Type (ADT) Part 1.
ICS 3UI - Introduction to Computer Science
Object-Oriented Analysis and Design
Week 10: Object Modeling (1)Use Case Model
The Object Oriented Approach to Design
Unit# 9: Computer Program Development
Object-Oriented Design
Introduction of Week 11 Return assignment 9-1 Collect assignment 10-1
Software Architecture & Design
Presentation transcript:

07 - OODCSC4071 OOA/OOD/OOP Example example

07 - OODCSC4072 Requirements See eg/req.htmleg/req.html Want a program to help a software company plan new releases of their software java Plan features.xml Planetaria 340 xml file contains sized (in coder days), prioritized (hi,med,low), feature requests for various products –includes list of requesting customers with how much they want it (1-10). Suggest an "optimal" release plan given the available capacity (in coder days). Sample output

07 - OODCSC4073 OOA See ooa documentooa document Introduction –why are we doing this –what is the current document for –where did the information come from –general points (change & XML file in this case) Use Cases –what is the bigger problem –how does this particular program fit into it Class Diagrams –restate information from the requirements statement in UML –(mostly you have no "requirements statement")

07 - OODCSC4074

07 - OODCSC4075 Features

07 - OODCSC4076 Employees

07 - OODCSC4077 Customers

07 - OODCSC4078 OOD See ood documentood document Package design –what rationale for the package breakdown Main driver –sequence diagram explaining how (one) use case is executed For each package –a collection of class diagrams shows important methods shows important attributes shows association navigability indicates how associations are implemented indicates inheritance and interface implementation important = helps in understanding the design

07 - OODCSC4079 About Source and Javadoc Javadoc is a tool that extracts comments formatted in a certain manner and produces Web pages documenting the details of a class design. –See exampleexample To display source code, I used a tool called java2html for pretty-printing Java source to HTML. –See exampleexample

07 - OODCSC40710 Top Package jdoc ood

07 - OODCSC40711 Package Plan jdoc package documentation ood

07 - OODCSC40712

07 - OODCSC40713 src sample

07 - OODCSC40714 Package Report jdocjdoc srcsrc sample No equivalent OOA classes ood

07 - OODCSC40715 Package Input jdocjdoc srcsrc No equivalent OOA classes Sequence diagram for readFile is fairly clear just from the class description (see also Report class) ood

07 - OODCSC40716 Package dom For "Domain Object Model" Coad's "Problem Domain Component" Implements an in-memory, object-oriented data model reflecting the OOA Must be modified/extended to work in a program jdoc ood

07 - OODCSC40717 Implementing Associations Decide on navigability –The direction in which the association can be efficiently navigated If you have one object of the Left class, can you in O(n) time access all objects of the Right class linked to that Left object. Decide on interface for –Navigating the links usually get method for 1 side, iterator for * side. –Adding new links –Deleting links (if necessary) Decide on implementation –Simple pointer to implement the [0..1] side (if required by navigatability) –Array, Vector, Map, Linked List to do the [*] side (if required by navigatability)

07 - OODCSC40718 Features (from OOA)

07 - OODCSC40719 DOM Company jdocjdoc srcsrc ood These associations do not exist in the OOA, but are required by this Company- rooted implementation concept. Should we add to OOA? Maybe.

07 - OODCSC40720 jdocjdoc srcsrc ood Does not exist in OOA. Introduced for implementation convenience. Should we add? No. Implementation inheritance!

07 - OODCSC40721 jdocjdoc srcsrc ood

07 - OODCSC40722 Employees (from OOA)

07 - OODCSC40723 Customers (from OOA)

07 - OODCSC40724 jdocjdoc srcsrc ood No need to navigate in the reverse direction