You are on page 1of 4

Functional and Non-Functional Requirements Analysis:

A. What vs. How:


1. Functional requirements define "what" the system
should do, specifying its capabilities and functions.
2. Non-functional requirements define "how" the system
should perform those functions, detailing the quality
attributes and constraints.
B. Tangibility:
3. Functional requirements are often tangible and
observable, describing specific interactions and outcomes.
4. Non-functional requirements may be less tangible and
may not result in direct user-visible features but are critical
for overall system performance and quality.
C. Scope:
5. Functional requirements relate to the system's features
and user interactions.
6. Non-functional requirements pertain to the overall system
behavior and quality characteristics.
Distinguishing between functional and non-functional
requirements is essential for several reasons:
 It clarifies the focus of the requirements and guides the
analysis process.
 It ensures that functional aspects are clearly documented
for design and development.
 It enables prioritization and trade-offs when resource
constraints come into play.
 It helps in designing and implementing the system's
architecture and features, considering non-functional
aspects.
Examples of functional and non-functional requirements for a
Content Management System (CMS) software.
Functional Requirements (CMS Software):
1. Content Creation: Users can create and edit text and
multimedia content for web pages.
2. User Management: Administrators can add and remove
users with different access levels.
3. Content Versioning: The system should support version
control for content editing.
4. Search Functionality: Users can search for content based
on keywords or categories.
5. Publishing Workflow: Editors can review and approve
content before publication.
6. Security: Users must log in to access the CMS.
7. Integration: The CMS should integrate with web hosting
services and databases.
These functional requirements guide the design and
development of the CMS by specifying the system's
features, interactions, and data processing capabilities.
Non-Functional Requirements (CMS Software):
1. Performance: Content retrieval and updates should occur
within 2 seconds, even during peak usage.
2. Security: The system must have user authentication and
data encryption to protect sensitive content.
3. Usability: The user interface should be simple and
accessible to users with disabilities.
4. Scalability: The system should support an increasing
number of content items and users over time.
5. Availability: The CMS must be available 24/7.
These non-functional requirements ensure that the CMS
performs reliably and meets quality standards, influencing
design decisions regarding security measures, user interface
design, and infrastructure scalability.
Distinguishing between these types of requirements helps
the development team prioritize, plan, and execute design
and development efforts effectively, ensuring that the CMS
not only has the desired features but also performs to meet
quality and performance expectations.

You might also like