diff --git a/.well-known/manifest.yml b/.well-known/manifest.yml new file mode 100644 index 0000000..3ac7add --- /dev/null +++ b/.well-known/manifest.yml @@ -0,0 +1,7 @@ + +design: + default_template: ./solution-basic.md.hbs + specification_folder: ./specs + specification_regex: (?i)^s.*\.yaml + output_file: todo-solution01.md + output_format: md diff --git a/solutions/test/readme.MD b/solutions/test/readme.MD index a400ab8..2013ef3 100644 --- a/solutions/test/readme.MD +++ b/solutions/test/readme.MD @@ -3,4 +3,14 @@ This solution location is just an area for testing the solution documentation for **qaskx-cli** tool -qaskx-cli -W ~/projects.design/todo.design/solutions/test rediops design -d ./specs -t ./design\solution-design.md.hbs -o ./todo-solution.md -v +```bash +qaskx-cli -W ~/projects.design/todo.design/solutions/test rediops design -d ./specs -t ./design/solution-design.md.hbs -o ./todo-solution.md -v +``` + +Alternatives + +```bash +qaskx-cli -W ~/projects.design/todo.design/solutions/test rediops design -d ./specs -t httsp://xxx.xx.xxx.xxx -o ./todo-solution.md -v + +go run .\qaskx-cli.go rediops design -d .\test.data\rediops\design\specs -t ^\tools\golang\test.data\rediops\design\solution-design.md.hbs -o ./output.md -v +``` diff --git a/solutions/test/solution-basic.md.hbs b/solutions/test/solution-basic.md.hbs new file mode 100644 index 0000000..5712494 --- /dev/null +++ b/solutions/test/solution-basic.md.hbs @@ -0,0 +1,35 @@ +# {{get (get (get solution 0) "data") "name"}} - Solution Design Document + +{{#each solution}} + +## Solution + +Name: {{get (get data "solution") "name"}} + +Problem Statement: {{get (get data "solution") "problem_statement"}} + +## Project + +{{#each (get data "project")}} +- Name: {{name}} +- Budget: {{budget}} +- Guide: {{guide}} +{{/each}} + + +## Applications + +| Name | Type | Framework | +|------|------|-----------| +{{#each (get data "applications")}} +| {{name}} | {{type}} | {{framework}} | +{{/each}} + +## Stakeholders + +| Name | Title | Role | +|------|-------|------| +{{#each (get data "stakeholders")}} +| {{name}} | {{title}} | {{role}} | +{{/each}} +{{/each}} diff --git a/solutions/test/solution-design.md.hbs b/solutions/test/solution-design.md.hbs index 760b651..c5c109d 100644 --- a/solutions/test/solution-design.md.hbs +++ b/solutions/test/solution-design.md.hbs @@ -10,10 +10,9 @@ # Executive Summary -This document provides a high-level solution design for -the **{{get (get (get business_requirements 0) "data") "name"}}** -platform. It consolidates -specifications across business requirements, security, APIs, databases, and deployment configurations. +This document provides a high-level solution design +for **{{get (get (get business_requirements 0) "data") "name"}}**. +It consolidates specifications across business requirements, security, APIs, databases, and deployment configurations. {{overviewDiagram}} @@ -44,6 +43,13 @@ specifications across business requirements, security, APIs, databases, and depl {{/each}} {{/each}} +### Stakeholders + +| Name | Title | Role | +|------|-------|------| +{{#each (get data "stakeholders")}} +| {{name}} | {{title}} | {{role}} | +{{/each}} {{/each}} {{else}} *No business requirements specifications found.* diff --git a/solutions/test/solution-impact.md.hbs b/solutions/test/solution-impact.md.hbs new file mode 100644 index 0000000..6096a97 --- /dev/null +++ b/solutions/test/solution-impact.md.hbs @@ -0,0 +1,35 @@ +# {{get (get (get solution 0) "data") "name"}} - Solution Impact Document + +{{#each solution}} + +## Solution + +Name: {{get (get data "solution") "name"}} + +Problem Statement: {{get (get data "solution") "problem_statement"}} + +## Project + +{{#each (get data "project")}} +- Name: {{name}} +- Budget: {{budget}} +- Guide: {{guide}} +{{/each}} + + +## Applications + +| Name | Type | Framework | +|------|------|-----------| +{{#each (get data "applications")}} +| {{name}} | {{type}} | {{framework}} | +{{/each}} + +## Stakeholders + +| Name | Title | Role | +|------|-------|------| +{{#each (get data "stakeholders")}} +| {{name}} | {{title}} | {{role}} | +{{/each}} +{{/each}} diff --git a/solutions/test/specs/business_requirements.yaml b/solutions/test/specs/business_requirements.yaml index e13ab3f..455bb35 100644 --- a/solutions/test/specs/business_requirements.yaml +++ b/solutions/test/specs/business_requirements.yaml @@ -54,9 +54,12 @@ features: - Order history stakeholders: - - name: Product Owner + - title: Product Owner + name: tba role: Decision maker - - name: Development Team + - title: Development Team + name: tba role: Implementation - - name: End Users + - title: End Users + name: tba role: Consumers diff --git a/solutions/test/specs/solution.yaml b/solutions/test/specs/solution.yaml new file mode 100644 index 0000000..2f57e50 --- /dev/null +++ b/solutions/test/specs/solution.yaml @@ -0,0 +1,96 @@ +spec_type: solution +name: Sample solution +version: "1.0" + +defaults: + - type: guide + base_url: https://example.com/docs/ + - type: specification + base_url: https://example.com/specs/ + +stakeholders: + - title: Product Owner + name: tba + role: Decision maker + - title: Development Team + name: tba + role: Implementation + - title: End Users + name: tba + role: Consumers + +applications: + - name: Dashboard + type: single page application + framework: react + + - name: User settings + type: single page application + framework: react + + features: + - name: User Management + components: + - Registration + - Profile management + + - name: Login and credentials + type: single page application + framework: react + + features: + - name: User Authentication + components: + - Login + - Password reset + + - name: Authentication service + type: OpenAPI + specification: https://example.qaskx.one/services/authentication.json + + - name: User settings service + type: OpenAPI + specification: https://example.qaskx.one/services/usersetting.json + +solution: + name: Phase 2 Useful app + problem_statement: Objective is to make it simple + +project: + - name: Lamb + budget: $800k + guide: https://docs.qaskx.one/ + + features: + - name: User Management + components: + - Registration + - Login + - Profile management + - Password reset + + - name: Product Management + components: + - Product listing + - Product details + - Reviews and ratings + - Inventory tracking + + - name: Order Management + components: + - Cart management + - Checkout flow + - Order tracking + - Order history + +program: + name: Beef + budget: $2 million + phases: + - name: Investigation + timeframe: Q1 2024 + - name: Native cloud + timeframe: Q2 2024 + - name: Uplift user experience + timeframe: Q4 2024 + \ No newline at end of file diff --git a/solutions/test/todo-solution01.md b/solutions/test/todo-solution01.md new file mode 100644 index 0000000..1dccae7 --- /dev/null +++ b/solutions/test/todo-solution01.md @@ -0,0 +1,44 @@ +# Sample solution - Solution Design Document + +## Table of Contents + +- [Sample solution - Solution Design Document ](#sample-solution-solution-design-document) + - [Solution ](#solution) + - [Project ](#project) + - [Applications ](#applications) + - [Stakeholders ](#stakeholders) + +--- + + + +## Solution + +Name: Phase 2 Useful app + +Problem Statement: Objective is to make it simple + +## Project + +- Name: Lamb +- Budget: $800k +- Guide: https://docs.qaskx.one/ + + +## Applications + +| Name | Type | Framework | +|------|------|-----------| +| Dashboard | single page application | react | +| User settings | single page application | react | +| Login and credentials | single page application | react | +| Authentication service | OpenAPI | | +| User settings service | OpenAPI | | + +## Stakeholders + +| Name | Title | Role | +|------|-------|------| +| tba | Product Owner | Decision maker | +| tba | Development Team | Implementation | +| tba | End Users | Consumers |