Agile development and Model-Based Design

If in the heart of agile development can be seen in the concepts of quick iterations, leveraging test points for quality assurance coupled to a close team-based collaboration then Model-Based Design are the veins and blood that compose the body of your work.

Agile is a concept andImage result for circulatory system
a process; how that concept is implemented is up to the development team.

If we review the key concepts behind Model-Based Design and Agile Development then the mapping between is obvious.

Use models for architectural decomposition:  Models are used to break down large problems into smaller components.  These smaller components can easily be integrated into larger system-level models created by other people in the development team.  The use of models and a modeling architecture strongly supports close team-based collaboration.

Use of simulation: simulation is the younger brother of testing.  Using models developers can quickly and easily exercise their models to determine the functional correctness of system under test.  Once the initial models are “correct”  they can be locked down with a set of formal tests.  Those formal tests often are derived directly from simulation used for design.

Image result for there can be only one Model as the single truth: When we look at the elaboration process that a Model-Based Design process follows it is clear that the iterative nature of an agile process is a close fit.  Models can both provide a tight integration with requirements while allowing for the fast evolution of those requirements.  In fact, the use of simulation as part of the development process allows developers to quickly find issues with their requirements.

Final thoughts

Agile design processes are as good as the people who commit to them.  A good understanding of what is and what is not part of the agile development process is important to the success of the project.  (This is, of course, true of any product development.)  For another perspective on Agile development and Model-Based Design, this link provided a good overview.

 

 

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.