Skip to content

a. What You Need To Know

Solution requirements

Solution requirements are what the client needs from the solution – the features that they want. Solution requirements in a design brief are often worded descriptions rather than technical descriptions.


Functional requirements

Functional requirements relate to what the solution should do. Typically, functional requirements will describe a behaviour or function of the software. This includes determining the input required, the desired output, data manipulation and data validation. These are further explained in Chapter 3, page 102.

Key Point

Functional requirements describe what the solution should do - the behaviors and functions of the software.

What functional requirements include:

  • Input required
  • Desired output
  • Data manipulation
  • Data validation

Non-functional requirements

Non-functional requirements describe the quality attributes of the solution. This requires consideration of usability, reliability, portability, robustness and maintainability. These are further explained in Chapter 3, page 103.

Key Point

Non-functional requirements describe quality attributes - how well the solution performs.

Quality attributes to consider:

  • Usability
  • Reliability
  • Portability
  • Robustness
  • Maintainability

Constraints

Solution constraints are factors that may limit or restrict solution requirements. Typically, constraints involve economic, technical, social, legal and usability factors.

Economic

Economic constraints include time and cost.

Time: The deadline by which the user or client needs to have the solution operational will define the time available to design and develop the solution. The more time available, the more time there is to complete an in-depth analysis and detailed designs, and to develop advanced features of the solution. The shorter the time frame, the faster each stage in the problem-solving methodology needs to be completed.

Cost: The funds available to complete the project may affect the hardware and software available for use, the number and range of staff available to work on the solution and even the data used as input, if required data sets need to be purchased.

Impact of Economic Constraints

Both a lack of time and a lack of money may result in a re-evaluation of the user's requirements, or a re-evaluation of how those requirements can be achieved.

Technical

Technical constraints are related to the hardware and software available for the project.

Examples of technical constraints:

  • Availability and compatibility of hardware and software
  • Capacity of storage and equipment
  • Processing speed
  • Security

Non-technical constraints relate to areas other than hardware and software.

Social: The user's level of expertise (social) may restrict inclusion of requirements involving complex manoeuvres or certain input methods.

Legal: Legal requirements such as privacy laws may restrict displaying or collecting personal data; intellectual property laws and ownership of data may also add constraints.


Scope

The scope outlines the boundaries or parameters of the solution so that all stakeholders are aware of exactly what the solution will contain. These boundaries or parameters can relate to the entirety of the planned software as a whole, or the contents of a new version of the software. The scope of the solution consists of two elements: what the solution will do and what the solution will not do.

What the solution will do

What the solution will do is a list of all the solution requirements (both functional and non-functional) that will be included in the solution.

What the solution will not do

What the solution will not do is a list of all the solution requirements that will not be included in the solution. Usually these are requirements initially sought by the client but excluded because of constraints.

Why Define What Won't Be Included?

Outlining what will and will not be included at the start of the project helps prevent arguments between the client and developer later.


Example of Scope

An example of a scope of solution would be:

The solution will display population data of towns in Victoria in a visual format and graphically represent the distances between those towns. It will be created to be user-friendly and, for privacy reasons, it will not display any personal details. The requirement that allows the user to zoom in on a particular region or town will not be included in the project because of economic factors, but may be added at a later stage.