MODULE II
MODULE II
Information gathering is a critical initial step in the system development process. Its significance lies
in ensuring that the system being developed meets user requirements, aligns with organizational goals,
and effectively addresses the problem at hand. Below are key points highlighting its importance:
Information gathering helps developers understand what users expect from the system,
including features, functionalities, and usability.
It ensures the system meets the actual needs rather than assumptions, reducing the risk of
failure.
Collecting information helps clearly define the boundaries of the system, avoiding scope
creep (uncontrolled changes in scope).
This clarity allows for better planning of resources, time, and budget.
3. Identifying Constraints
Gathering information allows for the early identification of potential risks or challenges, such
as security vulnerabilities or integration issues.
Proactive planning can mitigate these risks during development.
5. Enhanced Communication
Gathering information thoroughly reduces mistakes and avoids redoing work. This helps complete the
system faster and within budget.
2. Discuss the different strategies and methods for gathering system requirements, highlighting
their pros and cons.
Gathering system requirements involves various strategies and methods, each with strengths and
weaknesses. Here’s an overview:
1. Interviews
Description: Conducting one-on-one or group discussions with stakeholders to understand their needs
and expectations.
Pros:
Cons:
Description: Distributing structured forms with predefined questions to gather feedback from a large
group of users.
Pros:
Cons:
3. Observation
Description: Watching users perform tasks within their work environment to understand processes
and challenges.
Pros: Provides real-world insights into workflows.
Cons:
4. Document Analysis
Description: Reviewing existing documentation, such as reports, policies, manuals, and system
specifications.
Pros:
Cons:
Pros:
Cons:
6. Prototyping
Description: Developing a preliminary version of the system to demonstrate and refine requirements.
Pros:
Cons:
Description: Conducting discussions with a selected group of users to gather diverse opinions.
Cons:
Description: Creating scenarios that describe how users will interact with the system.
Pros:
Clarifies functional requirements, Helps identify system behaviour under different conditions.
Cons:
Interviews:
Questionnaires:
An accurate and comprehensive SRS is essential for project success, serving as a contract between
stakeholders and the development team.
Prototyping is an iterative approach that involves creating a working model of the system during its
design phase. Its roles include:
1. Visualizing Requirements
Helps stakeholders see and understand how the final system will look and function.
Reduces misunderstandings and clarifies vague requirements.
2. Gathering Feedback
3. Risk Reduction
Identifies design flaws and usability issues before full-scale development begins.
Reduces the risk of costly changes later in the project.
4. Supporting Decision-Making
Helps stakeholders evaluate alternative designs and choose the best approach.
Provides a tangible basis for decisions regarding system functionality and aesthetics.
5. Stakeholder Alignment:
Prototypes ensure that all stakeholders are on the same page by visualizing the system's
features and functionality. This alignment reduces conflicts and ensures that everyone agrees
on the system’s goals and expectations.
6. Analyse the factors that contribute to the decision-making process during feasibility analysis.
Feasibility analysis determines whether a project is viable and worth pursuing. Key factors
influencing the decision-making process include:
1. Technical Feasibility
2. Economic Feasibility
3. Operational Feasibility
Compliance with laws, regulations, and standards (e.g., data protection laws).
Risks of legal penalties or liabilities.
5. Schedule Feasibility
7. Risk Analysis
Identification of potential risks, such as technical challenges, cost overruns, or user resistance.
Strategies for mitigating these risks.
Cost-benefit analysis is a critical component of the feasibility analysis phase because it ensures that a
project delivers value and is economically viable. Here’s why it is crucial:
Example:
Resource Optimization: Ensures that time, budget, and manpower are invested in projects
that promise substantial returns, reducing waste.
Risk Reduction: By assessing costs and benefits, organizations can avoid risky investments
that could lead to financial losses.
Strategic Planning: Enables comparison between projects, helping to prioritize those that
best align with the organization’s financial goals.
Functional Requirements
Definition: Specify what the system should do, focusing on specific behaviours or functions.
Purpose: Describe the actions or tasks the system must perform.
Examples:
o A system must allow users to log in using a username and password.
o The system should generate monthly sales reports.
o A search feature should return results based on user queries.
Non-Functional Requirements
Definition: Define the system's quality attributes or how it performs functions, rather than the
specific functions themselves.
Purpose: Focus on the operational aspects, ensuring usability, performance, and reliability.
Examples:
o The system must load the dashboard within 2 seconds (performance).
o User data must be encrypted during transmission (security).
o The system must support 1,000 simultaneous users (scalability).
Key Differences:
Aspect Functional Requirements Non-Functional Requirements
Both types are essential for successful system development; functional requirements ensure the
system's functionality, while non-functional requirements enhance its usability and reliability.
The payback period provides a straightforward measure of project viability, helping stakeholders
understand how quickly they can expect to recover their investment. Here’s why it’s important:
Risk Assessment: Projects with shorter payback periods are typically considered less risky, as the
capital is recouped faster, reducing the exposure to potential financial losses
Liquidity Consideration: A shorter payback period improves an organization’s liquidity, as capital
tied up in the project is freed up sooner for other investments or operational needs.
Investment Decision-Making: The payback period helps organizations compare and prioritize
multiple projects. Projects with shorter payback periods are often given higher priority because they
promise quicker returns
Example:
Project A: Initial cost of $100,000; annual savings of $25,000. Payback period: 4 years.
Project B: Initial cost of $50,000; annual savings of $20,000. Payback period: 2.5 years.
Project B might be preferred due to its faster recovery time, even if Project A has higher total benefits
in the long run.
The payback period is a simple yet effective metric for comparing projects and ensuring financial
prudence.
A cost-benefit analysis involves systematically evaluating the costs and benefits of a project to
determine its feasibility and value. The key components are:
1. Costs
Types of Costs:
2. Benefits
All gains or positive outcomes from the project, both tangible and intangible.
Types of Benefits:
3. Time Horizon
The duration over which costs and benefits are assessed. It considers:
4. Discount Rate
Used to calculate the present value of future costs and benefits. This accounts for the time value of
money, reflecting inflation, interest rates, or risk.
The difference between the present value of total benefits and total costs. A positive NPV indicates a
financially viable project.
6. Sensitivity Analysis
Evaluation of how changes in assumptions (e.g., cost overruns or reduced benefits) impact the
project's overall feasibility.
7. Risk Assessment
Identification and quantification of risks that might affect costs or benefits, such as:
Market fluctuations.
Technological failures.
Regulatory changes.
8. Break-Even Analysis
Determining when the project’s cumulative benefits equal its costs, helping to understand how soon
the investment will start generating net gains.
By analyzing these components systematically, organizations can make informed decisions about
whether a project is worth pursuing.
14. A company wants to develop an online shopping system. The system should allow customers
to browse products, add them to a shopping cart, and place orders. The system should also
support payment processing and order tracking. Draw a Level 1 DFD for the online shopping
system that includes the following processes:
III.Order Processing
IV.Payment Processing
V.Order Tracking
15. Explain the significance of levels in DFDs and how they contribute to system analysis and
design.
16. A restaurant wants to implement an order management system. The system should handle
dine-in, takeout, and delivery orders. It should also manage the kitchen workflow and
inventory. Develop a Level 1 DFD for the restaurant order management system, including:
I. Order Entry
III.Inventory Management
IV.Payment Processing