Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 18

Online Electric System

Software Requirements Specification


Version 1.0

Group Members:
Name Roll No
Ali Hassan 22101001-001
M.Talha 22101001-033
M.Rafay 22101001-102
Mati Ullah 22101001-114

Group Number: 3
Supervisor Name: Ma’am Faryal

Page 1 of 18
Revision History

Date Version Description Author


(day/month/
year)
12/12/2023 1.0 In the revisions history of the project (GNO.3)
document, the initial phase involved
outlining the scope of the project,
defining both functional and non-
functional requirements, and crafting a
comprehensive use case diagram.
Subsequently, detailed user scenarios
were articulated to provide a nuanced
understanding of system interactions.

The methodology adopted for project


execution was documented, ensuring a
clear roadmap. The workplan was then
meticulously devised, outlining the
sequential steps to be undertaken. As
the document evolved, periodic
revisions captured the dynamic nature
of the project, incorporating feedback,
addressing scope adjustments, and
refining the workplan to ensure
alignment with the adopted
methodology. This ongoing process
reflects a commitment to maintaining
accuracy, relevance, and coherence
throughout the project's documentation.

Page 2 of 18
Table of Contents:
1. Scope of Project:................................................................................................................................4
2. Functional and Non-functional Requirements:...............................................................................5
3. UML Diagrams:.................................................................................................................................7
4. Usage Scenarios:................................................................................................................................9
5. Adopted Methodologies...................................................................................................................12
6. Work Plan:.......................................................................................................................................16

Page 3 of 18
Online Electric System

1. Scope of Project:

1.1 Project Domain:


Web Application

1.2 Abstract / Introduction:


The Online Electric System aims to create a user-friendly web application for facilitating
seamless transactions and interactions in the realm of electric products. The project's evolution is
marked by a meticulous process that includes outlining the scope, defining requirements, and
crafting a use case diagram. Periodic revisions ensure the documentation stays accurate, relevant,
and coherent. This dynamic platform provides consumers with a plethora of features to enhance
their purchasing experience. The system serves the different needs of users by addressing the
fundamental features of user account management, such as safe login and profile editing, as well
as more complicated functionalities such as examining purchase history and conducting sales.
The ability to easily search for products offers value.
The ability to easily search for products offers another layer of convenience, allowing customers
to quickly locate the electrical things they seek. The platform, crucially, goes beyond the
transactional aspect of ordinary internet retailers. Users may not only make purchases and
manage their shopping carts with ease, but they can also communicate meaningfully with other
users and vendors. A strong customer communication system guarantees that any issues or
concerns are addressed quickly, building a sense of dependability and confidence among the
online community. The Online Electric Store System's commitment to a variety of transaction
methods is one of its most notable qualities. Recognizing consumers' diverse preferences and
convenience aspects, the platform enables a variety of payment choices, including bank
transactions, Jazz Cash, credit card, and PayPal.
In the simple words, the Online Electric Store System aims to create a user-friendly web
application for facilitating seamless transactions and interactions in the realm of electric
products. The project's evolution is marked by a meticulous process that includes outlining the
scope, defining requirements, and crafting a use case diagram. Periodic revisions ensure the
documentation stays accurate, relevant, and coherent.

Page 4 of 18
1.3 Objectives of the Project:
The main objectives of the project are following.
 Develop a user-friendly online electric system.
 Provide a secure and efficient login mechanism.
 Enable users to easily edit their profiles.
 Implement a feature to view purchase history.
 Incorporate a robust product search functionality.
 Facilitate users in selling their products on the platform.
 Allow users to make purchases securely.
 Enable the addition of products to a shopping cart.
 Implement a communication feature for customer support.
 Ensure smooth and secure transactions through various payment methods.
 Provide a platform for users to add and sell their products.

2. Functional and Non-functional Requirements:

2.1 Functional Requirements:

1. Login:
 Users should be able to create accounts.
 Secure login mechanism with username and password.

2. Edit Profile:
 Users can modify their personal information.
 Password reset functionality.

3. View History:
 Users can access their purchase history.

4. Search Products:
 Implement a robust search functionality for products.

5. Sale Products / Add Products (by own):


 Users can list and sell their products.

Page 5 of 18
 Set product details, including price and description.

6. Purchase Products:
 Users can select and purchase products securely.

7. Add to Shopping Cart:


 Users can add products to a virtual shopping cart.
 View and manage items in the cart.

8. Talk with Customers for Issues:


 Messaging system for customer support.
 Efficient handling of user issues and queries.

9. Easy Transaction:
 Support multiple payment methods (Cash on Delivery, Bank, Jazz Cash, credit card,
Easy Paisa, IBN, etc.).
 Secure transaction processing.

2.2 Non-Functional Requirements:

1. Usability:
 The system should be intuitive for users with varying levels of technical expertise.

2. Performance:
 The system should handle simultaneous user interactions efficiently.

3. Security:
 Implement secure authentication and authorization mechanisms.
 Encrypt sensitive user data.

4. Reliability:
 Ensure the system's availability and reliability.

5. Scalability:
 Design the system to accommodate future growth in users and products.

6. Interoperability:

Page 6 of 18
 Enable seamless interaction with other systems or third-party applications through
standardized interfaces.

7. Portability:
 The system should be adaptable to different environments without requiring
significant modifications.

3. UML Diagrams:

1. Use Case Diagram:

Page 7 of 18
2. Entity Relationship Diagram:

Page 8 of 18
Page 9 of 18
4. Usage Scenarios:
Use case 1 Use Case Related to Login of user
Use case title Login
Abbreviated title Login_user
Use case Id SRS-12
Actors User
Description This use case enable user to Login him/herself.
Pre-Condition Internet connection should be available.
Task Sequence Exceptions
1.User initiates the command to starts the 1.User has entered invalid passwords.
application.
2.System is shown all features.
3.User initiates the Login of user command.

Use case 2 Use Case Related to View History of user


Use case title View History
Abbreviated title View_History_user
Use case Id SRS-13
Actors User
Description This use case enable user to view history.
Pre-Condition Internet connection should be available.
Task Sequence Exceptions
1.From the main dashboard, the user navigates 1.Clear presentation of historical data with
to the "History" section. relevant details.
2.Views a list of previous activities,
transactions, or interactions.

Use case 3 Use Case Related to Edit Profile of user


Use case title Edit Profile
Abbreviated title Edit_profile_user
Use case Id SRS-14
Actors User
Description This use case enable user to edit his/ her profile.
Pre-Condition Internet connection should be available.
Task Sequence Exceptions
1.User goes to the "Profile" section. 1.Changes are saved, and updated profile
2.Selects the "Edit Profile" option. information is reflected.
3.Edits relevant information (e.g., username,
email, profile picture).

Page 10 of 18
Use case 4 Use Case Related to Sale Products of user
Use case title Sale Products
Abbreviated title Sale_products_user
Use case Id SRS-15
Actors User
Description This use case enable user to add your product for sale..
Pre Condition Internet connection should be available.
Task Sequence Exceptions
1.User accesses the "Sell" or "Product Listing" 1.Product is successfully listed for sale,
section. visible to potential buyers.
2.Provides necessary details about the product
(e.g., title, description, images, price).
- Submits the listing.

Use case 5 Use Case Related to Search Products of user


Use case title Search Products
Abbreviated title Search_products_user
Use case Id SRS-16
Actors User
Description This use case enable user to search products for purchase.
Pre Condition Internet connection should be available.
Task Sequence Exceptions
1.User opens the app and navigates to the 1.Quick and accurate search results.
search functionality. 2.Easy navigation and intuitive filter options.
2.User enters a product name, category, or 3.Detailed product information and clear
relevant keywords into the search bar. images.
3.The app provides autocomplete suggestions 4.Seamless and secure checkout process.
to help the user refine their search. 5.Order confirmation and tracking for a
smooth post-purchase experience.

Use case 6 Use Case Related to Purchase Products of user


Use case title Purchase Product
Abbreviated title Purchase_products_user
Use case Id SRS-17
Actors User
Description This use case enable user to purchase products.
Pre Condition Internet connection should be available.
Task Sequence Exceptions
1.User navigates to the product catalog. 1.Smooth and secure transaction process,
2.User selects desired product. with clear product information and pricing.
3.User adds product to the shopping cart.

Page 11 of 18
Use case 7 Use Case Related to add to shopping cart of user
Use case title Add to Shopping Cart
Abbreviated title Add_to_Shopping_cart_user
Use case Id SRS-18
Actors User
Description This use case enable user to add products in shopping cart.
Pre Condition Internet connection should be available.
Task Sequence Exceptions
1.User browses the product catalog. 1.Instant feedback on the addition to the cart,
2.User selects a product of interest. clear indication of the updated cart status.
3.User clicks on "Add to Cart" button.

Use case 8 Use Case Related to Customer service for issues of user
Use case title Customer Service for Issues
Abbreviated title Customer_service_for_issues_user
Use case Id SRS-19
Actors User
Description This use case enable user to solve your issues..
Pre Condition Internet connection should be available.
Task Sequence Exceptions
1.User encounters a problem with a purchased 1.Prompt response, understanding of the
product. issue, and a satisfactory resolution.
2.User contacts customer service via chat,
phone, or email.
3.User describes the issue and provides
relevant details.
4.Customer service investigates and resolves
the issue.

Use case 9 Use Case Related to Easy Tranaction of user


Use case title Easy Transaction
Abbreviated title Easy_Transaction_user
Use case Id SRS-20
Actors User
Description This use case enable user to transaction your payment easy method.
Pre Condition Internet connection should be available.
Task Sequence Exceptions
1.User logs into the account. 1.Intuitive navigation, minimal steps in the
2.User explores products and adds items to the checkout process, and a straightforward
cart. payment experience.
3.User navigates through the checkout process.
4.System securely processes payment.
5.User receives confirmation of the successful
transaction.
Page 12 of 18
5. Adopted Methodologies

1. Adopted Methodology:
The adopted methodology for your project involves leveraging the strengths of both models
in a cohesive manner. Initially, you might follow the waterfall model for the foundational
development phases, ensuring a systematic and structured approach to meet the initial
specifications. As the project progresses, the spiral model comes into play during subsequent
iterations, allowing for ongoing refinements, enhancements, and adaptability to changing
requirements. This hybrid methodology aims to strike a balance between the rigidity of the
waterfall model and the flexibility of the spiral model, catering to the specific needs and
challenges posed by the online electric system domain.

2. Chosen Methodology:
Choosing both the spiral and waterfall models for your "Online Electric System" project can
offer benefits in different project phases. The waterfall model provides a structured approach,
suitable for well-defined requirements and a clear understanding of the project scope. On the
other hand, the spiral model accommodates flexibility and iterative development, which is
useful for refining features and adapting to evolving needs, especially in complex projects
like an online electric system where requirements may evolve. Combining these models
allows you to balance structured planning with adaptability throughout the project lifecycle.
These two methodologies explain below:

 Water Fall Model:


The Waterfall Model was the first process model to be introduced. It
is also referred to as a Linear-Sequential Life Cycle Model. It is very simple to
understand and use. In a waterfall model, each phase must be completed before the next
phase can begin and there is no overlapping in the phases.

Sequential phases of Water Fall Model are:

1. Requirement Gathering and analysis:


All possible requirements of the system to be developed are captured in this
phase and documented in a requirement specification document.

2. System Design:
The requirement specifications from first phase are studied in this phase and
the system design is prepared. This system design helps in specifying hardware and
system requirements and helps in defining the overall system architecture.

Page 13 of 18
3. Implementation:
With inputs from the system design, the system is first developed in small
programs called units, which are integrated in the next phase. Each unit is developed
and tested for its functionality, which is referred to as Unit Testing.

4. Integration and Testing:


All the units developed in the implementation phase are integrated into a
system after testing of each unit. Post integration the entire system is tested for any
faults and failures.

5. Deployment of system:
Once the functional and non-functional testing is done; the product is deployed
in the customer environment or released into the market.

6. Maintenance:
There are some issues which come up in the client environment. To fix those
issues, patches are released. Also to enhance the product some better versions are
released. Maintenance is done to deliver these changes in the customer environment.

o Diagram:

Page 14 of 18
o Advantages of Water Fall Model:
Some of the major advantages of the Waterfall Model
are as follows:
1. Simple and easy to understand and use
2. Easy to manage due to the rigidity of the model.
3. Phases are processed and completed one at a time.
4. Well understood milestones.
5. Clearly defined stages.

o Reason to use Water Fall Model:

The Waterfall model is a sequential and linear strategy in which each step must
be completed before proceeding to the next. This paradigm is appropriate for well-
defined projects with consistent criteria. The waterfall approach should be applied to
foundational parts of our online electric system such as database design, system
architecture, and basic functionality. It ensures a smooth transition from one phase to the
next, allowing for a clear grasp of the project's scope and minimizing adjustments once
development begins. The waterfall model, on the other hand, follows a linear sequential
flow with phases like requirements, design, implementation, testing, and maintenance,
progressing one after the other.

 Spiral Model:

The spiral model is a systems development lifecycle (SDLC) method used for
risk management that combines the iterative development process model with elements
of the Waterfall model. As the Spiral Model is a risk-driven model, meaning that the
focus is on managing risk through multiple iterations of the software development
process.

It consists of the following phases:

1. Planning:
The first phase of the Spiral Model is the planning phase, where the scope of the
project is determined and a plan is created for the next iteration of the spiral.

2. Risk Analysis:
In the risk analysis phase, the risks associated with the project are identified
and evaluated.

Page 15 of 18
3. Engineering:
In the engineering phase, the software is developed based on the requirements
gathered in the previous iteration.

4. Evaluation:
In the evaluation phase, the software is evaluated to determine if it meets the
customer’s requirements and if it is of high quality.

5. Planning:
The next iteration of the spiral begins with a new planning phase, based on the
results of the evaluation.

o Diagram:

o Advantages of the Spiral Model:

Below are some advantages of the Spiral Model:

1. Risk Handling:
The projects with many unknown risks that occur as the development proceeds,
in that case, Spiral Model is the best development model to follow due to the risk
analysis and risk handling at every phase.

2. Good for large project:


It is recommended to use the Spiral Model in large and complex projects.

3. Flexibility in Requirements:
Change requests in the Requirements at a later phase can be incorporated
accurately by using this model.

Page 16 of 18
4. Customer Satisfaction:
Customers can see the development of the product at the early phase of the
software development and thus, they habituated with the system by using it before
completion of the total product.

5. Iterative and Incremental Approach:


The Spiral Model provides an iterative and incremental approach to software
development, allowing for flexibility and adaptability in response to changing
requirements or unexpected events.

o Reasons to Use Spiral Model:


In contrast, the Spiral model is an iterative strategy that
allows for adjustments and improvements during the development process. It entails
planning, risk assessment, engineering, and evaluation cycles that enable for flexibility
and adaptation to changing requirements. The spiral model is an iterative process with
phases such as planning, risk analysis, engineering, and evaluation, repeating until the
project is complete which makes it suitable to be used for the development of our Online
Electric Store.

6. Work Plan:

Page 17 of 18
Page 18 of 18

You might also like