CWDS Digital Service Development Standards
Detail related to the tools used by the project and the coding, testing and other digital service development guidance is included below.
A transactional service must meet each criteria to pass the Digital Service assessment. If a service doesn’t pass, it won’t appear on the ca-cwds web site. Digital service standards include the following:
Current Project Tools
Jira - An Agile project management and collaboration software that allows teams to collaborate and react to real-world changes instantly. Jira maintains a prioritized backlog of project deliverables, broken down into small, estimated pieces, called stories.
Slack - Instant messaging, forums, and email all rolled into one app. An online, social-messaging platform for groups. Collaborators can create a team in Slack and then log in to have group or private discussions, share materials, and links with one another, or simply banter.
Slack Guidelines for CWDS Service Delivery Teams are available via the following links:
Slack Usage Procedure and Guidelines defines the use of the basic features of Slack, including:
- General Slack Usage
- Direct Messages
- Document Collaboration
Slack Channel Creation Procedure provides a guide for project staff in developing new communication channels, including:
- Channel Standards
- How to Create a New Channel
- When to Create a New Channel
- Private Channels
GitHub - A cloud service that programmers use to store their software projects, share them, and work on them collaboratively in teams.
** Digital Service Standards **
- Digital Services Playbook - A playbook of key “plays” drawn from successful practices from the private sector and government that, if followed together, will help CWDS build effective digital services.
These are still under development. They include, but are not limited to:
- Coding Standards - Standards that define desired application coding practices including:
- Code development
- Accessibility Review and
- Internal Team Quality Control review.
Unit Testing - Developers individually and independently scrutinized the smallest testable parts of an application, called units, for proper operation.
System Testing - Software testing conducted on a complete, integrated system to evaluate the system’s compliance with its specified requirements. System testing falls within the scope of black-box testing which requires no knowledge of the inner design of the code or logic.
Continuous Integration (CI) Process - CI is a development practice that requires developers to integrate code into a shared repository several times a day. Each check-in is then verified by an automated build, allowing teams to detect problems early.
- User Acceptance Testing - Testing by functional (i.e., business) experts that includes manual tests and manual tests automated to support repeated execution.