Initial Draft
Browse files- dto/release_notes.py +21 -0
- dto/requirement_gathering.py +18 -0
- dto/user_story.py +19 -0
dto/release_notes.py
ADDED
@@ -0,0 +1,21 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
from langchain_core.pydantic_v1 import BaseModel, Field
|
2 |
+
from typing import List
|
3 |
+
from datetime import datetime
|
4 |
+
|
5 |
+
|
6 |
+
class Enhancement(BaseModel):
|
7 |
+
"""Release Enhancement Pydantic Schema"""
|
8 |
+
|
9 |
+
title: str = Field(description="Provide enhancement title")
|
10 |
+
description: str = Field(description="Provide enhancement description")
|
11 |
+
benefits: str = Field(description="The benefit or impact on the user or system as a result of the enhancement")
|
12 |
+
reason: str = Field(description="The reason for implementing the change.")
|
13 |
+
|
14 |
+
|
15 |
+
class ReleaseNotes(BaseModel):
|
16 |
+
"""Release Notes Pydantic Schema"""
|
17 |
+
|
18 |
+
release_date: str = Field(description="Provide release date",default=datetime.now().strftime('%d-%b-%Y').upper(), const=True)
|
19 |
+
product_name: str = Field(description="Provide product name",default="Oracle Banking Retail Lending", const=True)
|
20 |
+
summary: str = Field(description="A brief introduction highlighting the key focus of this release")
|
21 |
+
enhancements: List[Enhancement] = Field(description="List of enhancements in this release")
|
dto/requirement_gathering.py
ADDED
@@ -0,0 +1,18 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
from langchain_core.pydantic_v1 import BaseModel, Field
|
2 |
+
from typing import List
|
3 |
+
|
4 |
+
class RequirementGathering(BaseModel):
|
5 |
+
"""Requirement Gathering Pydantic Schema"""
|
6 |
+
|
7 |
+
overview: str = Field(description="Provide short overview of requirement")
|
8 |
+
description: str = Field(description="Provide requirement description. Ensure each requirement is explicitly stated as per the document.")
|
9 |
+
benefits: str = Field(description="The benefit or impact on the user or system as a result of the requirement. Ground it in the context of the document. Consider only for banking applications as product domain.")
|
10 |
+
reason: str = Field(description="The reason for implementing the requirement.")
|
11 |
+
priority: str = Field(description="The priority of the requirement. Return only one from list of values [High, Medium and Low]. Ground result based on the document.")
|
12 |
+
tags: List[str] = Field(description="List of tags for the requirement to identify into relevant categories(e.g., Product Specifications, Validations and Quality Standards)")
|
13 |
+
|
14 |
+
class RequirementGatheringDetails(BaseModel):
|
15 |
+
"""Requirement Gathering Details Pydantic Schema"""
|
16 |
+
|
17 |
+
header: str = Field(description="Provide the header of the document.")
|
18 |
+
requirements: List[RequirementGathering] = Field(description="List of requirements gathered from the document.")
|
dto/user_story.py
ADDED
@@ -0,0 +1,19 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
from langchain_core.pydantic_v1 import BaseModel, Field
|
2 |
+
from typing import List
|
3 |
+
|
4 |
+
class UserStoryScenarios(BaseModel):
|
5 |
+
"""List of User Stories Business Scenarios Pydantic Schema"""
|
6 |
+
|
7 |
+
scenario_title: str = Field(description="Provide a business scenario acceptance criteria title")
|
8 |
+
pre_conditions: str = Field(description="Provide a precondition details")
|
9 |
+
action_details: str = Field(description="Provide action details to be taken in business application by the user role specified")
|
10 |
+
expected_outcome: str = Field(description="Provide list of activities to be allowed by business user role")
|
11 |
+
|
12 |
+
class UserStory(BaseModel):
|
13 |
+
"""User Story Pydantic Schema"""
|
14 |
+
|
15 |
+
title: str = Field(description="Provide clear user story title")
|
16 |
+
role: str = Field(description="Provide application user role",default="Loan Servicing Agent",const=True)
|
17 |
+
feature: str = Field(description="Provide application feature/functionality")
|
18 |
+
benefit: str = Field(description="Provide benefits of the feature to the user role")
|
19 |
+
user_story_scenarios : List[UserStoryScenarios] = Field(description="Provide list of user story scenarios")
|