0% found this document useful (0 votes)
27 views13 pages

Oose Exp 2

The Software Requirements Specification (SRS) outlines the technical requirements, architecture, and functionality for a Community Skill and Bartering System. It details the system's purpose, key features, user roles, and non-functional requirements, while adhering to IEEE standards. The document is intended for developers, testers, and stakeholders to ensure clarity and effective communication throughout the development process.

Uploaded by

tmadhumitha24
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)
27 views13 pages

Oose Exp 2

The Software Requirements Specification (SRS) outlines the technical requirements, architecture, and functionality for a Community Skill and Bartering System. It details the system's purpose, key features, user roles, and non-functional requirements, while adhering to IEEE standards. The document is intended for developers, testers, and stakeholders to ensure clarity and effective communication throughout the development process.

Uploaded by

tmadhumitha24
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

Software Requirements Specification

Aim:​
To prepare a Software Specification Document to define the technical requirements, architecture,
and functionality of ‘Community Skill and Bartering System’.

Procedure:
1.​ Set up the SRS document in IEEE format, covering sections like introduction,
requirements, system design, and testing. This forms the structure for the specification.​

2.​ Define the purpose of the Barter Exchange System and explain the document’s goals.
Clarify the system's core objectives and scope.​

3.​ Identify the intended audience, such as developers, testers, and stakeholders, and suggest
relevant sections for each. This helps direct readers to the most important content.​

4.​ Describe the system’s key features, including user registration, item listing, and barter
transactions. Highlight the core functionality the system will offer.​

5.​ Specify user types, such as buyers, sellers, and admins, and explain their roles. This
establishes how different users will interact with the system.​

6.​ Outline the system’s hardware, software, and operating environment. Mention any
required platforms or external dependencies.​

7.​ List key non-functional requirements, including performance, security, and safety. Define
system expectations for reliability and user protection.​

8.​ Define communication, software, and hardware interfaces. Describe how the system
integrates with external components or platforms.​

9.​ Include a glossary and analysis models to ensure clarity and illustrate system interactions.
This ensures the document is easy to understand and visualize.​

Software Requirements
Specification
for

Skill Bartering Platform


Version 1.0 approved

Prepared by
Arthi R (715522104006)
Dakshin Priya T S (715522104012)
Harshithaa N (715522104022)

PSG Institute of Technology and Applied Research

March 17, 2025


Software Requirements Specification for Skill Bartering Platform ​ Page 3

Table of Contents
Table of Contents​
Revision History​ 2
1.​ Introduction​ 3
1.1​ Purpose​ 3
1.2​ Document Conventions​ 3
1.3​ Intended Audience and Reading Suggestions​ 3
1.4​ Product Scope​ 3
1.5​ References​ 4
2.​ Overall Description​ 4
2.1​ Product Perspective​ 4
2.2​ Product Functions​ 4
2.3​ User Classes and Characteristics​ 4
2.4​ Operating Environment​ 5
2.5​ Design and Implementation Constraints​ 5
2.6​ User Documentation​ 5
2.7​ Assumptions and Dependencies​ 5
3.​ External Interface Requirements​ 6
3.1​ User Interfaces​ 6
3.2​ Hardware Interfaces​ 6
3.3​ Software Interfaces​ 6
3.4​ Communications Interfaces​ 6
4.​ System Features​ 6
4.1​ Matchmaking Technology​ 6
4.2​ Service Listings and Search​ 7
4.3 Ratings and Feedback System​ 8
5.​ Other Nonfunctional Requirements​ 8
5.1​ Performance Requirements​ 8
5.2​ Safety Requirements​ 8
5.3​ Security Requirements​ 9
5.4​ Software Quality Attributes​ 9
5.5​ Business Rules​ 9
6.​ Other Requirements​ 10
Appendix A: Glossary​ 11
Appendix B: Analysis Models​ 11

Revision History
Name Date Reason For Changes Version
Software Requirements Specification for Skill Bartering Platform ​ Page 4

1. Introduction
1.1​ Purpose

Community skill exchange and bartering platforms help users exchange services without using
money by matching skills and needs. The SRC describes the key functionalities including
registration, skill display, skill matching, and secure communication.

1.2 Document Convention

The SRC obeys the following standard documentation convention:


●​ Bold text is used for headings and subheadings.
●​ Italics are used for emphasis.
●​ Headings are numbers as 1,2,3 etc.
●​ Subheadings are numbered as 1.1,1.2,1.3 etc.
●​ Priorities are given as follows:
○​ Must-Have – Necessary system requirements.
○​ Should Have – Important but not compulsory for initial release.
○​ Could Have – Optional or future enhancements.

1.3 Intended Audience and Reading Suggestions

Intended Audience
The following stakeholders are the target audience for this SRC:

●​ Developers: To comprehend the essential features and advance.


●​ Project managers: To monitor the status of the project.
●​ Testers are responsible for developing test cases and verifying the functionality.
●​ UI/UX designers aim to create an interface that is easy to use.
●​ End users, or beta testers, are responsible for comprehending the functionality and
offering input.
●​ Writers of documentation: To create user manuals.

1.4 Product scope


Community skill exchange and bartering platforms help users exchange services without using
money by matching skills and needs. The SRC describes the key functionalities including
registration, skill display, skill matching, and secure communication.

Objective:
●​ Develop a user-friendly platform for skill exchange.
●​ Encourage economic sustainability by reducing the use of money.
●​ Provide evidence for acceptance, ensuring that the user will have to perform the service
after approval.
Software Requirements Specification for Skill Bartering Platform ​ Page 5

Alignment with business objectives


●​ Encourage a range of skill sets from technical to creativity.
●​ Encourage community development by connecting people through their skills.
●​ Promoting mutual growth for both parties.
●​ Ensuring fair trade between the parties.

1.5 References
1.​ [Link]
2.​ [Link]
3.​ [Link]

2. Overall Description
2.1 Product Perspective

The skill bartering platform is a product designed to exchange skills among individuals without
the use of money. This is a follow-on of the BarterChain platform which provides a similar
service. The improvement we have added is the use of machine learning to better match the
requirements of both the parties, which proves to be more efficient. An overview of this system
is:
●​ User management system
●​ Matchmaking algorithm
●​ Transaction and barter system
●​ Review system
●​ Notification and messaging

2.2 Product Functions

Some of the major functions that the platform consists of is:


●​ User registration and authentication: Users can register and manage their profiles.
●​ Skill and service listing: Registered users are required to add their skills or services that
they can offer.
●​ Matchmaking: The system suggests optimal matches based on the requirements of the
two parties.
●​ Barter exchange system: The users can negotiate and exchange the required services.
●​ Review system: The users will be able to add their ratings and reviews in the platform so
as to build a level of trust among them.

2.3 User Classes and Characteristics

The platform is designed to support various users from different domains. Some of the primary
users may include general users who use the platform occasionally based on their needs. They
exchange services non-commercially and may require an interface with minimum technical
Software Requirements Specification for Skill Bartering Platform ​ Page 6

expertise. Small scale traders or businesses may use this platform more frequently for trading
services. They need high specifications of the services that they require and this calls for a better
filter system.

2.4 Operating Environment

The bartering platform is designed to operate on-premise environments to ensure accessibility.


The key aspects of the operating environment are:
●​ Operating System: Windows 11.
●​ Frontend technology: [Link] for web application.
●​ Backend technology: [Link] with express for server-side and Firebase Firestore for
database management.
●​ Security: HTTPS, Firewall.

2.5 Design and Implementation Constraints

●​ Regulatory constraints: Ensure if the identity of the user aligns with the local policies.
●​ Hardware and software limitations: The platform must run on windows 11 with [Link]
for frontend and [Link] for the backend.
●​ Security considerations: All the user data must be encrypted in rest or in transit.
●​ Scalability: The platform must be able to handle a huge number of users without
compromising the performance at all times.

2.6 User Documentation

●​ Tutorial videos: Step by step videos that explain the navigation and working of the
platform will be hosted.
●​ FAQs: Easily accessible FAQs section will be added to address the frequent queries and
questions of the users.

2.7 Assumptions and Dependencies

●​ Third party components: The platform assumes the availability of third party libraries and
frameworks like [Link], Redux for the frontend; [Link], [Link], Firebase Firestore
SDK, Firebase Admin SDK for the backend.
●​ User: The users are assumed to provide accurate information while registering and will
practise fair bartering services.
●​ External authentication providers: The platform relies on getting authentication from
external authentication providers like Google for login.
●​ Network dependency: The system requires strong internet connection at the time of
communication and service exchange for a seamless experience.
Software Requirements Specification for Skill Bartering Platform ​ Page 7

3. External Interface Requirements


3.1​ User Interfaces

This platform will be a web-based graphical user interface. The key features are:

●​ Dashboard Layout: Shows user profile, available skills, and barter requests.
●​ Skill Listing Page: Users can add, update, or remove skills that they can offer.
●​ Matchmaking Interface: Shows suggested barter matches to their profile.
●​ Negotiation Chat Interface: Allows users to communicate with each other and finalise a
barter agreement.
●​ Review & Ratings: Users can rate and review each other after a barter exchange.
●​ Standard Features: Navigation menu, notifications, suggestions, and real-time updates.

3.2 Hardware Interfaces


BarterChain can be accessed via smartphones (Android & iOS), tablets, laptops, and
desktops. The platform supports both mobile apps and web browsers, ensuring
accessibility across devices. Optional hardware includes a camera for uploading service
images and a microphone for voice-based interactions. Reliable internet access is
required via a Wi-Fi router or mobile data (3G, 4G, or 5G).

3.3 Software Interfaces


The platform's frontend will be built using [Link], while the backend will leverage
[Link] with Express for handling requests. Data will be stored in Firebase Firestore,
ensuring scalability and real-time updates. Authentication will be managed through
Firebase Authentication Service, providing secure user logins.

3.4 Communication Interfaces


For secure data transmission, the platform will use HTTPS. Authentication will follow
the OAuth 2.0 standard, ensuring safe access to user accounts. Firebase Messaging
Services will enable real-time chat, while SMTP and Firebase Notifications will be
used for email alerts and push notifications.

4. System Features
4.1 Matchmaking Technology
4.1.1 Description and Priority
Software Requirements Specification for Skill Bartering Platform ​ Page 8

This module connects users based on the services they offer and seek, ensuring efficient barter
exchanges. Matches are ranked dynamically based on expertise, user reviews, and location. The
system continuously updates as profiles change, providing real-time recommendations.

●​ Priority: High
●​ Penalty: 8 (Without this, users would struggle to find relevant matches)
●​ Cost: 7 (Complex algorithm development required)
●​ Risk: 6 (Accuracy depends on data availability)

4.1.2 Stimulus/Response Sequences

When a user enters their skills and the services they need, the system saves their profile and
makes it searchable. Upon searching for a barter partner, the system displays ranked matches
based on relevance. If a user selects a match and sends a request, the recipient receives a
notification.

4.1.3 Functional Requirements

The system must allow users to list and edit their offered skills and required services. It should
prioritize search results based on expertise, reviews, and location while dynamically updating
matches as profiles change. Additionally, users should receive notifications when a match is
found.

4.2 Service Listings and Search


4.2.1 Description and Priority

Users can create, manage, and modify their profiles, including skill listings, to enable customized
searches. This functionality ensures that seekers can efficiently browse and filter services based
on specific needs.

●​ Priority: High
●​ Penalty: 6 (Without this, users cannot efficiently browse or filter services)
●​ Cost: 5 (Typical database queries)
●​ Risk: 4 (Potential for outdated information)

4.2.2 Stimulus/Response Sequences

When a user creates a profile, the system saves it and makes it searchable. Searching for services
triggers the system to filter and rank results accordingly. Any updates to a profile reflect
immediately in search results to ensure accuracy.
Software Requirements Specification for Skill Bartering Platform ​ Page 9

4.2.3 Functional Requirements

The system must enable users to create and edit their profiles while filtering search results based
on skill type, expertise, and location. It should allow real-time profile updates and dynamically
display relevant service matches.

4.3 Ratings and Feedback System


4.3.1 Description and Priority

Users can provide feedback and ratings after completing a barter exchange, fostering trust and
transparency within the platform. This feature helps future users assess reliability and service
quality.

●​ Priority: Medium
●​ Penalty: 5 (Without it, users may hesitate to engage in exchanges)
●​ Cost: 4 (Low development complexity)
●​ Risk: 3 (Possibility of biased or fake reviews)

4.3.2 Stimulus/Response Sequences

After finalizing a barter exchange, the system prompts users to provide a review. Once
submitted, the rating is recorded and displayed on the user’s profile. When another user checks a
profile, the system retrieves and presents past reviews.

4.3.3 Functional Requirements

The system must enable users to give ratings and feedback while displaying reviews on profiles.
Reviews should only be allowed for completed transactions, and there should be a mechanism to
report inappropriate reviews.

5. Other Nonfunctional Requirements


5.1 Performance Requirements

The platform must ensure optimal performance under varying conditions. Response time should
not exceed two seconds under normal load, while scalability must support up to 10,000
concurrent users without significant degradation. Transactions should be processed and logged
within one second, ensuring a smooth user experience. The system must guarantee high
availability with minimal service interruptions. User authentication should be completed within
two seconds, and real-time updates to service listings and user profiles must be reflected within
five seconds.
Software Requirements Specification for Skill Bartering Platform ​ Page 10

5.2​ Safety Requirements

To protect user data, encryption will be implemented to prevent unauthorized access. Fraud
prevention mechanisms such as OTP verification via email or SMS will be enforced to mitigate
scams. Content moderation will be carried out through manual reviews to prevent misleading or
harmful service listings. Secure transactions will be maintained by enforcing transaction
confirmation, preventing unauthorized modifications to barter agreements. Automated backups
and failure recovery mechanisms will enhance service reliability, ensuring minimal disruptions.
Additionally, physical safety advisories will be displayed to promote secure in-person meetings.

5.3​ Security Requirements

User Authentication:

To ensure secure user access, multi-factor authentication (MFA) will be implemented, requiring
users to verify their identity using multiple authentication methods. Additionally, email and
phone verification will be mandatory to prevent fake accounts and unauthorized access,
strengthening the platform’s security.

Data Encryption:

Sensitive user data will be safeguarded using AES-256 encryption, ensuring that information
remains secure and inaccessible to unauthorized parties. This encryption standard provides a
high level of security for stored data, minimizing the risk of breaches.

Access Control:

Role-based access control (RBAC) will be used to define and enforce user permissions,
restricting unauthorized actions based on user roles. To further enhance security, session timeouts
will be implemented to automatically log out inactive users, preventing unauthorized access due
to prolonged inactivity.

Secure Transactions:

To maintain transaction integrity, anti-fraud mechanisms will be employed to detect and prevent
suspicious activities. Barter agreements will be enforced using digital signatures, ensuring that
transactions remain secure and tamper-proof.

Regular Security Audits:

Periodic security assessments, including penetration testing and vulnerability scans, will be
conducted to identify and mitigate potential risks. Real-time monitoring will be implemented to
detect security threats proactively, ensuring continuous system protection.
Software Requirements Specification for Skill Bartering Platform ​ Page 11

Privacy Protections:

Users will have full control over the visibility of their personal information, allowing them to
manage who can access their data. Additionally, the platform will prohibit data sharing with third
parties without explicit user consent, ensuring compliance with privacy regulations and user
trust.

5.4​ Software Quality Attributes

●​ Availability: Ensure 99.5% uptime with minimal service troubles.


●​ Reliability: The platform should be capable of handling 10,000+ simultaneous users
without system failures.
●​ Scalability: Support 5x traffic surges during prime hours without performance
degradation.
●​ Usability: The platform should have an instinctive UI, ensuring users can complete key
actions with minimum number of clicks.
●​ Maintainability: Code should follow modular design principles, enabling feature
updates without major rewrites.
●​ Portability: The platform should be accessible on the web and mobile with a responsive
design.
●​ Robustness: The system should handle unexpected failures and recover within 5 seconds
of a crash.

5.5​ Business Rules

●​ User Registration & Verification: Only verified users can list services and take part in
bartering.
●​ Service Listings: Users can post up to 10 functional service listings at a time, with
regular content moderation.
●​ Matchmaking: Matches are suggested based on skills, ratings, and location preferences,
ensuring fair deals.
●​ Transaction Approval: Both parties must guarantee barter transactions before they are
logged in the system.
●​ Ratings & Reviews: Users can rate transactions only after completion, with no option to
edit reviews after 24 hours.
●​ Privacy & Data Control: Users can change visibility settings and delete their data at any
time per privacy regulations.
●​ Dispute Resolution: If disputes arise, users can report issues, and admins will intercede
within 48 hours.
●​ Fraud Prevention: Suspicious activities result in temporary or permanent bans.
Software Requirements Specification for Skill Bartering Platform ​ Page 12

6.​ Other Requirements


Database Requirements:

Firestore will be used to store user profiles, service listings, and transaction logs, while reviews
and feedback will be managed through Firestore or the Realtime Database. Firebase
Authentication will ensure secure user management, and Cloud Functions will be leveraged for
server-side logic.

Reuse Objectives:

The system will be designed with modular, reusable components for authentication,
matchmaking, and transaction management. Additionally, API compatibility will be maintained
to facilitate future integrations with external platforms.

Appendix A: Glossary
●​ Bartering – The exchange of goods or services without using money.
●​ Matchmaking Algorithm – A system that connects users based on their skills and needs.
●​ Scalability – The ability of the platform to handle increasing numbers of users
efficiently.
●​ Fraud Prevention – Measures taken to detect and prevent scams or malicious activities.
●​ Content Moderation – The process of reviewing and filtering user-generated content for
compliance.
●​ Transaction Confirmation – A digital process ensuring both parties agree to an
exchange.
●​ OAuth 2.0 – A secure authorization protocol used for authentication.
●​ RBAC (Role-Based Access Control) – A security model restricting access based on user
roles.
●​ Digital Signatures – Cryptographic signatures ensuring the authenticity of barter
agreements.
●​ Service Reliability – The ability of a system to function without major failures or
downtime.
Software Requirements Specification for Skill Bartering Platform ​ Page 13

Appendix B: Analysis Models

Result:​

Thus, the technical requirements, architecture, and functionality of ‘Community Skill and
Bartering System’ has been documented successfully.

You might also like