SRS ‐ Software Requirements Specifications - shanjida-alam/Smart-Living-Community GitHub Wiki
Smart Living Community: Connecting Communities, Simplifying Management
Created by SH
SA
IH
HT
TS
JK
September 2024
Table of Contents
Purpose
1.Intended Audience
2.Intended Use
3.Product Scope
4.Risk Definition
5.User Classes and Characteristics
6.User Needs
7.Operating Environment
8.Constraints
9.Assumptions
10.Functional Requirements
11.Non-Functional Requirements
12.Chapter 1: Introduction
1.1 Purpose
This document outlines the software requirements for LivSmart – A Smart Living Community, version 1.0. The system is designed to streamline operations within res- idential communities by providing a unified platform for essential tasks. It focuses on improving internal management and communication, allowing residents to handle service requests, make payments for services or management bills, and access commu- nity amenities. The scope does not include external vendor management or large-scale building maintenance. This Software Requirements Specification (SRS) provides a comprehensive guide to the system’s features, performance criteria, and responsibilities for development, implementation, and ongoing maintenance. The goal is to foster a more connected and organized community environment. The system will emphasize user-friendliness and accessibility, ensuring that residents and committee members can efficiently navigate its features, regardless of technical expertise. By simplifying day-to-day tasks and enhancing communication, SmartLiv will contribute to a secure, organized, and connected community. This document offers a complete overview of what is needed to successfully implement the system, covering all functional, performance, and maintenance requirements to ensure user adoption and satisfaction.
1.2 Intended Audience
The Software Requirements Specification is intended to address a diverse group of stakeholders involved in the development and implementation of the SmartLiv Com- munity Management System. The key stakeholders include:
- Community Secretary(Administrators): Maintain smart living infrastructure.
- Business Analysts (BAs): Analyze needs and market potential.
- Project Manager (PMs): Oversee project life-cycle to ensure development.
- Developers: Develop and integrate smart living technologies.
- QA/QC Engineers : Ensure smart systems’ quality.
- Users (Residents, Managers, Security Guard, Secretary): Utilize smart systems for convenience.
- Stakeholders (Leadership, Sales, Marketing): Promote the Smart Living Community product.
- Testers: Validate functionalities of smart systems.
- Investors: Gain potential for the Smart Living Community.
By tailoring information to each group’s specific needs, the SRS aims to ensure a unified approach among the various stakeholders involved in the development and management of SmartLiv - A Smart Living Community.
1.3 Intended Use
Now that we know who our audience is, let's discuss how they can use the SRS for Smart Living Community System to better understand.
1.3.1 Community Secretary (Administrators)
- The SRS will give them a clear understanding of what's required, how to set it up, and what tasks they'll need to perform to ensure smooth operations. This includes things like managing resident services, monitoring security, tracking payments, organizing events, and handling maintenance requests. Basically, they’ll make sure the whole system works well for the community.
1.3.2 Business Analysts(BAs)
- BAs play a crucial role between community needs and system requirements. They can understand the community needs and wants from the system and translate them into functional requirements.
- The SRS provides detailed information about community operations, user interactions (like residents, managers, and service providers), and functional specifications, helping BAs analyze and document how the system should work to meet the community’s needs effectively.
1.3.3 Project Managers(PMs)
- Project managers use the SRS to get a crystal-clear understanding of what the project is all about, what the users need, and what limitations they need to work within.
- They make sure the project stays on track with what users expect from the system.
- They oversee the development process to ensure that everything meets the specified requirements.
1.3.4 Developers
- Developers refer to the Smart Living Community system to understand the required features, how users will interact with it, and any limitations they need to work with.
- They use the provided functional requirements to build the system features, ensuring compliance with the specified constraints.
1.3.5 QA/QC Engineers
- QA and QC engineers use the SRS to validate that the implemented system meets the specified quality standards, ensuring that it is reliable, efficient, and meets the needs of the community.
- They use the system’s requirements to check that its performance meets the standards, like response times, data accuracy, and system availability.
1.3.6 Users (Residents, Secretary, Managers, Security Manager)
- For users of the system, including Residents,Secretary, Managers, and Security Managers, their interaction with the system primarily occurs through the functional requirements that they need to achieve their goals and objectives
1.3.7 Stakeholders (Leadership, Sales, Marketing)
- Stakeholders, including marketers, sales teams, and customer support, refer to the SRS to get a deep understanding of the system. This helps them to understand the product scope, identify the target user classes, and understand the system characteristics.
- By referencing the SRS, they can develop targeted marketing strategies and communicate the product effectively.
1.3.8 Testers
- Testers use SRS to set test scenarios that really put the system to the test. They want to make sure the system works like it should and meets all the functional and non-functional requirements.
- They validate system behavior and provide feedback to developers to improve the system quality.
1.3.9 Investors
- Investors want to see if the system is a good investment, and they are interested in getting a clear idea of the project’s scope, potential returns, and any risks involved to make smart decisions.
- By providing a detailed and comprehensive overview of the system, the SRS helps investors make smart investment decisions and supports the project's success.
1.4 Product Scope
The SmartLiv system acts as an integrated platform where residents can manage their day-to-day community interactions. It allows them to submit service requests, make payments for services or management bills, and access community amenities.
1.4.1 Purpose
The system is designed to digitalize and simplify management and communication within residential communities. It introduces the residents and the apartment authority members to an integrated platform, where the residents can share their concerns and service requirements in an easy and simple way to the apartment managerial bodies, and by receiving proper solution and priority, every resident can live in the apartment ensuring a secured environment.
1.4.2 Benefits and Objectives
- Easy service request: It allows easy submission, tracking, and management of service and maintenance requests. And ensures efficient routing of requests to service providers.
- An all-in-one platform: It has a centralized platform for residents to receive emergency alerts, announcements, updates, to perform monetary transactions online, and to submit complaints and feedback to the management team.
- Easy request for amenities and event organizing: It provides a simplified and user-friendly process for residents to request and get approved for amenities and to register for community events.
- Efficient committee management: It ensures a properly functional committee management system that handles requests communicates with service providers, posts necessary announcements, and organizes a community meeting.
- Centralized security alerts and monitoring: It has an integrated system for responding to security alerts, trespassing notifications and monitoring guest logs and surveillance footage.
- Safe and easy access to necessary document storage: It introduces to a centralized and secured storage for personnel records and important documents which is accessible to residents and management team members as needed.
1.4.3 Alignment with Corporate Goals
The system helps with the goals of enhancing customer satisfaction through increased convenience and faster service delivery. It also helps in cutting costs of property management by reducing manual workload. And securing online rent payment and easy service requests and proper management lead to timely payments and a better experience for the residents. This ultimately helps to keep the residents happy and also reduces vacancies in the apartment.
1.4.4 Relating to Business Strategy
Creating this system leads us to enhance how we manage apartment services. We are making it simpler for the residents to handle requests, payments and emergencies, which is very important. This helps us stand out by offering a modern and efficient way to manage the apartment digitally and improve the resident experience.
1.5 Risk Definition
The Need for Risk definitions in perspective that users (residents and service providers alike) can disregard platform rules, neighborhood norms, or privacy restrictions, according to the Software Requirement Specification. Because of this violation, incidents may be reported to managers, which would interfere with everyone’s desired user experience and possibly compromise the Smart Living Community platform’s overall efficacy.
1.5.1 Data Breach Risk
The risk is that potential security vulnerabilities in the platform may expose sensitive user data, including personal information and financial transactions, posing risks to privacy and system integrity. Mitigation: Implement comprehensive security measures, including encryption, regular security audits, and real-time monitoring, to safeguard against data breaches and unauthorized access.
1.5.2 Evolving Requirements/Stakeholder
The risk is that the evolving needs and priorities of stakeholders may not be adequately captured in the project, leading to a system that does not fully meet current requirements. This could impact the effectiveness and satisfaction with the platform. Mitigation: Maintain ongoing communication with stakeholders to regularly review and update requirements, ensuring the system evolves to meet their changing needs.
1.5.3 Failed Payments
The risk is that external payment services could fail, leading to incomplete or delayed payments for utilities or services, potentially causing financial discrepancies. Mitigation: Integrating reliable payment gateways and offering alternative payment methods.
1.5.4 Management Overload
The risk is that the secretary and manager could become exhausted by the volume of tasks. it includes managing service requests and addressing resident complaints. The high number of requests, manual oversight, and slow resolution of issues may lead to delays, errors, and dissatisfaction among residents. Mitigation: Automation of routine tasks, prioritization of requests, and task delegation.
1.5.5 Misclassified Marketplace Listings
The risk is that users may post misclassified listings in the community marketplace. This includes intentionally misleading information about the condition, price, or availability of items, as well as placing items in incorrect categories or listing prohibited goods. Such issues can result in disputes, financial losses for buyers, and a decrease in overall trust and satisfaction with the marketplace. Mitigation: Implement a verification process for all listings, use a reporting system for suspicious posts, and provide clear guidelines for accurate item descriptions and categorization.
1.5.6 Missed Maintenance Updates
The risk is that residents may miss important maintenance updates or community announcements due to not checking notifications or ignoring reminders, leading to confusion or dissatisfaction. Mitigation: Use multiple communication channels (email, SMS, app notifications) to ensure residents receive updates promptly.
1.5.7 Poor Participation in Community Events
There is the risk that Residents may not engage in community events due to insufficient interest, lack of awareness, or poorly timed notifications, leading to decreased community involvement and lower overall satisfaction. Mitigation: Implementation of targeted promotional strategies and ensuring timely and effective reminders.
1.5.8 UncontrolledScope Change
The risk is that unforeseen changes in project scope and requirements may not be promptly reflected in the system, leading to potential misalignment between the developed features and the users’ needs. This can cause delays, additional costs, and discrepancies in functionality. Mitigation: Establish a robust change management process to track and integrate scope changes efficiently, with clear documentation and communication to all stakeholders.
1.5.9 Unresolved Complaints
The risk is that resident complaints may not be addressed promptly, leading to dissatisfaction, loss of trust in the platform, and potential escalation of issues. Mitigation: Implementation of automatic tracking and set priorities.
1.5.10 User Activity Gap
The risk is that if users do not actively engage with the platform, it could result in unaddressed service requests, missed payments, and low participation in community events. This disengagement may undermine the collaborative nature of the community. Mitigation: Implementation of automated reminders, offering incentives for active participation and weekly collect user feedback.
1.5.11 User Misalignment Risk
The risk is that Users may not refer to the provided system requirements or guidelines, leading to a mismatch between their expectations and the actual platform features or performance. This could result in confusion, dissatisfaction, and inefficient use of the system. Mitigation: Ensure that system requirements are easily accessible and provide regular reminders and updates to users about key functionalities and guidelines.
Chapter 2: Overall Description
In this Smart Living Community System, user class can be distinguished to meet the specific roles and needs of residents, secretary, manager, security manager.
2.1 User Classes and Characteristics
2.1.1 User Class: Residents
Characteristics
- Residents actively use this system to interact with the community services.
- They are requesting the service when they need it.
- They can pay the service fee using the online payment system that includes our platform.
- They have access to view and update their profile information.
- They can view the emergency alerts and community announcements.
- They should be notified of upcoming events and also be able to view the past and upcoming event details, including the attendee list.
- They can submit the complaint and feedback about the community services.
- They have access to view the dashboard for seeing their service status and monthly update.
- They have viewed the directory to connect with their neighbors.
2.1.2 User Class: Secretary
Characteristics
- The secretary actively monitors the whole system.
- They have access to view the resident information, create and manage events, and post and update notices.
- They can send notifications and reminders to residents about events and community news.
- They have access to the security management system to monitor the security of the system.
- They have viewed the dashboard to analyze the situation of the entire system and track the status of the community services.
- They have viewed the directory to connect with their residents and security manager.
2.1.3 User Class: Manager
Characteristics
- Manager overseeing the entire community's operations, focusing on both financial and operational management.
- They have access to manage the security manager and other staff.
- They can engage with the residents and respond to their needs.
- They have viewed the feedback of the residents and replied to them for improving future community services.
- They have monitored the reservation and booking system, event management system, parking system, and so on, which are including that system.
- They have viewed the directory to connect with the residents and security manager.
- They have viewed and edited the notice board to inform the community.
- They ensure a secure community market place for buying and selling.
2.1.4 User Class: Security Manager
Characteristics
- A security manager can monitor the entire security system.
- They have access to control the CCTV cameras and visitor logs.
- They have coordinated with the manager to control and monitor the event management and parking registration.
- They use the directory to communicate with the residents, secretary, and managers of the community.
- They have viewed the notice board to be aware of the entire notice and news of the community.
- They are notified by the secretary of upcoming events to ensure the security of those events.
2.2 User Needs
This section of the Software Requirements Specification (SRS) outlines the requirements and expectations of the end-users in the Smart Living Community system, covering residents, managers, secretaries, and security personnel. Additionally, it notes that service providers, payment, surveillance, and emergency sensors are external systems.
2.2.1 Residents
- Registration and Profile Management: Residents need a simple way to sign up and manage their personal details, such as contact information, property details, and service preferences.
- Service Requests and Tracking: Residents should be able to easily request maintenance services (like plumbing or electrical work) and check the status until completion.
- Payments: The system should help residents pay for rent, utilities, or services by linking them to secure external payment systems. Real-time updates on payment statuses should also be available.
- Booking Amenities: Residents need an easy way to book community facilities (like the gym, pool, or guest parking) and receive quick approvals.
- Complaints and Feedback: Residents should be able to report issues or provide feedback, with the ability to track progress until resolved.
- Emergency Alerts: Residents need real-time, multi-channel notifications (SMS, email, in-app) for emergencies, ensuring they can take immediate action to stay safe.
- Security and Visitor Management: Residents should be able to pre-register visitors and track their arrival in the community.
- Community Events and Polls: Residents should have a simple way to participate in community events and vote in polls, fostering involvement.
- Notification Preferences: Residents need the ability to customize notification settings to receive updates via SMS, email, or in-app notifications according to their preference.
2.2.2 Managers
- Resident and Profile Management: Managers need to view and manage resident profiles and service provider details to keep all information accurate.
- Service Requests Management: Managers need to view, approve, and help resolve service requests, ensuring timely completion.
- Payment Tracking and Dashboard: Managers should be able to track payment statuses (like rent or service fees) using an external system, set reminders, and generate reports, without handling payments directly.
- Event and Amenity Management: Managers need tools to organize events, manage bookings for community facilities, and track resident participation.
- Complaint Handling: Managers should be able to quickly resolve resident complaints and provide updates until issues are resolved.
- Emergency Coordination: Managers should receive emergency alerts and be able to inform residents and coordinate with service providers during emergencies, using external emergency sensors and surveillance systems.
- Directory Management: Managers should have access to an updated directory of resident and service provider contact details.
2.2.3 Secretaries
- Registration and Profile Approval: Secretaries need the ability to approve new resident registrations and manage profile updates to ensure records remain accurate.
- NID Verification: Secretaries need tools to verify residents’ National ID details, with alerts for any discrepancies.
- Event and Announcement Management: Secretaries should be able to create, edit, and share announcements, events, and updates with the entire community.
- Directory Management: Secretaries need a way to maintain an up-to-date directory of resident and service provider contact information.
2.2.4 Security Officers
- Visitor and Security Monitoring: Security officers need a system to track visitors in real-time, monitor external surveillance systems, and handle any security alerts.
- Emergency Response: Security officers should receive immediate notifications of emergencies and be able to coordinate with managers and service providers for effective response, integrating with external emergency sensor systems.
- Community Board Access: Security officers should have access to the community board to stay updated on announcements, particularly those related to security.
2.3 Operating Environment
The Smart Living Community system will primarily operate as an Android mobile application. The application will be developed using Android Studio, with Java as the primary programming language. The following are the details of the operating environment:
- Platform: Android Phone, Android Tablet
- Minimum SDK: API 24 (Android 7.0 Nougat)
- Target SDK: As per Android development standards, keeping compatibility with future Android versions.
- Development Environment: Android Studio (IDE) with the Java programming language for backend logic and XML for UI design.
- External Services: Integration with external payment gateways (e.g., bKash, Nagad, bank transfers) for rent and utility payments.
- Device Requirements:
- Android device running at least Android 7.0 (API 24)
- Minimum 200 MB of free storage space
- GPS enabled for location-based services (e.g., resident tracking, emergency alerts)
- Mobile data or Wi-Fi connection for real-time interactions
- Minimum of 4 GB RAM to ensure smooth operation of background tasks, notifications, and user interactions
- Network Requirements: The system will operate over the internet, requiring a stable internet connection for real-time interactions, payment processing, and community notifications.
2.4 Constraints
The development and operation of the Smart Living Community system are subject to the following constraints:
- Platform Limitation: The application is developed specifically for the Android platform, with no current support for iOS or web-based platforms.
- Payment Processing: Payment processing will rely on external services, and the application itself will not handle sensitive financial transactions internally. The system must ensure secure hand-offs to external payment gateways.
- Device Compatibility: The system requires a device with at least Android 7.0 (API 24), a minimum of 4 GB RAM, and 200 MB of free storage space. Users with lower-end devices or insufficient storage/RAM may experience performance issues or be unable to install the application.
- GPS Dependency: Certain features, such as location tracking and emergency alerts, require that GPS be enabled on the user's device. If GPS is disabled, some functionalities may not work correctly.
- Network Requirements: A stable mobile data or Wi-Fi connection is required for real-time operations like emergency alerts, service requests, and payments. The application will not function offline for these features.
- Security Constraints: User authentication and data privacy are critical. The system must comply with best practices in data security and user privacy, including encryption for sensitive information and secure login mechanisms.
- Real-time Operations: Emergency alerts, service requests, and maintenance notifications will require real-time data synchronization. A stable and efficient server infrastructure will be required to handle these real-time operations.
- Hardware Limitations: The application must consider the limited processing power, battery life, and storage of mobile devices while maintaining efficient performance.
2.5 Assumptions
The Smart Living Community project assumes that residents and administrators will actively engage with the platform for daily activities, including monitoring living conditions, requesting maintenance, and managing security features. This assumption serves as the foundation for the seamless integration of smart systems and services envisioned for the Smart Living Community.
2.5.1 User Participation
It is assumed that residents will actively engage with the platform to submit service requests, make payments, access community amenities, and stay informed about important community updates.
2.5.2 User Proficiency
Assumes that residents and administrators possess basic digital literacy, enabling them to effectively navigate and use the platform on devices like smartphones, tablets, or computers.
2.5.3 Administrator Authority
Assumes that community administrators are properly trained, have the necessary skills, and are granted the authority to manage the system, monitor activities, and coordinate with residents.
2.5.4 Document Accessibility
Assumes that all relevant Intended Audiences, have access to this SRS and are capable of understanding its content to ensure a unified approach to the system’s implementation.
2.5.5 Document Relevance
It is assumed that the information within the SRS is tailored to the needs of each stakeholder group, ensuring that it accurately addresses the specific concerns and requirements of users, developers, administrators, and project managers.
2.5.6 Aligned Objectives
Assumes that the objectives outlined in this document align with the expectations of all involved stakeholders, including developers, testers, project managers, administrators, and residents, fostering a shared understanding of the system’s purpose.
2.5.7 Stakeholder Collaboration
It is assumed that effective collaboration and communication will take place among all stakeholders, including developers, residents and administrators ensuring that everyone involved is working toward the same goals.
2.5.8 Consistent Connectivity
Assumes that users, including residents and administrators, have reliable and consistent internet access, allowing them to interact with the system’s real-time features, such as service requests, announcements, and online payments.
2.5.9 System Integration
Assumes that the smart living system will seamlessly integrate with existing devices and infrastructure, such as security cameras and smart appliances, to provide uninterrupted service.
2.5.10 Security Compliance
It is assumed that the system will meet all relevant security and privacy regulations, ensuring that residents’ personal data and financial transactions are handled securely.
2.5.11 Third-party Service Availability
Assumes that external services, such as payment gateways and service providers, will remain operational and reliable throughout the system’s lifecycle.
2.5.12 Regular Maintenance and Updates
It is assumed that the system will receive regular updates and maintenance to address bugs, improve performance, and introduce new features without significantly disrupting service.
Chapter 3: Requirements
3.1 Functional Requirements
3.1.1 Register
As a resident, I want to register to the system by providing my personal information, such as name, e-mail, contact number, an emergency contact number, NID/birth certificate number, profession and monthly income, along with the name and NID/birth certificate numbers of my family members/ roommates, who will be staying with me, So that, I can log into the system and have proper access to it.
Confirmation:
- Success: – Upon selecting the Resident Type: Resident and clicking on the ‘Submit’ button, the NID / Birth certificate number is verified. – Display message: “Your registration is successful”. – An e-mail containing the unit code is sent to the e-mail address. – An e-mail containing the summary of the profile is sent to the e-mail address.
- Failure: – Display message: “No such e-mail address is found”. – Display message: “Not a registered contact number”. – Display message: “No such NID is found”. – Display message: “No such Birth certificate number is found”. – Display message: “Please provide all correct and valid information”. – Upon finding the NID/ Birth certificate registered to a convicted person, the registration process is paused until a proper police verification is conducted.
As a Secretary, I want to register to the system by going through a separate registration process where I must provide my unit code as a resident along with my e-mail and NID / Birth certificate number, So that, I can log into the system and have administrative access to it.
Confirmation:
- Success: – Upon selecting the Resident Type: Secretary(Admin) and clicking on the ‘Submit’ button, the unit code is verified as an admin. – Display message: “Your registration as an admin is successful”. – An e-mail is sent to the email address containing the identifier code for the admin.
- Failure: – Display message: “Your unit code is not valid”. – Display message: “Your unit code is not applicable for Admin registration”. – Display message: “Please provide all correct and valid information”
As a Manager, I want to register to the system by going through a separate registration process where I must provide my unit code as a resident along with my e-mail and NID / Birth certificate number, So that, I can log into the system and have managerial access to it.
Confirmation:
- Success: – Upon selecting the Resident Type: Manager and clicking on the ‘Submit’ button, the unit code is verified as a manager. – Display message: “Your registration as a manager is successful”. – An e-mail is sent to the email address containing the identifier code for the manager.
- Failure: – Display message: “Your unit code is not valid”. – Display message: “Your unit code is not applicable for Manager registration”. – Display message: “Please provide all correct and valid information”.
As a Security Guard, I want to register to the system by going through a separate registration process where I must provide my unit code as a resident along with my e-mail and NID / Birth certificate number, So that, I can log into the system and have security-related access to it.
Confirmation:
- Success: – Upon selecting the Resident Type: Security Guard and clicking on the ‘Submit’ button, the unit code is verified as a Security Guard. – Display message: “Your registration as a Security Guard is successful”. – An e-mail is sent to the email address containing the identifier code for the security officer.
- Failure: – Display message: “Your unit code is not valid”. – Display message: “Your unit code is not applicable for Security Guard registration”. – Display message: “Please provide all correct and valid information”.
3.1.2. Login and User Authentication
As a resident or a security guard, I want to log into the system by providing my unit code, name and password, So that, I can finally get directed to the main page/homepage of the system.
Confirmation
- Success Criteria: – Upon clicking on the ‘Login’ button, the user interface is directed to the main page/homepage of the system. – Display message: “Login successful”.
- Failure Criteria: – Display message: “Your unit code is invalid”. – Display message: “Your Password is incorrect”. – Display message: “Login failed! Please try again”. – Display message: “Please provide correct and valid unit code and password.
As a secretary or manager, I want to log into the system by providing my unit code, name and password, so that, I can finally get directed to the main page homepage of the system that is required for the secretary(admin) or manager.
Confirmation:
- Success Critera: – Upon clicking on the ‘Login’ button, the user interface is directed to the main page/homepage for the secretary(admin) or manager. – Display message: “Login successful”.
- Failure Criteria – Display message: “Your administrative code is invalid”. – Display message: “Your Password is incorrect”. – Display message: “Login failed! Please try again”. – Display message: “Please provide correct and valid unit code and password.”
3.1.3. Profile Management
As a resident,
I want to create and manage my personal profile through my contact information, property
details, and preferences.
So that I can easily access community services, receive important updates, and categorize
my living experience.
Confirmation:
- Success Criteria: – Residents can easily view and update their personal profile, including their contact information and property details. – Any changes to the profile (e.g., contact info or property details) should show immediately in the system and be accessible by community managers or service providers who need it. – The resident’s profile should integrate with other system features (e.g., booking amenities, service requests, payments) so that their preferences and details are shown in their profile. – The system provides residents to add optional information, such as emergency contacts.
- Failure Criteria: –If residents are unable to create and update their profiles due to system or technical errors. – If profile details are not properly connected to other system features, like service requests or booking amenities, residents may face issues when trying to use those services. – Resident changes the profile information, but it doesn't immediately update their profile due to technical or network errors or it takes a long time to update. – If residents log in to the system after a few months and try to manage their profile in a different time zone, then the system will notify them with the proper reason.
As a manager or secretary,
I need the ability to manage my personal profile and oversee resident profiles, including
contact information and property details.
So that I can ensure all resident data is up-to-date, facilitate smooth communication, track the service progress and help with the efficient management of community services.
Confirmation:
- Success Criteria: – The secretary/manager can easily view and update their personal profile, including their contact information and property details. – The secretary/manager can easily oversee the updating of the resident profiles. – The secretary/manager can track the progress of the service and all other related activities. – The secretary/manager can communicate with the resident through their profiles using the message or notification features of the system.
- Failure Criteria: – If the secretary/manager cannot properly log in to the system. – If residents do not properly update their profile information or incomplete their profile, then the system notifies both residents and secretary/managers with clear reasons. – When residents change their profile information, it doesn't update in real-time; systems must notify them.
As a security manager, I want to manage my profile, including my contact information and security services offered. So that I can provide timely security services to residents, ensuring their safety.
Confirmation:
- Success Criteria: – The security manager can easily update and manage his profile, including his contact information and security services offered. – The profile of the security manager integrates with the security system features, and then he can easily monitor and track the visitors of the system.
- Failure Criteria: – If security manager trying to log in to the system after a few months and trying to manage their profile in a different time zone, then the system will notify them with the proper reason. – If security manager does not properly update their profile information or incomplete their profile, then the system notifies both security manager and secretary/managers with clear reasons.
3.1.4. Dashboard
As a Resident,
I want
to see the status of my service requests, payments, community events, the community board, amenity requests, complaints, product sale requests, sold statuses, and parking requests,
so that
I can easily track the services I’ve requested, my payment history, event details, important community announcements, the status of amenities, list of complaints, products (including products I’ve listed for sale or have sold), and parking requests.
Success Criteria:
- The dashboard should display service request statuses like waste collection, plumbing, and electrical repairs, as well as statuses for amenity requests, complaints, product listings for sale, and sold products.
- It should provide a clear overview of all pending and completed payments.
- Residents should be able to view the status of upcoming community events they are involved in or interested in.
- The community board should display important updates and community notices.
- The dashboard should display parking request statuses.
Failure Criteria:
- If residents cannot see real-time updates for service requests, payments, amenity requests, complaints, product requests, or parking statuses.
- If event details are not updated in time, leading residents to miss important community activities.
- If the dashboard fails to display important community announcements from the board.
- If notifications for service requests, payments, events, amenity requests, or product sales are delayed or not received.
As a Manager,
I want
to have an overview of service requests, security updates, parking requests by residents, upcoming events, and requests for complaints (about services or amenities), request forms for product sales, and amenity requests,
so that
I can manage community operations efficiently and ensure residents’ needs are being met.
Success Criteria:
- The dashboard provides a real-time overview of all active and completed service requests, complaints, and amenity requests.
- Security updates for the day are clearly displayed on the dashboard.
- Parking availability, resident parking requests, and usage information are visible for better management.
- The dashboard provides a real-time overview of upcoming events and request forms for product sales.
Failure Criteria:
- If service requests, complaints, or amenity requests are not shown in real-time, delaying responses to residents’ needs.
- If security updates or parking statuses are missing, leading to potential risks or parking mismanagement.
- If event details are incomplete or not updated, causing disruption in organizing community events.
As a Secretary,
I want
to approve resident, manager, and security officer registration requests, verify NID details efficiently, see complaints against residents, managers, or security officers, and approve event requests such as picnics or meetings,
so that
I can ensure only valid members are registered, all residents are properly verified, and I can address complaints or event requests promptly.
Success Criteria:
- The dashboard allows easy approval or rejection of new registrations for residents, managers, and security officers.
- NID verification should be simple and fast, with alerts for any verification issues.
- Complaints against residents, managers, or security officers are easily accessible for review.
- Event requests are easily visible and manageable.
Failure Criteria:
- If registration approvals are slow or erroneous, leading to delays in onboarding.
- If NID verification is faulty, leading to incomplete or unverified registrations.
- If complaints or event requests are not visible or updated in real-time.
As a Security Officer,
I want
to see guest entry details, listed parking details, non-resident entry logs, and view the community board,
so that
I can effectively manage security and stay informed about important community updates.
Success Criteria:
- The dashboard shows guest entry details, parking information, and non-resident entry logs for easy monitoring.
- Security officers can access the community board for updates on security alerts or announcements.
Failure Criteria:
- If guest entry requests are not updated in real-time, leading to potential security issues.
- If the community board is not accessible or does not display the latest updates.
- If the parking allocation list is not provided in real-time, causing issues with slot allocation in parking.
3.1.5. Service Management
As a Resident,
I need to submit service requests(e.g.,plumbing,electrical repair) and track them through
a community dashboard and notifications and track them via notifications,
So that I can ensure my maintenance issues are addressed efficiently and stay informed
about the status.
Confirmation:
-
Success Criteria: – Residents can successfully submit their service requests with all required details,and the request is automatically forwarded to the community administrator(Manager). – Residents are informed when a service provider is assigned and receive real-time updates on service progress. – Residents can communicate with administrators(Manager) and service providers without any issue. – Residents can track service request status and history in the dashboard. – Residents, after receiving service,can give feedback and high ratings so it can reflect satisfaction with service quality.
-
Failure Criteria: – If the service request form submission fails due to incomplete forms, network issues, or unpaid invoices. – If the system fails to validate the input,resulting in an inaccurate service request. – If administrators(Manager) fail to assign service requests to relevant service providers, service requests remain unfulfilled. – Residents receive incorrect updates, such as inaccurate service progress. – If the resident is unavailable at the time the service provider arrives for the scheduled task.
As a manager, I need to efficiently manage and monitor all resident service requests, track the progress and assign relevant service providers, So that I can ensure timely service completion,reduce delays and maintain high service standards.
Confirmation:
- Success Criteria: – Manager Successfully receives new requests from residents with details of the issue and with relevant attachments and assigns the task to a qualified service provider. – The manager tracks progress and updates residents about the status of the request. – The manager ensures that tasks are completed within the agreed timeframe and marks the service as "resolved" in the system. – Manager reviews the completed service request to ensure it meets the platform’s required standard and service quality. – The manager maintains a log of service feedback to assess the quality and satisfaction rate.
- Failure Criteria: – If a service request fails to be received due to network issues or relevant details of the request from a resident,the manager can’t receive a new request. – If a system fails or encounters an error to create a unique request Id, completion date,or can’t track progress due to technical issues, the manager can’t assign service requests to the service provider and the request will be in “pending” state and a wrong service provider will be chosen. – If a manager is unaware of a new service request due to multiple submissions from the resident, it may result in a failure to assign the request to a service provider. – If a resident does not give feedback and ratings,it’s difficult for the manager to assess the service quality. – If the service provider doesn’t have the quality to meet the required standard,the manager has to reassign the service. – Miscommunication occurs between the manager and the service provider, leading to delays.
3.1.6. Service Bill
As a Resident,
I need to initiate service or management bill payments through the app and
be redirected to an external system to complete payments,
So that I can conveniently manage and pay my dues without any manual
intervention.
Confirmation:
-
Success Criteria: – The tenant successfully initiates the payment request through the app and is redirected to the external system for secure payment completion. – The payment is processed successfully, and the resident receives a confirmation notification from both the external system and the app. – The tenant's payment status is updated in the system without any delay, ensuring that no further reminders or penalties are due.
-
Failure Criteria: – The tenant experiences an error while being redirected to the external payment system, preventing the completion of the transaction. – The payment link does not function correctly, causing the resident to be unable to pay the requested amount. – After the payment is completed, the system fails to update the resident's status, resulting in repeated payment reminders or penalties.
As a Manager,
I need to send service or management bill payment reminders and track payment status for the property through the app, So that I can ensure timely payments from residents without having to manage transactions directly. Confirmation- Success Criteria: – The manager sends payment reminders to tenants through the app, and residents receive notifications on time. – The manager is able to track the payment status in real-time and identify which residents have completed their payments. – The system accurately reflects payment status, ensuring that the manager can monitor outstanding payments without discrepancies.
- Failure Criteria: – The payment reminders fail to be sent to residents, leading to delayed payments. – The payment status tracking malfunctions, causing the manager to be unaware of completed payments or overdue amounts. – The app displays incorrect payment status, leading to confusion or unnecessary follow-ups with tenants.
As a Secretary,
I need to track service or management bill payments and ensure that notifications are sent to residents, So that I can help maintain smooth financial management without manual involvement. Confirmation:- Success Criteria: – The secretary can monitor all payment requests and track their statuses in real-time. – Notifications are sent to residents in a timely manner regarding their outstanding payments and due dates. – The system automatically updates once payments are received,reducing manual errors.
- Failure Criteria: – The system fails to send out notifications to residents about their payment dues. – Payments made through the external system do not update in the app, causing confusion and delays in financial record-keeping. – Errors in the system result in inaccurate payment tracking or reporting.
3.1.7. Receive Emergency Alerts
As a resident, I want to receive emergency alerts in cases of fire outbreak, earthquake, gas leak, or security breach, so that, I can take myself to a safe location and seek shelter.
Confirmation:
-
Success Criteria: – A distinct alarm tone for every mentioned emergency will ring that will alert the residents. – Display message: “EMERGENCY ALERT! Fire detected in the building. Please evacuate immediately from the nearest exit. Please DO NOT use the lift.” – Display message: “EMERGENCY ALERT! Earthquake detected in the area. Please seek shelter immediately and follow emergency protocol. Please DO NOT use the lift.” – Display message: “WARNING! Gas leak detected in the building/ in your area. Please leave the premises immediately.” – Display message: “ATTENTION! Unauthorized access detected in the building. Secure your area and REPORT any suspicious activity immediately.”
-
Failure Criteria: – The system is unable to send alerts due to server failure or corrupted database. – The alerts are sent to the residents but after a significant amount of time delay. – The residents receive wrong or incomplete alerts, resulting in confusion and a false sense of security. – The system fails to maintain the alert sequence, such as the notification being sent but the alarm not ringing, or the alarm ringing but the emergency message not being sent.
3.1.8. Event Management
As a Resident
I want to register, view, and provide feedback on community events,
including parties, picnics, gatherings, etc.
So that I can be engaged with my community events, connected with my
neighbors, informed by upcoming events, and participate in the events that
I find interesting.
Success Criteria:
- The resident can register for the new event, providing necessary information.
- The resident can view the past and upcoming event details including attendee list.
- The resident receives notifications and reminders about upcoming events.
- Residents can provide feedback about the events.
Failure Criteria: - Residents face failure issues when they are trying to register for events, such as incomplete registration, missing confirmations, etc.
- The resident missed the notification of the event because the event calendar is not properly linked with the system.
- Residents cannot view the details of the event information, including the attendee list, because the information’s outdated or not properly updated.
- Residents cannot notify the upcoming events, for the system does not properly integrate with the notify system.
As a Secretary,
I want to create and update events, including setting dates, times, and
locations, arranging a community meeting and voting system, and
sending notifications to residents, the manager, and the security officer.
So that I can successfully arrange the event and hosting the meeting,
control the event registration process, and ensure an enjoyable
environment for my community.
Success Criteria:
- The secretary can create an event, including setting dates, times, and locations.
- The secretary can be able to send the notification to the residents for promoting the upcoming events.
- The secretary can handle the event registration process and, after successful registrations, send the messages to the residents.
- The secretary can view and edit the event details, including the
attendee list.
Failure Criteria: - The secretary is unable to create a new event due to system errors or missing information.
- The secretary can fail to send notification to the resident because the notification system is not properly integrated with the system.
- The secretary cannot view the event details properly; the system is not allowed real-time updating.
As a Manager,
I want to manage community events, including the residents’
preferences, and join the community meeting and voting system.
So that I can smoothly manage the community events, engage with my
residents, and create a friendly environment for my community.
Success Criteria:
- The manager can manage and edit events, including being aware of resident preferences.
- The manager can track and view the number of attendees on the list of events.
- The manager can view the feedback of the event, including
comments to improve for future events.
Failure Criteria: - The manager is unable to edit and manage a new event due to system errors or missing information.
- The manager can fail to track the attendees on the list because the system is not allowed real-time updating.
As a Security Manager,
I want to view and manage event details, including attendee lists and
security requirements.
So that I can ensure the safety and security of residents and guests during
community events.
Success Criteria:
- The security manager views all information of the details, including date, time, location, and attendee list, for security purposes.
- The security manager can monitor and respond to security incidents.
Failure criteria: - The security manager can be unable to view the event details due to system errors or missing information.
- The security manager cannot monitor the security incidents because the response process is incomplete.
3.1.9. Community Board
3.1.10. Parking Management
As a
secretary,
I want
to verify parking registrations and reservations for residents
so that
I can track, approve, or deny parking requests and allocate available parking spaces conveniently.
Success Criteria:
- The secretary has access to verify and approve parking registrations and reservations for residents, ensuring accurate tracking or denial of requests, and allocating available parking spaces smoothly.
- When the secretary approves the parking registration and request, the system notifies the residents, "A parking slot is available," and the system automatically updates the parking slot.
- If denied, the system notifies the residents, "A parking slot is not available."
- The secretary can track the status of all parking registrations (approved, pending, denied) through the dashboard.
Failure Criteria:
- The secretary is unable to view or access parking registration details due to system errors.
- The system does not provide accurate or timely information on parking reservations status.
- Approved parking spaces are not updated in real-time.
- The system fails to track and display the current status of registrations.
- Incorrect or incomplete resident and vehicle information is displayed due to system errors or delays.
As a
security officer,
I want
to manage vehicle entry, exit, and parking allocations,
so that
I can ensure only authorized vehicles park in the designated spots and handle any parking violations.
Success Criteria:
- Security officers can verify and approve/deny vehicle entry based on reservations or resident authorization.
- A real-time list of parked vehicles and their assigned spots is available to security.
- The system alerts security officers to any unauthorized vehicles or parking violations, prompting immediate action.
- Security can log vehicle entries and exits, ensuring accurate tracking and reporting.
Failure Criteria:
- The system does not provide accurate or timely information on parking reservations or vehicle status.
- Unauthorized vehicles are not flagged, or alerts are delayed.
- The log of vehicle entries and exits is incomplete or inaccurate, leading to confusion.
As a
resident,
I want
to register my vehicle and reserve a parking spot,
so that
I can ensure an available parking slot in my community.
Success Criteria:
- Residents can view available parking spots and make reservations via the app.
- Residents receive notifications when their reserved spot is confirmed or if any changes occur (e.g., spot becomes unavailable).
- Residents can modify or cancel reservations as needed.
- The system notifies residents if their vehicle is flagged for any parking violation or issue.
Failure Criteria:
- Parking spot availability is not shown correctly in the app.
- Residents do not receive confirmations or notifications for their parking reservations.
- The system does not notify residents of parking violations or issues, causing delays in resolution.
As a
manager,
I want
to oversee the parking system, including handling escalated issues,
so that
I can ensure smooth operation and address conflicts promptly.
Success Criteria:
- Managers can monitor real-time parking usage and handle disputes or unauthorized vehicles.
- Managers are notified of any unresolved issues related to parking (e.g., ongoing violations).
- The manager can access parking logs to review vehicle entries, exits, and violations.
Failure Criteria:
- The manager is not informed of parking issues or disputes in a timely manner.
- The parking logs are not accurate or accessible.
- The system fails to provide an overview of parking availability and usage.
3.1.11. Security Management
As a
security guard,
I want
to monitor surveillance, manage visitor logs, and receive alerts for intrusions,
so that
I can ensure the safety and security of the community.
Success Criteria:
- The surveillance system is continuously monitored with real-time video feeds available.
- Visitor logs are accurately updated with details of incoming and outgoing visitors.
- Intrusion alerts are triggered immediately upon detection, and security staff is notified promptly.
Failure Criteria:
- Video feeds are not accessible, or there are delays in monitoring.
- Visitor logs are incomplete or incorrectly updated, leading to gaps in tracking.
- Intrusion alerts are delayed or not sent to the security team in a timely manner.
3.1.12. Issue Express
3.1.13. Reservation and Booking
As a Resident,
I want
to view available amenities, and if they are available, book community amenities such as the gym, hall, or guest parking,
so that
I can plan and ensure availability when I need these resources.
Success Criteria:
- The system should allow residents to view available time slots for amenities like the gym, hall, or guest parking.
- Residents should be able to book these amenities directly when they are available.
- A confirmation should be sent once the booking is complete, and upcoming reservations should be visible in the resident's profile.
- Real-time updates should prevent double bookings and show alternative times if the selected amenity is unavailable.
Failure Criteria:
- If the system does not display real-time availability for amenities, leading to booking conflicts.
- If confirmation notifications are delayed or missed, residents may not be aware of their bookings.
- A complicated booking process could result in residents not being able to secure the resources they need.
As a Secretary,
I want
to review and approve or reject resident booking requests for community amenities,
so that
I can ensure proper management and usage of these facilities.
Success Criteria:
- The system allows the secretary to see all pending booking requests, along with details of the requested amenities and time slots.
- The secretary can approve or reject bookings based on availability or specific community rules.
- Approved bookings should be confirmed with the resident, and the calendar should be updated automatically.
- The system should allow for quick and easy management of all booking requests, including cancellations or changes.
Failure Criteria:
- If the secretary is unable to view pending booking requests in real-time, it could lead to delays in approval or rejection.
- An incomplete or poorly designed booking interface may lead to double bookings or mistakes in approving requests.
- A failure in notification systems may result in residents not being informed of rejected or modified bookings.
As a Manager,
I need
to manage the overall booking system, ensuring that amenities are properly maintained and accessible,
so that
the community can enjoy these resources without disruptions.
Success Criteria:
- The system should provide a comprehensive overview of all upcoming and past bookings, including usage trends and resident feedback.
- The manager can block time slots for maintenance or repairs, ensuring amenities are well-maintained and safe for use.
- The manager can track amenity usage statistics to improve resource allocation and scheduling for the community.
- Real-time alerts for any booking conflicts or maintenance issues should be visible on the dashboard.
Failure Criteria:
- If the manager cannot track or manage amenity availability, maintenance issues may go unaddressed, leading to resident dissatisfaction.
- If maintenance scheduling isn’t integrated into the booking system, it could result in double bookings or unavailable amenities.
- A confusing booking dashboard may hinder the manager's ability to oversee and optimize the system effectively.
3.1.14. Community Trade
As a Resident,
I want to:
- Post items for sale, including descriptions, images, and prices.
- Browse and view items listed for sale by other residents.
- Purchase items and receive a confirmation upon completion of the transaction.
So that, I can participate in the community trade, buying and selling items securely and conveniently within the platform.
Confirmation:
-
Success:
- Residents can successfully post items with complete details, and view and purchase items listed by others.
- The system processes transactions securely, notifying both buyer and seller.
- Issues with transactions can be reported and addressed through the platform’s dispute resolution system.
- Feedback can be left after the transaction, viewable by other users.
-
Failure:
- Items cannot be listed or viewed if there are missing details (e.g., description, price) or if the image upload fails.
- Transactions fail if the system encounters technical issues or if the item is no longer available.
- Feedback submission fails due to system errors or if the transaction is incomplete.
Oversee and Approve Community Trade Transactions
As a Manager,
I want to:
- Approve and oversee all items listed for sale to ensure compliance with community policies.
- Handle disputes and refund requests between buyers and sellers.
- Monitor the overall transaction process, ensuring secure and fair trade practices.
So that, I can maintain the integrity of the community trade platform, ensuring fair practices and resolving disputes efficiently.
Confirmation:
-
Success:
- The manager reviews and approves sales requests, ensuring compliance with policies.
- Disputes between buyers and sellers are resolved, with refunds processed if necessary.
- Notifications are sent to both buyer and seller regarding the status of transactions and disputes.
-
Failure:
- Sales requests remain pending if not reviewed or approved by the manager.
- Disputes are unresolved if not addressed, leading to user dissatisfaction.
- Refund requests are not processed if the external payment service fails.
3.1.15. Directory
As a Resident,
I need to access, search, and view contact details of community members in the directory,
So that I can quickly find the right person to communicate with, resolve issues, and facilitate connections efficiently.
Confirmation:
-
Success:
- The resident can successfully access the directory from the community platform, using the search function to easily find and view updated relevant contact details by name or role.
- The resident can initiate communication directly from the platform (via phone or email) by selecting a contact.
-
Failure:
- If the system views "No Search Results were found," residents can't contact their necessary community members.
- If the contact details or directory is outdated, residents can't contact their desired parties.
- Unauthorized persons attempt to export directory information to a CSV or PDF file, causing security issues.
Manage Community Directory
As a Manager,
I need to access, edit, and manage the community directory, ensuring that contact information for residents is accurate, up-to-date, and easily searchable,
So that I can facilitate efficient communication within the community, resolve issues promptly, and maintain high service standards.
Confirmation:
-
Success:
- The manager successfully manages and updates directory information for community members, ensuring the directory is accurate, complete, and easily searchable.
- The search functionality allows the manager to efficiently find specific residents by name or role.
- The manager can update and verify contact details, ensuring that the directory remains current and reliable.
- The manager uses the directory to resolve issues and manage service requests effectively, leading to improved service quality and resident satisfaction.
-
Failure:
- If a system error or data corruption happens, the manager fails to view and update directory information about community members, causing permission issues.
- If the system logs a fault, the search function in the directory returns incorrect or incomplete results, and the manager receives an error message.
- If the system encounters an error, the manager can’t enter new members' information and can’t save the updated directory.
- If there is a data mismatch or inconsistency in the directory information (outdated contact details), the manager has to face discrepancies.
- If the system malfunctions, unauthorized persons acting as a manager can attempt to export directory information to a CSV or PDF file, causing security issues.
- If the system fails to use keywords or filters, the manager has to search for a community member in the whole directory.
3.2 Non-Functional Requirements
Performance Requirements
- The system must accept service requirement submissions within 2 seconds to ensure a smooth user experience.
- The platform should support up to 50 concurrent users submitting complaints without a drop in performance.
- The system should be compatible with a wide range of devices, including smartphones and tablets.
- The system should maintain a smooth and error-free updating process during the application upgrade.
- The user should be able to request service, notify the community, or receive any alerts or notifications via voice command.
Safety Requirements
- The system should allow a strong user authentication process (i.e. multi-factor authentication) for any user.
- The system should comply with local fire safety regulations in case of emergencies.
- The system should ensure redundancy in communication channels to ensure that alerts go through, even if some systems fail.
Security Requirements
- The system should implement an encryption-decryption algorithm to ensure the confidentiality of resident information, service management, and monetary transactions.
- Only authorized users (residents and management) can access and modify data.
- The system should consider automated system backups and a disaster recovery plan to restore critical functions in case of system failure or cyber-attack.
Reliability Requirements
- The system should ensure a 99.9% uptime for service requirement submission and tracking services.
- Complaints, items for sale, and announcement data should be backed up daily to avoid data loss in the event of a system crash.
- Each submitted service requirement should have the unit code as the identifier for tracking, ensuring data integrity.
Usability Requirements
- The service requirement submission process should be user-friendly, requiring no more than three steps to complete.
- The interface should provide clear feedback (success/failure) after a service requirement is submitted.
- The system must have an intuitive and easy-to-navigate interface for all users.
- A clear and organized user manual must be provided to assist users with setup, configuration, and troubleshooting.
- The system should follow accessibility standards to ensure people with disabilities can use the system.
- The system should allow the cancellation of any requested service within 15 minutes of the service request. Upon canceling within the time limit, the total bill, if already paid, will be refunded. If cancellation is done after 15 minutes, the user will receive demerits on their credit and be notified accordingly.
Legal and Regulatory Requirements
- The system must comply with data protection regulations, ensuring user data is stored and processed lawfully.
- The system needs to comply with cybersecurity standards that provide a framework for information security management systems.