Creación de modelos con Cúram

El punto de partida de todo el desarrollo es el modelo de aplicación independiente de la plataforma. Las aplicaciones de IBM Cúram Social Program Management™ siguen una arquitectura orientada a servicios, y los servicios que deben ser facilitados por la aplicación se definen como interfaces UML en el modelo. Los servicios de nivel inferior también se definen aquí, lo que da como resultado una aplicación que utiliza un método por capas. Todas las interfaces del modelo se conocen como "objetos de negocio". Cuando necesitemos distinguir entre servicios que sólo se consumen internamente por parte de aplicaciones y servicios que son visibles a aplicaciones externas e interfaces de usuario, a partir de ahora nos referiremos a los mismos como "fachadas". Éstos definen la vista del mundo exterior de una aplicación de IBM Cúram Social Program Management™. Los servicios internos son suministrados por una combinación de "objetos de proceso de negocio" y "objetos de entidad empresarial" . Los objetos de entidad definen las "cosas" modeladas por la aplicación. Los objetos de entidad soportan operaciones de acceso a datos para conservar y recuperar instancias de entidades.

Es importante recordar que el modelo de aplicación es independiente de la plataforma. En el modelo no se hace referencia a ninguna tecnología de componente ni middleware en concreto (como EJB). El modelo simplemente define interfaces de servicio y qué subconjunto de dichas interfaces se va a establecer externamente visible. El entorno de IBM Cúram Social Program Management™ busca dependencias de middleware generando automáticamente todo el código de "instalación" necesario. Los desarrolladores generalmente no necesitan preocuparse de la complejidad de las interfaces del middleware.