0% found this document useful (0 votes)
69 views

Lecture 14 - Requirements Modeling - Scenario, Information and Analysis Classes

This document discusses requirements modeling and class-based modeling in software engineering. It covers identifying analysis classes from usage scenarios by underlining nouns and listing them in a table. Guidelines are provided for common types of classes like external entities, events, roles, organizational units and structures. The document also introduces class-responsibility-collaborator modeling using index cards to define classes and their responsibilities and collaborators. Finally, it provides examples of a homeowner class and a class diagram for a safe home security system.

Uploaded by

Sufyan Abbasi
Copyright
© © All Rights Reserved
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
69 views

Lecture 14 - Requirements Modeling - Scenario, Information and Analysis Classes

This document discusses requirements modeling and class-based modeling in software engineering. It covers identifying analysis classes from usage scenarios by underlining nouns and listing them in a table. Guidelines are provided for common types of classes like external entities, events, roles, organizational units and structures. The document also introduces class-responsibility-collaborator modeling using index cards to define classes and their responsibilities and collaborators. Finally, it provides examples of a homeowner class and a class diagram for a safe home security system.

Uploaded by

Sufyan Abbasi
Copyright
© © All Rights Reserved
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 18

Introduction to Software Engineering

Requirements Modeling –
Scenario, Information and
Analysis classes (2)
Muhammad Nasir
[email protected]
Agenda
 Class Based Modeling
 Identify Analysis Classes
Elements of Analysis Model
Class Base Modeling
 Class-based modeling represents the
objects that the system will manipulate
 The operations (also called methods or
services) that will be applied to the
objects to effect the manipulation
 The relationships between the objects,
and the collaborations that occur
between the classes that are defined.
Identifying Analysis Classes
 If you look around a room, there is a
set of physical objects that can be
easily identified, classified, and defined
(in terms of attributes and operations).
 But when you “look around” the
problem space of a software
application, the classes (and objects)
may be more difficult to comprehend.
Identifying Analysis Classes
 We can begin to identify classes by
examining the usage scenarios
developed as part of the requirements
model
 Classes are determined by underlining
each noun or noun phrase and
entering it into a simple table.
Synonyms should be noted to avoid
repetition.
Identifying Analysis Classes
Guidelines for Identifying Classes
 External entities (e.g., other systems, devices,
people) that produce or consume information to be
used by a computer-based system.
 Things (e.g., reports, displays, letters, signals) that
are part of the information domain for the problem.
 Occurrences or events (e.g., a property transfer or
the completion of a series of robot movements) that
occur within the context of system operation.
 Roles (e.g., manager, engineer, salesperson)
played by people who interact with the system.
Guidelines for Identifying Classes

 Organizational units (e.g., division, group,


team) that are relevant to an application.
 Places (e.g., manufacturing floor or loading
dock) that establish the context of the
problem and the overall function of the
system.
 Structures (e.g., sensors, four-wheeled
vehicles, or computers) that define a class
of objects or related classes of objects.
Class-Responsibility-
Collaborator (CRC) Modeling
 Class-responsibility-collaborator (CRC)
modeling provides a simple means for
identifying and organizing the classes
that are relevant to system or product
requirements.
Class-Responsibility-
Collaborator (CRC) Modeling
 A CRC model is really a collection of
standard index cards that represent classes.
 The cards are divided into three sections.
Along the top of the card you write the name
of the class.
 In the body of the card you list the class
responsibilities on the left and the
collaborators on the right.
CRC – Home Owner Class
HomeOwner
Monitor_Security_Zone Sensor
Check_Status_of_Sensor Camera
Activate_System
Disarm_System
Class Diagram
Generalization (Inheritance)
Aggregation (Composition)
Types of Aggregation
(Composition)
Safe Home Security System
The End
 Thanks for listening
 Questions would be appreciated.

You might also like