0% found this document useful (0 votes)
28 views18 pages

Unit 5 Software Engineering

Uploaded by

yashthakare9267
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
28 views18 pages

Unit 5 Software Engineering

Uploaded by

yashthakare9267
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 18

Ch.

5 Requirement Analysis and Design Tool

G H Raisoni Institute of
Business Management, Jalgaon
Department of Computer Application

Master of Computer Application (MCA)


Academic Year: 2023-24
Third Semester

Course Code: BCA-CC-10

Course Name: Software Engineering

Prepared By: Prof. Manisha Rajput


1
Ch.5 Requirement Analysis and Design Tool

Decision Tree and Decision Table:

Decision Table: Decision Table is just a tabular representation of all


conditions and actions. Decision Trees are always used whenever the
processing logic is very complicated and involves multiple conditions.
The main components used for the formation of the Data Table are
Conditions Stubs, Action Stubs, and rules.
Types of decision tables:
 Extended entry table
 Limited entry table
Benefits:
 Visualization of Cause and effect relationships in the table.
 Easy to understand
 In the case of a complex table, it can be readily broken down into
simpler tables.
 Tables are formatted consistently.
 Suggestions of possible actions need to be taken from the
summarized outcomes of a situation.
 In these tables, semi-standardized languages might be used.
 Table users are not necessarily know how to use a computer.

Drawbacks:
 Decision tables are not well suited to large-scale applications. There
is a requirement of splitting huge tables into smaller ones to
eliminate redundancy.
 The complete sequence of actions is not reflected in the decision
tables.
 A partial solution is presented.

2. Decision Tree: A decision tree is a graph that always uses a


branching method in order to demonstrate all the possible outcomes of
any decision. Decision Trees are graphical and show a better
representation of decision outcomes. It consists of three nodes namely
Decision Nodes, Chance Nodes, and Terminal Nodes.

2
Ch.5 Requirement Analysis and Design Tool

Types of the decision tree:


 Categorical variable decision tree
 Continuous variable decision tree
Benefits:
 A decision tree is simple to comprehend and use.
 New scenarios are simple to add.
 Can be combined with other decision-making methods.
 Handling of both numerical and categorial variables
 The classification does not require many computations.
 Useful in analyzing and solving various business problems.
Drawbacks:
 They are inherently unstable, which means that a slight change in the
data can have a result in a change in the structure of the optimal
decision tree, and they are frequently wrong.
 These are less suitable for estimation tasks where the outcome
required is the value of a continuous variable.
 The alternative options perform better with the same data. A random
forest of decision trees can be used as a replacement but it is not as
straightforward to comprehend as a single decision tree.
 Calculations can become quite complicated, especially when several
values are uncertain and/or multiple outcomes are related.

Difference between Decision Table and Decision Tree:


S.
No. Decision Table Decision Tree

Decision Tables are a tabular Decision Trees are a graphical


representation of conditions representation of every possible
1. and actions. outcome of a decision.

We can derive a decision We can not derive a decision tree


2. table from the decision tree. from the decision table.

3
Ch.5 Requirement Analysis and Design Tool

It helps to take into account the


possible relevant outcomes of the
3. It helps to clarify the criteria. decision.

In Decision Tables, we can In Decision Trees, we can not


include more than one ‘or’ include more than one ‘or’
4. condition. condition.

It is used when there are It is used when there are more


5. small number of properties. number of properties.

It is used for simple logic It can be used for complex logic


6. only. as well.

It is constructed of rows and It is constructed of branches and


7. tables. nodes.

The goal of using a decision A decision tree’s objective is to


table is the generation of provide an effective means to
rules for structuring logic on visualize and understand a
the basis of data entered in decision’s available possibilities
8. the table. and range of possible outcomes.

Pseudo Code and Structured English

Pseudo code is a term which is often used in programming and


algorithm based fields. It is a methodology that allows the programmer
to represent the implementation of an algorithm. Simply, we can say
that it’s the cooked up representation of an algorithm. Often at times,
algorithms are represented with the help of pseudo codes as they can be
interpreted by programmers no matter what their programming
background or knowledge is. Pseudo code, as the name suggests, is a

4
Ch.5 Requirement Analysis and Design Tool

false code or a representation of code which can be understood by even


a layman with some school level programming knowledge.
Algorithm: It’s an organized logical sequence of the actions or the
approach towards a particular problem. A programmer implements an
algorithm to solve a problem. Algorithms are expressed using natural
verbal but somewhat technical annotations.
Pseudo code: It’s simply an implementation of an algorithm in the
form of annotations and informative text written in plain English. It has
no syntax like any of the programming language and thus can’t be
compiled or interpreted by the computer.
Example:

Advantages of Pseudo-code
 Improves the readability of any approach. It’s one of the best
approaches to start implementation of an algorithm.
 Acts as a bridge between the program and the algorithm or
flowchart. Also works as a rough documentation, so the program of
one developer can be understood easily when a pseudo code is
written out. In industries, the approach of documentation is essential.
And that’s where a pseudo-code proves vital.
 The main goal of a pseudo code is to explain what exactly each line
of a program should do, hence making the code construction phase
5
Ch.5 Requirement Analysis and Design Tool
easier for the programmer.

Structured English is the use of the English language with


the syntax of structured programming to communicate the design of a
computer program to non-technical users by breaking it down into
logical steps using straightforward English words. Structured English
gives aims to get the benefits of both the programming logic and natural
language: program logic helps to attain precision, whilst natural
language helps with the familiarity of the spoken word.[1]
It is the basis of some programming languages such as SQL (Structured
Query Language) "for use by people who have need for interaction with
a large database but who are not trained programmers"

Example:

6
Ch.5 Requirement Analysis and Design Tool

Structured English is a limited-form "pseudocode" and consists of the


following elements:

1. Operation statements written as English phrases executed from the


top down
2. Conditional blocks indicated by keywords such as IF, THEN, and
ELSE
3. Repetition blocks indicated by keywords such as DO, WHILE, and
UNTIL
The following guidelines are used when writing Structured English:[3]

1. All logic should be expressed in operational, conditional, and


repetition blocks
2. Statements should be clear and unambiguous
3. Logical blocks should be indented to show relationship and
hierarchy
4. Use one line per logical element, or indent the continuation line
5. Keywords should be capitalized
6. Group blocks of statements together, with a capitalized name that
describes their function and end with an EXIT.
7. Underline words or phrases defined in a data dictionary
8. Mark comment lines with an asterisk

Functional Decomposition Diagram (FDD)


Functional decomposition corresponds to the various functional
relationships as how the original complex business function was
developed. It mainly focuses on how the overall functionality is
developed and its interaction between various components.
Large or complex functionalities are more easily understood when
broken down into pieces using functional decomposition.

When and How?

7
Ch.5 Requirement Analysis and Design Tool

 Functional decomposition is mostly used during the project


analysis phase in order to produce functional decomposition
diagrams as part of the functional requirements document.
 Functional Decomposition is done after meeting with business
analysts and subject matter expertise.
 Decompose the first level components with their functions and
continue to decompose to lower levels until sufficient level of
detail is achieved
 Perform an end-to-end walk-through of the business operation and
check each function to confirm that it is correct.
Example:

Data Flow Diagram (DFD) :


Data means information, flow means to move, and diagram means a
picture to represent something. So, DFD is simply the graphical
representation of the flow of data or information. It is a framework or
pattern of the data systems. It includes data input, data output, storing
data. DFD describes the process of taking the data as input, storing the
data, giving the data as output. DGD describes the path of data that
completes the process.

8
Ch.5 Requirement Analysis and Design Tool

There are mainly two types of DFD: Physical Data Flow


Diagram, and Logical Data Flow Diagram.
Types of DFD
Data Flow Diagrams are either Logical or Physical.
 Logical DFD - This type of DFD concentrates on the
system process, and flow of data in the system.For example
in a Banking software system, how data is moved between
different entities.
 Physical DFD - This type of DFD shows how the data flow
is actually implemented in the system. It is more specific
and close to the implementation.

DFD Components
DFD can represent Source, destination, storage and flow of
datausing the following set of components -

 Entities - Entities are source and destination of information


data. Entities are represented by a rectangles with their
respective names.
 Process - Activities and action taken on the data are
represented by Circle or Round-edged rectangles.
 Data Storage - There are two variants of data storage - it
can either be represented as a rectangle with absence of
both smaller sides or as an open-sided rectangle with only
one side missing.
 Data Flow - Movement of data is shown by pointed arrows.
9
Ch.5 Requirement Analysis and Design Tool
Data movement is shown from the base of arrow as its
source towards head of the arrow as destination.

Levels of DFD

 Level 0 - Highest abstraction level DFD is known as Level


0 DFD, which depicts the entire information system as one
diagram concealing all the underlying details. Level 0
DFDs are also known as context level DFDs.

 Level 1 - The Level 0 DFD is broken down into more


specific, Level 1 DFD. Level 1 DFD depicts basic modules
in the system and flow of data among various modules.
Level 1 DFD also mentions basic processes and sources of
information.

10
Ch.5 Requirement Analysis and Design Tool

11
Ch.5 Requirement Analysis and Design Tool

Level 2 - At this level, DFD shows how data flows inside


the modules mentioned in Level 1.
Higher level DFDs can be transformed into more specific lower
level DFDs with deeper level of understanding unless the desired
level of specification is achieved.


Example of DFD – Lemonade Stand

12
Ch.5 Requirement Analysis and Design Tool
Entity Relationship Diagram (ERD) :
ERD is also known as the Entity-Relationship Model.
ERD was originally proposed by Peter Chen. Entity
means any object used to store information and are

distinguishable, relationship means connection, and


diagram/model means a picture uses to represent
something. So, ERD is simply the diagram or model that is
used to represent or show the relationship between the
entities or data objects that are stored in a database. The
main components of the E-R model are an entity,
attributes, and relationship. It is a very easy way to
represent the database design.

 Entity - An entity in ER Model is a real world being,


whichhas some properties called attributes. Every attribute
isdefined by its corresponding set of values, called domain.
For example, Consider a school database. Here, a student is
an entity. Student has various attributes like name, id, age
and class etc.

13
Ch.5 Requirement Analysis and Design Tool

 Relationship - The logical association among entities is called


relationship. Relationships are mapped with entities in various
ways. Mapping cardinalities define the number of associations
between two entities.

Mapping cardinalities:
 one to one
 one to many

 many to one

 many to many

Example of ERD – School Information Management

14
Ch.5 Requirement Analysis and Design Tool

Difference between DFD and ERD :


S.No. DFD ERD
It stands for Entity Relationship
1. It stands for Data Flow Diagram. Diagram or Model.

Main objective is to represent the


Main objective is to represent the data object or entity and relationship
2. processes and data flow between them. between them.

It explains and represent the


It explains the flow and process of data relationship between entities stored in
3. input, data output, and storing data. a database.

15
Ch.5 Requirement Analysis and Design Tool

Symbols used in DFD are: rectangles Symbols used in ERD are: rectangles
(represent the data entity), circles (represent the entity), diamond boxes
(represent the process), arrows (represent relationship), lines and
(represent the flow of data), ovals or standard notations (represent
4. parallel lines (represent data storing). cardinality).

Rule followed by DFD is that at least Rule followed by ERD is that all
one data flow should be there entering entities must represent the set of
5. into and leaving the process or store. similar things.

It model entities like people, objects,


It models the flow of data through a places and events for which data is
6. system. stored in a system.

Normalization
It is the methodology of arranging a data model to capably store data in
an information base. The completed impact is that tedious data is

10
Ch.5 Requirement Analysis and Design Tool

cleared out, and just data related to the attribute is taken care of inside
the table. Normalization regularly incorporates isolating an information
base into at least two tables and describing associations between the
tables. The objective is to isolate data so that expands, deletions, and
changes of abroad may be made in just one table and thereafter
multiplied through whatever survives from the information base by
methods for the described associations.
There are three standard customary structures, each with extending
levels of Normalization as follows.
1. First Normal Form (1 NF) –
Each field in a table holds particular information. For example, in a
specialist overview, every one table may hold stand apart origination
date field.
2. Second Normal Form (2 NF) –
Each field in a table that isn’t a determiner of the substance of a
substitute field must itself be a limit of substitute fields in the table.
3. Third Normal Form (3 NF) –
No twofold information is permitted. Consequently, for example, if
two tables both oblige an origination date field, the origination date
information may be isolated into a different table, and the two
distinct tables may then get to the origination date information by
methods for a list field in the origination date table. Any change to
an origination date would normally be reflecting in all tables that
association with the origination date table.

Advantages of Normalization :
Here we can perceive any reason why Normalization is an alluring
possibility in RDBMS ideas.
 A more modest information base can be kept up as standardization
disposes of the copy information. Generally speaking size of the
information base is diminished thus.
 Better execution is guaranteed which can be connected to the above
point. As information bases become lesser in size, the goes through

11
Ch.5 Requirement Analysis and Design Tool

the information turns out to be quicker and more limited in this way
improving reaction time and speed.
 Narrower tables are conceivable as standardized tables will be
tweaked and will have lesser segments which considers more
information records per page.
 Fewer files per table guarantees quicker support assignments (file
modifies).
 Also understands the choice of joining just the tables that are
required.
Disadvantages of Normalization :
 More tables to join as by spreading out information into more tables,
the need to join table’s increments and the undertaking turns out to
be more dreary. The information base gets more enthusiastically to
acknowledge too.
 Tables will contain codes as opposed to genuine information as the
rehashed information will be put away as lines of codes instead of
the genuine information. Thusly, there is consistently a need to go to
the query table.
 Data model turns out to be incredibly hard to question against as the
information model is advanced for applications, not for impromptu
questioning. (Impromptu question is an inquiry that can’t be resolved
before the issuance of the question. It comprises of a SQL that is
developed progressively and is typically built by work area cordial
question devices.). Subsequently it is difficult to display the
information base without understanding what the client wants.
 As the typical structure type advances, the exhibition turns out to be
increasingly slow.
 Proper information is needed on the different ordinary structures to
execute the standardization cycle effectively. Reckless use may
prompt awful plan loaded up with significant peculiarities and
information irregularity.

12

You might also like