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
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.
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}
```
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
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
provide business | demo | judge-able value, i.e. meet the criteria listed below.
ai-avenger-teams/rebuild-ireland-frontend#46
ShouldΒ
be estimable | minimally viableΒ
be testableΒ
be deployable
be acceptable
be functional
To be β€΅οΈ Reviewed By: @stephendawsondev @jhoanTrujillo @iPoetDevΒ
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.
Trainers/Operators: Individuals responsible for operating and training the chatbot / LLM provider .
{Model operators, developers} πβ
Data Subjects: Individuals whose data is included in the chatbot inputs | processes | outputs or who will generate new insights from their input.
{data subjects, personal identifiers} πβ
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
Performance:
Response Time: The chatbot should have a quick response time, ideally under 2 seconds, to maintain user engagement. πββ
Scalability: The system should be able to handle a reasonable number of concurrent users typical for a demo, without significant degradation in performance. πββ
Usability:
User Interface: The chatbot interface should be intuitive and easy to use, ensuring that users can interact with it without confusion. πββ
Accessibility: Ensure that the chatbot is accessible to users with disabilities, adhering to basic web accessibility standards. πββ
Reliability:
Availability: The chatbot should be available and functional during the entire duration of the hackathon. πββ
Error Handling: Implement basic error handling to manage unexpected inputs or system failures gracefully. πββ
Security:
Data Protection: Ensure that any user data processed by the chatbot is handled securely, even if minimal, to protect user privacy.πββ
Authentication: If applicable, implement a simple authentication mechanism to restrict access to authorized users only. πββ
Maintainability:
Code Quality: Write clean, well-documented code to facilitate any quick changes or debugging during the hackathon. πββ
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 πβ
User journey
User Stories
User Acceptance Testing
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 πβ
We were given, by the organisers, access to OpenAI API keys for 7 days and had to abide by National AI Challenge's terms of service
Data πβ
.Β
Scope πβ
E.g. We decided for only focusing on Cork Local Government authorities and derelict homes in Co Cork, Ireland.
We decided if we needed to increase out scope of data collection, we would move from County level to Provence level, if there was insufficient data and county level data has to be augmented e.g. Cork => Munster region.Β
.
.
.
Rights & Licencesπβ
By participating we opt to retain ownership of their projects.
However, by participating, we grant TechIreland, Enterprise Ireland and Data2Sustain EDIH a non-exclusive, royalty-free licence to use, distribute, and display your project for promotional purposes.
Rebuild Ireland: Product Definition & Specifications
Status & Keys
Document:
Draft
βοΈ | Prepared | Reviewable | AcceptedChanges: π: To Discuss β Add context | βοΈ Edit, Update | β Remove | β Approved | β Rejected
N.B: Nav Links in GitHub Issue main bodies are not functional.
Table of Contents
Next | Bottom
Product Definition
TABLE OF CONTENT
π Help
Concept
π Help
Pitch One Liner (30 Seconds | Elevator)
Full Description
Objectives and Goals
Value Proposition
Specifications
Prev | Next Bottom
TABLE OF CONTENTS
Product Requirements (Functional)
π Help
Release Capabilities
As a team, we want to release the following, for a demonstrable solution/idea: πβ
Release Overview
π Help
Product Requirements (Non-Functional)
π Help
Epics: Hackathon Demo
π Help
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) πβ
Features
π Help
Prev | Next TopBottom
Table of Major Features as Functionality
We have
two
functional features.Feature Template
Hackathon Features should
Feature: Labelled Data for Derelict or Vacant Housing
Feature Story
Sources πβΒ
The sources of this data are: List each record source of data, bullets
Date of Publishing
) "Title
". Last Access (Date of Access
): {Data Source URL
}Date of Publishing
) "Title
". Last Access (Date of Access
): {Data Source URL
}Ensure each data source is credible and properly documented, including authorship, publication date, and access details.
Users, Buyers, Partners, Stakeholders, Trainers, Data Subjects πβΒ
Users
: Individuals or entities who will interact with the dataset.{Individuals, entities, organisations}
πβBuyers
: Those who may purchase or invest in the dataset.{purchasers, investors}
πβPartners
: Suppliers and data controllers involved in the dataset lifecycle.{suppliers, data controller}
πβStakeholders
: Interested parties, such as RACIS (Responsible, Accountable, Consulted, Informed, Supporting) roles.{RACIS interested parties}
, overlaps β¬οΈβ¬οΈTrainers/Operators
: Individuals responsible for operating and training the model.{Model operators, developers}
πβData Subjects
: Individuals whose data is included in the dataset t or who will generate new insights from their input.{data subjects, personal identifiers}
πβUse Case πβΒ
System and Environment Requirements \ Edit | Update\ @stephendawsondev, @jhoanTrujilloΒ
1st partyπβΒ
For purpose of hackathon: GCP will be first party for clarity and disambiguation.
3rd party: πβΒ
Quality & Other Requirements πβΒ
data collection
} : How did we collect? πβdata augmentation
}: to enhance the dataset with additional relevant information to improve model training. πβformating
}, How formats and transformations did we do? πβdata preprocessing
} : What data cleansing, missing values, duplicates, normalisations, alias for same values,Β πβexploratory data analysis
}: Can we explain, and interpret the data without using an intermediate LLM. Human in the loop. πβtraining
}: How | workflow of training, minimum requirements πβprompting
}: How we defined our prompts πβmodel specialisation
}: Foundational model to a specialised train model steps? πβfine-tuning
}: iterations and other hyperparameters to set/vary. πβperformance and evaluations
} πβSee [wiki for definitions](https://github.com/ai-avenger-teams/rebuild-ireland-backend/wiki/AI-Ethics).
Feature: LLM Chatbot
Feature Story
Users, Partners Stakeholders, Trainers, Data Subjects: π
Users
: Individuals or entities who will interact with the chatbot / LLM provider .{Individuals, entities, organisations}
πβPartners
: Suppliers and data controllers involved in the chatbot / LLM provider .{suppliers, data controller}
πβStakeholders
: Interested parties, such as RACIS (Responsible, Accountable, Consulted, Informed, Supporting) roles.{RACIS interested parties}
, overlaps β¬οΈβ¬οΈ πβTrainers/Operators
: Individuals responsible for operating and training the chatbot / LLM provider .{Model operators, developers}
πβData Subjects
: Individuals whose data is included in the chatbot inputs | processes | outputs or who will generate new insights from their input.{data subjects, personal identifiers}
πβUse Case πβΒ
System & Environment Requirements πβΒ
π Help
1st party πβΒ
3rd party πβΒ
Quality Requirements πβ
π Help
Any Other Comments πβΒ
UX Flow and Design Notes πββ
π Help
User Experience and User Flow πβ
Design: User Interface πβ
Wireframes πβ
Fonts πβ
Colours πβ
Accessibility πβ
InteractivityΒ πβ
Visual Features πβ
System and Environment Requirements πβ
π Help
Architectural πβ
Overall πβ
Frontend πβ
Backend πβ
Data πβ
Deployment πβ
Technical Specifications (Minimum to Get Started) πβ
DEMO πβ
Development πβ
Assumptions, Constraints and Dependencies
π Help
Assumptions πβ
Guesses πβ
Don't Know πβ
Constraints
Choices | ADRs πβ
Technical πβ
Data πβ
Scope πβ
Rights & Licencesπβ
Acknowledgement
Next | Top
Credits
Sources
Changelog
1:
YYYY-MM-DD