Skip to content

Latest commit

 

History

148 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Contributors Forks Stargazers Issues MIT License LinkedIn


Project Estimate

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
  1. About The Project
  2. Getting Started
  3. Usage
  4. Roadmap
  5. Contributing
  6. License
  7. Contact
  8. Acknowledgments

About The Project

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.

Key Features

  • 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

(back to top)

Built With

  • .NET
  • Semantic Kernel
  • SignalR
  • React
  • TypeScript
  • Vite
  • Azure

(back to top)

Getting Started

This guide will help you set up and run the Project Estimate application locally.

Prerequisites

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.

Installation

  1. Clone the repository

    git clone https://github.com/ips-ag/project-estimate.git
    cd project-estimate
  2. Configure API Keys

    Create a secrets.json file in the src/api directory:

    {
      "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"
      }
    }
  3. Install Backend Dependencies

    cd src/api
    dotnet restore
  4. Install Frontend Dependencies

    cd ../app
    yarn install
  5. Build and Run

    API (.NET):

    cd src/api
    dotnet run

    App (React):

    cd src/app
    yarn dev
  6. Access the Application

    Open your browser and navigate to http://localhost:5173 (or the port specified by Vite)

(back to top)

Usage

Basic Workflow

  1. 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
  2. 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
  3. 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
  4. 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

AI Agent Roles

  • 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

File Upload Support

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.

(back to top)

Roadmap

  • 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).

(back to top)

Contributing

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!

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

(back to top)

Top contributors:

contrib.rocks image

License

Distributed under the MIT License. See LICENSE for more information.

(back to top)

Contact

IPS AG - Website - LinkedIn

Project Link: https://github.com/ips-ag/project-estimate

(back to top)

About

Estimating project development effort using AI agentic system

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages