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

System Analysis and Design - Module 2

This module is designed for students who wants to learn sad
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
42 views

System Analysis and Design - Module 2

This module is designed for students who wants to learn sad
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 6

MVGFC

MANUEL V. GALLEGO FOUNDATION COLLEGES

Module 2: Requirements Analysis


At the end of the lesson the students should be able to:
A. Understand details of requirements definition

Introduction

Requirements Analysis is a critical phase in software development that involves


identifying, documenting, and validating what stakeholders expect from a system. This
module explores the key components of Requirements Analysis, focusing on
determining requirements, creating a requirements definition, and various techniques for
gathering requirements effectively.

1. Determining Requirements

Determining requirements involves understanding and documenting the needs and


expectations of stakeholders. This phase is essential for defining the scope and
functionality of the software system. Key activities include:

- Stakeholder Engagement:
Engaging with stakeholders to gather insights into their operational needs, goals, and
expectations. Techniques such as interviews, workshops, and direct observation are
commonly used to elicit requirements.

- Requirement Types:
- Functional Requirements: Define specific functionalities the system must perform,
such as data processing, report generation, or user interaction.
- Non-Functional Requirements: Specify attributes of the system, including
performance, security, usability, and regulatory compliance.

- Documentation: Clear and structured documentation of requirements using tools such


as use cases, user stories, and requirement specifications ensures a shared
understanding among stakeholders and development teams.

SYSTEM ANALYSIS AND DESIGN 1


MVGFC
MANUEL V. GALLEGO FOUNDATION COLLEGES

2. Creating Requirements Definition

Creating a requirements definition involves organizing and prioritizing gathered


requirements into a structured document that serves as a blueprint for development.
Key elements include:

- Structuring Requirements: Organizing requirements into sections such as Introduction


(overview of the project), Functional Requirements (detailed functionalities), Non-
Functional Requirements (performance, usability criteria), and Constraints (budget,
technology limitations).

- Prioritization: Evaluating and prioritizing requirements based on stakeholder needs,


project goals, and feasibility. Prioritization ensures that the most critical functionalities
are addressed first during development.

- Validation: Validating requirements through reviews and feedback sessions with


stakeholders to ensure accuracy and alignment with their expectations. This iterative
process refines the requirements definition before development commences.

3. Requirements Gathering Techniques

Effective requirements gathering techniques are essential for capturing comprehensive


and accurate information from stakeholders. Common techniques include:

- Interviews: Conducting one-on-one or group interviews with stakeholders to


understand their needs, preferences, and pain points related to the system.

- Workshops: Facilitating collaborative sessions involving stakeholders, developers, and


designers to brainstorm ideas, define requirements, and achieve consensus.

- Surveys and Questionnaires: Distributing surveys or questionnaires to gather feedback


from a large number of stakeholders, especially useful in dispersed or diverse user
groups.

- Prototyping: Developing early versions or prototypes of the system to visualize


requirements and gather feedback on functionalities and usability.

- Observation: Observing stakeholders in their work environment to understand current


processes, identify challenges, and gather requirements based on real-world scenarios.

SYSTEM ANALYSIS AND DESIGN 2


MVGFC
MANUEL V. GALLEGO FOUNDATION COLLEGES

Case Study: Online Bookstore System

Background:
Imagine a client, ABC Books, a medium-sized bookstore chain, wants to transition its
business model from traditional brick-and-mortar stores to an online platform due to
changing customer preferences and market trends.

Goals:
1. Increase Sales: Expand customer base and increase revenue through online sales.
2. Improve Customer Experience: Provide a user-friendly interface for browsing,
purchasing, and managing orders.
3. Efficient Operations: Streamline inventory management, order processing, and
customer support.

Stakeholders:
- ABC Books Management Team: Overall project sponsors, responsible for strategic
direction and funding.
- Customers: End-users who will interact with the online bookstore.
- IT Department: Responsible for system implementation and maintenance.
- External Vendors: Payment processors, shipping partners, etc.

Current System Analysis:


- Current Processes: Manual order processing, limited inventory visibility, in-store sales
only.
- Challenges: Competitive disadvantage against online-only retailers, inability to reach
customers beyond physical store locations.

Requirements Elicitation Techniques Used:


1. Interviews: Conducted with stakeholders including management, IT staff, and
potential end-users (customers).
2. Surveys: Sent to existing customers to gather feedback on desired features for an
online platform.
3. Observation: IT staff observed current operations to understand existing workflows
and pain points.
4. Prototyping: Initial mockups and prototypes developed to gather early feedback from
stakeholders.

Functional Requirements Identified:


1. User Registration and Authentication: Allow customers to create accounts, log in
securely, and manage their profiles.

SYSTEM ANALYSIS AND DESIGN 3


MVGFC
MANUEL V. GALLEGO FOUNDATION COLLEGES

2. Product Catalog: Display books with details like title, author, price, availability, and
reviews.
3. Shopping Cart: Enable users to add/remove items, view subtotal, and proceed to
checkout.
4. Order Management: Track orders, send confirmation emails, handle cancellations
and refunds.
5. Payment Integration: Support secure payment methods (credit cards, PayPal, etc.)
through third-party APIs.
6. Inventory Management: Real-time updates of stock levels, automatic notifications for
low inventory.
7. Customer Support: Provide FAQs, contact forms, and possibly live chat for customer
assistance.

Non-Functional Requirements Identified:


1. Performance: System should handle peak loads during promotions without
slowdowns.
2. Security: Secure transactions and protect customer data from unauthorized access.
3. Usability: Intuitive interface for users of varying technical proficiency.
4. Scalability: Ability to handle growth in terms of users and transaction volume.
5. Reliability: Minimal downtime for maintenance, robust error handling.

Tools Used:
- CASE Tools: Computer-Aided Software Engineering tools for modeling and design.
- Version Control Systems: To manage changes and collaborate on development.
- Project Management Software: To track tasks, timelines, and milestones.

Outcome:
- Detailed Requirements Specification Document created, outlining all functional and
non-functional requirements.
- Use Case Diagrams and Sequence Diagrams developed to visualize system
interactions.
- Prototype reviewed by stakeholders, feedback incorporated for subsequent iterations.
- Development Plan created, including phases for design, implementation, testing, and
deployment.

By following this structured approach to requirements analysis, ABC Books can proceed
with confidence to develop and implement their online bookstore system, meeting the
needs of both the business and its customers effectively.

SYSTEM ANALYSIS AND DESIGN 4


MVGFC
MANUEL V. GALLEGO FOUNDATION COLLEGES

Post-Test
Instructions: Answer the following questions based on the information provided in the
lesson on Requirements Analysis.

1. What is the primary goal of determining requirements in software development?


A) Defining the project budget
B) Understanding and documenting the needs and expectations of stakeholders
C) Implementing software functionalities without stakeholder input
D) Prioritizing non-functional requirements over functional requirements

2. Which of the following is NOT a common technique for gathering requirements


effectively?
A) Interviews
B) Surveys and Questionnaires
C) Testing and Debugging
D) Prototyping

3. Why is prioritization of requirements important in creating a requirements definition?


A) To ensure stakeholders are not involved in the process
B) To address the least critical functionalities first
C) To align with stakeholder needs, project goals, and feasibility
D) To delay the development process

4. In the case study of the Online Bookstore System, what was one of the goals
identified for the project?
A) Reduce customer base
B) Increase revenue through in-store sales only
C) Provide a user-friendly interface for browsing and purchasing
D) Avoid engaging with external vendors

5. Which tool is commonly used for modeling and design in software development?
A) Version Control Systems
B) Project Management Software
C) CASE Tools (Computer-Aided Software Engineering tools)
D) Microsoft Excel

6. What is the purpose of developing Use Case Diagrams and Sequence Diagrams in
the requirements analysis process?
A) To confuse stakeholders with technical jargon
B) To visualize system interactions and requirements

SYSTEM ANALYSIS AND DESIGN 5


MVGFC
MANUEL V. GALLEGO FOUNDATION COLLEGES

C) To avoid feedback from stakeholders


D) To skip the validation process

7. True or False: Requirements analysis is a critical phase in software development that


involves identifying, documenting, and validating what stakeholders expect from a
system.
A) True
B) False

8. Which type of requirements specify attributes of the system such as performance,


security, usability, and regulatory compliance?
A) Functional Requirements
B) Non-Functional Requirements
C) Technical Requirements
D) Design Requirements

References:

1. Sommerville, Ian. Software Engineering. 10th ed., Pearson Education, 2015.


2. Pressman, Roger S. Software Engineering: A Practitioner's Approach. 8th ed.,
McGraw-Hill Education, 2014.
3. Wiegers, Karl E., and Beatty, Joy. Software Requirements. 3rd ed., Microsoft Press,
2013.
4. Kotonya, Gerald, and Sommerville, Ian. Requirements Engineering: Processes and
Techniques. 2nd ed., Wiley, 1998.

SYSTEM ANALYSIS AND DESIGN 6

You might also like