The site that you are currently viewing is a static version of the Software Factory documentation delivered with the

version v7.2.
For up-to-date documentation, see the latest version.

Gen AI

Introduction

Generative AI (genai ) augments the SDLC by automating high-frequency, low-complexity tasks and compressing feedback loops.

Context-aware code assistants can synthesize idiomatic code, propose refactorings, and scaffold tests that adhere to language- and framework-specific conventions. When coupled with repository-aware retrieval (RAG ) and embeddings, their responses align with project architecture, dependency versions, and style guides. Integrated into CI/CD, GenAI can generate unit, property, and fuzz tests; summarize static analysis findings; suggest targeted patches; and enforce secure coding and compliance policies—improving lead time, reducing rework, and keeping quality gates green.

Beyond implementation, GenAI supports technical decision-making and documentation by:

  • translating requirements into acceptance criteria
  • deriving sequence and component diagrams from source code and manifests
  • summarizing changesets for reviewers
  • drafting API and migration guides from schemas
  • assisting operations teams by correlating logs and metrics to identify likely root causes and propose remediation runbooks

These uses can be constrained with guardrails (for example, prompt/response filtering, policy-aware system prompts, and human-in-the-loop review) to maintain governance, security, and IP control and to monitor effects on metrics such as throughput, MTTR, and defect density.

GenAI can be used in two complementary ways: Chat mode and Agentic mode.

Chat mode is useful to explore ideas, clarify a task, draft prompts, or prepare an approach, but it relies on the user to manually provide and refresh the relevant context.

Agentic mode is better suited for execution because it can handle context more systematically across a structured workflow, break work into controlled steps, and keep actions reviewable. For software delivery, this makes Agentic mode the preferred choice for refactors, bug fixes, test improvements, and maintenance tasks where teams need results that are reliable, traceable, and reversible. This practice is mainly for software engineers and also for tech leads, and platform teams who want repeatable ways of using GenAI safely at scale.

Key principles

  • Use Chat to think, use Agentic to act. Chat is for exploration, framing, and clarification; Agentic mode is for controlled, multi-step execution where actions must be traceable and reversible.

  • Context quality drives result quality. Explicitly scope what the assistant sees—files, constraints, dependencies—so its actions stay aligned with project architecture and intent.

  • Humans own decisions, assistants accelerate execution. The user defines intent, acceptance criteria, and stopping points; the assistant proposes and executes under review.

  • Every output must be independently verifiable. Trust objective evidence (tests, linting, logs, diffs) over plausible wording or confident tone.

Practical tips

  • Keep each Agentic request to one concern. Small, well-bounded steps are easier to review, less likely to drift, and simpler to roll back.

  • Define acceptance criteria before asking the assistant to act. This prevents scope creep and gives you a clear basis to approve or reject.

  • Require visible previews (diffs, commands, intermediate outputs) before execution. Never let an action land without understanding what it changes.

  • Use checkpoints (commits, branches, snapshots) to stay reversible. If a step introduces a regression, you can compare and recover quickly.

  • Integrate guardrails in the toolchain. Security scans, SBOM checks, linting, and review gates confirm results independently of the assistant.

  • Encode successful patterns as reusable team instructions. Repeatable workflows, quality gates, and review checklists turn individual wins into consistent team practice.