A bug tracker is an essential tool for any software development team, as it helps document the life cycle of any bugs that are encountered throughout the development process. With a bug tracker, teams can detect, track, and monitor any bugs, defects, or other issues that arise, and then work to eliminate them.
In Scope
1. User Management: includes user registration, login, and profile management.
2. Bug Tracking: Enables users to report bugs, track progress, and prioritise bug reports.
3. Reporting: Generates reports on bugs, bug fixing progress, and user activity.
Out Scope
1. Integration with other project management tools.
2. Mobile app development for the bug tracking system.
3. Automatic bug detection and fixing.1. To provide a user-friendly interface for reporting and tracking bugs.
2. To streamline the bug fixing process and reduce the time taken to fix bugs.
3. To prioritize bug reports based on severity and impact.
4. To provide real-time updates on bug fixing progress to stakeholders.
5. To generate reports on bugs, bug fixing progress, and user activity for better transparency and accountability.Bug tracking is an exciting process of discovering and fixing errors in software! It's like a thrilling treasure hunt where developers are on a mission to uncover and remove any pesky bugs. Finding errors in complex software systems can be challenging, but it's also incredibly rewarding to see a project come to life after all the bugs have been eliminated. With the right bug tracking tools, teams can ensure that software is working as intended to provide a seamless user experience.
*insert Figma video here in 5 tables of stages in Minimum Varible Product.
- 1. Users should be able to register for the bug tracking system using their email address and password.
- 2. Users should be able to provide their personal information such as name, company name, and job title during registration.
- 3. The system should validate the email address before allowing users to complete the registration process.
- 4. The system should send a confirmation email to users after successful registration.
- 1. Users should be able to log in to the bug tracking system using their email address and password.
- 2. The system should provide an option for users to reset their password if they forget it.
- 3. The system should use secure encrypted connections (e.g. SSL/TLS) for user login.
- 1. Users should be able to view and edit their personal information and preferences.
- 2. Users should be able to change their password.
- 3. The system should allow administrators to manage user accounts, including enabling and disabling user accounts.
- 1. Users should be able to create, view, edit, and delete bug reports.
- 2. Bug reports should include a title, description, and attachments such as screenshots or log files.
- 3. Users should be able to assign severity levels to bug reports.
- 4. Users should be able to categorize bug reports by type, such as UI bugs, functionality bugs, performance bugs, etc.
- 5. Users should be able to assign bug reports to developers for resolution.
- 6. The system should provide a search function for finding specific bug reports.
- 1. Users should be able to add comments to bug reports for better collaboration and communication.
- 2. Users should be able to edit and delete their own comments.
- 3. The system should provide a notification system for users when a new comment is added to a bug report they are following.
- 1. The system should log all activities, such as bug report creation, updates, and deletions, for auditing and accountability purposes.
- 2. The system should provide a search function for finding specific activities in the log.
- 1. Users should be able to attach images to bug reports for better visualization and understanding of the bug.
- 2. The system should automatically resize images to a suitable size for faster loading and to save storage space.
- 3. The system should provide a preview function for users to view images before attaching them to bug reports.
- 1. Users should be able to attach videos to bug reports for better visualization and understanding of the bug.
- 2. The system should automatically compress videos to a suitable size for faster loading and to save storage space.
- 3. The system should provide a preview function for users to view videos before attaching them to bug reports.
- 1. The bug tracking system should consist of a front-end user interface, a back-end database, and an API for communication between the two.
- 2. The front-end user interface should be developed using HTML, CSS, and JavaScript.
- 3. The back-end database should be developed using MySQL or a similar database management system.
- 4. The API should be developed using RESTful API design principles.
- 1. The bug tracking system should consist of the following components:
- - Login page
- - Dashboard
- - Bug report management page
- - Comment management page
- - Activity log page
- - User management page
- - Media management page
- 2. The components should interact with each other through the API.
- 3. The components should be designed to be modular and scalable for future updates and expansions.
Required fields for the bug report.
Note that the required fields of the bug report are:
Bug Summary,
Severity,
Steps to reproduce,
Actual Result,
Expected Result.
- 1. The bug tracking system should use a relational database management system (RDBMS) such as MySQL.
- 2. The database should consist of the following tables:
- - Users
- - Bugs
- - Comments
- - Media
- - Activity Log
- 3. The tables should be designed to be modular and scalable for future updates and expansions.
1. User Table
Field Name Description id
Primary key name
password
role
Options: administrator
,developer
,tester
created_at
updated_at
2. Bugs Table
Field Name Description id
Primary key title
description
status
Options: open
,closed
,in progress
assigned_to
foreign key referencing the User table
created_at
updated_at
3. Comments Table
Field Name Description id
Primary key bug_id
foreign key referencing the Bugs table
user_id
foreign key referencing the Users table
comment
assigned_to
created_at
updated_at
4. Media Table
Field Name Description id
Primary key bug_id
foreign key referencing the Bugs table
type
Options: image
,video
file_name
file_path
created_at
updated_at
5. Activity Log Table
Field Name Description id
Primary key bug_id
foreign key referencing the Bugs table
user_id
foreign key referencing the Users table
action
Options: Create
,Update
,Delete
assigned_to
created_at
- HTML
- CSS
- JavaScript
- React.js
- Node.js
- Express.js
- MySQL
- MongoDB.js
- Jest
- Mocha
- Heroku
The system should be built using modular, scalable, and maintainable code to ensure the best performance and ease of development.
- Windows 10
- MacOS 10.14 or later
- Ubuntu 20.04 or later
- Google Chrome
- Mozilla Firefox
- Apple Safari
- Microsoft Edge
- 4GB RAM
- Dual-core processor
- 500MB hard drive
1. The bug tracking system must use secure encryption for data transmission and storage.
2. User authentication and authorization must be implemented to restrict access to the system to authorized users only.
3. Passwords must be encrypted and securely stored in the database.
4. The system must implement measures to prevent hacking, such as regular security audits and vulnerability scans.
5. The system must have a disaster recovery plan in place in the event of a security breach.
6. The system must comply with relevant data protection and privacy regulations, such as GDPR.
1. The bug tracking system must have a response time of less than 2 seconds for all user actions.
2. The system must be able to search and retrieve bug reports in less than 5 seconds.
3. The system must be able to generate reports and statistics in real-time.1. The system must be able to process and store a minimum of 1000 bug reports per day.
2. The system must have a 99.9% uptime guarantee.
1. The bug tracking system must securely store all user data and sensitive information.
2. The system must use encryption to protect data both in transit and at rest.
3. The system must allow users to control access to their own data, including the ability to delete it.1. The bug tracking system must have mechanisms in place to detect and prevent unauthorized access attempts.
2. The system must have robust input validation to prevent SQL injection and other common attacks.
3. The system must regularly perform security audits and update its security measures as needed.
1. The user interface of the bug tracking system must be intuitive and easy to use.
2. The system must provide clear and concise feedback to users on all actions.
3. The system must support a range of user roles, including reporters, developers, and managers.1. The bug tracking system must comply with accessibility standards, such as WCAG 2.0.
2. The system must be fully functional for users with disabilities, including keyboard-only navigation.
3. The system must have adjustable text sizes and high-contrast options for visually impaired users.
SRS - https://www.youtube.com/watch?v=rhXfrscZ_tM
MVP - https://blackboxofpm.com/mvpm-minimum-viable-product-manager-e1aeb8dd421