SECTION 03 / 14

Requirement specification: decide WHAT to build

2 min read
On this page 1 headings

Many people think the first step is learning a programming language. You do need one to write code, but before thinking about the solution you must think about what problem you want to solve.

Requirements: Goals the implemented system should have; they should cater to the needs of clients.

First understand users and their needs; then plan the feature.
First understand users and their needs; then plan the feature.
Open image ↗
First understand users and their needs; then plan the feature.

EXAMPLE Amazon Pay is a mobile wallet — a way to carry cash in digital format. You can link credit/debit cards and bank accounts, or transfer money into it, and pay with your smartphone. It offers recharges, bill payments, travel and insurance, rewards and gift vouchers, and features such as adding money and auto reload.

1. Understand the problem.

2. Study existing components of the system (e.g. inventory management, payment gateway) to see how the new component will interact with them.

3. Look at similar systems (Paytm, PhonePe) to understand features.

4. Write an explicit set of goals = requirements.

A client is not always an outside customer

Client typeExample from the lecture
External userMobile banking software serves bank customers – checking account balance, transferring money
Internal to your companyAn employee resources portal with information about employees and teams; an internal products team builds it, talking to departments like HR to understand requirements
Another softwareA payment gateway like Razorpay interfaces with an e-commerce website: the site sends customer details, the gateway communicates with the customer's bank and sends the response back to the site
A client may be an external customer, an internal department or even another software system.
A client may be an external customer, an internal department or even another software system.
Open image ↗
A client may be an external customer, an internal department or even another software system.

Think about WHO will use the software, for WHAT purpose and in WHAT way — keep this persona of the intended user alive in your mind.

REMEMBER Requirement specification is the first step in the software development process. Clients are the end users of the software. Requirements must capture clients' needs and be met at every stage — only then will the software meet end users' requirements.

YOUR STUDY PROGRESS

Finished this section? Save your progress.

Back to top ↑