Unit 2 MainMerged SEng
Unit 2 MainMerged SEng
Example: A company wants to build an e-commerce app. The feasibility study checks if they have the technology,
budget, and resources to make it work.
Requirement Elicitation and Analysis is about figuring out what the
customer needs and making sure those needs are clearly understood and
correct.
Gathering Requirements: We talk to the customer and look at
current systems (if any) to find out what’s needed.
Analyzing Requirements: After gathering the requirements, we
check them for any issues like contradictions or missing details.
We also make sure everything fits together well and resolve any
conflicts that come up.
Data Flow Diagrams (DFDs) are visual tools used to map out how
information moves within a system. Here’s a simple breakdown:
What They Are: DFDs are diagrams that illustrate how data
flows into, out of, and through a system.
Purpose: They help show the system’s scope and boundaries by
depicting:
o Data Inputs and Outputs: Where data comes from and
where it goes.
o Processes: How the data is transformed or used within the
system.
o Storage: Where data is stored or kept.
How They Help:
o Clarity: They provide a clear picture of the system’s
operations, making it easier to understand how data is
managed.
o Communication: DFDs act as a useful tool for explaining
system functions to team members, stakeholders, or anyone
involved in the project.
o Design: They serve as a starting point for redesigning or
improving systems by showing how information is handled
and where changes may be needed.
Forms: DFDs can be created manually, using software tools, or a
mix of both methods.
Other Names: They are also known as data flow graphs or
bubble charts.
0-level DFDM
It is also known as fundamental system model, or context diagram
represents the entire software requirement as a single bubble with input
and output data denoted by incoming and outgoing arrows. Then the
system is decomposed and described as a DFD with multiple bubbles.
Parts of the system represented by each of these bubbles are then
decomposed and documented as more and more detailed DFDs. This
process may be repeated at as many levels as necessary until the
program at hand is well understood. It is essential to preserve the
number of inputs and outputs between levels, this concept is called
leveling by DeMacro. Thus, if bubble "A" has two inputs x1 and x2 and
one output y, then the expanded DFD, that represents "A" should have
exactly two external inputs and one external output as shown in fig:
2. Attributes
Entities are denoted utilizing their properties, known as attributes. All
attributes have values. For example, a student entity may have name,
class, and age as attributes.
There exists a domain or range of values that can be assigned to
attributes. For example, a student's name cannot be a numeric value. It
has to be alphabetic. A student's age cannot be negative, etc.
Property/Attributes Property/Attributes
Entity
Property/Attributes Property/Attributes
Relationship set
A set of relationships of a similar type is known as a relationship set.
Like entities, a relationship too can have attributes. These attributes are
called descriptive attributes.
Degree of a relationship set
The number of participating entities in a relationship describes the
degree of the relationship. The three most common relationships in E-
R models are:
1. Unary (degree1)
2. Binary (degree2)
3. Ternary (degree3)
1. Unary relationship: This is also called recursive relationships. It is
a relationship between the instances of one entity type. For example,
one person is married to only one person.
2. Binary relationship: It is a relationship between the instances of
two entity types. For example, the Teacher teaches the subject.
Cardinality
Cardinality describes the number of entities in one entity set, which can
be associated with the number of entities of other sets via relationship
set.
Types of Cardinalities
1. One to One: One entity from entity set A can be contained with at
most one entity of entity set B and vice versa. Let us assume that each
student has only one student ID, and each student ID is assigned to only
one person. So, the relationship will be one to one.
3. Many to One: More than one entity from entity set A can be
associated with at most one entity of entity set B, however an entity
from entity set B can be associated with more than one entity from
entity set A. For example - many students can study in a single college,
but a student cannot study in many colleges at the same time.
Decision Table:
Decision Table-Based Testing is a method used to ensure that a
software application behaves correctly under various conditions. Here's
a simple breakdown:
Decision Table
It’s a tool used to visualize and test complex logic by showing all
possible combinations of conditions and their results.
The table displays different conditions (like True or False) and lists the
corresponding actions that should happen based on those conditions.