Generated Artefacts

Q3: There are several types of generated service artefacts, and a project targets one or more of them:

REST (RESTful Web Services):

Provides definitions for REST Applications, REST Resources and associated REST data objects (JSON/XML structures) enabling a model-driven development approach for the specification of REST APIs.

SOAP (Simple Object Access Protocol):

Provides a design for the development of participants, service interfaces, and messages appropriate for an enterprise-wide business services based architecture.

Java:

Provides a Java-based design for the development of participants, service interfaces, and messages appropriate for an enterprise-wide business services based architecture.

XSD:

Provides an XML Schema design for the development of participants, service interfaces, and messages appropriate for an enterprise-wide business services based architecture.

Why would I choose a particular type of generated artefact?

REST:

Generating REST artefacts from the IPS Modelset enables the creation of consumable APIs from the rich and complex enterprise-level models. The REST API definitions hide the underlying complexity of the underlying models and back end systems. The RESTful API Design Model defines a simple set of resources and data structures that app developers (who may have no knowledge of the models) can quickly learn and use.

SOAP:

While REST offers lightweight APIs which are more consumable, they do not simplify the implementation and orchestration of services across a set of applications. If consumer-specific REST APIs are proliferated, this can create an unmanageable set of APIs with arbitrary downstream selection of data. There is still a need to implement a SOA, with transactional services implemented to provide a single set of interfaces for transacting on data that decouples consumers from existing applications.