SE Assignment- 2 Ans
SE Assignment- 2 Ans
Assignment 2
Part I
01 Short Answer Type Questions (2 Marks) Module BL CO
1 Write the features of good software design. 2 1 2
A well-designed software system should have the following
characteristics:
1. Modularity – The system is divided into smaller,
manageable components.
2. Maintainability – Easy to update and modify without
affecting the whole system.
3. Scalability – Can handle growth in users, data, or
features.
4. Efficiency – Optimized use of system resources like
memory and processing power.
5. Reusability – Components can be reused in different
applications.
6. Security – Protects data and functions from
unauthorized access.
7. Simplicity – Easy to understand and implement
(b) Describe the methods to transform the DFD model into structure 2 1 2
chart.
A Data Flow Diagram (DFD) represents the data flow within a
system, while a Structure Chart (SC) is a hierarchical
breakdown of the system's modules. The transformation process
involves the following steps:
Steps to Convert DFD to Structure Chart:
1. Identify Main Modules:
o Each process in DFD is mapped to a module in
the structure chart.
o Example: A process "Verify Login" in DFD
becomes a module VerifyLogin() in the
structure chart.
2. Define Submodules:
o Break down complex processes into
submodules for better modularity.
o Example: A process "Process Order" can be
split into Validate Order, Calculate Price, and
Update Inventory modules.
3. Determine Data Flow:
o Define how data passes between modules using
arrows and parameters.
o Example: The Login module passes a
username and password to the Authentication
module.
4. Establish Control Flow:
o Identify decision-making elements and map
them using conditional branches in the
structure chart.
o Example: A decision box for "Is Password
Correct?" leads to either Grant Access or
Show Error.
5. Refine and Optimize:
o Remove redundant modules and improve code
reusability.
o Ensure high cohesion and low coupling among
modules.
Example:
For a Library Management System, the DFD process "Issue
Book" would be transformed into a structure chart with modules
like:
Check Book Availability()
Validate User()
Update Records()
This structured approach makes the system modular,
maintainable, and efficient. 🚀
Part – III
Definition of SRS
A Software Requirement Specification (SRS) is a formal
document that outlines the functional and non-functional
requirements of a software system. It serves as an
agreement between stakeholders, ensuring a clear
understanding of the project’s scope and requirements.
2. Non-Functional Requirements
Non-functional requirements define the quality attributes
of the system, focusing on how the system performs rather
than what it does.
Examples of Non-Functional Requirements:
Performance: The system should load within 2
seconds.
Scalability: Must support 1 million users
concurrently.
Security: Data should be encrypted using AES-
256.
Usability: UI should be user-friendly and
accessible.
Reliability: System uptime should be 99.9%.
Conclusion
SRS is essential for defining project scope and
guiding development.
Good SRS is clear, complete, and verifiable,
while a bad SRS can lead to misunderstandings
and project failure.
Both functional and non-functional requirements
are crucial for a successful software system.