Domain Modelling Flashcards

(23 cards)

1
Q

What is the domain of a software program?

A

The subject area to which the user applies a program.

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

What is considered the hardest part of software development?

A

Understanding the domain (critical complexity).

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

Define problem domain.

A

The area of expertise that needs to be examined to solve a problem.

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

Example for domain vs software implementation

A

In measuring KPI on sales, your
Ability to pick up rubbish shouldn’t be recorded

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

What do Domain Models illustrate?

A

The conceptual classes in the problem domain.

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

What do concepts discovered in domain modeling tend to lead to?

A

Design classes.

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

True or False: Domain models are real-world conceptual classes.

A

False.

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

What is the purpose of decomposing the domain of interest?

A

To break it down into individual classes or objects of the real world.

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

How are domain models visually represented?

A

Using class diagrams through domain conceptual classes, associations between classes, and attributes of conceptual classes.

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

What is a domain model a visual dictionary of?

A

The noteworthy abstractions, domain vocab, and information around the general domain.

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

What does the domain model ignore?

A

Software artifacts such as a window or database.

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

What is one advantage of domain models?

A

They provide a stable basis for subsequent development of applications in the problem domain.

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

How can domain models be used among stakeholders?

A

To verify and validate understanding of the problem domain.

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

What is a central distinction between OO analysis and structured analysis?

A

Dividing by classes rather than by functions.

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

List the three strategies to find classes.

A
  • Reuse or modify existing models
  • Use a category list
  • Identify noun phrases
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What should be done if a concept is not found during initial domain modeling?

A

It can be found later on new iterations.

17
Q

What is a description class?

A

A class that contains information describing something else.

18
Q

Why should descriptions be kept separate from items?

A

To reduce duplication and retain descriptions for items even after they are removed.

19
Q

What is the difference between a conceptual class and a software class?

A

A conceptual class belongs to the domain model; a software class represents an implementation of software components.

20
Q

Define semantic gap.

A

The gap between the mental model of the domain and its representation in software.

21
Q

What are attributes in the context of a class?

A

Logical data values of an object.

22
Q

What does an association represent?

A

The relationship between classes.

23
Q

What do constraints express in the specification model?

A

Rules of the problem domain, restricting possible instances of the model.