Object-Oriented Functional Analysis and Design for POS Example

Size: px
Start display at page:

Download "Object-Oriented Functional Analysis and Design for POS Example"

Transcription

1 Object-Oriented Functional Analysis and Design for POS Example

2 Focus in Analysis, Design, Implementation Analysis Investigation to the problem in problem domain Design Logical solution(model) for implementation in computer domain Analysis Design Construction Investigation of the problem Logical solution Code

3 Functional AD Process & Artifacts 1) Function Requirement Capture 2) Analysis Define use cases Define conceptual model 2) Behavior Design 4) Static Design Define collaboration diagrams Define design class diagrams Analysis Artifact Use cases Conceptual Model System sequence diagrams Contracts Questions Answered What are the domain processes? What are the concepts, terms? What are the system events and operations? What do the system operations do?

4 POS Example

5 Function Requirements Capture

6 Use Case Diagram (Functional Req.)

7 Process Steps for the Point-of-Sale System Expanded Use Cases: Buy Items with Cash Use Case: Buy Items Section: Main Use case : Actors : Purpose : Overview : Type : Cross References : Buy Items Customer(initiator), Cashier Capture a sale its payment. A Customer arrives at a checkout with items to purchase. The Cashier records the purchase items and collects a payment, which may be authorized. On completion, the Customer leaves with the items. Primary and essential Functions: R1.1, R1.2, R1.3, R1.7, R1.9, R2.1, R2.2, R2.3, R2.4 Use Cases : Cashier must have completed the Log In use case.

8 Expanded Use Cases: Buy Items with Cash Typical Course of Events Actor Action 1. This use case begins when a Customer arrives at the POST check-out with items to purchase 2. The Cashier records each item. 4. On completion of item entry, the Cashier indicates to the POST that item entry is complete. 6. The Cashier tells the Customer the total System Response 3. Determines the item price and adds the item information to the running sales transaction. The description and price of the current item are presented. 5. Calculates and presents the sale total.

9 Identifying Use Cases One method used to identify use cases is actor-based. 1. Identify the actors related to a system or organization 2. For each actor, identify the processes they initiate or participate in. A second method to identify use cases is event-based. 1. Identify the external events that a system must respond to. 2. Relate the events to actors and use cases.

10 Functional Requirements Sale Functions Ref# Function Category R1.1 Record the underway(current)sale the evident items purchased R1.2 Calculate current sale total, including tax evident and coupon calculations. R1.3 Capture purchase item information from evident a bar code using a bar code scanner, or manual entry of a porduct code, such as a universal product code(upc) R1.4 Reduce inventory quantities when a sale hidden is comitted R1.5 Log completed sales hidden R1.6 Cashing must log in with an ID and Evident password in order to use the system R1.7 Provide a persistent storage mechanism. Hidden R1.8 Provide inter-process and inter-system Hidden communication mechanisms. R1.9 Display description and price of item recorded. evident

11 Function Model Analysis

12 Conceptual Model A conceptual model is a representation of concepts in a problem domain. It may show : - concepts - associations between concepts - attributes of concepts

13 Strategies to Identify Concepts Finding Concepts with Noun Phrase identification - A useful technique is to identify the noun and noun phrases in textual descriptions of a problem domain, and consider them as candidate concepts or attributes - Care must be applied with this method; a mechanical noun-to-concept mapping isn t possible, and words in natural languages are ambiguous(especially English)

14 Strategies to Identify Concepts Finding Concepts with the Concept Category List Concept Category Physical or tangible objects Specifications, designs, or descriptions of things places transaction Transaction line items Role of peopel Containers of other things Things in a container Other computer or electromechanical systems external to our system POST, Airplane Examples ProductSpecification FlightDescription Stores, Airport Sale, Payment, Reservation SaleLineItem Cashier, Pilot Store, Bin, Airplane Item, Passenger CreditCardAuthorizationSystem AirTrafficControl

15 Strategies to Identify Concepts Concept Category Abstract noun concepts Organizations Events Process(often not represented as a concept, but may be) Rules and policies Catalogs Records of finance, work, contracts, legal maters Financial instruments and services Manuals, books Examples Hunger, Acrophobia SalesDepartment, ObjectAirline Sale, Robbery, Meeting, Flight, Crash, Landing SellingAProduct, BookingASeat RefundPolicy, CancellationPolicy ProductCatalog, PartsCatalog Receipt, Ledger, EmploymentContract, MaintenanceLog LineOfCredit, Stock EmployeeManual, RepairManual

16 Strategies to Identify Concepts Example - the Buy Items Actor Action 1. This use case begins when a Customer arrives at the POST check-out with items to purchase 2. The Cashier records the universal product code(upc) from each item If there is more than one of the same item, the Cashier can enter the quantity as well System Response 3. Determines the item price and adds the item information to the running sales transaction. The description and price of the current item are displayed

17 Conceptual Modeling Guidelines How to Make a Conceptual Model : apply the following steps to create a conceptual model. 1. List the candidate concepts using the Concept Category List and noun phrase identification related to the current requirements under cosideration 2. Draw them in a conceptual model. 3. Add the associations necessary to record relationships for which there is a need to preserve some memory ( discussed in a subsequent chapter) 4. Add the attributes necessary to fulfill the information requirements ( discussed in a subsequent chapter)

18 Conceptual Modeling Guidelines On Naming and Modeling Things : The Mapmaker - the mapmaker strategy applies to the spirit of how a cartographer or mapmaker works: Exclude irrelevant features Use the existing names in the territory Do not add things that are not there - A conceptual model is a kind of map of concepts or things in a domain. This spirit emphasizes the analytical role of a conceptual model, and suggests the following Mapmakers uses the names of the territory - they do not change the names of cities on a map. For conceptual model, this means to use the vocabulary of the domain when naming concepts and attributes.

19 Concepts with Attributes

20 Finding Associations Common Associations List Category A is a physical part of B A is a logical part of B A is physically contained in/on B A is logically contained in B A is a description for B A is a line item of a transaction or report B A is known/logged/recorded/reported/ captured in B Examples Drawer-POST, Wing-Airplane SalesLineItem - Sale FlightLeg FlightRoute POST Store, Item Shelf Passenger Airplane ItemDescription Catalog Flight FlightSchedule ItemDescription Item FlighDescription Flight SalesLineItem Sale MaintenanceJob MaintenanceLog Sale POST Reservation FlightManifest

21 Finding Associations Common Associations List Category Examples A is a member of B Cashier Store Pilot Airline A is an organizational subunit of B Department Store Maintenance Airline A uses or manages B Cashier POST Pilot Airplane A communicates with B Customer Cashier ReservationAgent Passenger A is related to a transcation B Customer Payment Passenger Ticket

22 Finding Associations Common Associations List Category A is a transaction related to another transaction B A is next to B A is owned by B Examples Payment Sale Reservation Cancellation POST POST City City POST Store Plane Airline

23 Association Guidelines Association Guidelines: Focus on those associations for which knowledge of the relationship needs to be preserved for some duration( need-to-know associations) It is more important to identify concepts than to identify associations. Too many associations tend to confuse a conceptual model rather than illuminate it. Their discovery can be time-consuming, with marginal benefit. Avoid showing redundant or derivable associations.

24 POS Conceptual Model

25 Function Model Design

26 System Behavior: System Interaction Diagrams A system sequence diagram illustrates events from actors to systems. System Behavior : System behavior is a description of what a system does, without explaining how it does it. System Interaction Diagrams : A system interaction diagram is a picture that shows, for a particular scenario of a use case, the events that external actors generate, their order, and inter-system events. A system interaction diagram should be done for the typical course of events of the use case, and possibly others, fot the most interesting alternative courses

27 How to Make a System Interaction Diagram To make system interaction diagrams for the typical course of events for a use case: Draw a line representing the system as a black box. Identify each actor that directly operates on the system. Draw a line for each such actor. From the use case typical course of events text, identify the system (external)events that each actor generates. Illustrate them on the diagram. Optionally, include the use case text to the left of the diagram.

28 Identifying the system (external) events

29 System Behavior: Contracts Contracts a contract is a document that describes what an operation commits to archive. It is usually declarative in style, emphasizing what will happen, rather than how it will be achieved A system operation contracts describes changes in the state of the overall system when a system operation is invoked.

30 Example contract - enteritem Name: Responsibilit ies: Type: Cross References: Notes: Exceptions: Output: Preconditions: Postconditions: Contract EnterItem(upc: number, quantity: intege) Enter (record) sale of an item and add it to the sale. Display the item description and price. System System Functions: R1.1, R1.3, R1.9 Use Cases: Buy Items Use superfast database access. If the UPC is not valid, indicate that it was an error. UPC is known to the system 다음

31 Postconditions: If a new sale, a Sale was created(instance creation) If a new sale, the new Sale was associated with the POST (association formed) A SalesLineItem was created(instance creation) The SalesLineItem was associated with the Sale(association formed) SalesLineItem.quantity was set to quantity(attribute modification) The SalesLineItem was associated with a ProductSpecfication, based on UPC match(association formed)

32 Name: Responsibilities: Type: Cross References: Notes: Exceptions: Output: Pre-conditions: Post-conditions: Contract Name of operation, and parameters An informal description of the responsibilities this operation must fulfill. Name of type(concept, software class, interface) System function reference numbers, use cases, etc. Design notes, algorithms, and so on. Exceptional cases. Non-UI outputs, such as messages or records that are sent outside of the system. Assumptions about the state of the system before execution of the operation. The state of the system after completion of the operation. Discussed in detail in a following section.

33 How to Make A Contract To make contracts for each use case: 1. Identify the system operations from the system sequence diagrams. 2. For each system operation, construct an contract. 3. Start by wirting the Responsibilities section, informally describing the purpose of the operation. 4. Then complete the Post-conditions section, declaratively describing the state changes that occur to objects in the conceptual model. 5. To describe the post-conditions, use the following categories: Instance creation and deletion. Attribute modification Associations formed and broken

34 Contracts and other Artifacts the use cases suggests the system sequencs diagrams. The system operations can then be identified. The effect of the system operations is described in contracts.

35 Interaction Diagrams The contracts do not show a solution of how software objects are going to fulfill the post-conditions. The UML includes interaction diagrams to illustrate how objects interact via message to fullfill tasks. Interaction Diagrams illustrates the message interactions between instances ( and classes ) in the class model. Collaboration diagrams Object interactions in a graph or network format

36 How to Make Collaboration Diagrams 1. Create a seprate diagram for each system operation under development in the current development in the current development cycle. -For each system operation message,make a diagram with it as the starting message. 2. If the diagram gets complex(for example, does not easily fit on an 8.5 x 11 sheet of paper), spilt it into smaller diagrams. 3. Using the operation contract responsibilities and post-conditions, and use case description as a starting point, design a system of interacting objects to fullfill the tasks. Apply the GRASP and other patterns to develop a good design

37 Collaboration Diagrams and other Artifacts

38 Conceptual Diagram Payment SaleLineItems Sale Casher Post Casher Items Store Product Spec. Product Catalog /Inventory

39 Collaboration Diagram: enteritem :POST SALE :Product Catalog SalelineItem :Product Specs SalelineItem

40 Collaboration Diagram: enteritem Pattern Pattern Pattern

41 SW Development Process Define use cases Define conceptual model Define collaboration diagrams Define design class diagrams Analysis Artifact Use cases Conceptual Model System sequence diagrams Contracts Questions Answered What are the domain processes? What are the concepts, terms? What are the system events and operations? What do the system operations do?

42 Class Diagram

43 SW Modeling Requirement Capture A System ( 문제 ) The overall thing that is being developed 모델링 ( 분석 / 설계 ) A Model An abstraction of a system from a particular perspective 구현 개발 A Software ( 솔루션 ) An implementation of a model Use Cases Problem Analysis Conceptual Model Solution Design Collaboration Diagram Class Diagram Implementation Design Component Diagram Deployment Diagram 43

44 SW Modeling in UML Requirements UML Diagram 관련산출물또는자원 Use Case Description User Interface Object Diagram Concept Class Diagram Interaction Diagram Class Diagram (Object Diagram) Relational Data Model Physical Data Models Implementation Code Relational Database Object Database Business Use Cases Use Cases Diagram Sequence Diagram Collaboration Diagram Implementation Diagram Component Diagram Activity Diagram CRC Cards State Diagram Deployment Diagram

45 Thank You!

CTIS 359 Principles of Software Engineering SOFTWARE DESIGN OO(A)D

CTIS 359 Principles of Software Engineering SOFTWARE DESIGN OO(A)D CTIS 359 Principles of Software Engineering SOFTWARE DESIGN OO(A)D Today s Objectives To explain the basic concepts of OO(A)D To describe some best practices regarding to OO(A)D What is NOT UML? The UML

More information

Object-Oriented Analysis and Design

Object-Oriented Analysis and Design Analysis and Design To develop an application, it is necessary a description of the problem and requirements: what the problem is about and what a system must do high-level and detailed descriptions of

More information

INFO-H-302. Object-Oriented Analysis and Design. Prof. Esteban Zimányi

INFO-H-302. Object-Oriented Analysis and Design. Prof. Esteban Zimányi INFO-H-302 Object-Oriented Analysis and Design Prof. Esteban Zimányi Introduction Plan and Elaborate Phase Analyze Phase Design Phase Construct Phase Other UML Notation Conclusion Table of Contents 2 Object

More information

Introduction to Software Engineering (2+1 SWS) Winter Term 2009 / 2010 Dr. Michael Eichberg Vertretungsprofessur Software Engineering Department of

Introduction to Software Engineering (2+1 SWS) Winter Term 2009 / 2010 Dr. Michael Eichberg Vertretungsprofessur Software Engineering Department of Introduction to Software Engineering (2+1 SWS) Winter Term 2009 / 2010 Dr. Michael Eichberg Vertretungsprofessur Software Engineering Department of Computer Science Technische Universität Darmstadt Dr.

More information

Constantinos Constantinides Computer Science and Software Engineering Concordia University Montreal, Canada

Constantinos Constantinides Computer Science and Software Engineering Concordia University Montreal, Canada 1 Disclaimer: These slides are based on the 2 nd edition of Applying UML and Patterns; An introduction to OOAD and the Unified process by Craig Larman (2002). I take responsibility for any errors. Constantinos

More information

Software Modeling & Analysis

Software Modeling & Analysis Software Modeling & Analysis KUPE (Konkuk Unified Process for Education) With Case Study -OOPT (Object Oriented Process with Trace) Lecturer: JUNBEOM YOO jbyoo@konkuk.ac.kr What is KUPE? KUPE (Konkuk Unified

More information

Tutorial notes on. Requirements analysis

Tutorial notes on. Requirements analysis Tutorial notes on Requirements analysis Dr. C. Constantinides, P.Eng. Computer Science and Software Engineering Concordia University Page 1 of 12 Exercise 1. Consider an email client software. The client

More information

Domain Modeling. CSSE 574: Week 1, Part 3. Steve Chenoweth Phone: Office (812) Cell (937)

Domain Modeling. CSSE 574: Week 1, Part 3. Steve Chenoweth Phone: Office (812) Cell (937) Domain Modeling CSSE 574: Week 1, Part 3 Steve Chenoweth Phone: Office (812) 877-8974 Cell (937) 657-3885 Email: chenowet@rose-hulman.edu s g Where we re going Sample UP Artifact Relationships date...

More information

Goal: build an object-oriented model of the realworld system (or imaginary world) Slicing the soup: OOA vs. OOD

Goal: build an object-oriented model of the realworld system (or imaginary world) Slicing the soup: OOA vs. OOD Domain analysis Goal: build an object-oriented model of the realworld system (or imaginary world) Slicing the soup: OOA vs. OOD OOA concerned with what, not how OOA activities focus on the domain layer

More information

Software Modeling & Analysis

Software Modeling & Analysis Software Modeling & Analysis OOPT (Object Oriented Process with Trace) Lecturer: JUNBEOM YOO jbyoo@konkuk.ac.kr What is OOPT? OOPT (Object Oriented Process with Trace) A software process based on RUP Revision

More information

Domain Model and Domain Modeling

Domain Model and Domain Modeling Dr. Michael Eichberg Software Engineering Department of Computer Science Technische Universität Darmstadt Software Engineering Domain Model and Domain Modeling Resources: Craig Larman; Applying UML and

More information

Domain Modeling: Associations and Attributes

Domain Modeling: Associations and Attributes Domain Modeling: Associations and Attributes CSSE 574: Week 2, Part Steve Chenoweth Phone: Office (82) 877-8974 Cell (937) 657-3885 Email: chenowet@rose-hulman.edu Q Description Classes A description class

More information

Domain Modeling- 2. Generalization

Domain Modeling- 2. Generalization Generalization Domain Modeling- 2 Conceptual superclasses and subclasses When to create a subclass? A superclass? Abstract classes Modeling state changes Operation contracts Attaching pre- /post-conditions

More information

Operations Contracts and Preliminaries on Design

Operations Contracts and Preliminaries on Design Operations Contracts and Preliminaries on Design CSSE 574: Week 2, Part 3 Steve Chenoweth Phone: Office (812) 877-8974 Cell (937) 657-3885 Email: chenowet@rose-hulman.edu We are at System Operation Contracts

More information

Final Exam CISC 475/675 Fall 2004

Final Exam CISC 475/675 Fall 2004 True or False [2 pts each]: Final Exam CISC 475/675 Fall 2004 1. (True/False) All software development processes contain at least separate planning, testing, and documentation phases. 2. (True/False) The

More information

GRASP: Patterns for. chapter18

GRASP: Patterns for. chapter18 GRASP: Patterns for assigning responsibility chapter18 1 Chapter Objectives Learn about design patterns Learn how to apply five GRASP patterns 2 Building Collaboration diagrams System Design: how the system

More information

Assigning Responsibilities by Larman

Assigning Responsibilities by Larman Assigning Responsibilities by Larman Core design activity: The identification of objects and responsibilities and providing a solution in terms of an interaction diagram this is the creative part where

More information

CS6502-OBJECT ORIENTED ANALYSIS AND DESIGN Two Marks Question with Answers Unit-I Introduction to OOAD

CS6502-OBJECT ORIENTED ANALYSIS AND DESIGN Two Marks Question with Answers Unit-I Introduction to OOAD CS6502-OBJECT ORIENTED ANALYSIS AND DESIGN Two Marks Question with Answers Unit-I Introduction to OOAD 1. What is Object-Oriented Analysis? Nov/Dec 2016 During object-oriented analysis there is an emphasis

More information

Object Analysis & Design in the textbook. Introduction to GRASP: Assigning Responsibilities to Objects. Responsibility-Driven Design

Object Analysis & Design in the textbook. Introduction to GRASP: Assigning Responsibilities to Objects. Responsibility-Driven Design Object Analysis & Design in the textbook Chapter 2 Object Oriented Design Process Introduction to GRASP: Assigning Responsibilities to Objects CS 4354 Summer II 2016 Jill Seaman Much of the material in

More information

ROEVER ENGINEERING COLLEGE DEPARTMENT OF INFORMATION TECHNOLOGY CS2353-OBJECT ORIENTED ANALYSIS AND DESIGN. Unit-I. Introduction to OOAD

ROEVER ENGINEERING COLLEGE DEPARTMENT OF INFORMATION TECHNOLOGY CS2353-OBJECT ORIENTED ANALYSIS AND DESIGN. Unit-I. Introduction to OOAD ROEVER ENGINEERING COLLEGE CS2353-OBJECT ORIENTED ANALYSIS AND DESIGN 1. What is Object-Oriented Analysis? Unit-I Introduction to OOAD PART-A During object-oriented analysis there is an emphasis on finding

More information

COMP 6471 Software Design Methodologies

COMP 6471 Software Design Methodologies COMP 6471 Software Design Methodologies Fall 2011 Dr Greg Butler http://www.cs.concordia.ca/~gregb/home/comp6471-fall2011.html Page 2 Sample UP Artifact Relationships Domain Model Context Business Modeling

More information

Invoicing brings it all together

Invoicing brings it all together Invoicing brings it all together Chad Klein TECHNICAL LEVEL: EASY INTERMEDIATE ADVANCED What we ll cover Using keyboard shortcuts Displaying a quantity discount message Opening the cash drawer Printing

More information

Introduction to Software Engineering (2+1 SWS) Winter Term 2009 / 2010 Dr. Michael Eichberg Vertretungsprofessur Software Engineering Department of

Introduction to Software Engineering (2+1 SWS) Winter Term 2009 / 2010 Dr. Michael Eichberg Vertretungsprofessur Software Engineering Department of Introduction to Software Engineering (2+1 SWS) Winter Term 2009 / 2010 Dr. Michael Eichberg Vertretungsprofessur Software Engineering Department of Computer Science Technische Universität Darmstadt Dr.

More information

Class Diagrams in Analysis

Class Diagrams in Analysis 3.2 Subject/Topic/Focus: Introduction to Classes Summary: Conceptual Modeling Notation: Classes Associations: Multiplicity, Roles, Aggregation, Composition Generalization Objects Analysis Process Literature:

More information

VEL TECH HIGH TECH Dr. RANGARAJAN Dr. SAKUNTHALA ENGINEERING COLLEGE UNIT 1 UML DIAGRAMS

VEL TECH HIGH TECH Dr. RANGARAJAN Dr. SAKUNTHALA ENGINEERING COLLEGE UNIT 1 UML DIAGRAMS UNIT 1 UML DIAGRAMS Introduction to OOAD Unified Process - UML diagrams Use Case Class Diagrams Interaction Diagrams State Diagrams Activity Diagrams Package, component and Deployment Diagrams. INTRODUCTION

More information

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING CS2353-OBJECT ORIENTED ANALYSIS AND DESIGN. Unit-I. Introduction to OOAD

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING CS2353-OBJECT ORIENTED ANALYSIS AND DESIGN. Unit-I. Introduction to OOAD DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING CS2353-OBJECT ORIENTED ANALYSIS AND DESIGN 1. What is Object-Oriented Analysis? Unit-I Introduction to OOAD PART-A (UML Notations has to be used wherever necessary)

More information

References: Applying UML and patterns Craig Larman

References: Applying UML and patterns Craig Larman References: Applying UML and patterns Craig Larman 1 2 What are patterns? Principles and solutions codified in a structured format describing a problem and a solution A named problem/solution pair that

More information

Assigning Responsibilities (Patterns of Responsibility Assignment Principles: GRASP)

Assigning Responsibilities (Patterns of Responsibility Assignment Principles: GRASP) Subsystem design basics Assigning Responsibilities (Patterns of Responsibility Assignment Principles: GRASP) Dept. of Computer Science Baylor University Focus on modeling how subsystems accomplish goals

More information

Information Expert (or Expert)

Information Expert (or Expert) Page 2 Page 3 Pattern or Principle? Information Expert (or Expert) Class Responsibility Sale Knows Sale total SalesLineItem Knows line item total ProductDescription Knows product price The GRASP patterns

More information

COMP 6471 Software Design Methodologies

COMP 6471 Software Design Methodologies COMP 647 Software Design Methodologies Fall 20 Dr Greg Butler http://www.cs.concordia.ca/~gregb/home/comp647-fall20.html Course Introduction Course People Course Components What the course is What the

More information

Software Engineering - I

Software Engineering - I Software Engineering - I An Introduction to Software Construction Techniques for Industrial Strength Software Chapter 7 Object Oriented Analysis and Design Copy Rights Virtual University of Pakistan 1

More information

System Sequence Diagrams. Based on Craig Larman, Chapter 10 and Anuradha Dharani s notes

System Sequence Diagrams. Based on Craig Larman, Chapter 10 and Anuradha Dharani s notes System Sequence Diagrams Based on Craig Larman, Chapter 10 and Anuradha Dharani s notes Dynamic behaviors Class diagrams represent static relationships. Why? What about modeling dynamic behavior? Interaction

More information

Äriprotsesside modelleerimine ja automatiseerimine Loeng 7 Valdkonna mudel

Äriprotsesside modelleerimine ja automatiseerimine Loeng 7 Valdkonna mudel Äriprotsesside modelleerimine ja automatiseerimine Loeng 7 Valdkonna mudel Enn Õunapuu enn.ounapuu@ttu.ee What is a domain model? A domain model captures the most important types of objects in the context

More information

THE UNIVERSITY OF THE WEST INDIES. Answer ALL questions. Marks for each question are given in the margin. This exam is worth 60 marks

THE UNIVERSITY OF THE WEST INDIES. Answer ALL questions. Marks for each question are given in the margin. This exam is worth 60 marks THE UNIVERSITY OF THE WEST INDIES EXAMINATIONS OF MAY 2004 Code and Name of Course: EE29B Introduction to Software Engineering Paper: Date and Time: Duration: Three Hours INSTRUCTIONS TO CANDIDATES: This

More information

OO Design2. Design Artifacts

OO Design2. Design Artifacts OO Design2 POS example - revisited LAR Ch 8 has entire POS design explained READ THIS CHAPTER and ASK Q s in class Design class diagrams Kinds of visibility of objects to one another Navigability of associations

More information

Chapter 1: Programming Principles

Chapter 1: Programming Principles Chapter 1: Programming Principles Object Oriented Analysis and Design Abstraction and information hiding Object oriented programming principles Unified Modeling Language Software life-cycle models Key

More information

Object Oriented Software Development CIS Today: Object Oriented Analysis

Object Oriented Software Development CIS Today: Object Oriented Analysis Object Oriented Software Development CIS 50-3 Marc Conrad D104 (Park Square Building) Marc.Conrad@luton.ac.uk Today: Object Oriented Analysis The most single important ability in object oriented analysis

More information

Lecture 8: Use Case -Driven Design. Where UML fits in

Lecture 8: Use Case -Driven Design. Where UML fits in Lecture 8: Use Case -Driven Design The Role of UML in the Software Process E.g. ICONIX Domain Models Use Cases 2008 Steve Easterbrook. This presentation is available free for non-commercial use with attribution

More information

4 Software models. often more than what people can handle not necessary to know all details at all times

4 Software models. often more than what people can handle not necessary to know all details at all times 4 Software models Software is complex often more than what people can handle not necessary to know all details at all times Models offer simplified view concentrate on the important issues and omit the

More information

AFTER HOURS EMERGENCY POS SUPPORT ext 126 Press 4 when prompted

AFTER HOURS EMERGENCY POS SUPPORT ext 126 Press 4 when prompted AFTER HOURS EMERGENCY POS SUPPORT 519-442-3153 ext 126 Press 4 when prompted TEC REGISTER POS Operations Manual A complete guide to the operations of the point-of-sale (POS) unit. Calendar Club of Canada

More information

Course Outline LEAN Manufacturing in Microsoft Dynamics AX TO TRAIN

Course Outline LEAN Manufacturing in Microsoft Dynamics AX TO TRAIN 80310 - LEAN Manufacturing in Microsoft Dynamics AX 2012 General Description This course provides students with a detailed overview of the Lean Manufacturing module in Microsoft It provides a description

More information

OBJECT ORIENTED ANALYSIS AND DESIGN SYLLABUS

OBJECT ORIENTED ANALYSIS AND DESIGN SYLLABUS OBJECT ORIENTED ANALYSIS AND DESIGN SYLLABUS CS6502 - OBJECT ORIENTED ANALYSIS AND DESIGN L T P C 3 0 0 3 UNIT I- UML DIAGRAMS Introduction to OOAD Unified Process - UML diagrams Use Case Class Diagrams

More information

Responsibilities. Using several specific design principles to guide OO design decisions.

Responsibilities. Using several specific design principles to guide OO design decisions. Designing Objects with Responsibilities Using several specific design principles to guide OO design decisions. Challenge Old-school advice on OOD After identifying i your requirements and creating a domain

More information

Q: The barcode on the item is not scanning or the product is not found, what should I do to complete the transaction for my customer?

Q: The barcode on the item is not scanning or the product is not found, what should I do to complete the transaction for my customer? FAQ s Q: The barcode on the item is not scanning or the product is not found, what should I do to complete the transaction for my customer? First, scan the Scrubs and Beyond sticker ticket. If the sticker

More information

Introduction to Software Engineering (2+1 SWS) Winter Term 2009 / 2010 Dr. Michael Eichberg Vertretungsprofessur Software Engineering Department of

Introduction to Software Engineering (2+1 SWS) Winter Term 2009 / 2010 Dr. Michael Eichberg Vertretungsprofessur Software Engineering Department of Introduction to Software Engineering (2+1 SWS) Winter Term 2009 / 2010 Dr. Michael Eichberg Vertretungsprofessur Software Engineering Department of Computer Science Technische Universität Darmstadt What

More information

Interaction Modelling: Use Cases

Interaction Modelling: Use Cases Interaction Modelling: Use Cases Fabrizio Maria Maggi Institute of Computer Science (these slides are derived from the book Object-oriented modeling and design with UML ) Interaction Modelling: INPUT 1

More information

0. Database Systems 1.1 Introduction to DBMS Information is one of the most valuable resources in this information age! How do we effectively and efficiently manage this information? - How does Wal-Mart

More information

The Object-Oriented Design Process

The Object-Oriented Design Process The Object-Oriented Design Process Part 1: Techniques & Tools OOdesignProcess 1 Program development In theory, 3 phase development process: Analysis: figure out the problem Design: develop the solution

More information

MSO Lecture 3. Wouter Swierstra. September 14, 2015

MSO Lecture 3. Wouter Swierstra. September 14, 2015 1 MSO Lecture 3 Wouter Swierstra September 14, 2015 2 Haven t found a lab partner yet? Come talk to me in the break. 3 LAST LECTURE How can I manage the process of constructing complex software? How do

More information

On to Iteration 3, and Activity Diagrams CSSE 574: Session 6, Part 1

On to Iteration 3, and Activity Diagrams CSSE 574: Session 6, Part 1 On to Iteration 3, and Activity Diagrams CSSE 574: Session 6, Part 1 Steve Chenoweth Phone: Office (812) 877-8974 Cell (937) 657-3885 Email: chenowet@rose-hulman.edu On to Iteration 3: NextGen POS Failover

More information

Software Life-Cycle Models

Software Life-Cycle Models Software Life-Cycle Models CMPSC 487 Lecture 03 Topics: UML Class Diagram Rosenburg Chap 2. Domain Modeling A. UML: Unified Modeling Language UML is a general-purpose, developmental, modeling language

More information

What is a Model? Copyright hebley & Associates

What is a Model? Copyright hebley & Associates Modeling Overview... as we know, there are known knowns; there are things we know we know. We also know there are known unknowns; that is to say we know there are some things we do not know. But there

More information

CS3205: Task Analysis and Techniques

CS3205: Task Analysis and Techniques CS3205: Task Analysis and Techniques CS3205: Task Analysis and Techniques Readings (same as before): 1) ID-Book Chapter Establishing Requirements, Ch. 10 (Ch. 9 in course ebook) 2) Chapter 2 from Task-Centered

More information

CSSE 374: UML Activity Diagrams. Shawn Bohner Office: Moench Room F212 Phone: (812)

CSSE 374: UML Activity Diagrams. Shawn Bohner Office: Moench Room F212 Phone: (812) CSSE 374: UML Activity Diagrams Shawn Bohner Office: Moench Room F212 Phone: (812) 877-8685 Email: bohner@rose-hulman.edu Learning Outcomes: Patterns, Tradeoffs Identify criteria for the design of a software

More information

Chapter 10. Object-Oriented Analysis and Modeling Using the UML. McGraw-Hill/Irwin

Chapter 10. Object-Oriented Analysis and Modeling Using the UML. McGraw-Hill/Irwin Chapter 10 Object-Oriented Analysis and Modeling Using the UML McGraw-Hill/Irwin Copyright 2007 by The McGraw-Hill Companies, Inc. All rights reserved. Objectives 10-2 Define object modeling and explain

More information

Some of the new features in the upcoming

Some of the new features in the upcoming 02/08/06 System Some of the new features in the upcoming 7.5.11 Expanded report numbers Each CounterPoint report and journal is identified by a 4-digit report number, (from 0001 to 9999) to help you track

More information

The barcode on the item is not scanning or the product is not found, what should I do to complete the transaction for my customer?

The barcode on the item is not scanning or the product is not found, what should I do to complete the transaction for my customer? FAQ s The barcode on the item is not scanning or the product is not found, what should I do to complete the transaction for my customer? First, scan the Scrubs and Beyond sticker ticket. If the sticker

More information

ADVANCED SOFTWARE DESIGN LECTURE 7 GRASP

ADVANCED SOFTWARE DESIGN LECTURE 7 GRASP ADVANCED SOFTWARE DESIGN LECTURE 7 GRASP Dave Clarke 1 TODAY S LECTURE We will discuss 7 of the GRASP design patterns cohesion and coupling were covered earlier. These provide principles for evaluating

More information

CLIENT MANUAL USER MANUAL. Sky Travellers Page 1. Dubai, UAE. Skytravellers.com

CLIENT MANUAL USER MANUAL.  Sky Travellers Page 1. Dubai, UAE. Skytravellers.com http://partner.skytravellers.com/ CLIENT MANUAL Dubai, UAE Skytravellers.com P.O. Box: 89634, Office No. 109, Business Point, Port Saeed, Deira, Dubai, UAE, Tel: +971 4 2989880 Fax: + 971 4 2941413 e-mail:

More information

22/09/2012 INFO2110. Copyright Warning. Revision of class diagram. Overview. Purpose of class diagram. Generalization Relationship

22/09/2012 INFO2110. Copyright Warning. Revision of class diagram. Overview. Purpose of class diagram. Generalization Relationship 22/09/202 INFO20 Copyright Warning System Analysis and Modelling Semester 2, 202 Lecture 8, Structural Modelling (II) COMMONWEALTH OF AUSTRALIA Copyright Regulations 969 WARNING This material has been

More information

Topics. Overview- The UML Functional Model. Structural Model. Behavioral Models. Use Case Diagram (essential and system)

Topics. Overview- The UML Functional Model. Structural Model. Behavioral Models. Use Case Diagram (essential and system) Topics Overview- The UML Functional Model Use Case Diagram (essential and system) Structural Model Class/object, Component and Deployment Diagram Behavioral Models Activity, State chart, sequence /collaboration

More information

Software Engineering Prof.N.L.Sarda IIT Bombay. Lecture-11 Data Modelling- ER diagrams, Mapping to relational model (Part -II)

Software Engineering Prof.N.L.Sarda IIT Bombay. Lecture-11 Data Modelling- ER diagrams, Mapping to relational model (Part -II) Software Engineering Prof.N.L.Sarda IIT Bombay Lecture-11 Data Modelling- ER diagrams, Mapping to relational model (Part -II) We will continue our discussion on process modeling. In the previous lecture

More information

QuickSwipe Web User Guide

QuickSwipe Web User Guide QuickSwipe Web User Guide Bluefin Payment Systems Release 12/20/2013 Table of Contents Table of Contents... 1 Overview... 3 Log In... 3 Management... 5 Users... 5 Adding Users... 6 Editing Users... 8 Deleting

More information

ALL ABOUT THAT KIT, BOUT THAT KIT PART I

ALL ABOUT THAT KIT, BOUT THAT KIT PART I ALL ABOUT THAT KIT, BOUT THAT KIT PART I Strange Encounters of the Checkout Kind by Charles Owen Chad Klein TECHNICAL LEVEL: EASY INTERMEDIATE ADVANCED Cash paid in process Cash paid out process Cash drop

More information

Gift Card Instructions Daxko Spectrum

Gift Card Instructions Daxko Spectrum Gift Cards Gift card are good to use for a variety of reason: 1. You can track the declining balance on them. 2. You can recharge them; treat it as a cash card. The cards can be attached to a recipient.

More information

BDSA08 Advanced Architecture

BDSA08 Advanced Architecture UI Swing not the Java Swing libraries, but our GUI classes based on Swing Web Domain Sales Payments Taxes Technical Services Persistence Logging RulesEngine BDSA08 Advanced Architecture Jakob E. Bardram

More information

Appendix Data Retention Schedule

Appendix Data Retention Schedule Appendix Data Retention Schedule Financial Records Payroll records Seven years after audit Supplier contracts Seven years after contract is terminated Chart of Accounts Fiscal Policies and Procedures Audits

More information

Returning Dealer Log In: Password Retrieval: Sign up for existing dealer without web access:

Returning Dealer Log In: Password Retrieval: Sign up for existing dealer without web access: Returning Dealer Log In: 1) For returning dealer, select the first option: I m ready to log in. 2) Enter Dealer ID (customer #), email address & password. 3) Choose sign in Password Retrieval: 1) If you

More information

From designing to coding

From designing to coding From designing to coding l st step: sensibly split work among team members Choose splits along thin interfaces l Probably not equal parts; split biggest parts again later Formalize the interfaces think

More information

CS350 Lecture 2 Requirements Engineering. Doo-Hwan Bae

CS350 Lecture 2 Requirements Engineering. Doo-Hwan Bae CS350 Lecture 2 Requirements Engineering Doo-Hwan Bae bae@se.kaist.ac.kr Contents Overview of Requirements Engineering OO Analysis: Domain modeling, Use-case, sequence, class Structured Analysis: Dataflow

More information

What's New on Release 26.1

What's New on Release 26.1 What's New on Release 26.1 Welcome to Eagle Release 26.1 (server Level 38). This document summarizes the new features and enhancements. Use the red links below to take you to a particular section of this

More information

Data Import Guide DBA Software Inc.

Data Import Guide DBA Software Inc. Contents 3 Table of Contents 1 Introduction 4 2 Data Import Instructions 5 3 Data Import - Customers 10 4 Data Import - Customer Contacts 16 5 Data Import - Delivery Addresses 19 6 Data Import - Suppliers

More information

CHAPTER 8B PURCHASE ORDER MANAGEMENT

CHAPTER 8B PURCHASE ORDER MANAGEMENT CHAPTER 8B PURCHASE ORDER MANAGEMENT Chapter 8B...1 Purchase Order Maintenance...2 Purchase Order Maintenance...3 Retrieving an Existing Purchase Order...5 Quick Search...6 Deleting an Existing Purchase

More information

Chapter 4: Data Management

Chapter 4: Data Management Accounting Information Systems: Essential Concepts and Applications Fourth Edition by Wilkinson, Cerullo, Raval, and Wong-On-Wing Chapter 4: Data Management Slides Authored by Somnath Bhattacharya, Ph.D.

More information

CS 451 Software Engineering

CS 451 Software Engineering CS 451 Software Engineering Yuanfang Cai Room 104, University Crossings 215.895.0298 yfcai@cs.drexel.edu 1 Design Engineering A systematical way to translate SRS into design Start with use cases from SRS

More information

Towards Automatic Generation and Continuous Improvement of Functional Test Cases: The Case of the Test-Duo Framework and Mutation Testing *

Towards Automatic Generation and Continuous Improvement of Functional Test Cases: The Case of the Test-Duo Framework and Mutation Testing * JOURNAL OF INFORMATION SCIENCE AND ENGINEERING 31, 2025-2053 (2015) Towards Automatic Generation and Continuous Improvement of Functional Test Cases: The Case of the Test-Duo Framework and Mutation Testing

More information

Set 2 MCQ

Set 2 MCQ 1. ETCS means A) Enable Tax Collected at Source B) Electronic Tax Collected at Source C) Electric Tax Collected at Source D) None of these 2. To get Payroll Reports choose A) Gateway of Tally > Display

More information

Advanced Interaction

Advanced Interaction 8 Advanced nteraction Modeling The interaction model has several advanced features that can be helpful. You can skip this chapter on a first reading of the book. 8.1 Use Case Relationships ndependent use

More information

Object-Oriented Software Engineering Practical Software Development using UML and Java

Object-Oriented Software Engineering Practical Software Development using UML and Java Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 5: Modelling with Classes Lecture 5 5.1 What is UML? The Unified Modelling Language is a standard graphical

More information

user.book Page 45 Friday, April 8, :05 AM Part 2 BASIC STRUCTURAL MODELING

user.book Page 45 Friday, April 8, :05 AM Part 2 BASIC STRUCTURAL MODELING user.book Page 45 Friday, April 8, 2005 10:05 AM Part 2 BASIC STRUCTURAL MODELING user.book Page 46 Friday, April 8, 2005 10:05 AM user.book Page 47 Friday, April 8, 2005 10:05 AM Chapter 4 CLASSES In

More information

ShipRite s Account Receivable Instructions

ShipRite s Account Receivable Instructions ShipRite s Account Receivable Instructions Setting up a new account Click on the POS button Enter the existing customer s PHONE number here. If they are in the database, their information will appear at

More information

Data. Entities. Accounting Information Systems. Chapter 4: Data Management

Data. Entities. Accounting Information Systems. Chapter 4: Data Management Accounting Information Systems Chapter 4: Data Management Data Data may be defined broadly to include two interrelated components: Data Models that provide structure to data File Orientation Data-base

More information

INVENTORY TRACKING (IT) MASTER MANUAL

INVENTORY TRACKING (IT) MASTER MANUAL Page 1 of 43 P O S i T - Integrated POS System - With Inventory Tracking - For Networked Multi Retail Stores - IT Master Version. 2.0 INVENTORY TRACKING (IT) MASTER MANUAL Contents Page Page 2 of 43 1.

More information

PUBLIC. How to Manage Batch Numbers. All Countries. Solutions from SAP. SAP Business One 2007 A and 2007 B. August English

PUBLIC. How to Manage Batch Numbers. All Countries. Solutions from SAP. SAP Business One 2007 A and 2007 B. August English PUBLIC How to Manage Batch Numbers All Countries Solutions from SAP SAP Business One 2007 A and 2007 B August 2008 English Contents Purpose... 3 Defining General Settings... 4 Procedure... 4 Setting Authorizations...

More information

COMP 354: INTRODUCTION TO SOFTWARE ENGINEERING

COMP 354: INTRODUCTION TO SOFTWARE ENGINEERING COMP 354: INTRODUCTION TO SOFTWARE ENGINEERING Introduction to UML d_sinnig@cs.concordia.ca Department for Computer Science and Software Engineering 28-May-14 Unified Modeling Language Structural Diagrams

More information

Click to Accept & Checkout on Store

Click to Accept & Checkout on Store Click to Accept & Checkout on Store A Guide to the Accelerated Buying Experience at Oracle December, 2017 Click to Accept Overview Open link from Email Review Quote on Store Click to Accept on Store This

More information

IMS1002/CSE1205 Lectures 1

IMS1002/CSE1205 Lectures 1 IMS1002/CSE1205 Systems Analysis and Design Lecture 2 & 3 Introduction to Data Modelling Entity Relationship Modelling Data Modelling Focus on the information aspects of the organisation In a database

More information

On to Object-oriented Design

On to Object-oriented Design Dr. Michael Eichberg Software Technology Group Department of Computer Science Technische Universität Darmstadt Introduction to Software Engineering On to Object-oriented Design Object-oriented Design 2

More information

Test bank for accounting information systems 1st edition by richardson chang and smith

Test bank for accounting information systems 1st edition by richardson chang and smith Test bank for accounting information systems 1st edition by richardson chang and smith Chapter 04 Relational Databases and Enterprise Systems True / False Questions 1. Three types of data models used today

More information

Formal Methods in Software Engineering 1

Formal Methods in Software Engineering 1 Building Models with OCL Introduction Completing UML Diagrams Modeling Tips and Hints Summary Formal Methods in Software Engineering 1 What Is a Model? Simply put, a model is a high level system description.

More information

PayFirst Salon User Guide:

PayFirst Salon User Guide: PayFirst Salon User Guide: This user guide will outline basic system functionality such as: Logging into System Back Office Setup Setting up Employees Menu Setup Retail Product Setup Creating Package Setup

More information

Openbravo POS Installation and Sales Demo User Documentation

Openbravo POS Installation and Sales Demo User Documentation Openbravo POS Installation and Sales Demo User Documentation Prepare By: J.Selvam Date : 03-08-2012 www.isquaresystems.com Page: 1 info@isquaresystems.com Contents: 1. Introduction 2. Openbravo POS Overview

More information

Operating system. Hardware

Operating system. Hardware Chapter 1.2 System Software 1.2.(a) Operating Systems An operating system is a set of programs designed to run in the background on a computer system, giving an environment in which application software

More information

CS504-Softwere Engineering -1 Solved Subjective Midterm Papers For Preparation of Midterm Exam

CS504-Softwere Engineering -1 Solved Subjective Midterm Papers For Preparation of Midterm Exam CS504-Softwere Engineering -1 Solved Subjective Midterm Papers For Preparation of Midterm Exam CS504 Subjective Midterm Examination 2011 Question No: 1 ( Marks: 3 ) Define Asynchronous Messages and Synchronous

More information

Before running the Year End

Before running the Year End Before running the Year End Pre-Year End Checklist To ensure that your Year End operation is successful, you are required to perform certain Pre-Year End checks. Complete the checklist below before proceeding

More information

Oracle FLEXCUBE Branch Operations User Manual Release Part No E

Oracle FLEXCUBE Branch Operations User Manual Release Part No E Oracle FLEXCUBE Branch Operations User Manual Release 4.5.0.0.0 Part No E52127-01 Branch Operations User Manual Table of Contents (index) 1. Branch Operations... 3 1.1. Operational Control and Cash Management

More information

Introduction - SENG 330. Object-Oriented Analysis and Design

Introduction - SENG 330. Object-Oriented Analysis and Design Introduction - SENG 330 Object-Oriented Analysis and Design SENG 330 Fall 2006 Instructor: Alex Thomo Email: thomo@cs.uvic.ca Office hours: Office Hours: TWF 12:30-1:30 p.m. Location: ECS 556 Objective:

More information

Unified Modeling Language I.

Unified Modeling Language I. Unified Modeling Language I. Software engineering Szoftvertechnológia Dr. Balázs Simon BME, IIT Outline Software engineering Modeling Unified Modeling Language (UML) UML Diagrams: Use Case Diagram Activity

More information

PART 5 Elaboration Iteration 3 Intermediate topics. Iteration 3

PART 5 Elaboration Iteration 3 Intermediate topics. Iteration 3 PART 5 Elaboration Iteration 3 Intermediate topics development cycle iteration phase inc. elaboration construction transition Chapter 27 Iteration 3 Intermediate Topics 1 Objective Introduction Define

More information

Best Practices Guide for Payments. Android August 2018

Best Practices Guide for Payments. Android August 2018 Best Practices Guide for Payments Android August 2018 Contents 3 Overview 4-5 Google Pay Payment Button: Do s & Don ts 5 Examples 6-7 Google Pay Logo & Mark: Do s & Don ts 7 Examples 8-9 Using Google Pay

More information