Computer software programming tools for Windows, Unix, Linux, C, C++, fortran, ada. automatic code generators fortran development tools static source code analysis software test automation test coverage build management systems programming source code analyzers software development lint debuggers MIL-STD-1750A
Software development powerfully simplified

Tackling the dangers of redundant development practices


Developing cross-platform software typically forces programmers to use processes and tactics that are slow, expensive, subject to error, difficult to maintain across each context, and just plain dangerous for your software development projects.

This article shows gives you tips on how to tackle the dangers associated with manual and redundant software development tactics and reviews the price of getting the proportional benefits of automatic code synthesis.


  • Facing the dangers
  • Facilitate reuse
  • Bridge design and coding
  • Use a process that provides proportional improvement
  • Use common sense software development
  • Integrate instantiating components
  • Implement rapid application framework development
  • Establish and standardize process
  • Automate development
  • Create opportunity for reaping proportional benefits
  • Reallocate saved resources wisely
  • Software reuse at its best, but you have to know the price

Facing the dangers

DEVELOPING cross-platform software typically requires programmers to manually re-code the application for each environment. Manually coding by memory or by modifying copied patterns can add to a development project cumbersome detail that is highly resource intensive, is subject to programmer error, and makes it virtually impossible to ensure changes are implemented across each environment.

Facilitate reuse

Using an instantiating tool to synthesize application design with code patterns, programmers can reuse—rather than recreate—code to automatically generate application frameworks for multiple platforms and languages.

This is where Cleanscape SourceMill comes in.

Bridge design and coding

Cleanscape SourceMill is an automatic code generation engine that bridges the gap between design and coding by automatically generating commercial-grade code for virtually any language or platform from object models and code patterns. Developers can reuse the patterns to automatically create code for multiple platforms by synthesizing the application design with a different template. This helps development teams to standardize cross-platform development, quicken the coding process, rapidly develop applications, reduce programming errors, increase product quality, and lower development costs.

Use a process that provides proportional improvement

These quality and productivity improvements increase proportionally to the amount of code generated by each coding strategy. The ratio of lines of code to lines of input is typically 20:1.

Use common sense software development

While the time and quality benefits of using Cleanscape SourceMill to automatically generate code can be immediate and significant, the application isn’t revolutionary; it is simply a common-sense tool for helping developers to automate redundant programming tasks.

Integrate instantiating components

There are three basic components to Cleanscape SourceMill: an object model, a template, and the synthesis engine. The object model is like a formula or blueprint for building an application framework; it is a high-level structure you develop to describe your application. The template is like a storehouse of code patterns; it provides the code fragments and algorithms needed to instantiate the object model into an application framework for a given language or platform.

Implement rapid application framework development

After you’ve finished designing your application using Cleanscape SourceMill utilities you simply select a template for your target environment. In seconds, Cleanscape SourceMill synthesizes the formula in your object model with the ingredients in the template to generate an application framework with commercial-grade code.

Establish and standardize process

Automatically generating application frameworks with Cleanscape SourceMill allows development organizations to deliver higher quality products across platforms for faster delivery using fewer resources. It also allows analysts and managers to easily control consistency of output and interface across platforms, and helps programmers and engineers to increase the quality of their code.

Automate development

Cleanscape SourceMill is ideal for automating the development of object-oriented applications, well-structured legacy applications, or in any environment that needs to establish and automate adherence to local standards and guidelines. For example, Cleanscape SourceMill can be used to automate development and maintenance of GUIs, databases, wizards, and other operations that use object-oriented code.

Create opportunity for reaping proportional benefits

Cleanscape SourceMill continuously enhances application development productivity by creating consistency, and by enhancing the ability to rapidly develop and modify applications across multiple platforms and languages. Quality and productivity improvements increase proportionally to the amount of code generated when developers consistently use it in coding strategies.

Reallocate saved resources wisely

The price for getting the significant gains in consistency, speed, and quality derived from using Cleanscape SourceMill to automate code generation is to reallocate some of the resources you save to the most important stages of software development: planning, strategy, and design.

Software reuse at its best, but you have to plan

Consistent code

Conventions are followed without departure. The patterns that you use when you create code can be made into templates that will always be true to your rules.

Fast code

Large amounts of code can be generated automatically, and built into your application within the same hour.

Higher quality code with increased functionality

When you enhance a template, you enhance all the code that you will create from it. This is software reuse at its best.


Templates take planning, design, and time to create. Creating templates is more challenging than creating special purpose code with an eye towards reuse; you're solving the problem for multiple projects, not just for one.


Templates are suitable for use when the usage situation matches the assumptions made when creating the template. You may need a diverse set of templates if your needs are also diverse.

Written and produced by Brent Duncan, Director

Copyright © 2002 Cleanscape Software International
> Make a comment about our web site