lecture 5 Flashcards

(55 cards)

1
Q

domain is

A

an area/space

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

problem domain

A

it is the specific area, within the scope of the new system, of the users’ business needs

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

what are things

A

items (including humans) that users work with to accomplish certain tasks

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

examples of things

A

products, customers, payments, shippers, sales, invoices etc

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

things are modeled as..

A

domain classes

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

two techniques to identify things

A
  • noun technique

- brainstorming technique

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

brainstorming technique

A

create a checklist with all the types of things that would be found and identify the domain classes for each one of them

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

noun technique

A

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

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

example of things that are tangible

A
  • printed documents
  • chair
  • book
  • airplane
  • vehicle
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

example of things that are roles

A
  • employee
  • manager
  • supplier
  • customer
  • user
  • system
  • administrator
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

example of things that are organizational units

A
  • departments
  • division
  • workgroup
  • section
  • task force
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

example of things that are devices

A
  • printer
  • sensor
  • inventory bin
  • timer
  • phone
  • laptop
  • wifi router
  • sorter
  • production machinery
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

example of things that are sites/locations

A
  • office building
  • factory
  • branch office
  • warehouse
  • retail store
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

example of things that are incidents, events, interactions

A
  • log in
  • log out
  • purchase
  • sell
  • order
  • flight
  • service call
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

steps of the brainstorming technique

A

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

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

advantages of noun technique

A
  • 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)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

disadvantages of noun technique

A
  • 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
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

steps of the noun technique

A

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

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

what questions can you ask to include a noun

A
  • is it a unique thing that the system needs to remember

- is it inside the scope of the system I am currently working on

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

what questions can you ask to exclude a noun

A
  • 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
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

what questions can you ask to research a noun

A
  • is it something I might need if assumptions change

- is it likely to be a piece of information about something I already identified

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

domain classes

A
  • attributes
  • identifier/key
  • compound attribute
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

attribute

A
describes one piece of information about each instance of class
e.g. customer has a first name, last name, phone number etc
24
Q

identifier/key

A
an attribute that identifies an instance of the class and it is required for data entities
e.g. customer ID
25
compound attributes
two or more attributes combined together to create a simplified model e.g. address (instead of separating zip, street number, state etc)
26
class
describes a collection objects of similar properties | e.g. teachers and customers
27
object
a specific instance of a class
28
each instance..
has its own value for an attribute
29
association (UML term)
a naturally occurring relationship between classes
30
types of associations
- binary - unary (uno) - ternary (three) - n-ary (between n)
31
binary association
an association between two different classes
32
unary association
an association between two instances of the same class
33
example of binary association
- student and subject - customer and item - course and member
34
example of unary association
- person married to person | - part is made using part
35
multiplicity
a term used to describe the number of associations between classes: 1 to many, 1 to 1
36
cardinality
a term used to describe the number of relationships in an entity relationship diagram: 1 to many, 1 to 1
37
class diagram
a UML diagram that shows classes with attributes and associations
38
domain model class diagram
a class diagram that only includes classes from the problem domain
39
domain class notations
- domain classes have no methods - class names are capitalized - attribute names are not capitalized and use camelback notation (joined words and second word is capitalized e.g. phoneNumber)
40
UML notations for multiplicity
- 1 and only 1: 1 - 1 and only 1 alternate: 1..1 - 1 to many: 1..* - zero to 1: 0..1 - zero to many: 0..*
41
association class
an association that is treated as a class, (in a one to many association between two classes), because it has attributes that need to be remembered e.g. grades for a student in a class, role of an employee in a company it is represented using a dashed line
42
association class properties
- the association class is the same as the association itself - the unique identifier for the association class is the series of keys of the keys attached to the classes e. g. for the association class for grades, student ID, course number, section number are the keys (unique identifier)
43
generalization/specialization
a hierarchical relationship where subordinate classes are special types of the superior classes. often called an inheritance hierarchy
44
superclass
``` in a generalization/specialization hierarchy, it is the superior or more general class e.g. vehicles ```
45
subclass
``` in a generalization/specialization hierarchy, it is the subordinate or more specialized class e.g. the subclasses of a vehicle super class can be motorbikes, cars, buses etc ```
46
inheritance
the concept that subclasses classes inherit characteristics of the more general superclass
47
notation to point at the superclass in the generalization/specialization hierarchy
a triangle
48
can subclasses have subclasses?
``` yes! a car can be the subclass of a vehicle superclass, the car can have subclasses such as automatic, manual, sports etc ```
49
whole-part relationship
a relationship between classes where one or more classes are a part of or a composite portion of another class
50
aggregation
``` a type of whole-part relationship where one of the class components can be removed, replaced and exist separately - notation is an empty diamond e.g. for the class car, engine and wheel can be removed and replaced the engine can also exist separately for the class engine inspection ```
51
composition
a type of whole-part relationship where class components cannot be removed - notation is a filled in diamond e. g. the classes hand and legs have a whole relationship with the class human
52
three types of UML relationships
- association relationships - whole-part - generalization/specialization (inheritance)
53
ERD diagram properties
- shows the same information as a class diagram - it is not a UML diagram - does not show inheritance and whole-part relationships
54
ERD cardinality symbols
- 1 = vertical line | - zero = O - many = crows feet (idfk??? looks like a < with a line through it)
55
where can you find nouns
1) use cases 2) actors 3) input and output 4) existing systems 5) current reports, procedures, and documents