You are on page 1of 10

Requirements from the User/Customer’s

Perspective, Issues Related to


System Contract Requirements and
Requirements Problems

Engr. Syed Muhammad Ali Imran


Lecture 4
Department Of CS&IT, Superior University Sargodha Campus
Introduction
We will explore into the critical aspects of requirements from the user or
customer's perspective, as well as the issues related to system contract
requirements and common problems encountered in the realm of software and
system development. This discussion will provide you with a comprehensive
understanding of the fundamental role that requirements play in the success or
failure of a project.

I. Requirements from the User/Customer's Perspective


II. Issues Related to System Contract Requirements
III. Requirements Problems
I. Requirements from the
User/Customer's Perspective
1. Understanding User Needs:
The first step in any software or system development project is to determine the
requirements from the user or customer's perspective. This involves actively
engaging with stakeholders to understand their needs, preferences, and
constraints.

2. Requirement Elicitation:
The process of requirement elicitation involves various techniques, such as
interviews, surveys, and workshops, to extract information from users. It is
commanding to gather as much data as possible during this phase to avoid
ambiguities later in the project.
3. Requirements Documentation:
Once requirements are gathered, they must be precisely documented. A well-
structured requirements document serves as the foundation for the entire project.
It should include functional requirements (what the system should do) and non-
functional requirements (how the system should perform)

4. Validation and Verification:


Ensuring the correctness and completeness of requirements is essential. Validation
involves confirming that the documented requirements align with the user's actual
needs, while verification checks whether the requirements are internally consistent
and feasible according to the SRS document.
5. Requirements Traceability:
It's crucial to maintain traceability throughout the project. This means that every
design, development, and testing activity should be traceable back to specific user
requirements. This helps in maintaining alignment between the project's goals and
the user's needs.
II. Issues Related to System Contract
Requirements
1. Ambiguity: One of the most dominant issues in system contract requirements is
ambiguity. Unclear or imprecise language can lead to misunderstandings,
conflicts, and costly rework. It's essential to define terms and concepts clearly.

2. Incomplete Requirements: Incomplete requirements can result in missed


functionalities and scope creep. It's essential to ensure that all relevant aspects of
the system are adequately covered in the contract.

3. Scope Creep: Scope creep occurs when new requirements are introduced
without proper evaluation and control. This can lead to project delays and budget
overruns. A well-defined change management process is essential to alleviate this
issue.
5. Conflicting Requirements: Conflicts can arise when different stakeholders
have divergent requirements. Resolving conflicts early and establishing a clear
prioritization mechanism is important to maintaining project cohesion.

6. Unrealistic Expectations: Sometimes, customers may have unrealistic


expectations regarding project timelines, costs, or features. Effective
communication and managing customer expectations are essential to avoid
disappointments.
III. Requirements Problems
1. Gold Plating: Gold plating refers to the practice of adding features or
functionalities that were not requested by the customer. This can lead to increased
project costs and unnecessary complexity.

2. Requirements Instability: Requirements may change over the course of a


project due to evolving user needs or external factors. Managing these changes
effectively is a key challenge.
4. Lack of Prioritization: Failing to prioritize requirements can result in delays
and a lack of focus on critical functionalities. Using techniques like MoSCoW
(Must have, Should have, Could have, Won't have) can help in prioritizing
effectively.
5. Poor Communication: Inadequate communication between project
stakeholders can lead to misunderstandings and misalignment. Regular meetings
and status updates are vigorous to ensure everyone is on the same page.
Conclusion
In conclusion, understanding and managing requirements from the user or
customer's perspective is a fundamental aspect of successful system
development. By addressing issues related to system contract requirements and
being aware of common requirements problems, project teams can significantly
increase their chances of delivering a successful system that meets user
expectations.

You might also like