Unit II
Unit II
Unit II
(In this section we are going to see various actions performed in Communication
Activity such as inception, elicitation, elaboration, negotiation, specification and
validation and also Task Set of each action. These six actions are collectively
called as Requirements Engineering)
Requirements Engineering
• The broad spectrum of tasks and techniques that lead to an understanding of
requirements is called requirement engineering.
• Requirements engineering builds a bridge to design and construction
• Requirements engineering provides the appropriate mechanism for
understanding what customer wants, analyzing needs, negotiating and
specifying solution, managing requirements.
• It encompasses the seven distinct tasks:
o Inception
o Elicitation
o Elaboration
o Negotiation
o Specification
o Validation
o Requirements management
• All strive to define what the customer wants
• All serve to establish a solid foundation for the design and construction of
the software
Inception:
Elicitation:
• This is a technique that translates the needs of the customer into technical
requirements for software
Elaboration Task
Negotiation Task
• Requirements are ranked (i.e., prioritized) by the customers, users, and other
stakeholders
• Rough guesses of development effort are made and used to assess the impact
of each requirement on project cost and delivery time
Validation Task
• The requirements are then placed into one or more traceability tables
Requirements Modeling
• Requirements modeling use a combination of text and diagrammatic forms
to describe requirements.
• To understand easily and to review for correctness, completeness, and
consistency.
• Requirements modeling is a “Elaboration phase” of the requirements
engineering
• The requirement model – actually a set of models and is first technical
representation of a system.
• Structured analysis
– Considers data and the processes that transform the data as separate
entities
– Data is modeled in terms of only attributes and relationships (but no
operations)
– Processes are modeled to show the 1) input data, 2) the
transformation that occurs on that data, and 3) the resulting output
data
oriented analysis
• Object-oriented
– Focuses on the definition of classes and the manner in which they
collaborate with one another to fulfill customer requiremen
requirements
Scenario-based modeling
• Scenario-based
based modeling represents the system from the user’s point of view
• Scenario-based
based elements of the requirements model are often the first part of
the model
• Requirements modeling with UML begins with the creation of scenarios in
the form of:
o Use case text or stories
o Use case diagrams
o Activity diagrams
o Swim lane diagrams
Class-based Modeling:
• Class-based modeling represents the objects that the system will manipulate
• The operations (also called methods) that will be applied to the objects to
effect the manipulation
• Relationship between objects
• Collaboration between the classes
• The elements of class-based model include:
o Class Diagram
o Analysis Packages
o CRC Models
o Collaboration Diagrams
Behavioral Modeling
• It represents the functional elements of the system and how they transform
data as it moves through the system
• Information is transformed as it flow through a computer-based system
• The system accepts input in variety of forms and applies functions to
transform it, and produces output in a variety of forms
• The input may be control signal, a series of number, a packet of information
• The output may be LED light
• Flow-oriented modeling includes:
o Data –Flow diagram
o Data model or data structure
o Process narratives or specification
o Control-flow diagram or control specification