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

Introduction To Software Engineering: Requirements Modeling (System Analysis)

This document discusses requirements modeling in software engineering. It covers different types of models used in requirements modeling like scenario-based models, data models, class-oriented models, flow-oriented models, and behavioral models. It also discusses domain analysis, where common patterns from a business domain are identified and categorized for reuse. Scenario-based modeling using use cases and diagrams is explained. Requirements analysis results in models that specify a system's operational characteristics and constraints.

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)
101 views

Introduction To Software Engineering: Requirements Modeling (System Analysis)

This document discusses requirements modeling in software engineering. It covers different types of models used in requirements modeling like scenario-based models, data models, class-oriented models, flow-oriented models, and behavioral models. It also discusses domain analysis, where common patterns from a business domain are identified and categorized for reuse. Scenario-based modeling using use cases and diagrams is explained. Requirements analysis results in models that specify a system's operational characteristics and constraints.

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/ 20

Introduction to Software Engineering

Requirements Modeling
(System Analysis)

Muhammad Nasir
[email protected]
Agenda
 Requirement Analysis
 Scenario-based Models
 Data Models
 Class-oriented Models
 Flow-Oriented Models
 Behavioral Models
 Domain Analysis
Requirement Modeling
 Software engineering begins with a
series of modeling tasks
 that lead to a specification of
requirements and a design
representation for the software to be
built.
 The requirements model actually a
set of models—is the first technical
representation of a system
Requirement Modeling
 Requirements analysis results in the
specification of software’s operational
characteristics, indicates software’s
interface with other system elements,
and establishes constraints that
software must meet.
Requirement Modeling
 The requirements modeling action results in
one or more of the following types of models:
 Scenario-based Models of requirements from
the point of view of various system “actors”
 Data Models that depict the information domain
for the problem
Requirement Modeling
 Class-oriented Models that represent object-
oriented classes (attributes and operations) and the
manner in which classes collaborate to achieve
system requirements
 Flow-oriented Models that represent the functional
elements of the system and how they transform
data as it moves through the system
 Behavioral Models that depict how the software
behaves as a consequence of external “events”
Elements of Analysis Model
Requirement Modeling
Analysis Rules of Thumb
 The model should focus on requirements that are
visible within the problem or business domain. The
level of abstraction should be relatively high.
 Each element of the analysis model should add to
an overall understanding of software requirements,
function and behavior of the system.
 Delay consideration of infrastructure and other non-
functional models until design.
Analysis Rules of Thumb
 Minimize coupling throughout the system. - If level
of interconnectedness is high, efforts should be
made to reduce it.
 Assured that the analysis model provides value to all
stakeholders. – business stakeholder should validate
requirement, Designers should use the model as a
basis for design.
Domain Analysis
 Analysis patterns often reoccur across many
applications within a specific business domain.
 If these patterns are defined and categorized in a
manner that allows you to recognize and apply them to
solve common problems, the creation of the analysis
model speed-up.
 More important, the likelihood of applying design
patterns and executable software components grows
dramatically.
 This improves time-to-market and reduces
development costs.
Domain Analysis
 “Software domain analysis is the
identification, analysis, and specification of
common requirements from a specific
application domain, typically for reuse on
multiple projects within that application
domain. . . .”
Domain Analysis
 [Object-oriented domain analysis is]
the identification, analysis, and
specification of common, reusable
capabilities within a specific application
domain, in terms of common objects,
classes, subassemblies, and
frameworks…
Domain Analysis
Scenario-based Modeling
 Use cases develops the understanding
that how the system would be used.
 Hence, requirements modeling with
UML begins with the creation of
scenarios in the form of use cases,
activity diagrams, and swimlane
diagrams.
Scenario-based Modeling
 In general, use cases are written first
in an informal narrative fashion.
 If more formality is required, the same
use case is rewritten using a
structured format
Writing Preliminary Use-Cases
 In SafeHome Example a Home owner
might interact in following way
 Select camera to view.
 Request thumbnails from all cameras.
 Display camera views in a PC window.
 Control pan and zoom for a specific camera.
 Selectively record camera output.
 Replay camera output.
 Access camera surveillance via the Internet.
Writing a Formal Use-Case
Preliminary Use-Case
Diagram for SafeHome
The End
 Thanks for listening
 Questions would be appreciated.

You might also like