0% found this document useful (0 votes)
7 views3 pages

Software Engineering Unit 2

The document covers user requirements, distinguishing between functional and non-functional requirements, and emphasizes their importance in software development. It details the requirement engineering process, including steps like elicitation and validation, and discusses system requirements and their categories. Additionally, it provides an overview of ATM usage and outlines both functional and non-functional requirements for ATM systems.

Uploaded by

kumarsaivaibhav7
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)
7 views3 pages

Software Engineering Unit 2

The document covers user requirements, distinguishing between functional and non-functional requirements, and emphasizes their importance in software development. It details the requirement engineering process, including steps like elicitation and validation, and discusses system requirements and their categories. Additionally, it provides an overview of ATM usage and outlines both functional and non-functional requirements for ATM systems.

Uploaded by

kumarsaivaibhav7
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

SOFTWARE ENGINEERING - UNIT 2

1(a) Write short notes on user requirements. What are requirements?


Definition of Requirements:
Requirements are the statements or descriptions of what a system should do or the services it should provide.
They represent the needs and expectations of users, customers, and stakeholders from the software system.

Types of Requirements:
1. Functional Requirements: Describe what the system should do. Example: 'The system should allow users to
log in using a username and password.'
2. Non-Functional Requirements: Describe how the system should perform (quality attributes). Example: 'The
system should respond to user requests within 2 seconds.'

User Requirements:
User Requirements are high-level, natural language statements written for end users and customers. They
describe the system’s functions and services in a way that non-technical users can understand. Usually
documented in a Software Requirement Specification (SRS).

Characteristics of Good User Requirements:


Clear and understandable, Complete and consistent, Testable, Feasible, and Relevant to user needs.

Example:
'The system shall allow students to register for courses online.'
'The software shall display real-time account balance to the user.'

Summary:
User requirements form the foundation of the software development process. They ensure that the final system
meets user expectations and that developers have a clear understanding of what needs to be built.

1(b) Compare functional requirements with non-functional requirements


Functional Requirements: Define what the system should do — behavior, functions, or services.
Non-Functional Requirements: Define how the system performs — quality attributes and performance
standards.

Comparison Table:
Functional: Specify what the system should do.
Non-Functional: Specify how well the system performs.
Examples: Functional - User login, data storage; Non-Functional - Performance, reliability.
Measurement: Functional testing vs performance testing.

Example:
Functional: 'The system shall allow users to register using email and password.'
Non-Functional: 'The registration process shall complete within 3 seconds for 1000 users simultaneously.'

Conclusion:
Functional requirements describe what a system does, while non-functional requirements describe how well it
does it.
2(a) Discuss system requirements in a detailed manner
System requirements define what a software system must do and the constraints under which it must operate.
They bridge user needs and system design, ensuring the final product functions correctly within its environment.

Categories:
1. Functional Requirements
2. Non-Functional Requirements

Purpose:
Provide clear understanding, aid design and testing, help in planning, and act as a contract between client and
developer.

Types of System Requirements:


Hardware, Software, Interface, and User Requirements.

Conclusion:
Well-defined system requirements ensure the system is built correctly and satisfies user needs.

2(b) Explain requirement engineering process


Definition:
Requirement Engineering (RE) is the process of defining, documenting, and maintaining software requirements.

Steps in Requirement Engineering Process:


1. Feasibility Study
2. Requirement Elicitation
3. Requirement Analysis
4. Requirement Specification
5. Requirement Validation
6. Requirement Management

Conclusion:
Requirement Engineering ensures that the software meets user expectations, minimizing errors and rework.

3(a) Discuss briefly how requirement validation is done


Definition:
Requirement validation checks whether documented requirements are complete, consistent, and represent user
needs.

Key Activities:
Reviews, Prototyping, Model Validation, Test Case Generation, Consistency and Completeness Checks.

Techniques:
Reviews/Inspections, Prototyping, Model Analysis, Automated Consistency Checking.

Outcome:
Validated requirements are approved by stakeholders as the SRS baseline.
3(b) Discuss how an ATM is used; develop a set of requirements
Definition:
An ATM is an electronic device that allows customers to perform financial transactions like withdrawals and
balance inquiries without human assistance.

ATM Usage Process:


Card Insertion → Authentication → Transaction Selection → Processing → Completion → Session End.

Functional Requirements:
Card reading, PIN authentication, transaction selection, server communication, receipt printing.

Non-Functional Requirements:
Security, Availability, Performance, Reliability, Usability.

Conclusion:
ATM systems are secure, real-time, and interactive software requiring strong functional and non-functional design.

You might also like