AI-powered project estimation tool using intelligent agents to analyze requirements and provide accurate effort estimates
Explore the docs »
View Demo
·
Report Bug
·
Request Feature
Table of Contents
Project Estimate is an innovative AI-powered application that revolutionizes software project estimation by leveraging a multi-agent system. The application uses specialized AI agents working collaboratively to analyze project requirements, break them down into user stories and tasks, and provide accurate effort estimates for software development projects.
- AI Agent Orchestration: Multiple specialized AI agents (Consultant, Analyst, Architect, Developer) work together
- Interactive Requirements Analysis: AI agents ask clarifying questions to gather complete requirements
- Automated Task Breakdown: Converts requirements into structured user stories and development tasks
- PERT-based Estimation: Provides optimistic, realistic, and pessimistic estimates with calculated effort
- Real-time Communication: Uses SignalR for live interaction between AI agents and users
- Document Processing: Supports file uploads for requirement documents
- Azure Integration: Built for cloud deployment with Azure services
This guide will help you set up and run the Project Estimate application locally.
Before running the application, ensure you have the following installed:
-
.NET 9.0 SDK
dotnet --version
-
Node.js (v20 or higher) and Yarn
node --version yarn --version
-
Azure subscription with access to Azure OpenAI, Azure AI Document Intelligence, and Azure Storage account.
-
Clone the repository
git clone https://github.com/ips-ag/project-estimate.git cd project-estimate -
Configure API Keys
Create a
secrets.jsonfile in thesrc/apidirectory:{ "AzureOpenAI": { "Endpoint": "your-azure-openai-endpoint", "ApiKey": "your-api-key", "DeploymentName": "your-deployment-name" }, "AzureDocumentIntelligence": { "Endpoint": "your-document-intelligence-endpoint", "ApiKey": "your-api-key" }, "AzureStorageAccount": { "ConnectionString": "your-storage-connection-string" } } -
Install Backend Dependencies
cd src/api dotnet restore -
Install Frontend Dependencies
cd ../app yarn install -
Build and Run
API (.NET):
cd src/api dotnet runApp (React):
cd src/app yarn dev -
Access the Application
Open your browser and navigate to
http://localhost:5173(or the port specified by Vite)
-
Provide Project Requirements
- Enter your project requirements as textual input in the chat interface
- Alternatively, upload a requirements document (PDF, Word, etc.) for the system to process
- The system supports various document formats through Azure AI Document Intelligence
-
Analyst Verification Process
- The Analyst AI agent will review your requirements and begin verification
- The analyst may ask clarifying questions about technical constraints, user count, use cases, integrations, security requirements, etc.
- Answer the analyst's questions to ensure complete and accurate requirements gathering
-
Review AI Agent Analysis
- Once requirements are verified, the Architect AI agent will break down requirements into user stories and tasks
- The Developer AI agent will provide effort estimates using PERT methodology
- Enable "Show Reasoning" to see the AI agents' thought processes during analysis
-
Get Final Estimates
- Receive a comprehensive breakdown with optimistic, realistic, and pessimistic estimates
- Results are presented in a structured Markdown table format with calculated effort values
- Analyst AI Agent: Verifies and clarifies project requirements through interactive questioning
- Architect AI Agent: Analyzes requirements and creates user stories. It further breaks them down into development tasks
- Developer AI Agent: Provides effort estimates in man-days using PERT estimation techniques
The application supports uploading requirement documents to provide additional context for the AI agents. Supported formats include all document types supported by Azure AI Document Intelligence, e.g. PDF, Word, Excel, JPEG, PNG, text files, Markdown, etc.
- Multi-agent AI system implementation
- Real-time communication with SignalR
- Document processing capabilities
- PERT-based estimation methodology
- Interaction with architect and developer AI agents
- Chat history
- Step back functionality
See the open issues for a full list of proposed features (and known issues).
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature) - Commit your Changes (
git commit -m 'Add some AmazingFeature') - Push to the Branch (
git push origin feature/AmazingFeature) - Open a Pull Request
Distributed under the MIT License. See LICENSE for more information.
Project Link: https://github.com/ips-ag/project-estimate