Object Oriented Analysis and Design

Slides:



Advertisements
Similar presentations
Week 2 The Object-Oriented Approach to Requirements
Advertisements

Rent a car assignement. 1.Underline ( or color ) all the nouns in the use case.
From use cases to classes (in UML). A use case for writing use cases Use case: writing a use case Actors: analyst, client(s) Client identifies and write.
Visual Basic: An Object Oriented Approach 2 – Designing Software Systems.
Chapter 22 Object-Oriented Systems Analysis and Design and UML Systems Analysis and Design Kendall and Kendall Fifth Edition.
IS0514Slide 1 IS0514 Lecture Week 4 Use Case Modelling (2)
OOAD Adapted from Object Oriented Analysis and Design Methodology A Tech Talk by Ed Sullivan.
Lecture 9 Object-Oriented Analysis
Essentials of class models. 2 A very simple class model In UML, a class is shown in a class diagram as a rectangle giving its name.
Slide 1 Systems Analysis & Design CS183 Spring Semester 2008 Dr. Jonathan Y. Clark Course Website:
Slide 1 Chapter 7 Structural Modeling. Slide 2 Key Ideas A structural or conceptual model describes the structure of the data that supports the business.
Lecture 4 Class Responsibility Collaboration Cards
Lecture Fourteen Methodology - Conceptual Database Design
171 Use Case Descriptions Chapter 4 – Facade Iteration Initial Requirements (Inception Phase)
Introductory case study. 2 The problem The most difficult part of any design project is understanding the task you are attempting You have been contacted.
Software Engineering Case Study Slide 1 Introductory case study.
Use Case Diagram : Library System
Com S 362: Object-Oriented Analysis and Design Class, Responsibilities, Collaborations, CRC Cards Com S 362: Object-Oriented Analysis and Design Oct 18,
Domain Modeling (with Objects). Motivation Programming classes teach – What an object is – How to create objects What is missing – Finding/determining.
CSC271 Database Systems Lecture # 21. Summary: Previous Lecture  Phases of database SDLC  Prototyping (optional)  Implementation  Data conversion.
Internet Software Development Putting it all together Paul J Krause.
UML The Unified Modeling Language A Practical Introduction Al-Ayham Saleh Aleppo University
Software Life Cycle Requirements and problem analysis. –What exactly is this system supposed to do? Design –How will the system solve the problem? Coding.
1 Analysis Extracting from Use Cases to Create Diagrams.
CSC 395 – Software Engineering Lecture 13: Object-Oriented Analysis –or– Let the Pain Begin (At Least I’m Honest!)
CSC 213 – Large Scale Programming. Today’s Goal  Improve design skills to make usable designs  Noun extraction & UML class diagram reviewed  Connections.
Slide 1 Structural Modeling Chapter 7. Slide 2 Key Ideas A structural or conceptual model describes the structure of the data that supports the business.
 A software application is like a city  Modeling = Architecture  OOP = Civil Engineering  UML Classes = Blueprints of Buildings  UML is a common.
1 What is OO Design? OO Design is a process of invention, where developers create the abstractions necessary to meet the system’s requirements OO Design.
Combining Google Services An example in how one Help Desk Manager was able to leverage our Google Apps for Education services to streamline the student.
Object Oriented Analysis and Design COM327 week 7 COM252 week 1 Register! (Not petition!)
Structural Modeling Chapter 7. Key Ideas A structural or conceptual model describes the structure of the data that supports the business processes in.
1 Structural Modeling Chapter 7. 2 Key Ideas A structural or conceptual model describes the structure of the data that supports the business processes.
ITEC324 Principle of CS III Chapter 2 (Horstmann’s Book) – Part 1 The Object-Oriented Design Process Hwajung Lee.
12/24/2015B.Ramamurthy1 Analysis and Design with UML: Discovering Classes Bina Ramamurthy.
Outlook Web Access (OWA) is a web mail service of Microsoft Exchange; allow users to connect remotely via a Web browser OWA is used to access ,
CSC 480 Software Engineering PSP Project 2 August 27, 2004.
Identification of Classes. Object Oriented Analysis (OOA) OOA is process by which we identify classes that play role in achieving system goals & requirements.
18/2/16.  Aggregation  Part-of relationship between a component or an aggregate (collection) object)
Chapter 2 (Horstmann’s Book) – Part 1 The Object-Oriented Design Process Hwajung Lee.
TRELLO. WHAT IS TRELLO!? Trello is a project management tool that makes collaboration easy. This visual list tool can do so much more, whether you're.
Business Process and Functional Modeling
Class News Mrs. Guyton’s Room Oct 31- Nov 4 A Note from the Teacher
ATM OO Design and Implementation Case Study
Use Case Model Use case diagram.
Object Analysis: Classification
Introduction to Computer Architecture
A short introduction to UML Eivind J. Nordby Karlstad University
Advanced Java Programming
Requirements Analysis
Use Cases CS/SWE 421 Introduction to Software Engineering Dan Fleck
Secondary Cause / Effect 1 Tertiary Cause / Effect 1 Primary Effect
.
INFS 6225 Object Oriented Systems Analysis & Design
Software Design Lecture : 15.
Use Cases CS/SWE 421 Introduction to Software Engineering Dan Fleck
Copyright 2007 Oxford Consulting, Ltd
Analysis and Design with UML: Classes and Relationships
Algorithms and Problem Solving
Introduction to Computer Architecture
Use Cases CS/SWE 421 Introduction to Software Engineering Dan Fleck
Chapter 22 Object-Oriented Systems Analysis and Design and UML
Lecture 8 Object Concepts
Use Cases CS/SWE 421 Introduction to Software Engineering Dan Fleck
Introduction to Computer Architecture
ITEC324 Principle of CS III
ITEC324 Principle of CS III
Last Class!.
Secondary Cause / Effect 1 Tertiary Cause / Effect 1 Primary Effect
From Class Diagram to Contract Diagram
Presentation transcript:

Object Oriented Analysis and Design COM327 week 8 COM252 week 2

Requirements Analysis What to build? Domain Analysis Identify use-case analysis Requirements Analysis What to build? problem statement system charter requirements description object spotting Domain Analysis Identify data/functions/ relationships candidate class list CRC analysis CRC cards class list System Design Booch diagramming Decide on data structures/ functionality Booch class diagram JSP diagramming complete design implement C++

Problem Statement -example Lecturers often miss appointments to see students because they forget that their availability slots have been booked. Their slots can change on a day to day or week to week basis making them difficult to remember. Appointments are booked by reception but not always communicated to staff.

System Charter - example The system will keep track of staff availability slots. The system will accept bookings of staff availability slots by students and automatically inform staff by sending an email message at the time of booking and 10 mins before the appointment as a reminder.

Use-case analysis Imagine the system is finished. Imagine you are a user. Describe how you would do one single operation with the system: What options would you select? What data would you put in? What info would you get out?

Use-case analysis No “repeats” - only a single operation. No “ifs” - describe what it will do in any given instance. Do the ordinary situations first, worry about special cases 2nd. a.k.a. “Critical Path Analysis” ? Now do that for ALL possible operations. The set of use cases is your requirements statement.

Use-case analysis - example Start appointment system enter lecturer name see weeks availability slots enter a booking enter time enter student name enter subject of appointment exit system

Object Spotting Take all documents underline all nouns problem statement system charter requirements description underline all nouns forms “candidate class list” underline all verbs candidate “operations list”

Object Spotting- example Lecturers often miss appointments to see students because they forget that their availability slots have been booked. Their slots can change on a day to day or week to week basis making them difficult to remember. Appointments are booked by reception but not always communicated to staff.

Object Spotting- example Lecturers often miss appointments to see y because they forget that their availability slots have been booked. Their slots can change on a day to day or week to week basis making them difficult to remember. Appointments are booked by reception but not always communicated to staff.

Candidate class list Lecturers week appointments students reception availability slots slots day week reception staff.

filter - throw away duplicates synonyms anything obviously irrelevant

Candidate class list Lecturers appointments students availability slots day week reception

The End!

Next stage The candidate class list forms the input to the next stage - CRC analysis Class responsibility collaborator