Product Development Lifecycle
This page is a summary of the Seal product development lifecycle. The product development and support phases are guided by the following requirements from GAMP Supplier Good Practices (but are not limited to):
Documented set of procedures and standards
Well-defined requirements from regulated companies before onboarding
Quality planning
Design review process
Defined standards for software production
Clear user documentation and training
A summary of the process is listed below.
Scope
The objective of this stage is to scope issues and requirements, based on following criteria (but not limited to):
Description of requirement, including user stories, user flows, and edge cases
Source of requirement
Level of priority
Additional comments regarding analysis, possible solutions, problems, and queries
This comprehensive approach ensures structured documentation to allow clear, concise scoping plans.
Specify
This converts the scoping conducted above into actionable items to address the issue or requirement. This includes (but not limited to):
Review and clarification meetings to define specifications
Developing designs based on requirements, with design iterations if necessary
Creation of issues for approved designs
This involves collaborative wok between the development, design, and product delivery teams.
Develop
GitHub serves as Seal's designated task system for creating, tracking, and managing work tasks. This centralised platform proves advantageous for software teams in GxP environments due to features, including version control with auditing capabilities, change tracking and documentation, automated testing and continuous integration tools, and efficient issue tracking.
Per Appendix D4 of GAMP 5 on the Management of Software, the following requirements for each software task ensure clear traceability and are all available in GitHub:
Reference/traceability to associated design artefacts
Descriptions of the task
Timestamps
Summary of changes
User account making changes
The timeframe for issues are based on the priority assigned to the requirement.
Testing
A rigorous multi-phase testing process is conducted before any new feature or update is introduced to ensure the platform maintains the highest standards of quality, performance, and reliability for users.
Production changes undergo the following stringent approaches prior to release. These include both automated (comprising database and end-to-end tests) and manual testing methodologies:
Module testing (unit and database testing)
Acceptance testing (utilising playwright tests)
Peer reviews
A crucial aspect is the integration of Continuous Integration, where automated checks are performed with each commit. This ensures immediate notification to the developer in case of errors, maintaining a proactive approach to identifying and addressing issues during the development lifecycle. Additionally, if applicable, additional tests are written for changes introduced by the new features to test for any specific interactions and flows that are affected by the new changes.
For all changes, it is mandatory that:
Last updated