Object Oriented Software Development 2009-2010 Modelling business objects OOSAD Booklet Chapter 4 Lecture: Week 4 Brian Farrimond.

Slides:



Advertisements
Similar presentations
Mark Dixon Page 1 23 – Object Oriented Programming in PhP.
Advertisements

COMPSCI 105 S Principles of Computer Science 12 Abstract Data Type.
Feb. 13, 2001CSci Clark University1 CSci 250 Software Design & Development Lecture #9 Tuesday, Feb. 13, 2001.
Lecture 11: Chapter 22 Topics –Object Oriented Modeling –UML –Use case.
Object Oriented Software Development Class diagrams: Towards implementation OOSAD Booklet Chapter 4 Seminar: Week 4 Brian Farrimond.
Object Oriented Software Development Modelling information systems OOSAD Booklet Chapter 4 Lecture: Week 3 Brian Farrimond.
Object Oriented Software Development Systems and Models Seminar: Week 1 Brian Farrimond.
Mark Dixon Page 1 02 – Queries: Query by Example.
Sharif University of Technology Session # 7.  Contents  Systems Analysis and Design  Planning the approach  Asking questions and collecting data 
PRJ566: PROJECT PLANNING AND MANAGEMENT Class Diagrams.
Domain Modeling Chandan R. Rupakheti and Steve Chenoweth Week 5, Day 1.
Object-Oriented Analysis and Design
Spreadsheets in Finance and Forecasting Presentation 7: Forms and Templates.
Entity Relationship Model Chapter 6. Basic Elements of E-R Model Entity Object of the real world that stores data. Eg. Customer, State, Project, Supplier,
Chapter 9 Domain Models. Domain Model in UML Class Diagram Notation A “visual dictionary”
Lecture Outline 11 The Development of Information Systems Chapter 8 page 390+
From Problem Statement to Design
LESSON 8 Booklet Sections: 12 & 13 Systems Analysis.
Project Analysis Course ( ) Final Project Report Overview Prepared by: Sijali Petro Korojelo (Course Assistant)
“Object-orientation” – what is it all about? Gill Harrison, Innovation North.
Jerry KotubaSYST39409-Object Oriented Methodologies1 Object Oriented Methodologies Week04.
CSCI 6962: Server-side Design and Programming Support Classes and Shopping Carts.
PHASE 2: SYSTEMS ANALYSIS
Mark Dixon Page 1 24 – Object Oriented Programming in ASP.
Big Java Chapter 12. Software Process - Waterfall Analysis Design Implementation Testing Deployment Does not work well when rigidly applied! established.
CS 474 Database Design and Application Terminology Jan 11, 2000.
© 2005 course technology1 1 University Of Palestine UML for The IT Business Analyst A practical guide to Object Oriented Requirement Gathering Hoard Podeswa.
High-Level Design With Sequence Diagrams COMP314 (based on original slides by Mark Hall)
DOMAIN MODEL— PART 2: ATTRIBUTES SYS466. Looking For Potential Classes “Know the business”. Ask Questions Identify business concepts; filter nouns (person,
1 UML for The IT Business Analyst A practical guide to Object Oriented Requirement Gathering Hoard Podeswa Instructor: Mrs. Eman ElAjrami 2008 University.
An Introduction to Java Chapter 11 Object-Oriented Application Development: Part I.
CSC 395 – Software Engineering Lecture 13: Object-Oriented Analysis –or– Let the Pain Begin (At Least I’m Honest!)
Copyright: ©2005 by Elsevier Inc. All rights reserved. 1 Chapter - 2 Basics of Sound Structure Author: Graeme C. Simsion and Graham C. Witt.
Systems Analysis and Design in a Changing World, 6th Edition 1 Chapter 4 Domain Classes.
Black Box Testing Techniques Chapter 7. Black Box Testing Techniques Prepared by: Kris C. Calpotura, CoE, MSME, MIT  Introduction Introduction  Equivalence.
1 IRU – database design part one Geoff Leese September 2009.
Describing Information Systems.  A system is a group of connected operations.  Systems can be described in several different ways including:  Structure.
Carmen David, Senior BA Business Analysis Carmen David, Senior BA Business Analysis Foundation in Business Analysis Session 7 MODELLING REQUIREMENTS.
© 2005 course technology1 1 1 University Of Palestine UML for The IT Business Analyst A practical guide to Object Oriented Requirement Gathering Hoard.
University of Sunderland ISIC 1 Data Flow Diagrams - Part 2 Hierarchical DFDs.
Introduction to Database Tonga Institute of Higher Education NOS 215.
CSC Intro. to Computing Lecture 10: Databases.
1 Examining Execution Sequences Introducing Sequence Diagrams.
Domain Model—Part 2: Attributes.  A logical data value of an object  (Text, p. 158)  In a domain model, attributes and their data types should be simple,
Announcements and Reminders Recitation sessions are being held this week, with focus on introducing students to Unix systems You’re responsible for policies.
 Week08.  Review Schedule Weeks 8-14  This week o Review last class o Introduce Class Diagrams o ICE-03 Sheridan SYST Engineering Quality Systems.
Database Design Normalisation. Last Session Looked at: –What databases were –Where they are used –How they are used.
CSCI-383 Object-Oriented Programming & Design Lecture 12.
Introduction of Geoprocessing Lecture 9. Geoprocessing  Geoprocessing is any GIS operation used to manipulate data. A typical geoprocessing operation.
44095: IT for Management Systems Concepts 2 By:Ian Perry Room: C48 Tel:
A Student Guide to Object-Oriented Development
12 OBJECT-ORIENTED DESIGN CHAPTER
Data modeling Process. Copyright © CIST 2 Definition What is data modeling? –Identify the real world data that must be stored on the database –Design.
Analysis Classes. What Is an Analysis Class?  A class that represents initial data and behavior requirements, and whose software and hardware-oriented.
Introduction of Geoprocessing Lecture 9 3/24/2008.
DOMAIN MODEL—PART 2: ATTRIBUTES BTS430 Systems Analysis and Design using UML.
1 Entity Relationship Approach u Top-down approach to data modeling u Uses diagrams u Normalization - confirms technical soundness u Entity Relationship.
Software Modelling Class Diagram. Class Diagrams The main building block in object oriented modeling They are used both for general conceptual modeling.
Chapter 9 Domain Models.
ACTIVITY DIAGRAMS Pertemuan 20
The Object Oriented Approach to Design
The Development of Information Systems Chapter 8 page 348+
Advanced Java Programming
Entity relationship diagrams
Lecture 09:Software Testing
4: Object-oriented Analysis & Design
Lesson Objectives Aims You should know about: 1.3.2:
DFD Process & Examples.
Presentation transcript:

Object Oriented Software Development Modelling business objects OOSAD Booklet Chapter 4 Lecture: Week 4 Brian Farrimond

2 Session Aims Representing attributes and operations in class association diagrams Drawing class association diagrams derived from business forms

3 Attributes and operations As we gather requirements we find out: what information each class of object needs to record in the form of attributes what the system is supposed to do (we initially record this in use case diagrams) it is the classes that will be required to carry out these tasks we need to identify the operations that they will need to perform to achieve this

4 Attributes and operations in UML The UML class symbol is a box which is divided into three sections class name class attributes class operations (aka methods) Demo in StarUML

5 Operations issues in UML All attributes should have: setter operations to enable other objects to modify attribute values getter operations that enable other objects to discover those values Generally we can omit these from UML diagrams since they can be assumed

6 Operations issues in UML Associations do not require duplicated attributes in UML e.g. do not add a orders attribute to a Customer class - the association line speaks for itself – avoid duplication Bad!! This does the job of modelling what is going on

7 Operations issues in UML Associations do not require duplicated attributes in UML e.g. do not add a orders attribute to a Customer class - the association line speaks for itself – avoid duplication Good! Duplication removed

8 Modelling business forms

9 Chapter 4 example Typical order form

10 Chapter 4 example First attempt at a class diagram

11 Chapter 4 example First attempt at a class diagram Problem with duplication of customer data over a number of his orders

12 Chapter 4 example Second attempt at a class diagram Separate class to hold Customer details

13 Chapter 4 example Now we consider the array. Neater to extract a class containing the details of each item ordered. In Java, objects of this class might be held in an ArrayList

14 Chapter 4 example Now we consider the array. Neater to extract a class containing the details of each item ordered. In C++, objects of this class would be held in a vector

15 Chapter 4 example The new class describes a line on the original order form. Convention is to name it OrderLine.

16 Chapter 4 example What would the equivalent class name be for a line on an Invoice? The new class describes a line on the original order form. Convention is to name it OrderLine.

17 Chapter 4 example The new OrderLine class duplicates information about the items being ordered.

18 Chapter 4 example We can remove this duplication by adding a final class.

19 Chapter 4 example We can remove this duplication by adding a final class.

20 Exercise 4.7 (page 71)

21 Create a class association diagram for this card

22 Create a class association diagram for this card

23 Create a class association diagram for these forms Top Grub Order form Top Grub Invoice form …. from Database Technology Course.