KEMBAR78
System Analysis and Design | PDF | Security | Computer Security
0% found this document useful (0 votes)
15 views10 pages

System Analysis and Design

The document outlines the process of system analysis for an Online Ride Sharing System, detailing tasks such as requirement gathering, functional and non-functional requirements, and feasibility studies. It includes a Gantt chart for project planning, decision tables for user actions, and specifications for server requirements and development tools. Additionally, it describes various modules like customer, driver, and administration modules, along with testing methodologies to ensure system reliability and security.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
15 views10 pages

System Analysis and Design

The document outlines the process of system analysis for an Online Ride Sharing System, detailing tasks such as requirement gathering, functional and non-functional requirements, and feasibility studies. It includes a Gantt chart for project planning, decision tables for user actions, and specifications for server requirements and development tools. Additionally, it describes various modules like customer, driver, and administration modules, along with testing methodologies to ensure system reliability and security.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 10

SYSTEM ANALYSIS

INTRODUCTION
System analysis is conducted for the purpose of studying a system or its parts in order to
identify its objectives. It is a problem-solving technique that improves the system and ensures
that all the components of the system work efficiently to get their result.

The various tasks in the system analysis include the following:

• Requirement gathering: Gathering requirements from stakeholders, including drivers,


passengers, and platform providers, to understand their needs and expectations from
the system.
• Functional analysis: Identifying the functions and features required for the system to
meet the requirements gathered during the requirement gathering phase.
• Data analysis: Analyzing the data required for the system, such as user information,
ride history, and payment information.
• Process modeling: Creating process models to understand how the system works,
including how users request and accept rides, how drivers are matched with
passengers, and how payments are processed.
• Use case analysis: Identifying and analyzing the use cases of the system, including
scenarios such as passenger requesting a ride, driver accepting a ride, and payment
processing.
• Performance analysis: Evaluating the performance of the system, including its
response time, reliability, and scalability.
• Security analysis: Analyzing the security of the system, including its vulnerability to
hacking, data breaches, and other security threats.
• User interface analysis: Evaluating the usability of the system's user interfaces,
including the mobile applications used by both drivers and passengers.
• Testing: Conducting testing to identify and resolve any bugs or issues with the system's
functionality.

FUNCTIONAL REQUIREMENTS
Functional requirements are a key aspect of system analysis, defining the features and capabilities
required for the system to meet the needs of its users. For an Online Ride Sharing System, the
following functional requirements may be necessary:
• User registration and authentication: The system must allow users to create accounts,
providing basic information such as name, email, and phone number. The system must also
authenticate users to ensure that only authorized users can access the system.
• Ride request and acceptance: The system must allow passengers to request rides and
drivers to accept rides. The system must match passengers with available drivers and
provide information on the driver's location, estimated time of arrival, and vehicle details.
4
• Payment processing: The system must process payments for rides, allowing passengers to
pay for rides using various payment methods, such as credit cards or digital wallets. The
system must also handle payment disputes and issue refunds when necessary.
• Driver and passenger ratings: The system must allow drivers and passengers to rate each
other, providing feedback on the quality of the ride and the behavior of the driver or
passenger.
• Driver and vehicle verification: The system must verify the identity of drivers and ensure
that their vehicles meet the necessary safety standards. This may include verifying the
driver's license, conducting background checks, and checking the vehicle's insurance and
registration.
• Real-time tracking and monitoring: The system must track and monitor rides in real-time,
providing updates on the ride's progress and location. The system must also be able to
detect any safety or security issues, such as accidents or suspicious behavior.
• Customer support: The system must provide customer support to users, allowing them to
report any issues or problems with the system, such as payment disputes or safety
concerns.

2.3 NON-FUNCTIONAL REQUIREMENTS


They are the quality requirements that stipulate how well web application does what it has
to do:

• Performance: The system must be able to handle a large volume of ride requests and
payments, processing them quickly and efficiently. The system must also be able to
handle high traffic and user loads, without slowing down or crashing.
• Availability: The system must be available 24/7, with minimal downtime or
disruptions. This is important for ensuring that users can access the system when they
need to, without any delays or interruptions.
• Reliability: The system must be reliable, with minimal errors or bugs. The system
should also be able to recover from any errors or failures quickly and automatically,
without causing any significant disruptions or downtime.
• Security: The system must be secure, protecting user information and payment data
from unauthorized access or breaches. This may include implementing encryption,
firewalls, and other security measures to prevent hacking and other attacks.
• Usability: The system must be easy to use, with a user-friendly interface that is easy
to navigate and understand. This is important for ensuring that users can use the
system effectively, without any confusion or frustration.
• Compatibility: The system must be compatible with various devices and operating
systems, allowing users to access the system from their preferred devices, such as
smartphones, tablets, and laptops.
• Scalability: The system must be scalable, able to handle an increasing number of users
and rides as the system grows. This is important for ensuring that the system can
continue to meet user needs and demands, even as the user base expands.

5
FEASIBILITY STUDY
It is necessary and prudent to evaluate the feasibility of a project at the earliest possible time.
There may be different ways of checking whether a system is feasible or not. The following
feasibility studies were performed to gauge the feasibility of the system.

• Operational Feasibility:
In this test, the operational scope of the system is checked. The system under
consideration should have enough operational reach. It is observed that the proposed
system is very user friendly and since the system is built with enough help, even
persons with little knowledge of windows can find the system very easy.

• Technical Feasibility:
This test includes a study of function, performance and constraints that may affect the
ability to achieve an acceptable system. This test begins with an assessment of the
technical viability of the proposed system. One of the main fusers to be accessed is
the need of various kinds of resources for the successful implementation for the
proposed system.

• Economic Feasibility:
An evaluation of development cost weighed against the ultimate income or benefit
derived from the development of the proposed system is made. The income can be in
terms of money or goodwill, since the software brings in both, the system is highly
viable.

2.5 Gantt Chart:

Task Description Start Date End Date Duration

Project Planning 01/01/2023 01/15/2023 15 days

Requirements Gathering 01/16/2023 02/05/2023 21 days

System Design 02/06/2023 02/25/2023 20 days

Front-End Development 02/26/2023 03/25/2023 28 days

Back-End Development 03/26/2023 04/25/2023 30 days

Testing and Bug Fixing 04/26/2023 05/20/2023 25 days

Deployment and Launch 05/21/2023 06/01/2023 12 days

Post-Launch Maintenance 06/02/2023 06/30/2023 29 days

Explanation:

6
• Project Planning: During this phase, the project team will establish project goals, define
project scope, identify stakeholders, and develop a project plan.
• Requirements Gathering: During this phase, the project team will gather and document the
functional and non-functional requirements for the Online Ride Sharing System.
• System Design: During this phase, the project team will develop the system architecture,
design database schemas, and create wireframes and mockups of the user interface.
• Front-End Development: During this phase, the project team will develop the front-end
components of the system, including the user interface and user experience design.
• Back-End Development: During this phase, the project team will develop the back-end
components of the system, including the database schemas, API endpoints, and business
logic.
• Testing and Bug Fixing: During this phase, the project team will conduct system testing to
identify and resolve any bugs or issues.
• Deployment and Launch: During this phase, the project team will deploy the system to a
production environment and launch it to the public.
• Post-Launch Maintenance: During this phase, the project team will provide ongoing
maintenance and support for the system, including bug fixes, security updates, and feature
enhancements.

Decision Table

Condition Action 1 Action 2 Action 3

User is logged in Allow ride View ride history Logout

User has payment info Allow ride Prompt to add View payment info

Ride is in progress View details Contact driver End ride

Ride is completed View receipt Rate driver Book another ride

In this decision table, the conditions are listed in the left-hand column, and the possible actions are
listed in the header row. Each cell in the table represents a specific combination of conditions and
actions, and the corresponding action(s) to take based on those conditions.
For example, if a user is logged in and has payment information, they are allowed to request a
ride. If the ride is in progress, they can view the details, contact the driver, or end the ride. If the
ride is completed, they can view the receipt, rate the driver, or book another ride.
Using a decision table like this can help ensure that all possible combinations of conditions and
actions are considered and accounted for in the design and development of the Online Ride
Sharing System.

7
SYSTEM SPECIFICATIONS

SERVER REQUIREMENTS (Minimum Requirements)

• PHP >= 8.0


• BCMath PHP Extension
• Ctype PHP Extension
• Fileinfo PHP extension
• JSON PHP Extension
• Mbstring PHP Extension
• OpenSSL PHP Extension
• PDO PHP Extension
• Tokenizer PHP Extension
• XML PHP Extension

3.2 DEVELOPMENT TOOLS USED


• Operating System: Windows 10
• Text Editor: Visual Studio 2023
• Framework: Bootstrap
• Front-End Language: HTML, CSS
• Back-End: PHP
• Back-End Connectivity: MySQL

8
MODULES AND THEIR DESCRIPTION

Customer Module
This module provides functionalities for customers. Customers can register to get service and
get information about scheduling of queue.

The customer module is a crucial component of an Online Ride Sharing System, as it allows
users to interact with the system and access the services it provides. The customer module
typically includes the following features:

• User registration
• Search and booking
• Payment processing
• Notifications and alerts
• User feedback and
reviews
• Customer support
By implementing a robust customer module, the Online Ride Sharing System can provide users
with a seamless and user-friendly experience, leading to increased customer satisfaction and
loyalty.

Driver Module
The driver module is an essential part of any Online Ride Sharing System, as it allows drivers to
create and manage trips. Here are some potential features of a driver module:

• Trip Creation
• Trip Management
• Booking Management
• Payment Management
• Review Management

ADMINISTRATION MODULE
The administrative module is an important component of an Online Ride Sharing System, as it
allows administrators to manage the system and its operations. The administrative module
typically includes the following features:

• Dashboard
• User management
• Vehicle management
• Booking management
• Payment management
9
• System configuration
• Reporting and analytics
By implementing a robust administrative module, the Online Ride Sharing System can be efficiently
managed and maintained, leading to increased operational efficiency and revenue generation.
This module provides administrator related functionalities. Administrator manages entire
application and maintains the profiles of customers. Administrator module having all
privileges about this entire Queue, he/she can give a token to the customers according to the
time they register in the system.

SYSTEM FLOW DIAGRAM

Data Flow Diagram

4.2.2: ER Diagram

10
11
SYSTEM TESTING

INTRODUCTION
Once source code has been generated, software must be tested to uncover (and correct) as
many errors as possible before delivery to customer. Our goal is to design a series of test cases
that have a high likelihood of finding errors. To uncover the errors software techniques are
used. These techniques provide systematic guidance for designing test that
1. Exercise the internal logic of software components, and
2. Exercise the input and output domains of the program to uncover errors in program
function, behavior and performance.

Steps Software is tested from two different perspectives:


1. Internal program logic is exercised using ―White box ‖ test case design Techniques.

2. Software requirements are exercised using ―block box ‖ test case Design techniques. In
both cases, the intent is to find the maximum number of errors with the minimum amount
of effort and time.

5.2 TESTING METHODOLOGIES


A strategy for software testing must accommodate low-level tests that are necessary to verify
that a small source code segment has been correctly implemented as well as high-level tests
that validate major system functions against customer requirements. A strategy must
provide guidance for the practitioner and a set of milestones for the manager. Because the
steps of the test strategy occur at a time when deadline pressure begins to rise, progress
must be measurable and problems must surface as early as possible. Following testing
techniques are well known and the same strategy is adopted during this project testing.

5.2.1 Unit testing:


This involves testing individual units or components of the system to ensure that they work as
intended. Unit testing is typically done by developers during the development process.

5.2.2 Integration testing:


This involves testing how the different components of the system work together. Integration
testing is done to ensure that the different modules and subsystems of the system can work
together seamlessly.

5.2.3 System testing:


This involves testing the entire system to ensure that it meets the specified requirements. System
testing is done to ensure that the system is complete and functions as expected.

12
5.2.4 Performance testing:
This involves testing the performance of the system under different conditions, such as high user
loads or peak usage times. Performance testing is done to ensure that the system can handle the
expected workload and provide optimal performance.

5.2.5 User acceptance testing:


This involves testing the system with actual users to ensure that it meets their needs and
expectations. User acceptance testing is done to ensure that the system is user-friendly and
provides a positive user experience.

5.2.6 Security testing:


This involves testing the security of the system to identify potential vulnerabilities or weaknesses.
Security testing is done to ensure that the system is secure and user data is protected.

13

You might also like