InfoQ Homepage MDA Content on InfoQ
-
Using Generative AI in Software Project Management to Bridge Domains and Accelerate Productivity
Gen AI Assistants play to the strengths of professionals with a breadth of experience, particularly software developers who can describe what they want the LLM to complete and critically evaluate the result. These tools enable us to swiftly cross divides of domain language and scale large repetitive tasks down to interesting ones on a human scale.
-
Testing Machine Learning: Insight and Experience from Using Simulators to Test Trained Functionality
When testing machine learning systems, we must apply existing test processes and methods differently. Machine Learning applications consist of a few lines of code, with complex networks of weighted data points that form the implementation. The data used in training is where the functionality is ultimately defined, and that is where you will find your issues and bugs.
-
Application Models as Working Software
Discusses using an application model in an iterative time-bounded development approach. Employ user flows to create easily comprehended stories that contain sufficient detail. Get closer involvement from UX design and product owners to create solutions prior to the first coding iteration. Incorporate as-built decisions back into the model to ensure its relevance in an ongoing product lifecycle.
-
Obscuring Complexity
One of the most important things that software architects do is manage the complexity of their systems in order to mitigate release disruption while maintaining sufficient feature velocity. When we cannot reduce complexity, we try to hide or shift it. Software architects tend to manage that complexity with the time-honored strategies covered in this article.
-
Refactoring to a Deeper Model
Paul Rayner uses a case study to demonstrate how refactoring your code can lead to a deeper understanding of your domain model. Through common code refactorings, combined with the implementation of patterns, the codebase became more cohesive and easier to reason about, reducing the time to perform some common tasks from weeks or months to just hours.
-
Domain Analysis by Color Modeling
Xu Hao uses the color modeling technique to analyze a domain, identifying the events to be traced and their corresponding moment-intervals, then the domain entities and the role they play.
-
The Future of Java in the Enterprise - InfoQ’s Opinion
As part of ongoing work to review InfoQ’s editorial focus for the next year, we’ve been looking at the Java landscape in some detail. This article summarises our view of Java's role in the enterprise
-
Developing Transactional Microservices Using Aggregates, Event Sourcing and CQRS - Part 2
This article concludes the description of a way to develop microservices using Domain Driven Design, Event Sourcing and Command Query Responsibility Segregation (CQRS). The practical considerations and benefits of this approach are compared with other options.
-
The Road Ahead for Architectural Languages
In this article, authors examine architectural languages (ALs) and model-driven engineering (MDE) as means for improving the architecture design. They review a framework of AL requirements, which includes Architectural Language definition, features and architecture tools. They also talk about MDE as a technological solution for supporting the AL requirements framework.
-
The State of Practice in Model-Driven Engineering
In this article, authors discuss the practice of Model Driven Engineering (MDE) based on a survey of MDE practitioners and found that developers use MDE techniques to develop key parts of a system instead of generating whole systems.
-
Modeling in the Agile Age: What to Keep Next to Code to Scale Agile Teams
Now that Agile methods have become mainstream in software development, working code is considered the most important team artifact. There is still a need for modeling. Kenji Hiranabe explores the spaces where modeling fits and plays an important role in this Agile age. With focus on development scaling to multiple teams where a shared understanding of the system’s “Big Picture” becomes essential.
-
There is a Cowboy in my Domain! - Implementing Domain Driven Design Review and Interview
Implementing Domain Driven Design, has brought clarity to an important but little understood area of software design. As a measure of Software Design literature, Vaughn's work is educational and fun. With real world code samples and sage advice, IDDD guides the reader through the sometimes murky waters of DDD and helps them gain the insight required to start a DDD journey of their own.