Production release readiness & publication in MIDAS
Closed this issue · 0 comments
nikitawootten-nist commented
User Story:
As a NIST OSCAL team member, in order to ensure this project is well-designed, implemented, tested, and documented, I want itemized list of NIST publication requirements for publishing research software, status, and supported evidence for individual items per and other relevant guidelines.
NOTE: this issue is derived from usnistgov/metaschema-node#16
Goals:
The following NIST requirements must be met:
- NIST S 1801.03 (supplemented by this checklist)
- How do you expect your code/software to be used (choose 1):
Code is informational (e.g. part of the supplemental information in a narrative publication) and not intended for re-use- Code itself is intended for re-use (e.g. in a specific scientific area) or the public is being invited to contribute to it
- Developing and Testing:
- A testing plan was developed, followed, and documented. The testing plan is available at a specified link. (see usnistgov/OSCAL#44)
- Continuous testing was conducted during updates and new builds.
- Code includes appropriate IT security and privacy controls. (DNA)
- Documenting:
- Documentation is available as appropriate as: (choose 1)
- Integrated with the source code
On separate web pages (e.g. nist.gov, pages.nist.gov)In a separate publicationOther
- Documentation includes, as appropriate:
- A readme
- Function-level documentation
Information about how a binary was produced- System requirements and prerequisites (e.g., OS version, memory, dependencies): **Available in
package.json
- Installation instructions
- User instructions/guides
- API Specification
- A changelog file (included in GitHub releases)
- Specification of maturity level (i.e. is the software still being developed,, are you expecting feedback on performance and usability, is the project completed)
- A communication to users of your intent to provide (or not provide) support
- Documentation is available as appropriate as: (choose 1)
- License and disclaimers:
- NIST license and disclaimers
- External collaborators who were part of this project have been credited
- Third-party software licenses permit modification and/or redistribution
- Appropriate licensing is included
- Files modified by NIST contain notice that modifications are released to the public domain as appropriate
- How do you expect your code/software to be used (choose 1):
- Fair Principles (supplemented by this checklist)
- Findable (Will be satisfied by MIDAS entry)
- (Meta)data are assigned a globally unique and persistent identifier
- Data are described with rich metadata (defined by R1 below)
- Metadata clearly and explicitly include the identifier of the data they describe
- (Meta)data are registered or indexed in a searchable resource
- Accessible (satisfied by NPM)
- (Meta)data are retrievable by their identifier using a standardised communications protocol
- Metadata are accessible, even when the data are no longer available
- Interoperable (satisfied by NPM)
- (Meta)data use a formal, accessible, shared, and broadly applicable language for knowledge representation.
- (Meta)data use vocabularies that follow FAIR principles
- (Meta)data include qualified references to other (meta)data
- Reusable (satisfied by NPM)
- (Meta)data are richly described with a plurality of accurate and relevant attributes
- (Meta)data are released with a clear and accessible data usage license
- (Meta)data are associated with detailed provenance
- (Meta)data meet domain-relevant community standards
- (Meta)data are richly described with a plurality of accurate and relevant attributes
- Findable (Will be satisfied by MIDAS entry)