Agentic Workflows Explained: Conditional Logic, Loops & Branching

What Are Agentic Workflows?
Agentic workflows let AI systems make decisions on their own. Instead of following a fixed script, these workflows give AI agents the ability to choose what happens next based on what they see.
Think about traditional automation. It works like this: if X happens, do Y. Every time. No exceptions. That's fine for simple tasks, but it breaks down when things get complicated or unpredictable.
Agentic workflows work differently. They analyze the situation, make choices, and adapt their behavior in real-time. An agent might decide to gather more information, skip a step, or try a different approach based on what it learns as it goes.
The difference matters. Traditional automation handles about 20-30% of business processes effectively. Agentic workflows can tackle the other 70-80% where context matters, exceptions are common, and rigid rules don't work.
Here's what makes agentic workflows distinct:
- They evaluate conditions and choose paths dynamically
- They can loop through data or retry failed operations
- They branch into multiple parallel tasks when needed
- They maintain state and memory across complex operations
- They recover from errors without starting over
Research shows that by 2028, around 30% of business applications will use agentic workflows, up from less than 1% in 2024. The market is growing from $7.3 billion to an expected $41.3 billion by 2030.
The Three Core Control Structures
Agentic workflows rely on three fundamental control structures: conditional logic, loops, and branching. Understanding these patterns is critical for building reliable AI automation.
Conditional Logic: Teaching Agents to Choose
Conditional logic lets agents evaluate data and make decisions. Instead of executing every step in sequence, agents assess conditions and choose different paths.
A basic conditional workflow looks like this:
- Agent receives input
- Agent evaluates one or more conditions
- Agent executes different actions based on evaluation
- Agent continues to next step
Real-world example: A customer support agent receives a ticket. It checks the ticket urgency (high, medium, or low). For high urgency, it immediately escalates to a human. For medium urgency, it attempts automated resolution. For low urgency, it adds to a queue for batch processing.
The conditions can be simple or complex. Simple conditions check single values like "Is the price over $1000?" Complex conditions evaluate multiple factors simultaneously, like checking customer history, account status, and purchase patterns before approving a transaction.
Conditional edges enable dynamic routing. The agent doesn't just follow a predetermined path—it actively chooses based on the current context. This makes workflows adaptable without requiring manual intervention.
MindStudio's visual workflow builder makes conditional logic straightforward. You can add conditional branches by dragging blocks and defining the criteria. The platform evaluates conditions at runtime and routes execution automatically.
Loops: Repeating Actions Until Complete
Loops let agents repeat operations multiple times. This is essential when processing lists, retrying failed operations, or iterating until a goal is met.
There are two main types of loops in agentic workflows:
Fixed iteration loops run a set number of times. Use these when you know exactly how many iterations you need. For example, processing a list of 50 customer records means looping 50 times.
Conditional loops continue until a specific condition is met. The agent keeps trying until it succeeds, reaches a maximum attempt limit, or determines the task is impossible.
Loops become powerful when combined with conditional logic. An agent might:
- Try to call an API
- Check if the call succeeded
- If it failed, wait and retry
- After five attempts, escalate to a human
This pattern handles transient failures gracefully. Network issues, temporary service outages, or rate limits don't crash the entire workflow—they just trigger a retry.
Loop design requires careful planning. Infinite loops are a real risk. Every loop needs a clear exit condition, whether that's success, a maximum attempt count, or a timeout.
Performance matters too. A loop that processes 10,000 items one at a time might take hours. Better to batch operations or use parallel processing when possible.
Branching: Executing Multiple Paths
Branching lets agents split execution into multiple parallel paths. Instead of choosing one option, the agent pursues several simultaneously.
This is different from conditional logic. Conditionals evaluate and choose one path. Branching executes multiple paths at once, then brings results back together.
Common branching patterns:
Fan-out/fan-in: The agent spawns multiple parallel tasks, waits for all to complete, then aggregates the results. Useful for gathering information from multiple sources simultaneously.
Parallel execution: Multiple agents work on independent tasks at the same time. Each agent operates autonomously, and the system doesn't wait for synchronization until necessary.
Race conditions: Multiple agents attempt the same task using different approaches. The first successful result wins, and the others are cancelled.
Example workflow: A research agent needs to gather competitive pricing data. It branches into three parallel tasks—one scrapes competitor websites, one queries pricing databases, and one searches recent news articles. When all three complete, it aggregates the findings into a single report.
Branching improves speed dramatically. Tasks that would take 30 minutes in sequence might complete in 10 minutes when parallelized.
But branching adds complexity. You need to handle scenarios where some branches succeed and others fail. You need to manage resource consumption when running multiple operations concurrently. And you need to merge results intelligently when branches complete.
Common Workflow Patterns
Research has identified several workflow patterns that appear repeatedly across different domains. Understanding these patterns helps you design better agentic systems.
ReAct: Reason and Act
The ReAct pattern alternates between reasoning and acting. The agent thinks about what to do, takes an action, observes the result, and thinks again.
The cycle looks like this:
- Agent receives a goal
- Agent reasons about the next step
- Agent executes an action (calls a tool, queries data, etc.)
- Agent observes the outcome
- Agent incorporates the result into its reasoning
- Repeat until goal is achieved
ReAct is powerful because it lets agents adapt as they learn. Initial plans might be wrong, but the agent can course-correct based on what it discovers.
Example: An agent needs to book a meeting. It starts by reasoning that it should check calendars. It calls the calendar API. It observes that Tuesday is free. It reasons that Tuesday works. It sends the invite. It observes the invite was sent successfully. Task complete.
If something fails—maybe Tuesday isn't available after all—the agent reasons about alternatives and tries again.
Plan-and-Execute
Plan-and-Execute separates planning from execution. The agent creates a complete plan upfront, then executes all steps in sequence.
This pattern works well when:
- The problem is well-understood
- The steps are predictable
- Parallel planning would waste resources
The agent generates a structured plan with clear steps, validates the plan makes sense, then executes each step in order. If execution fails, the agent can either retry the step or replan entirely.
Plan-and-Execute is less flexible than ReAct but more efficient when plans are stable.
Reflection Loop
The Reflection pattern adds a self-review step. After completing a task, the agent evaluates its own output and decides whether to revise.
Process:
- Agent completes a task
- Agent evaluates the output quality
- If quality is acceptable, proceed
- If quality is poor, revise and try again
- Repeat until quality threshold is met or max iterations reached
This pattern reduces errors significantly. Research shows agents with reflection loops can improve output quality by 20-40% compared to single-pass execution.
Example: A content writing agent drafts a product description. It then evaluates whether the description includes all required details, matches the brand voice, and stays within length limits. If it fails any check, it revises the text and evaluates again.
Hierarchical Delegation
Complex tasks often require multiple specialized agents working together. Hierarchical delegation uses a coordinator agent that breaks down tasks and assigns them to specialist agents.
The coordinator:
- Receives the high-level goal
- Decomposes it into subtasks
- Routes each subtask to an appropriate specialist
- Monitors progress
- Aggregates results
This mirrors how human teams work. A project manager doesn't do all the work—they coordinate specialists who each handle their piece.
Example: A data analysis workflow has a coordinator agent that delegates to three specialists: one for data extraction, one for statistical analysis, and one for visualization. Each specialist completes its task independently, and the coordinator assembles the final report.
Hierarchical patterns scale well. Add more specialists as needed without redesigning the entire system.
Router Pattern
The Router pattern intelligently directs tasks to the most appropriate handler. Instead of executing tasks sequentially, a router agent evaluates each task and sends it to the right specialist.
Routing decisions consider:
- Task type and complexity
- Required capabilities
- Current agent availability and load
- Cost and latency requirements
This enables dynamic load balancing and optimal resource utilization. Simple tasks go to fast, cheap agents. Complex tasks go to more capable agents.
MindStudio implements dynamic routing through its Service Router, which automatically selects the most appropriate model from over 200 options based on the task requirements. This gives you sophisticated routing without manual configuration.
Error Handling and Recovery
Errors are inevitable in agentic workflows. Networks fail, APIs time out, models hallucinate, and data arrives in unexpected formats. Robust workflows anticipate failures and recover gracefully.
The Problem with Traditional Error Handling
Traditional software throws exceptions. When something breaks, execution stops, an error is logged, and someone (or something) deals with it later.
That approach doesn't work for agents. Agents operate autonomously, often for extended periods. If every error crashes the workflow, agents become unreliable.
Worse, agents are nondeterministic. The same input can produce different outputs based on model behavior, context, and random factors. This makes errors harder to anticipate and reproduce.
Bounded Retries
Retries are the first line of defense. When an operation fails, try it again. But naive retry logic creates problems—infinite loops, wasted resources, and cascading failures.
Bounded retries set limits:
- Maximum number of attempts (usually 3-5)
- Exponential backoff between attempts
- Different strategies for different error types
Example: An API call fails with a 503 error (service temporarily unavailable). The agent waits one second and retries. If that fails, it waits two seconds. Then four seconds. After five attempts, it escalates to an error handler rather than continuing indefinitely.
Not all errors should trigger retries. A 404 (not found) won't be fixed by waiting and trying again. Authentication errors need different handling than rate limits. Smart retry logic distinguishes between transient and permanent failures.
Fallback Mechanisms
Fallbacks provide alternative paths when primary operations fail. Instead of giving up, the agent tries a different approach.
Common fallback patterns:
Model fallback: If a capable but expensive model fails or times out, fall back to a faster, simpler model.
Tool fallback: If one API is unavailable, use an alternative API that provides similar functionality.
Data fallback: If real-time data isn't available, use cached or approximate data.
Human fallback: If automated handling fails after all retry attempts, escalate to a human operator.
Example: A translation agent needs to translate a document. It tries the primary translation API. If that fails, it falls back to a secondary translation service. If both fail, it adds the task to a queue for human translation.
Fallbacks should degrade gracefully. A workflow might provide approximate results with lower confidence rather than no results at all.
State Persistence and Recovery
Long-running workflows need to maintain state even when things break. If an agent crashes halfway through a 50-step process, it should be able to resume from step 25, not start over at step 1.
State persistence involves:
- Checkpointing progress after each major step
- Storing intermediate results
- Recording what's been attempted and what remains
- Maintaining transaction logs for audit trails
Durable execution frameworks handle this automatically. They checkpoint every step to a database, creating a recoverable record of progress. If the agent crashes or the system restarts, execution resumes from the last checkpoint.
This approach transforms brittle prototypes into production-ready systems. Workflows that would fail completely with a single error can now handle network outages, service restarts, and transient failures without losing progress.
Circuit Breakers
Circuit breakers prevent cascading failures in multi-agent systems. When one component starts failing repeatedly, the circuit breaker stops sending requests to it, giving it time to recover.
A circuit breaker has three states:
Closed: Normal operation. Requests flow through.
Open: Too many failures detected. Stop sending requests. Return errors immediately.
Half-open: After a timeout, allow a limited number of test requests. If they succeed, close the circuit. If they fail, open it again.
This prevents a struggling service from being overwhelmed by more requests it can't handle. It also prevents one failing component from dragging down the entire system.
Validation and Guardrails
Agents can make mistakes. Models hallucinate. APIs return unexpected data. Validation checks catch errors before they propagate.
Implement validation at multiple levels:
Input validation: Check that data matches expected formats before processing.
Output validation: Verify results make sense before passing them to the next step.
Schema validation: Ensure structured data matches defined schemas.
Business rule validation: Check that results comply with domain-specific constraints.
Confidence scoring: Track how confident the agent is in its outputs and flag low-confidence results for review.
MindStudio workflows support validation at each step. You can add checks that verify outputs before execution continues, preventing bad data from moving through your pipeline.
Multi-Agent Coordination
Complex workflows often require multiple agents working together. Each agent has specialized capabilities, and they coordinate to achieve goals no single agent could handle alone.
Communication Patterns
Agents need to share information and coordinate actions. Several patterns enable this:
Direct messaging: Agents send structured messages to specific recipients. Simple and reliable, but requires explicit routing logic.
Publish-subscribe: Agents publish events to topics. Other agents subscribe to relevant topics and react to events. This decouples senders from receivers.
Shared memory: Agents read and write to a common data store. Good for state that multiple agents need to access, but requires careful synchronization.
Orchestrated handoffs: A central coordinator manages which agent runs when. The coordinator explicitly passes control and context between agents.
The right pattern depends on your workflow complexity and coordination requirements.
Coordination Strategies
When multiple agents work simultaneously, they need coordination to avoid conflicts and ensure coherent results.
Sequential coordination: Agents execute in order, each waiting for the previous one to complete. Simple but slow.
Parallel coordination: Multiple agents run simultaneously on independent tasks. Fast but requires careful result aggregation.
Hierarchical coordination: A supervisor agent delegates to workers and manages their interactions. Scales well but adds coordination overhead.
Consensus coordination: Multiple agents work on the same problem independently. Their results are compared, and consensus determines the final answer. Increases reliability but uses more resources.
Agent Handoffs
Handoffs enable dynamic delegation between specialized agents. One agent assesses a task and decides whether to handle it or transfer it to a more appropriate agent.
Effective handoffs require:
- Clear criteria for when to hand off
- Context preservation across the handoff
- Explicit acknowledgment from the receiving agent
- Fallback handling if the handoff fails
Example: A customer service agent receives a technical support question. It recognizes this requires specialized knowledge and hands off to a technical support agent, including all conversation history and context. The technical agent handles the issue without requiring the customer to repeat information.
Debate and Consensus Patterns
For critical decisions, multiple agents can debate before reaching a conclusion. This reduces errors and catches blind spots.
Process:
- Multiple agents analyze the same problem independently
- Each agent proposes a solution with supporting reasoning
- Agents critique each other's proposals
- Agents revise their proposals based on feedback
- A consensus mechanism selects the best solution
This pattern mirrors how humans make important decisions—seeking multiple perspectives before committing to action.
Consensus mechanisms include:
- Majority voting
- Weighted voting based on agent confidence scores
- Judge agent that evaluates all proposals
- Automated scoring based on criteria
Implementing Workflows with MindStudio
MindStudio provides a visual interface for building agentic workflows. You can implement conditional logic, loops, branching, and multi-agent coordination without writing code.
Visual Workflow Design
MindStudio uses a block-based interface. Each block represents a step in your workflow—getting user input, calling a model, executing a function, or making a decision.
Blocks connect with edges that define execution flow. You can add conditional edges that evaluate criteria and route execution dynamically.
For example, you might add a conditional block that checks a value. If it's above a threshold, execution flows one direction. If it's below, execution flows another direction. The agent evaluates this condition at runtime and chooses the path automatically.
Dynamic Tool Use
MindStudio agents can decide which tools to use during execution. Instead of hardcoding every tool call, you give the agent access to multiple tools and let it choose based on context.
This brings autonomous decision-making to workflows. The agent might:
- Query a database when it needs specific information
- Call a web API when real-time data is required
- Execute a calculation when processing numbers
- Send a notification when an action completes
The agent selects tools intelligently based on what it's trying to accomplish and what tools are available.
Service Router
MindStudio provides access to over 200 AI models through a unified interface. The Service Router handles model selection automatically based on task requirements.
You don't need to manage separate API keys for each provider. You don't need to write routing logic manually. The platform handles it.
This gives you sophisticated capabilities:
- Route simple tasks to fast, inexpensive models
- Route complex tasks to more capable models
- Fall back to alternative models if the primary choice is unavailable
- Balance cost and performance automatically
State Management
MindStudio workflows maintain state automatically across execution steps. Variables persist throughout the workflow, and you can pass data between blocks seamlessly.
This makes complex workflows manageable. You can:
- Store intermediate results
- Track progress through multi-step processes
- Reference earlier outputs in later steps
- Build context that accumulates as the workflow progresses
Human-in-the-Loop Integration
Some decisions require human judgment. MindStudio supports human-in-the-loop workflows where agents pause and wait for approval before proceeding.
You can add approval checkpoints at critical steps. The workflow executes up to that point, presents results to a human reviewer, waits for approval or revision, then continues based on the human decision.
This enables workflows that combine autonomous efficiency with human oversight where it matters most.
MindStudio Architect
MindStudio Architect generates workflow scaffolding from text descriptions. Describe what you want—"process customer orders and send confirmation emails"—and Architect builds the initial structure with appropriate blocks and logic.
This cuts setup time significantly. Instead of manually configuring every block and connection, you get a working starting point in minutes. You can then refine and customize as needed.
Real-World Use Cases
Agentic workflows solve practical problems across industries. Here are examples of how organizations use conditional logic, loops, and branching in production.
Customer Service Automation
A support agent handles incoming tickets. It uses conditional logic to route tickets based on urgency and category.
Workflow:
- Receive ticket
- Analyze content to determine category (billing, technical, general)
- If billing: route to billing specialist agent
- If technical: check complexity score
- If complexity is high: escalate to human
- If complexity is low: attempt automated resolution
- Try up to three resolution attempts (loop with retry limit)
- If resolution succeeds: send confirmation and close ticket
- If resolution fails after three attempts: escalate to human
This workflow handles the majority of tickets automatically while ensuring complex issues get human attention.
Document Processing Pipeline
A legal firm processes contracts. The workflow uses branching to extract multiple types of information in parallel.
Workflow:
- Receive contract document
- Branch into parallel extraction tasks:
- Extract party names and contact information
- Extract key dates and deadlines
- Extract financial terms
- Extract obligations and responsibilities
- Extract termination clauses
- Wait for all extractions to complete
- Validate each extraction for completeness
- If validation fails, retry extraction for that section (loop)
- Aggregate all extracted information into structured format
- Generate summary report
- Store in database and notify reviewers
Parallel extraction reduces processing time from 15 minutes to 3 minutes per document.
Fraud Detection System
A financial services company uses agentic workflows for transaction monitoring.
Workflow:
- Receive transaction data
- Run parallel risk checks:
- Check transaction amount against account history
- Check location against typical patterns
- Check merchant against known fraud indicators
- Check timing against behavioral norms
- Calculate composite risk score
- If score is low: approve immediately
- If score is medium: request additional verification
- If score is high: block transaction and alert fraud team
- For blocked transactions, attempt to contact customer (loop with timeout)
- If customer confirms legitimate, unblock and allow
- If customer unreachable after attempts, maintain block
The workflow balances fraud prevention with customer experience, using conditional logic to determine appropriate response levels.
Content Moderation
A social platform moderates user-generated content using a multi-agent system.
Workflow:
- Receive content submission
- Branch into parallel checks:
- Text analysis agent checks for prohibited language
- Image analysis agent checks for inappropriate visuals
- Context agent evaluates content against community guidelines
- Aggregate results from all agents
- If all agents approve: publish immediately
- If any agent flags concern: route to secondary review
- Secondary review agent performs deeper analysis
- If secondary review approves: publish with monitoring flag
- If secondary review rejects: send to human moderator
- Human moderator makes final decision
- Update agent models based on human decisions (learning loop)
This workflow catches most problematic content automatically while ensuring edge cases receive appropriate human review.
Inventory Management
A retailer uses agentic workflows for dynamic inventory optimization.
Workflow (runs continuously):
- For each product in catalog (loop):
- Check current stock level
- If stock is below threshold:
- Analyze recent sales velocity
- Check supplier lead times
- Calculate optimal reorder quantity
- Generate purchase order automatically
- If stock is adequate:
- Check for slow-moving inventory
- If item is slow-moving, trigger price optimization agent
- Continue to next product
- Wait for next execution cycle
Conditional logic ensures appropriate actions for each inventory situation, while loops handle the entire product catalog systematically.
Best Practices for Workflow Design
Designing robust agentic workflows requires careful planning and attention to detail. These practices help you build reliable systems.
Start Simple, Then Scale
Don't build complex multi-agent systems on day one. Start with a single-agent workflow that handles one task well. Validate it works reliably. Then add complexity incrementally.
Early complexity creates debugging nightmares. You can't tell which component is failing or why. Simple workflows are easier to test, monitor, and refine.
Add agents and complexity only when you've proven simpler approaches don't suffice.
Design for Observability
You can't fix what you can't see. Build logging and monitoring into your workflows from the start.
Log:
- Every decision point and what was decided
- Every tool call and its result
- Every error and how it was handled
- Timing information for performance analysis
- Cost data for resource optimization
Good observability turns mysterious failures into debuggable problems. You can trace execution paths, identify bottlenecks, and understand agent behavior.
Define Clear Exit Conditions
Every loop needs an exit condition. Every recursive call needs a base case. Without these, workflows can run forever, consuming resources and never completing.
Exit conditions should be:
- Explicit and unambiguous
- Based on objective criteria
- Testable before execution
- Conservative (err on the side of stopping too early rather than too late)
Handle the Unhappy Path
Spend as much effort on error handling as on the happy path. What happens when APIs fail? When models time out? When data is malformed?
Every external dependency can fail. Every model can produce unexpected output. Design workflows that degrade gracefully rather than crashing completely.
Test Edge Cases
Test workflows with:
- Missing data
- Malformed inputs
- Unexpected values
- Extreme values (very large, very small)
- Empty results
- Timeout scenarios
Edge cases reveal design flaws that normal testing misses.
Use Timeouts
Set maximum execution times for operations. An API call that never returns shouldn't block your workflow forever.
Timeouts should be:
- Reasonable for the operation (don't timeout a data analysis task after 1 second)
- Consistent with user expectations
- Followed by appropriate error handling
Maintain Context Windows
Models have finite context limits. Long conversations or large data sets can exceed these limits.
Strategies for managing context:
- Summarize earlier conversation turns
- Remove unnecessary information
- Split large tasks into smaller chunks
- Use external memory systems for persistent storage
Balance Autonomy and Control
More autonomy isn't always better. Agents should have enough freedom to handle variability but enough constraints to stay safe.
Define:
- What decisions agents can make independently
- What requires human approval
- What actions are never allowed
- What resources agents can access
Version Your Workflows
Workflows evolve. Track changes so you can roll back if new versions introduce problems.
Version control enables:
- A/B testing different workflow designs
- Gradual rollout of changes
- Quick rollback when issues arise
- Clear audit trails of what changed when
Monitor Costs
AI operations cost money. Model calls, data storage, compute time—it all adds up. Monitor costs in real-time and set budgets.
Track:
- Cost per workflow execution
- Cost per model call
- Total spending by workflow
- Cost trends over time
Optimize by routing simple tasks to cheaper models and reserving expensive models for complex problems.
Advanced Patterns
Once you've mastered basic workflow patterns, these advanced techniques can improve performance and reliability.
Progressive Complexity Escalation
Start agents with simple capabilities and gradually unlock complex behaviors as they prove reliable.
Tier 1 capabilities (deploy immediately):
- Data extraction and categorization
- Template-based responses
- Simple information retrieval
Tier 2 capabilities (unlock after validation):
- Multi-step workflows with checkpoints
- Conditional logic with structured outputs
- Integration with multiple systems
Tier 3 capabilities (future unlock):
- Autonomous decision-making
- Complex reasoning chains
- Novel problem-solving
This approach prevents failures from overly ambitious initial deployments.
Self-Improvement Loops
Agents can learn from outcomes and improve over time. After completing tasks, agents evaluate their performance and adjust their approach.
Process:
- Agent executes task
- Agent or human evaluates result quality
- Feedback is logged with execution trace
- Agent incorporates feedback into future decisions
This creates a learning loop that continuously improves agent behavior.
Tree of Thoughts
For complex problems, explore multiple reasoning paths simultaneously. Generate several potential approaches, evaluate each, and pursue the most promising.
This pattern increases reliability for high-stakes decisions where getting the right answer matters more than speed.
Agent-as-a-Judge
Use one agent to evaluate another agent's outputs. The judge agent checks for quality, accuracy, and adherence to requirements.
This catches errors before they propagate and provides an automated quality check on agent work.
Looking Forward
Agentic workflows are becoming standard infrastructure for intelligent automation. Organizations that master conditional logic, loops, and branching will build systems that adapt, scale, and handle complexity that traditional automation can't touch.
The field is moving toward:
Standardized protocols for agent communication, making multi-agent systems easier to build and maintain.
Better observability tools that make agent behavior transparent and debuggable.
More sophisticated coordination patterns that enable agents to collaborate on complex tasks.
Hybrid systems that combine deterministic logic with probabilistic reasoning for optimal performance.
Self-governing workflows that can monitor their own performance and adjust automatically.
The core principles remain constant: give agents clear goals, provide appropriate tools, implement robust error handling, and monitor performance continuously.
MindStudio makes these patterns accessible through visual workflow design. You can implement conditional logic, loops, branching, and multi-agent coordination without writing code. The platform handles model selection, state management, and execution automatically, letting you focus on workflow logic rather than infrastructure.
As models improve and orchestration tools mature, the gap between simple automation and intelligent agentic systems will grow. Organizations that adopt agentic workflows now will have significant advantages in automation capability, operational efficiency, and ability to handle complex processes.
The question isn't whether to adopt agentic workflows. The question is how quickly you can learn to use conditional logic, loops, and branching effectively. The tools exist. The patterns are proven. What remains is implementation.


