Quality aspects: Standardization
Quality aspects: Standardization
Relevance of quality aspects
Implementation of quality aspects
Tools to Use standard protocols and APIs
Which specific guidelines or tools are you aware of that help to enable the quality aspects? Provide short descriptions and/or URLs if possible, leave empty if there are no specific guidelines or tools. Use standard protocols and APIs :Guidelines | Which specific guidelines or tools are you aware of that help to enable the quality aspects? Provide short descriptions and/or URLs if possible, leave empty if there are no specific guidelines or tools. Use standard protocols and APIs :Tools | |
---|---|---|
2 | For instance GA4GH Cloud Workstream standards | https://www.ga4gh.org/work_stream/cloud/ |
12 | Use standard API specifications like OpenAPI and standard query languages like SPARQL | https://www.openapis.org/what-is-openapi https://www.w3.org/TR/sparql11-query/ |
20 | For back-end implementations use standard HTTP responses with meaningful descriptions of errors. Error from the client and the server needs to have different error codes, and it should not respond with an ok status code but containing an error in the response body |
Tools to Use coding conventions and style
Which specific guidelines or tools are you aware of that help to enable the quality aspects? Provide short descriptions and/or URLs if possible, leave empty if there are no specific guidelines or tools. Use coding conventions and style :Guidelines | Which specific guidelines or tools are you aware of that help to enable the quality aspects? Provide short descriptions and/or URLs if possible, leave empty if there are no specific guidelines or tools. Use coding conventions and style :Tools | |
---|---|---|
2 | Community accepted coding conventions | |
10 | There are many different conventions in the community - several use the google coding styles | https://google.github.io/styleguide/cppguide.html |
12 | Use IDEs like pyCharm, which have suggestions to follow established guidelines | https://www.jetbrains.com/pycharm/ |
20 | Use standard developer tools, with automatic formatting and linters, which highlight errors and ensure standard code convenstions | The JetBrains suite for code development |
Tools to Ensure reusability of code
Which specific guidelines or tools are you aware of that help to enable the quality aspects? Provide short descriptions and/or URLs if possible, leave empty if there are no specific guidelines or tools. Ensure reusability of code:Guidelines | Which specific guidelines or tools are you aware of that help to enable the quality aspects? Provide short descriptions and/or URLs if possible, leave empty if there are no specific guidelines or tools. Ensure reusability of code:Tools | |
---|---|---|
2 | If you are publishing reusable components, like libraries, provide both semantic versioning and a stable API through the lifecycle, labeling backward incompatible changes with major semver changes, for instance | |
12 | same as above | https://www.jetbrains.com/pycharm/ |
20 | Publish code into standard repositories, publish Docker containers to easily install softwares | GitHub, Docker, Docker registries, apt repository (for Debian/Ubuntu linux) |
Auto-created summary
Summary of Mentioned Practices:
- Use Standard Protocols and APIs
- GA4GH Cloud Workstream Standards: Standards provided by GA4GH for cloud workstream interoperability.
- OpenAPI and SPARQL: Use standard API specifications like OpenAPI and query languages like SPARQL.
- Standard HTTP Error Responses: Implement standard HTTP responses with meaningful error code distinctions between client and server errors.
- Use Coding Conventions and Style
- Community Accepted Conventions: Follow coding conventions recognized by the community.
- Google Coding Styles: Several community conventions align with Google’s coding styles.
- IDE Tools like PyCharm: Utilize integrated development environments like PyCharm for suggestions on following established guidelines.
- Automatic Formatting and Linters: Employ developer tools with automatic formatting and error highlighting to maintain standard coding conventions.
- Ensure Reusability of Code
- Semantic Versioning and Stable API: Provide semantic versioning and a stable API, marking backward incompatible changes with significant version updates.
- Publishing and Repositories: Publish reusable code in standard repositories and provide Docker containers for easy software installation.
Table of Linked URLs
URL | Description |
---|---|
https://www.ga4gh.org/work_stream/cloud/ | GA4GH Cloud Workstream standards |
https://www.openapis.org/what-is-openapi | Information on OpenAPI specification |
https://www.w3.org/TR/sparql11-query/ | W3C documentation for SPARQL 1.1 Query Language |
https://google.github.io/styleguide/cppguide.html | Google coding style guidelines for C++ |
https://www.jetbrains.com/pycharm/ | PyCharm IDE by JetBrains |