0% found this document useful (0 votes)
6 views

Functional 1

Uploaded by

jquismorio01282
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
6 views

Functional 1

Uploaded by

jquismorio01282
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 20

FUNCTIONAL &

NON FUNCTIONAL
REQUIREMENTS
TYPES OF REQUIREMENTS

Business requirements
User (stakeholder) requirements
Solution requirements
Transition requirements
BUSINESS REQUIREMENTS

These include high-level statements of goals,


objectives, and needs. Business requirements do not
have any details or specific features. They just state
the problem and the business objective to be achieved,
such as
increased revenue/throughput/customer reach,
reduced expenses/errors,
improved customer service, etc.
USER (STAKEHOLDER) REQUIREMENTS

This group of requirements reflects the needs of


discrete stakeholder groups (top-level managers,
nonmanagement staff, customers, etc.) and defines
what they expect from a particular solution. They serve
as a bridge between generalized business requirements
and specific solution requirements. Example includes:
The ability to create various reports
view order history and status
manage customer databases, etc.
TRANSITION REQUIREMENTS

An additional group of requirements defines what an


organization needs to successfully move from its
current state to its desired state with the new product.
They are only necessary for a short time while the
transition takes place. Examples include:

“users must pass the training to operate the


system”
“previous data must be migrated to the cloud
storage.”
SOLUTION REQUIREMENTS

Solution requirements describe specific characteristics


that a product must have to meet the needs of the
stakeholders and the business itself. They fall into two
large groups.
Functional requirements define what a product
must do and what its features and functions are.
Nonfunctional requirements describe the general
properties of a system. They are also known as
quality attributes.
WHAT ARE FUNCTIONAL REQUIREMENTS?

are product features or functions that developers must implement to


enable users to accomplish their tasks.
So it’s essential to make them clear both for the development team and
the stakeholders.
Generally, functional requirements describe system behavior under
specific conditions.
EXAMPLES OF FUNCTIONAL REQUIREMENTS?

1. The system sends a confirmation email when a new user account is created.
2. The system sends an approval request after the user enters personal information.
3. A search feature allows users to search content/items by entering the query in the
search bar.
4. The user can review items in the cart, change their number, or remove them before
checkout.
5. The app should allow users to create accounts and log in using credentials like email
and password or through social media integration.
6. The app can send notifications to users for updates, reminders, or promotional
content.
7. Users should be able to provide feedback or rate services/products within the app.
FUNCTIONAL REQUIREMENTS TYPES

Authentication. This group is about verifying the identity of a user before allowing access
to the system, including entering usernames and passwords, biometric verification, or
multifactor authentication.

Authorization levels. These requirements aim to define and control the access levels of
different users within a system. For example, an admin may have complete system access,
while a regular user has limited access to certain features.

Data processing. These requirements can include data entry, validation, storage, and
retrieval.
FUNCTIONAL REQUIREMENTS TYPES

User interface and user experience (UI/UX). These are the requirements related to the
design and interaction elements of the system. Their goal is to ensure that it’s user-friendly
and meets users’ needs.

Reporting. These requirements define generating reports, e.g., data sources, formats, etc.

System integration. These requirements describe how the system interacts and integrates
with other systems or third-party services.
FUNCTIONAL REQUIREMENTS TYPES

Transaction handling. This group contains requirements for handling transactions. They
are especially important in systems that deal with financial processes or require record-
keeping of transactions.

Error handling and logging. These requirements specify how the system should handle
errors and log them, e.g., defining error messages, troubleshooting steps, and maintaining
logs for system activities.

Backup and recovery. These are the requirements for data backup and system recovery
processes, ensuring data integrity and system availability in case of failure.
WHAT ARE NONFUNCTIONAL REQUIREMENTS?

Nonfunctional requirements are not related to the system's functionality


but rather define how the system should perform.
They are crucial for ensuring the system's usability, reliability, and
efficiency, often influencing the overall user experience.
We’ll describe the main categories of nonfunctional requirements in detail
further on.
EXAMPLES OF NO FUNCTIONAL
REQUIREMENTS?
1. The website pages should load in 3 seconds with the total number of simultaneous
users <5 thousand.
2. The system should be able to handle 20 million users without performance
deterioration.
3. The payment processing gateway must be PCI DSS compliant.
4. A program running on Windows 10 must be able to run on Windows 11 without any
change in its behavior and performance.
NONFUNCTIONAL REQUIREMENTS TYPES (USABILITY)

Efficiency of use: the average time it takes to accomplish a user’s goals, how many tasks a user
can complete without help, the number of transactions completed without errors, etc.

Intuitiveness: how simple it is to understand the interface, buttons, headings, etc.

Low perceived workload: how many attempts users need to accomplish a particular task.

Example: Usability requirements can consider language barriers and localization tasks: People
with no understanding of French must be able to use the product.

Or you may set accessibility requirements: Keyboard users who navigate a website using <tab>,
must be able to reach the “Add to cart” button from a product page in 15 <tab> clicks.
NONFUNCTIONAL REQUIREMENTS TYPES (SECURITY)

Security requirements ensure there is protection from unauthorized access to the system and its
stored data. It considers different levels of authorization and authentication across different user
roles. For instance, data privacy is a security characteristic that describes who can create, see,
copy, change, or delete information. Security also includes protection against viruses and
malware attacks.

Example: Only the system’s data administrator can change access permissions for the particular
system information may only be changed by the system’s data administrator.
NONFUNCTIONAL REQUIREMENTS TYPES (RELIABILITY)

Reliability defines how likely it is for the software to work without failure for a given time.
Reliability decreases because of bugs in the code, hardware failures, or problems with other
system components.

Example: The database update process must roll back all related updates when any update fails.
NONFUNCTIONAL REQUIREMENTS TYPES (PERFORMANCE)

Performance is a quality attribute that describes the system's responsiveness to various user
interactions. Poor performance leads to a negative user experience. It also jeopardizes system
safety when it’s overloaded.

Example: The front-page load time must be no more than 2 seconds for users that access the
website using an LTE mobile connection.
NONFUNCTIONAL REQUIREMENTS TYPES (AVAILABILITY)

Availability reflects the time that the system’s functionality and services are available for use
with all operations. So scheduled maintenance periods directly influence this parameter. And it’s
important to define how the impact of maintenance can be minimized. When writing the
availability requirements, the team has to define the system's most critical components that
must be available at all times. You should also prepare user notifications in case the system or
one of its parts becomes unavailable.

Example: New module deployment mustn’t impact the front page, product pages, and
checkout page availability and mustn’t take longer than one hour. The rest of the pages that
may experience problems must display a notification with a timer showing when the system is
going to be up again
NONFUNCTIONAL REQUIREMENTS TYPES (SCALABILITY)

Scalability requirements describe how the system must grow without negatively impacting its
performance. It means serving more users, processing more data, and doing more transactions.
Scalability has both hardware and software implications. For instance, you can increase
scalability by adding memory, servers, or disk space. On the other hand, you can compress data,
use optimizing algorithms, etc.

Example: The website attendance limit must be scalable enough to support 200,000 users at a
time.

You might also like