SW4E Series: Architecture-Driven Generative AI: A Game-Changer for Software Efficiency

Generative AI is transforming how software is developed — but its full potential emerges only when it’s paired with structure and context. At Boogie Software, we use clean architecture principles and domain-specific prompting to turn AI into a powerful productivity tool.

The result? Smarter, more consistent code, delivered faster and aligned with real business needs.

Structured AI enables scalable, high-quality software

Boogie Software Oy is a Finnish software and AI development partner, offering scalable services across software, hardware, and device connectivity. Our 40+ senior developers — many with Nokia backgrounds — work with clients in banking, telecom, and tech, backed by a partner network across Europe.

In our experience, generative AI is excellent at writing boilerplate code, creating documentation, and generating test cases. However, it often struggles with designing complex systems, understanding business context, or adhering to coding standards — unless you give it the right structure.

We use clean architecture and layered software design patterns to guide AI in generating specific components within well-defined boundaries. By applying this method, AI can be instructed to generate “just the right code” — such as a repository, use case, or controller — for a given layer.

Unlocking AI’s potential through context and automation

To make generative AI a proactive partner — not just a reactive assistant — we use three key strategies:

  1. Use Accurate and Informative Context Models: Define rules, constraints, objectives, etc., within context models to guide the GenAI. Define rules that are specific for the project, programming language, coding conventions, etc.
  2. Base Code Generation on Software Architectures: Ground context models, rules, constraints, and prompts in established software architectures (like Clean Architecture) and design patterns (like MVI) that organize the codebase, follow best practices (SOLID principles), and improve quality attributes like testability, scalability, and maintainability.
  3. Implement Staged Code Generation: Start with high-level models and use case logic, then generate code layer by layer towards framework-dependent components. Follow the direction of inversed dependencies.
  4. Employ Clear, Concise Prompts: Break down complex tasks into smaller, manageable steps as guided by the applied software architecture and design patterns.

By combining architectural best practices with AI’s speed, we’re helping companies accelerate development, reduce technical debt, and build scalable systems that meet the demands of modern business.

About the author

Marko Salmela – Principal Software Architect at Boogie Software. Marko is passionate about leveraging clean architecture and generative AI to improve software development workflows. In his free time, he enjoys experimenting with AI tools — including a personal project building a bikepacking tracker app using GenAI. Marko’s goal is to bring practical, scalable AI solutions to both professional and experimental projects alike.

Share on: