Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement and demonstrate (simple) profile resolution #508

Closed
3 tasks
wendellpiez opened this issue Oct 15, 2019 · 4 comments · Fixed by #624
Closed
3 tasks

Implement and demonstrate (simple) profile resolution #508

wendellpiez opened this issue Oct 15, 2019 · 4 comments · Fixed by #624
Assignees
Labels
enhancement Scope: Content Development of OSCAL content and examples. Scope: Tooling and APIs Issues targeted at development of tooling and APIs to support OSCAL content creation and use. User Story

Comments

@wendellpiez
Copy link
Contributor

wendellpiez commented Oct 15, 2019

User Story:

As an OSCAL user and developer, I need to be able to process OSCAL profiles and produce the modified catalog artifacts they specify.

Goals:

A reference or demonstration implementation of OSCAL profile resolution, capable of core functionalities, including any functionality being exercised in extant NIST or FedRAMP profile examples -- so these cases at least run without error.

Any OSCAL profile features that are not implemented should be documented and ideally flagged with runtime warnings. A complete implementation is a nice-to-have.

See #455. This user story addresses its first requirement, namely profile resolution without tracing ("clean" or "simple" profile resolution).

Dependencies:

Unit tests for profile resolution demonstrating at least the core features of profiles.

Documentation of profile semantics (in schema documentation and elsewhere) must be stable and reasonably complete. See #509.

#455 describes a requirement for tracing the resolution of a profile against its catalogs. That requirement is out of scope for this Issue.

Acceptance Criteria

  • All OSCAL website and readme documentation affected by the changes in this issue have been updated. Changes to the OSCAL website can be made in the docs/content directory of your branch.
  • A Pull Request (PR) is submitted that fully addresses the goals of this User Story. This issue is referenced in the PR.
  • The CI-CD build process runs without any reported errors on the PR. This can be confirmed by reviewing that all checks have passed in the PR.

{The items above are general acceptance criteria for all User Stories. Please describe anything else that must be completed for this issue to be considered resolved.}

@wendellpiez
Copy link
Contributor Author

wendellpiez commented Oct 24, 2019

Oct 24 Progress

Work on this is proceeding in my repo branch here: https://github.com/wendellpiez/OSCAL/tree/profile-resolution-ng

Almost feature complete. Much nicer than old profile resolution. Working on a set of examples to exercise and demonstrate all the semantics. See also #509.

@wendellpiez
Copy link
Contributor Author

wendellpiez commented Oct 30, 2019

Oct 30 Progress

Still here: https://github.com/wendellpiez/OSCAL/tree/profile-resolution-ng/src/utils/util/resolve

Now includes some beginnings of unit tests for profile resolution.

@wendellpiez
Copy link
Contributor Author

An XSLT pipeline to perform profile resolution is stable in my branch although it needs testing.

@bradh has been examining and providing corrections to unit tests in place so far.

So the work to be done on this LeE High ticket is probably to bear down on unit testing and start testing the pipeline. This implies a dependency on #509 since unit tests must also be coordinated with the specification.

@david-waltermire david-waltermire added Scope: Content Development of OSCAL content and examples. Scope: Tooling and APIs Issues targeted at development of tooling and APIs to support OSCAL content creation and use. labels Jan 9, 2020
@wendellpiez
Copy link
Contributor Author

wendellpiez commented Jan 30, 2020

See my repo branch here: https://github.com/wendellpiez/OSCAL/tree/profile-resolution-ng-repaired

This Issue is tightly coupled to #509. Also there is an end-to-end dependency on #561.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Scope: Content Development of OSCAL content and examples. Scope: Tooling and APIs Issues targeted at development of tooling and APIs to support OSCAL content creation and use. User Story
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants