The Cúram Application Development Environment (ADE)
IBM Cúram provides an environment for producing Java EE-compliant applications for social enterprises.
This environment includes the following features:
- Development aids that make it easier to produce n-tier Java EE-compliant applications.
- A high-level business infrastructure that is needed by most enterprise-class systems, and especially social enterprises. In particular, infrastructure is provided to allow the capture of eligibility and entitlement rules for products or programs, and to run these rules within IBM Cúram applications.
- A UML application model for these industries.
- Commercial off-the-shelf software components that are based on the application model.
- A pre-built reference application that is constructed with these components.
Development Environment objectives
A summary of the Development Environment objectives.
- Focus on the business problem:
- IBM Cúram minimizes the amount of non-business-specific functionality that needs to be developed. Because developers are freed up from some of the more tedious and error-prone aspects of client/server development, they can spend more time on activities directly concerned with the business solution.
- Model-based development:
- The starting point for all IBM Cúram software development is a platform-independent application model, developed using the Unified Modeling Language (UML).
- Code generation:
- Many parts of an application are formulaic in nature, and can be expressed concisely through stereotypes and patterns in the application design. By adhering to a model-driven approach, the tools provided with the environment maximize the amount of code that can be generated.
- Avoidance of platform dependencies:
- The IBM Cúram architecture packages specific platform dependencies in generated code and infrastructure components, minimizing the effects of changing them at a later stage, and thus maximizing the architecture's portability.
- Use of recognized architectural patterns:
- The IBM Cúram architecture makes extensive use of patterns, such as factory and proxy mechanisms, to enhance application maintainability, performance and portability.
- Simplified user interface development:
- Considerable effort can be expended producing quality user interfaces. IBM Cúram generates user interfaces based on simple platform-independent definitions, resulting in a dramatic increase in developer productivity.
- Industry-standard applications:
- IBM Cúram facilitates easier application development, producing robust client/server applications based on industry-standard technologies. Runtime performance, cross-platform deployment, and user interface elegance are key goals of IBM Cúram application development.