lecture 5 Flashcards
(55 cards)
domain is
an area/space
problem domain
it is the specific area, within the scope of the new system, of the users’ business needs
what are things
items (including humans) that users work with to accomplish certain tasks
examples of things
products, customers, payments, shippers, sales, invoices etc
things are modeled as..
domain classes
two techniques to identify things
- noun technique
- brainstorming technique
brainstorming technique
create a checklist with all the types of things that would be found and identify the domain classes for each one of them
noun technique
identify all the nouns that come up when the system is described and determine if each noun is a domain class, attribute or something we don’t need to remember
example of things that are tangible
- printed documents
- chair
- book
- airplane
- vehicle
example of things that are roles
- employee
- manager
- supplier
- customer
- user
- system
- administrator
example of things that are organizational units
- departments
- division
- workgroup
- section
- task force
example of things that are devices
- printer
- sensor
- inventory bin
- timer
- phone
- laptop
- wifi router
- sorter
- production machinery
example of things that are sites/locations
- office building
- factory
- branch office
- warehouse
- retail store
example of things that are incidents, events, interactions
- log in
- log out
- purchase
- sell
- order
- flight
- service call
steps of the brainstorming technique
1) identify users and use cases
2) brainstorm with the user the things needed when carrying out a use case
3) use the categories of things to systematically ask questions about other things
4) continue working with users and stakeholders to expand the list of things (big brain time)
5) merge results, eliminate duplicates and create a new, refined list
advantages of noun technique
- it is a systematic technique
- unlike brainstorming, you can use the technique if you do not have another user with you (aka if ur a loner)
disadvantages of noun technique
- lists created may be too long
- many of the nouns listed do not have to be remembered by the system
- difficulty in telling apart synonyms and attributes
steps of the noun technique
1) identify all nouns by using information about the system such as the use cases, actors, input and output
2) identify more nouns by gathering information from existing systems, current reports, procedures, documents
3) refine the list of nouns by asking questions that would determine whether the noun should be included/excluded and researched (attribute)
4) create a master list after refining the first list and refine it further and remove duplicates
5) review list with users and stakeholders and define the list of things in the problem domain
what questions can you ask to include a noun
- is it a unique thing that the system needs to remember
- is it inside the scope of the system I am currently working on
what questions can you ask to exclude a noun
- is it a synonym for something I already identified
- is it an output produced from another system’s information
- is it an input which leads to results that I have already identified
what questions can you ask to research a noun
- is it something I might need if assumptions change
- is it likely to be a piece of information about something I already identified
domain classes
- attributes
- identifier/key
- compound attribute
attribute
describes one piece of information about each instance of class e.g. customer has a first name, last name, phone number etc
identifier/key
an attribute that identifies an instance of the class and it is required for data entities e.g. customer ID