ai-avenger-teams / rebuild-ireland-frontend

FRONTEND: ReBuild Ireland is an innovative AI-driven platform designed to guide individuals through the intricate process of purchasing, refurbishing, and managing vacant or derelict properties in Ireland
0 stars 2 forks source link

[Product] πŸ‘€: REBuild Ireland: 1️⃣ Product Definition | 2️⃣ Specifications #47

Open ai-avengers-team opened 2 months ago

ai-avengers-team commented 2 months ago

Rebuild Ireland: Product Definition & Specifications

Status & Keys

Document: Draft✏️ | Prepared | Reviewable | Accepted

Changes: πŸ”‰: To Discuss βž• Add context | ✏️ Edit, Update | βž– Remove | βœ… Approved | ❌ Rejected

- `Content reuse is the name`
- This is a deliverable
- Collective for all Product

N.B: Nav Links in GitHub Issue main bodies are not functional.

Table of Contents

Next | Bottom

Product Definition

TABLE OF CONTENT

  1. [Concept]()
    1. [Pitch One Liner]()
    2. [Full Description]()
  2. [Objectives and Goals]()
  3. [Problem Statement]()
  4. [Value Proposition]()
πŸ”Ž Help

Concept

πŸ”Ž Help
If you can write a short and sharp summary, then use a LLM to assist and get team to review.

Pitch One Liner (30 Seconds | Elevator)

πŸ”‰βž•

Full Description

πŸ”‰βž•

Objectives and Goals

πŸ”‰βž•

Value Proposition

πŸ”‰βž•


Specifications

πŸ”‰βž•

Prev | Next Bottom

TABLE OF CONTENTS

  1. [Product Requirements (Functional)]()
  2. [Product Requirements (Non-Functional)]()
  3. [Epics: Hackathon Demo]()
  4. [Features]()
  5. [UX Flow and Design Notes]()
  6. [System and Environment Requirements]()
  7. [Assumptions, Constraints and Dependencies]()


Product Requirements (Functional)

πŸ”Ž Help
Itemise the use cases and desired functionality. Describing each feature and or capability as a separate item, with a use case per item. Keeping to highest level, and or using checklists approach, this is a summary collective issue of many references from team and individual workflow tickets.

To be ‡️ Reviewed By:  

Key: Β πŸ”‰: To Discuss Β βž• Add context | ✏️ Edit, Update | βž– Remove

Release Capabilities

As a team, we want to release the following, for a demonstrable solution/idea: πŸ”‰βž•

Release Overview

πŸ”Ž Help
For our specific release, which is a fully functional demo of a proof of concept for our chosen solution, we aim to specify what we aim to achieve with this demo. i.e what does our release look like?

Product Requirements (Non-Functional)

πŸ”Ž Help
What are the top level actual non-functional and/or quality attributes of the demo application? Itemise the use case and quality attribute. Describe each quality as a separate item, inc a brief use case. Keeping to highest level, and or using a checklist approach, this is a summary collection of my references from the team and individual workflow tickets.

πŸ”‰βž•

Epics: Hackathon Demo

πŸ”Ž Help
A well-written epic is a key to have a good understanding and material to refer in case of any doubts during the development work. It helps in avoiding a lot of conflicts and misunderstanding.

πŸ”‰ It is very useful to collaborate when developing your Epic.

Epic Template: Main elements include the user, the product and design requirement, expressed as a story that encapsulates the future state. ``` For: {whom} Who: {what to achieve} Our: {title of project | demo} Is a: {what utility} That: {list benefits, or short form acceptance criteria} ```

EPIC: ReBuild Ireland's Derlicit Housing Engine (Search & Answers) πŸ”‰βž•

For:    REBuild Ireland and general public
Who:    ..
Our:    {title of project | demo}
Is a:   {what utility}
That:   {list benefits, or short form acceptance criteria}

Features

πŸ”Ž Help
For each feature, you should include a description, goal and use case at a minimum. Additional details may be helpful or necessary depending on the complexity of the feature, such as out-of-scope items

Prev | Next TopBottom

Table of Major Features as Functionality

We have two functional features.

  1. Labelled Data for Derlicit or Vacant Housing
  2. ChatBot
Feature Template
A feature should contain a short descriptor of the item of value, a description of the benefit of the feature, and the acceptance criteria ((the points of quality or completion the feature must achieve)
Feature:
Benefit:
User Acceptance Criteria: 

Hackathon Features should


To be ‡️ Reviewed By: @stephendawsondev @jhoanTrujillo @iPoetDev 

Key: Β πŸ”‰: To Discuss Β βž• Add context | ✏️ Edit, Update | βž– Remove


Feature: Labelled Data for Derelict or Vacant Housing

DESCRIPTION: {provide a brief overview of the dataset, including its purpose and relevance to the LLM training process.} πŸ”‰βž•

GOAL: To be able to use labeled data that is off sufficient quality, consistency and reliability to be transformable by a LLM and to be discoverable, queryable and retrieveable by a user and usable by them.

Feature Story

FEATURE: {__} πŸ”‰βž•Β  BENEFIT: {__} πŸ”‰βž•Β  ACCEPTANCE CRITERIA: {__} πŸ”‰βž•Β 

Sources πŸ”‰βž•Β 

The sources of this data are: List each record source of data, bullets

Ensure each data source is credible and properly documented, including authorship, publication date, and access details.

Users, Buyers, Partners, Stakeholders, Trainers, Data Subjects πŸ”‰βž•Β 

The following actors are key principles for this data set. Refer to the team AI Innovation Business Canvas.

Use Case πŸ”‰βž•Β 

:

System and Environment Requirements \ Edit | Update\ @stephendawsondev, @jhoanTrujilloΒ 

Outline bullets or per line, tooling like Vertex and its components, like AutoML.Β 

Hardware, software, platform, manage services, secrets, service accounts, API used, etc

1st partyπŸ”‰βž•Β 

For purpose of hackathon: GCP will be first party for clarity and disambiguation.

3rd party: πŸ”‰βž•Β 

Quality & Other Requirements πŸ”‰βž•Β 


To be ‡️ Reviewed By: @jhoanTrujillo @iPoetDev @stephendawsondev @DarrachBarneveld @violaberg  

Key: Β πŸ”‰: To Discuss Β βž• Add context | ✏️ Edit, Update | βž– Remove



Feature: LLM Chatbot

DESCRIPTION: πŸ”‰βž•Β  GOAL: πŸ”‰ βž•Β 

Feature Story

FEATURE: {__} πŸ”‰βž•Β  BENEFIT: {__} πŸ”‰βž•Β  ACCEPTANCE CRITERIA: {__} πŸ”‰βž•Β 

Users, Partners Stakeholders, Trainers, Data Subjects: πŸ”‰

Use Case πŸ”‰βž•Β 

:

System & Environment Requirements πŸ”‰βž•Β 

πŸ”Ž Help
- Outline bullets or per line, language, framework like Python, React, Django, and there critical components. - Frameworks, platform, manage services, automations, secrets, service accounts, API used, etc
1st party πŸ”‰βž•Β 
3rd party πŸ”‰βž•Β 

Quality Requirements πŸ”‰βž•

These are auto generated AND can be dropped or remove from discussion.

πŸ”Ž Help
For a demo app of an embedded GenAI chatbot using Django and React, especially in the context of a hackathon, it's crucial to focus on a few key non-functional requirements that ensure quality and performance. Here are the top quality aspects to consider
  1. Performance:
    1. Response Time: The chatbot should have a quick response time, ideally under 2 seconds, to maintain user engagement. πŸ”‰βž•βž–
    2. Scalability: The system should be able to handle a reasonable number of concurrent users typical for a demo, without significant degradation in performance. πŸ”‰βž•βž–
  2. Usability:
    1. User Interface: The chatbot interface should be intuitive and easy to use, ensuring that users can interact with it without confusion. πŸ”‰βž•βž–
    2. Accessibility: Ensure that the chatbot is accessible to users with disabilities, adhering to basic web accessibility standards. πŸ”‰βž•βž–
  3. Reliability:
    1. Availability: The chatbot should be available and functional during the entire duration of the hackathon. πŸ”‰βž•βž–
    2. Error Handling: Implement basic error handling to manage unexpected inputs or system failures gracefully. πŸ”‰βž•βž–
  4. Security:
    1. Data Protection: Ensure that any user data processed by the chatbot is handled securely, even if minimal, to protect user privacy.πŸ”‰βž•βž–
    2. Authentication: If applicable, implement a simple authentication mechanism to restrict access to authorized users only. πŸ”‰βž•βž–
  5. Maintainability:
    1. Code Quality: Write clean, well-documented code to facilitate any quick changes or debugging during the hackathon. πŸ”‰βž•βž–
    2. Modularity: Design the system in a modular fashion to allow easy updates or feature addition. πŸ”‰βž•βž–

Any Other Comments πŸ”‰βž•Β 

Add below or open for discussion

UX Flow and Design Notes πŸ”‰βž•βž–

πŸ”Ž Help
1. The UX design of features after the PRD has been reviewed and accepted.
2. To have general guidance required/set at this stage to ensure the release objectives are met. 3. To describe the overall user workflow and design work of the team.

User Experience and User Flow πŸ”‰βž•

Design: User Interface πŸ”‰βž•

Wireframes πŸ”‰βž•

Fonts πŸ”‰βž•

Colours πŸ”‰βž•

Accessibility πŸ”‰βž•

InteractivityΒ πŸ”‰βž•

Visual Features πŸ”‰βž•

Screenshots if applicable πŸ”‰βž•

System and Environment Requirements πŸ”‰βž•

πŸ”Ž Help
Which end-user environments will be supported (such as browsers, operating systems, memory, and processing power, API, platforms, Low Code solutions, etc.).
Above, the system and environment requirements are attached per feature. Below, we aggregated these and include any system level diagrams. (Auto/LLM generated). Options: C4 and or Mermaid Charts for flow charts.

Architectural πŸ”‰βž•

Using the C4 Model (@iPoetDev βœ…) we can produce a system design diagram.

Overall πŸ”‰βž•

Frontend πŸ”‰βž•

Backend πŸ”‰βž•

Data πŸ”‰βž•

Deployment πŸ”‰βž•


Technical Specifications (Minimum to Get Started) πŸ”‰βž•

Itemise the technical spec used for the demo AND for development processes

DEMO πŸ”‰βž•

Development πŸ”‰βž•


:

Assumptions, Constraints and Dependencies

πŸ”Ž Help
List out what is expected of users, any limits for the implementation to be aware of and any outside elements required for the final solution to be functional.

Assumptions πŸ”‰βž•

List the guess and what we don't know or can't know at this stage


Guesses πŸ”‰βž•

Don't Know πŸ”‰βž•


Constraints

List the self imposed decisions or technical or data or scope constraints here. Constraints in designing systems are critical to shaping the system.


Choices | ADRs πŸ”‰βž•

Summary of key team and solution choices that define our solution and its implementation.


Technical πŸ”‰βž•


Data πŸ”‰βž•


Scope πŸ”‰βž•


Rights & LicencesπŸ”‰βž•


:

Acknowledgement

Next | Top

Credits

Sources

Changelog

Edits and additions to the issue

Date1 Version Changed By Change Action
2024-08-26 0.1 Charles J Fowler Initial version created Create
2024-08-26 0.2 @ai-avengers-team Added πŸ”Ž Help & moved supporting text to foldable sections Update
Cell Cell Cell Cell Cell

1: YYYY-MM-DD

ai-avengers-team commented 2 months ago

Cleaned up the document from v0.1 and move quote support text to right aligned πŸ”Ž Help that is a folded text block.

Improves readability.