AI-DLC (AI-Driven Development Life Cycle) Workflows

repository·main·Indexed 25 days ago

https://github.com/awslabs/aidlc-workflows

A framework of rules and workflows designed to transform AI agents into verifiable, self-correcting engineering workflows for autonomous software development. It features a three-phase adaptive workflow (Inception, Construction, and Operations) and provides setup guides for various IDEs and tools including Kiro, Amazon Q Developer, Cursor, Cline, Claude Code, GitHub Copilot, and OpenAI Codex. Includes the aidlc-evaluation-framework (v0.1.0) for validating workflow changes.

Tokens
145.2K
Snippets
178
Records
663
Agent score
87%

What's inside AI-DLC Workflows

  1. Overview of AI-DLC (AI-Driven Development Life Cycle)

    main
    AI-DLC is an intelligent software development workflow designed to turn AI agents into verifiable, self-correcting engineering workflows. It adapts to user needs, maintains quality standards, and provides control over the development process. Version 2.0 (GA) focuses on making autonomous software development practical through a structured methodology.
  2. Understand the AI-DLC Repository Structure

    main

    The awslabs/aidlc-workflows repository publishes the AI-DLC (AI-Driven Development Life Cycle) methodology as markdown rule files located in aidlc-rules/.

    Key directories include:

    • .github/workflows/: Contains the CI/CD automation (CodeBuild, Release, Security, and PR validation).
    • aidlc-rules/: The core distributable product containing aws-aidlc-rules/ and aws-aidlc-rule-details/.
    • docs/: Documentation for developers and administrators.
    • scripts/aidlc-evaluator/: The evaluation framework (currently in development).
  3. Understand the `aidlc-docs/` directory structure

    main

    When running an AI-DLC workflow, all documentation artifacts are generated in the aidlc-docs/ directory at your workspace root. The contents of this directory depend on your project type (greenfield vs. brownfield), complexity, and which workflow stages are executed.

    Key Directories:

    • inception/: Contains plans, requirements, and design documents (the "WHAT" and "WHY").
    • construction/: Contains per-unit design plans, unit-specific implementation details, and build/test instructions (the "HOW").
    • operations/: Placeholder for future expansion.

    Important Notes:

    • {unit-name} in file paths is a placeholder for your actual unit name (e.g., api-service).
    • Application code is NOT stored in aidlc-docs/; it is placed in your workspace root. Only markdown documentation resides in this directory.
    • Plans in inception/plans/ and construction/plans/ use [Answer]: tags for user input and [ ]/[x] checkboxes to track progress.
  4. Understand the AI-DLC Three-Phase Adaptive Workflow

    main

    AI-DLC uses a three-phase approach that adapts to project complexity:

    🔵 INCEPTION PHASE

    Focuses on WHAT to build and WHY.

    • Requirements analysis and validation.
    • User story creation.
    • Application Design and creating units of work.
    • Risk assessment and complexity evaluation.

    🟢 CONSTRUCTION PHASE

    Focuses on HOW to build it.

    • Detailed component design.
    • Code generation and implementation.
    • Build configuration and testing strategies.
    • Quality assurance and validation.

    🟡 OPERATIONS PHASE

    Focuses on deployment and monitoring (future).

    • Deployment automation and infrastructure.
    • Monitoring and observability setup.
    • Production readiness validation.
  5. Understand the AI-DLC Workflow Phases

    main

    The AI-DLC (AI-Driven Development Life Cycle) workflow is structured into two primary phases: Inception and Construction.

    1. Inception Phase

    This phase focuses on discovery, planning, and design:

    • Workspace Detection: Scanning the target directory (e.g., workspace/) to determine project state.
    • Requirements Analysis: Generating clarifying questions and producing requirements.md.
    • User Stories: Defining epics, personas, and user stories.
    • Workflow Planning: Creating an execution plan with specific stages to be executed.
    • Application Design: Defining services, components, and dependencies (producing files like components.md, services.md, component-methods.md, and component-dependency.md).
    • Units Generation: Decomposing the application into buildable units (e.g., specific services) and determining build order.

    2. Construction Phase

    This phase focuses on implementation and verification:

    • Functional Design: Defining domain entities and business rules.
    • NFR (Non-Functional Requirements) Requirements: Defining technical constraints like authentication (e.g., JWT+bcrypt), logging, and storage.
    • Code Generation: Executing a step-by-step plan to generate application code.
    • Build and Test: Verifying the generated code through builds and automated tests, resulting in a build-and-test-summary.md and coverage reports.
  6. Understand the Qualitative Evaluation Report structure

    main

    The AIDLC Evaluation Report provides a qualitative assessment of AI-generated development artifacts using semantic similarity. The report is divided into two primary phases:

    1. Inception Phase: Evaluates early-stage documents like requirements, design plans, and component specifications.
    2. Construction Phase: Evaluates implementation-related documents such as build instructions, test plans, and code generation strategies.

    Each document is scored across three dimensions:

    • Intent: How well the document captures the required goal.
    • Design: How well the document outlines the architectural approach.
    • Completeness: How much of the necessary information is present.

    An Overall Score (ranging from 0.0 to 1.0) is provided for each phase and the entire evaluation.

  7. BookShelf Community Library API Requirements Overview

    main

    The BookShelf Community Library is a cloud-deployed platform consisting of two independently deployable microservices: the Catalog Service and the Lending Service. The system manages community library operations including book inventory, member management, checkouts, holds, and fee tracking using a Role-Based Access Control (RBAC) model.

    Core Services

    • Catalog Service: Manages book CRUD operations, full-text search, and real-time availability tracking (total_copies and available_copies).
    • Lending Service: Manages member registration, authentication (JWT), checkouts, returns, renewals, holds, and fee management.

    User Roles

    • Admin: Full access to all endpoints in both services.
    • Librarian: Catalog management (CRUD, search), lending operations (returns, holds), and viewing reports.
    • Member: Self-service access (own checkouts, holds, fees, profile, and catalog search).
    • Public: Access to registration, login, and health checks only.
  8. Understand the AI-DLC Evaluation Framework file structure

    main

    The AI-DLC Evaluation Framework is organized as a monorepo using a uv workspace. The architecture separates the execution engine from the evaluation logic.

    Core Components

    • aidlc-runner/: The execution framework. It is a standalone engine that runs the AIDLC workflow (using a two-agent system) and produces output in runs/ folders.
    • packages/: A collection of specialized evaluation modules:
      • qualitative/: Handles semantic evaluation (scoring, comparison, and document mapping).
      • quantitative/: Handles code evaluation (linting, security, and code organization).
      • nonfunctional/: Handles NFR (Non-Functional Requirement) evaluation (token tracking, timing, and consistency).
      • reporting/: Aggregates results from all evaluation packages to generate comprehensive reports.
      • shared/: Common utilities used across all packages.
    • test_cases/: Contains 'Golden test cases' which serve as versioned, reproducible inputs for the AIDLC workflow.
    • runs/: The destination for evaluation outputs. Each run is stored in a {timestamp}-{uuid}/ directory containing metadata, metrics, test results, and the generated workspace/documentation.
  9. Understand the Service Layer architecture

    main
    The application implements a thin service layer pattern using app.py as the central orchestrator. There are no separate service classes; instead, route handlers call engine functions (e.g., math_engine) directly. This architecture is designed for stateless computation without persistence or user sessions.
  10. Core Principles of AI-DLC Workflows

    main

    The AI-DLC workflow operates according to several key principles to ensure efficiency and quality:

    • Fully Adaptive: Each stage is independently evaluated based on the specific needs of the current task.
    • Efficient: Simple changes only execute essential stages to save time.
    • Comprehensive: Complex changes receive full treatment with all necessary safeguards.
    • Transparent: Users see and approve the execution plan before any work begins.
    • Documented: Every decision and change is recorded in a complete audit trail.
    • User Control: Users can explicitly request that specific stages be included or excluded from the workflow.