You are on page 1of 4

Software Requirement Engineering (SE-208)

Ebad Tahir Khan (SE-22088)


Ali Ahmed Shaikh (SE-22089)
Muhammad Hamza (SE-22092)
Syed Muhammad Zaid Ali (SE-22097)

Terminologies:

CDNs: Content Delivery Networks,


API: Application Programming Interface
GDPR: General Data Protection Regulation
CCPA: Central Consumer Protection Authority
2FA: 2 Factor Authentication
Uptime: The time during which a system is available and operational.
Failover: The automatic switching to a backup system to maintain continuous service.

Cash-2-Crop

Non-Functional Requirements

1. Performance:

- Search results and pages should load within 5 seconds or less on average. This can be achieved
through proper caching mechanisms, content delivery networks and indexing data efficiently for fast
retrieval.
- Load balancing for optimal performance.
- Leverage Content Delivery Networks (CDNs) to enhance the performance of media content
delivery.

2. Scalability:

- The system should be able to efficiently store and manage a large volume of inventory data and
transaction history. This requires a scalable and flexible data storage solution, such as a cloud-based
database with automatic scaling capabilities.
- The platform should be designed to seamlessly scale across multiple cloud providers (e.g., AWS,
Azure, GCP services) to accommodate varying hardware and software configurations.

3. Interoperability/Compatibility:

- Seamless integration with existing systems.


- The platform must support industry-standard APIs (RESTful, GraphQL) to ensure seamless
Software Requirement Engineering (SE-208)

integration with various agricultural and industrial systems, irrespective of their network configurations.
- The system should be accessible and usable on a variety of devices, including smartphones,
tablets, laptops, and desktops etc.

4. Auditability:

- System should have comprehensive logging and auditing mechanisms to trace and investigate any
suspicious or unauthorized activities on the platform.
- Logging and collecting analysis diagnostics data used for testing and debugging.

5. Accessibility (Training and Tutorials):

- The system should offer a user-guide tutorial at the application's first startup to help farmers and
companies learn how to use the platform effectively. These resources should be available in multiple
languages and accessible to users with disabilities like impaired vision (audible instructions and queues
for functions).

6. Security:

- All sensitive data, including personal information, financial transactions, and inventory details,
should be encrypted at rest and in transit.
- Two-factor authentication option for account security.
- Adhere to industry-specific security standards (e.g., ISO/IEC 27001) to ensure regulatory
compliance and user data protection.

7. Availability:

- High availability with a 99.9% uptime standard.


- Redundancy and implement failover mechanisms.
- Utilize load balancing algorithms compatible with various hardware platforms to ensure optimal
availability across different server configurations.

8. Time:

- Adherence to predefined development timeline.


- Timely delivery of features and updates.

9. Cost:

- Ensure transparency in pricing models, providing detailed breakdowns to meet regulatory


standards for financial transparency.

- Implement cost-tracking features that are easy to interpret, even for users with limited financial
expertise.
- Efficient maintenance and update practices.

10. Space:
Software Requirement Engineering (SE-208)

- Optimize server infrastructure for energy efficiency, complying with environmental sustainability
standards..
- Adhere to e-waste disposal regulations, ensuring responsible disposal of hardware components at
the end of their lifecycle.

11. Localization:

- Cash2Crop supports localization to cater to diverse agricultural communities. The platform


provides a multilingual interface, ensuring that farmers and industries can interact with the system in
languages relevant to their specific regions. This localization feature enhances user engagement and
accessibility.

12. Reliability/Recoverability:

- Minimal downtime with automated backup.


- These measures contribute to the platform's ability to recover quickly from unexpected events,
minimizing data loss and ensuring continuous service availability.
- Conduct daily automated backups of the database with a retention period of at least 30 days.

13. Inventory Post Inspection:

- The system should be designed to facilitate post-inspection audits by regulatory bodies. -


Algorithms made for automated checking of posts at the time of uploading in case of code of conduct
violation or for verifying reported posts.
Legal Compliance:

- The system should comply with all applicable data privacy regulations, such as GDPR and CCPA,
as well as other relevant laws and regulations in the target markets. This involves implementing
appropriate data governance policies and procedures.
- Adheres to government regulations and standards.

14. Safety:

- The system should be designed to prevent any misuse or manipulation that could harm users or
their data. This involves implementing security measures to protect against unauthorized access, fraud,
and cyberattacks.
- Prioritizes transaction security with the help of 2FA.

15. Integrity:

- Ensures integrity through security protocols of data transmission over the network.
- Regularly audit data storage practices to comply with data integrity regulations.

16. Interface/Usability:
Software Requirement Engineering (SE-208)

- Ensure that the user interface is intuitive and user-friendly, prioritizing users with basic computer
literacy.

17. Installation:

- Provide step-by-step installation guides suitable for administrators with basic technical skills.
- .Ensure that the installation process is compatible with commonly used operating systems
(Windows, Linux) to accommodate different platforms.

18. Distribution:

- Geographical load balancing for consistent access.


- The system distribution method should be considered, whether through web delivery, mobile app
stores, or other channels. The chosen method should ensure efficient delivery and updates for users.

19. Development Constraint:

- Acknowledges development constraints.


- Emphasis on maintainability with modular code.
- Adopt pair programming practices.

You might also like