Chapter 5: Analysis

0.0(0)
Studied by 0 people
call kaiCall Kai
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
GameKnowt Play
Card Sorting

1/51

encourage image

There's no tags or description

Looks like no tags are added yet.

Last updated 7:46 PM on 4/20/26
Name
Mastery
Learn
Test
Matching
Spaced
Call with Kai

No analytics yet

Send a link to your students to track their progress

52 Terms

1
New cards

What is analysis (requirements analysis)?

Phase that results in a model of the system that aims to be correct, complete, consistent, and unambiguous and is understood by the developers.

-

  • Developers formalize the requirements specification from requirements elicitation and find errors in the requirements.

2
New cards

What do developers do during analysis?

Formalize the requirements specification produced during requirements elicitation and validate/correct any errors that are found. 

3
New cards

What is object-oriented analysis?

Occurs during analysis where developers build a model describing the application domain.

4
New cards

What is the analysis model and nonfunctional requirements used for?

The architecture of the system in system design.

5
New cards

What is formalization?

Helps identify areas of ambiguity and inconsistencies in the requirements specification during analysis.

6
New cards

What occurs iteratively and incrementally?

Requirements elicitation and analysis.

7
New cards

What is the analysis model composed of?

  • Functional model containing use case diagrams and scenarios.

-

  • Object model containing class and object diagrams

-

  • Dynamic model containing state machine and sequence diagrams.

8
New cards

What is the analysis model (aka requirements analysis model)?

Model that describes the system from the user and problem-domains point of view, focusing on what the system must do. Produced during analysis and is composed of functional, object, and dynamic models.

9
New cards

What is the functional model?

Model that focuses on the functions, processes, and flow of data of the system using use case diagrams and scenarios.

10
New cards

What is the object model?

Model that focuses on the individual concepts that are manipulated by the system. Represented by class and object diagrams.

11
New cards

What is the dynamic model?

Model that focuses on the behavior of the system, assigns responsibilities to classes, and identifies new classes/associations. Depicted with sequence diagrams and state machine diagrams.

12
New cards

What represents user-level concepts?

Object model and dynamic model

13
New cards

What doesn’t appear in the analysis model?

Classes such as Database, Subsystem, Network,

14
New cards

What does the object model consist of?

Boundary objects, entity objects, and control objects.

15
New cards

What are entity objects?

Objects that represents persistent information tracked by the system. Identified by corresponding to actors in the use case model.

16
New cards

What are boundary objects?

Objects that represents the interface between the system and actors. Collects information from the actor and translates it into a form that can be used by entity and control objects.

17
New cards

What are ways to identify boundary objects?

Identify user interface controls that the user needs to initiate the use case.

18
New cards

What are control objects?

Objects responsible for coordinating boundary and entity objects. Collects information from the boundary objects and dispatches it to entity objects. 

19
New cards

What is a way to identify control objects?

Identify one control object per use case.

20
New cards

What is generalization in regards to inheritance?

Creating a general superclass from specific classes that share common features.

  • Car and Truck both have wheels and an engine, so you create a general Vehicle class.

21
New cards

What is a specialization in regards to inheritance?

 Creating specific subclasses from a general superclass by adding unique features.

  • A fruit can be an apple or grape.

22
New cards

What are some activities for transforming use cases and scenarios into an analysis model?

  • Identifying Entity Objects

-

  • Identifying Boundary Objects 

-

  • Identifying Control Objects 

-

  • Mapping Use Cases to Objects using sequence Diagrams

23
New cards

What is natural language analysis?

Used for identifying objects, attributes, and associations from a requirements specification for the analysis model.

24
New cards

What is an advantage and disadvantage of natural language analysis?

  • Advantages: Focuses on the users’ terms.

-

  • Disadvantage: Quality depends on the style of writing of the analyst.

25
New cards

What is a way of identifying entity objects?

Identifying real-world entities and activities that the system needs to track.

26
New cards

What are CRC (Class, Responsibilities, Collaborators) cards?

Used for identifying interactions among objects. Each class has a card with its class name, responsibilities, and names of classes it needs to accomplish its responsibilities. 

27
New cards

Who are the participants for CRC cards?

Developers and application domain experts.

28
New cards

What is the equivalent of CRC cards?

Sequence diagrams

29
New cards

What is an association?

Shows a relationship between two or more classes in a class diagram.

  •  A FieldOfficer writes an EmergencyReport. 

30
New cards

What does identifying associations help do?

Clarifies the analysis model and enables the developer to discover boundary cases.

31
New cards

What are boundary cases?

Exceptions that must be clarified in the analysis model. 

32
New cards

What are the properties of associations?

  • A name to describe the association between the two classes.

-

  • Roles at each end to distinguish the multiple associations originating from a class. 

 -

  • Multiplicity at each end to identify the number of instances (* indicates a FieldOfficer may write zero or more EmergencyReports, whereas 1 indicates that each EmergencyReport has exactly one FieldOfficer as author).

<ul><li><p><span style="background-color: transparent;">A name to describe the association between the two classes.</span></p></li></ul><p>-</p><ul><li><p><span style="background-color: transparent;">Roles at each end to distinguish the multiple associations originating from a class.&nbsp;</span></p></li></ul><p><span style="background-color: transparent;">&nbsp;-</span></p><ul><li><p><span style="background-color: transparent;">Multiplicity at each end to identify the number of instances (* indicates a FieldOfficer may write zero or more EmergencyReports, whereas 1 indicates that each EmergencyReport has exactly one FieldOfficer as author).</span></p></li></ul><p></p>
33
New cards

How do you represent aggregation in UML?

Using a hollow diamond. Fire fighter, lead car, fire engine, and ambulance can exist without Fire Station.

<p>Using a hollow diamond. Fire fighter, lead car, fire engine, and ambulance can exist without Fire Station.</p>
34
New cards

How do you represent composition in UML?

Using a solid diamond. Township cant exist without County and County cant exist without State.

<p>Using a solid diamond. Township cant exist without County and County cant exist without State.</p>
35
New cards

What should an attribute in an object have?

A name identifying the attribute in the object and a type describing the legal values it can take.

36
New cards

What is used to help eliminate redundancy from the analysis model?

Generalization. If two or more classes share attributes or behavior, the similarities are consolidated into a superclass. 

-

A field officer and dispatcher both have a badgeNumber attribute. BadgeNumber can be consolidated into PoliceOfficer.

<p><span style="background-color: transparent;">Generalization. If two or more classes share attributes or behavior, the similarities are consolidated into a superclass.&nbsp;</span></p><p>-</p><p>A field officer and dispatcher both have a badgeNumber attribute. BadgeNumber can be consolidated into PoliceOfficer.</p>
37
New cards

Who reviews the analysis model?

The developer and then the developer and client.

38
New cards

What is the goal for reviewing the analysis model?

Make sure that the requirements specification is correct, complete, consistent, and unambiguous. 

39
New cards

What question should be asked to ensure the model is correct, complete, and consistent?

  • Correct: Are all error cases described and handled?

-

  • Complete: Is each object needed by any use case?

-

  • Consistent: Are there classes with the same name?

40
New cards

What is the typical sequence of the analysis activities?

  • Users, developers, and client develop initial use case model. 

-

  • Developers classify the participating objects into entity, boundary, and control objects.

-

  • Developers create sequence diagrams to define interactions.

-

  • Developer defines associations/attributes to refine the analysis model. 

-

  • Consolidate the analysis model using generalization relationships. 

-

  • The model is examined for correctness, consistency, completeness.

41
New cards

What is the requirements analysis document?

Explains what the software must do and what constraints it must meet. Identifies the functional requirements and nonfunctional requirements.

42
New cards

Why is the acceptance of the requirements analysis document important?

Because many activities depend on the analysis model.

43
New cards

What represents the acceptance of the analysis model?

The client sign-off

44
New cards

What are the three main role types in analysis?

Generation of information, integration, and review.

45
New cards

What does the end user do?

Is an application domain expert who generates information about the current system, and the tasks the future system should support.

46
New cards

What does the client do?

Defines the scope of the system based on user requirements and resolves inconsistencies in user expectations.

47
New cards

What does the analyst do?

Application domain expert who models the current system and generates information about the future system.

48
New cards

What does the architect do?

An integration role that unifies the use case and object models from a system point of view.

49
New cards

What does document editor do?

Handles integration of the system documents.

50
New cards

What does the configuration manager do?

Maintains a revision history of the system documents relating to RAD.

51
New cards

What does the reviewer do?

Validates the RAD for correctness, completeness, and consistency.

52
New cards

Why is communicating information the most difficult part of analysis?

Because of different backgrounds, domains of expertise, and vocabulary of participants.