Dr. Dobb's is part of the Informa Tech Division of Informa PLC

This site is operated by a business or businesses owned by Informa PLC and all copyright resides with them. Informa PLC's registered office is 5 Howick Place, London SW1P 1WG. Registered in England and Wales. Number 8860726.


Channels ▼
RSS

Design

Application Lifecycle Management Meets Model-Driven Development


Putting It All Together

As Figure 3 shows, the development lifecycle is best met by the combined benefits of ALM and MDD. ALM provides the discipline needed for governing and managing the project, while MDD provides the development muscle to handle even the most complex jobs.

The coordinated environment provides a consistent vehicle to handle change requests, bug fixes, auditing, and compliance mandates, all based on a single set of requirements. Project planners, requirements engineers, architects and developers all contribute to the common workflow, where even last-minute changes can be quickly inserted and evaluated for impact and relevance.

The combined ALM/MDD approach is very different from the usual methods of manual coding based on written specifications. It removes the collaboration gap between architects and developers by tying the high-level design directly to the final source code. Traceability is established from requirements to architecture to final code, while changes at any level can be evaluated at each level for impact and effectiveness. Developers can apply their expertise to ensure that optimal applications are designed, while architects and planners can ensure that the original intent is not "optimized out" in the process.

Because these applications have been developed to a single set of coordinated requirements and subjected to rigorous change management procedures, they can easily be migrated to future applications throughout the enterprise. In addition, existing legacy applications can be reverse engineered and inspected for inclusion in the enterprise framework. Since they can be more easily adapted and incorporated into new applications, the organization's intellectual property is protected and applied in new ways as it moves into a services-based IT infrastructure.

[Click image to view at full size]

Figure 3: Connecting ALM and MDD.

Also, the combined framework includes configuration management capabilities that allow you to keep previous design configurations in an easily accessible repository—a handy feature if you need to roll back to an earlier configuration.

Accelerating ALM Tool Adoption

To reduce the risks associated with ALM and MDD tool adoption within your development environment, you must closely link people, best practices, processes, and tools. A recent report indicates that improving technology and process together is 10 times more effective at increasing productivity than improving technology alone. The reason is very clear: Process improvement (CMMI, for instance) enhances effectiveness, while development tools and best practices increase efficiency. Together, they can improve productivity and quality.

Reusing proven best practices is critical to ensuring that your teams choose to repeat a "best practice," not just any practice. Therefore, you should choose libraries that are built on years of experience with real projects. Also, it should be easy to tailor these libraries of best practices to meet specific organizational and project needs. For example, customers using Telelogic products are able to easily tailor their libraries of best practices content for ALM and MDD using the Eclipse Process Framework (EPF) composer from the Eclipse foundation.

With integrated process guidance you will promote best practices, processes, and tools across your organization and accelerate adoption of ALM and MDD. The result is systems and software that better meet your customers' needs.

Conclusion

The combination of ALM and MDD gives you the connected workflow you need to handle the development of even the most complex applications and systems. Particularly helpful is the capability to deal with changes in requirements, no matter when and where they occur during the development process. You can quickly analyze the impact of these changes to control costs and assure correctness. You can also balance business and technical requirements by performing model-based performance/security trade-off analysis before deployment—after deployment, the cost of miscalculations escalates dramatically.

Since you can simulate designs at any time during the process, there is no need to wait until the final stages of development to determine how changes will affect the application. By providing a common baseline, this integrated environment lets you propagate changes through multiple releases. Roundtrip traceability provides both bottom-up and top-down reporting to ensure compliance. Because the entire team is working from a known set of requirements, the integration of ALM and MDD promotes collaboration, even among teams that are widely separated functionally and geographically.

Independently, application lifecycle management and model-driven development have proven their value in a wide range of industries. No matter what industry you're working in, by combining these two systems and software development best practices, you significantly increase your ability to overcome the many challenges associated with the system and software development lifecycle.


Related Reading


More Insights






Currently we allow the following HTML tags in comments:

Single tags

These tags can be used alone and don't need an ending tag.

<br> Defines a single line break

<hr> Defines a horizontal line

Matching tags

These require an ending tag - e.g. <i>italic text</i>

<a> Defines an anchor

<b> Defines bold text

<big> Defines big text

<blockquote> Defines a long quotation

<caption> Defines a table caption

<cite> Defines a citation

<code> Defines computer code text

<em> Defines emphasized text

<fieldset> Defines a border around elements in a form

<h1> This is heading 1

<h2> This is heading 2

<h3> This is heading 3

<h4> This is heading 4

<h5> This is heading 5

<h6> This is heading 6

<i> Defines italic text

<p> Defines a paragraph

<pre> Defines preformatted text

<q> Defines a short quotation

<samp> Defines sample computer code text

<small> Defines small text

<span> Defines a section in a document

<s> Defines strikethrough text

<strike> Defines strikethrough text

<strong> Defines strong text

<sub> Defines subscripted text

<sup> Defines superscripted text

<u> Defines underlined text

Dr. Dobb's encourages readers to engage in spirited, healthy debate, including taking us to task. However, Dr. Dobb's moderates all comments posted to our site, and reserves the right to modify or remove any content that it determines to be derogatory, offensive, inflammatory, vulgar, irrelevant/off-topic, racist or obvious marketing or spam. Dr. Dobb's further reserves the right to disable the profile of any commenter participating in said activities.

 
Disqus Tips To upload an avatar photo, first complete your Disqus profile. | View the list of supported HTML tags you can use to style comments. | Please read our commenting policy.