1 / 21

Objectives: 1. Classes and Objects 2. Attributes 3. Services 4. Subjects

Objectives: 1. Classes and Objects 2. Attributes 3. Services 4. Subjects. Object-Oriented Analysis – Finding Class-&-Obects. Object: An abstraction of an entity in the problem domain. Class:

garson
Download Presentation

Objectives: 1. Classes and Objects 2. Attributes 3. Services 4. Subjects

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Objectives: 1. Classes and Objects 2. Attributes 3. Services 4. Subjects Object-Oriented Analysis – Finding Class-&-Obects

  2. Object: An abstraction of an entity in the problem domain. Class: A description of one or more Objects with a uniform set of Attributes and Services Class-&-Object: A Class and the Objects that make up the Class. Finding Class-&-Objects

  3. Bring the technical representation of a system as close as possible to the real world situation you are working with. Create a stable foundation for analysis and specifications now and in the future. Provides stability when moving from systems analysis to design. Finding Class-&-Objects

  4. The investigative process consists of: First-hand observation Listening actively to the experts Reviewing any previous OOA results Finding Class-&-Objects

  5. Checking other systems Reading carefully all documentation from the client Building a prototype Summarizing Finding Class-&-Objects

  6. Object is an instance of some class Classes have zero or more instances Classes are static Objects are created and destroyed Air Traffic Control System Abstractions (Classes) Objects planes New runways flight plans New flight plans runways New planes enter air spaces an airspace Classes vs. Objects

  7. Product Description Business Solution Description Goal: Concrete Description understandable to the user Domain Analysis Problem Analysis Applied only to new, difficult, or unsolved problems Goal: Complete understanding of the solution and constraints on business solutions Requirements

  8. Developers acquire knowledge of the system Identify possible constraints on business solution Interview business domain experts Issues to be addressed: find a way to trade off constraints find ways to organize the information Problem Analysis

  9. Describe the external behavior of the product to be built Issues to be addressed: ideals are organized conflicting views are resolved inconsistencies and ambiguities are eliminated Business Solution Description

  10. Organizes the data into objects and classes, and gives the data a structure via relationships of inheritance, aggregation, and association. Specifies local functional behaviors and defines their external interfaces (service prototypes) Captures control or global behavior Captures constraints (limits and rules) Business Solution Description & Problem Analysis should produce a model that:

  11. Use Nouns Pioneered by Abbott and popularized by Booch Obtain an informal requirements document Use nouns, pronouns, and noun phrases to identify objects and classes Suggested Approach for Finding Objects - Step 1

  12. Identify Objects Singular proper nouns Jim, he, she, employee number 5, my workstation, my home Nouns of direct reference The sixth player, the one-millionth purchase Suggested Approach for Finding Objects - Step 1

  13. Identify classes Plural nouns People, customers, vendors, users, employees Common nouns Everyone, a player, a customer, an employee, a workstation Suggested Approach for Finding Objects - Step 1

  14. Identify Operations Verbs Pay, collect, read, request Predicate phrases Are all paid, have simultaneously changed Identify Attributes Nouns related to the class nouns Name, height, weight Suggested Approach for Finding Objects - Step 1

  15. Indirect approach to finding objects and classes Nouns are not always classes or objects in the problem domain Used to find potential objects and will not find all the objects Suggested Approach for Finding Objects - Step 1

  16. Interactive dialog with the domain expert Domain experts commonly make mental models and work with abstractions to deal with complexity of their respective business See dialog on p. 40-41 of Teach Yourself UML Identify all the objects that the domain experts identify Suggested Approach for Finding Objects - Step 2

  17. Identify the Things to be Modeled in the Application domain Persons, roles, organizations, locations, logs, reports, forms, concepts, events This helps to trigger our recognition of potential objects Suggested Approach for Finding Objects - Step 3

  18. “Things to be Modeled” Coad and Yourden Categories Explanation Structure “Kind-of” & “Part-of” Other Systems External Systems Devices Events Remembered A historical event Roles Played Roles user play Location Organization Units Groups to which the user belongs

  19. “Things to be Modeled” Shlaer and Mellor Categories Explanation Tangibles Cars, telemetry data, sensors Roles Mother, teacher, programmer Incidents Landing, interrupt, collision Interactions Loan, meeting, marriage Specification Product spec, standards

  20. “Things to be Modeled” Ross Categories Explanation People Humans who perform some function Places Areas set aside for people or things Things Physical Objects Organizations Collections of people having a defined mission Concepts Non tangible ideas Events Things that happen

  21. Eliminate false problem domain objects Is it a real world entity? Is it important to the discussion of the requirements? Does it have a crisply defined boundary? Suggested Approach for Finding Objects - Step 4

More Related