0% found this document useful (0 votes)
3 views10 pages

System Requirements Analysis

The document outlines the importance of requirements in system engineering, emphasizing their role in capturing customer needs and guiding development without dictating implementation details. It discusses challenges in requirements elicitation, characteristics of effective requirements, and the consequences of low-quality requirements, while providing steps for defining and preparing for requirements definition. Various elicitation techniques are also presented to ensure a thorough understanding of stakeholder needs and system expectations.

Uploaded by

tbchoi14
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)
3 views10 pages

System Requirements Analysis

The document outlines the importance of requirements in system engineering, emphasizing their role in capturing customer needs and guiding development without dictating implementation details. It discusses challenges in requirements elicitation, characteristics of effective requirements, and the consequences of low-quality requirements, while providing steps for defining and preparing for requirements definition. Various elicitation techniques are also presented to ensure a thorough understanding of stakeholder needs and system expectations.

Uploaded by

tbchoi14
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/ 10

System Engineering: Requirements

Analysis
What is a Requirement?

Expression of Desired Behavior Focus on Customer Needs Formal Structured Statements


A requirement specifies what a system Requirements capture user wants and Requirements are written as clear,
should do, not how it should do it. It needs rather than implementation details verifiable statements that can be
defines the essential capabilities and . They reflect the real-world problems validated. They must be specific enough to
constraints that must be met without that stakeholders need to solve and the test and measure, ensuring that the final
prescribing specific technical solutions. value they expect to receive from the system can be evaluated against them.
system.

Living Documentation
Contractual Foundation
Requirements serve as a binding agreement between Requirements evolve throughout the project lifecycle as
stakeholders and development teams, establishing clear understanding deepens and needs change. They must be actively
expectations and success criteria for the project. They form the managed, traced, and updated to reflect the current understanding
basis for project planning, estimation, and acceptance testing. of the system's scope.
Challenges of Requirements Elicitation
1 Lack of Domain Knowledge 2 Customer Communication Barriers
The development team may not have enough experience Customers and users may not be familiar with software
with the application and its domain, making it difficult to capabilities and struggle to express their needs clearly.
understand complex requirements.

3 Misaligned Communication 4 Subjective Requirements


Different backgrounds and terminology can create Some requirements, such as user-friendliness, are
communication gaps between developers & customers/ users. subjective and challenging to define objectively. This can
lead to misinterpretations and disagreements.

5 Underestimated Importance
6 Nonfunctional Requirements Overlooked
As a result, inadequate time and resources are allocated to
this critical process. Nonfunctional requirements, such as performance, security,
and compliance, are often not adequately identified or
prioritized. This can lead to significant development
7 Dynamic Requirements challenges and cost overruns.
Requirements can change throughout the entire software
life cycle, even after the system is deployed. This constant
evolution requires flexibility and adaptability in the
development process.
Characteristics of Effective Requirements
To be truly effective, system requirements must embody these essential characteristics that
build upon each other :

Clarity & Precision Measurability & Verifiability Feasibility & Traceability


Clear, concise, unambiguous, redundant Must be technically achievable and
Each requirement must be measurable
statements with singular focus reducing and testable and have clear acceptance traceable to user needs
the risk of misunderstandings and avoid " criteria and a practical way to verify its - traceable system-level req't to the
nice-to-have" features implementation. lowest- level system

These characteristics work together to ensure requirements effectively guide system development while maintaining alignment
with user expectations.

And perform trade-off study for balancing related requirements to maximize mission assurance within constraints.
Consequences of low quality requirements

1 Extensive Rework 2 Quality Assurance 3 System Performance


Challenges Impact
Low-quality requirements
often lead to rewriting the Retesting becomes
SRS, redesigning systems, necessary, increasing time Defective software may need
and re-encoding software. and resource expenditure. recall, including user manuals.
This can result in costly
compensation or warranty
claims.

4 Additional Operational Costs

Expenses mount with new version installations and potential refiling of documentation.
Steps for Defining System Requirements
Step 1: Collecting Information
1 Gather information about the application's business goals, current situation,
policies, regulations, and standards.

Step 2: Constructing Analysis Models


2
Develop models to visually represent the system's structure and behavior.

Step 3: Deriving Requirements and Constraints


3 Identify high-priority needs and derive requirements based on budget,
time, and other constraints.
Step 4: Conducting Feasibility Study
4 Assess the technical feasibility of the requirements
to mitigate risks during elicitation.
Step 5: Defining and Reviewing Requirements Specification
5 Define the spec. and Review the specification with peers,
domain experts, and stakeholders for clarity and
accuracy.
Following these steps ensures a structured and thorough process for collecting, analyzing, and
validating requirements, leading to a successful system and software development project.
Preparing for Requirements Definition
1. Establish Analysis Strategy 2. Define Problem Space 3. Characterize Solution Space
Define the approach, methods, and tools Analyze gaps between current and Identify key stakeholders and develop
for conducting requirements analysis. desired states to clearly articulate the preliminary operational concepts.
This includes selecting appropriate problem. This involves mapping Create stakeholder profiles, including
elicitation techniques (interviews, existing business processes, identifying their roles, responsibilities, and
workshops, surveys). Consider project pain points and inefficiencies, and influence levels.
constraints, organizational culture, and understanding the root causes of Map interdependencies between
available resources when developing current challenges. different stakeholder groups and
the strategy. outline initial system boundaries.

4. Evaluate Alternatives
Assess different solution classes to determine the most promising approaches. This includes conducting feasibility studies,
analyzing cost-benefit ratios, and evaluating technical capabilities . Consider both commercial off-the-shelf solutions and
custom development options. Document assumptions, risks, and trade- offs associated with each alternative to support informed
decision-making.
Elicitation Techniques in Requirements Engineering

Traditional Approaches Observational Approaches


• Review of Literature • Protocol analysis

• Interviews and surveys • Participant observation


• Group elicitation sessions

Model-Based Approaches Exploratory Approaches


• Goal-based hierarchies • Prototyping
• Scenarios and use cases
Information-Collection Techniques
Literature Survey Study of Existing Stakeholder Surveys &
Customer Presentations
Business Procedures User Interviews
Directly engage with Explore industry publications
Analyze existing business Conduct surveys to gather
customers to understand , research papers, and
procedures, forms, and information from a wider
their needs, pain points, and relevant articles to gather
documents to understand range of stakeholders.
expectations. Gain insights knowledge about similar
current workflows, data flow, Conduct interviews to gain
into their business systems, best practices, and
and potential areas for detailed insights into
processes and desired emerging trends.
Use prototyping to improvement. Observe the individual user needs,
functionalities.
demonstrate potential development team's training preferences, and potential

solutions and gather sessions and tutorials challenges.

feedback from users. conducted by domain


experts.

You might also like