Optimising development and deployment of ... - ResearchGate
Optimising development and deployment of ... - ResearchGate
Optimising development and deployment of ... - ResearchGate
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
8<br />
Specifically, the registry/repository system supports the following functions:<br />
• Central cataloguing <strong>of</strong> solutions, apps, <strong>and</strong> external services, <strong>and</strong> storage <strong>of</strong> their<br />
associated artefacts in platform-wide accessible location.<br />
• Versioning <strong>of</strong> managed entities <strong>and</strong> artefacts to reflect significant changes <strong>and</strong> to<br />
designate new states in <strong>development</strong>.<br />
• Controlling the evolution <strong>of</strong> managed entities <strong>and</strong> artefacts, by modelling lifecycle<br />
states <strong>and</strong> associating validation checks with state transitions.<br />
• Tracking dependencies among solutions, apps, <strong>and</strong> services <strong>and</strong> allowing for<br />
impact analysis.<br />
• Performing conformance checking to ensure that managed entities <strong>and</strong> artefacts are<br />
compliant to the platform provider’s ground rules regarding valid structures.<br />
• Monitoring <strong>of</strong> the external Web services on which apps are dependent to ensure<br />
appropriate levels <strong>of</strong> availability <strong>and</strong> performance, considering SLAs.<br />
5.3 App/solution directory (store)<br />
An app/solution directory is an end-user facing Web application that allows customers<br />
to view the solutions <strong>and</strong> apps that are available on the CAST platform. Users can<br />
select a solution, view all apps that are compatible with the particular solution,<br />
enable/disable optional apps, <strong>and</strong> install them to their account, triggering all necessary<br />
licensing/billing/configuration steps through st<strong>and</strong>ardized wizards. Input for these<br />
wizards can be extracted from app metadata (app/solution manifest) that were written<br />
to the registry/repository during app <strong>deployment</strong>.<br />
Installation <strong>of</strong> an app in the CAST context does not mean that native code <strong>and</strong><br />
artefacts are deployed / installed to a special location. Installation means unlocking<br />
the functionality <strong>of</strong> an app for a specific user. During installation <strong>of</strong> an app, the<br />
database schema specifications will be applied (e.g. new tables will be created or<br />
existing tables will be extended). Furthermore, other artefacts <strong>of</strong> the app will be<br />
interpreted from this point on. This also holds for native code: dispatchers in the<br />
CAST platform core will call the associated native code components after an app has<br />
been unlocked for the user. This also means that native code parts <strong>of</strong> an app are<br />
always part <strong>of</strong> the CAST platform's code base, but they will not be invoked until an<br />
app is explicitly installed.<br />
6 CAST platform packaging model<br />
Apps are the basic blocks for creating enterprise s<strong>of</strong>tware solutions <strong>and</strong><br />
customisations within the CAST platform. There can be apps that are pre-fabricated<br />
by the CAST platform provider (e.g. built-in apps for basic functionalities like contact<br />
management or document management) <strong>and</strong> are subsequently configured by a<br />
platform partner for a particular solution or customisation, or apps which are<br />
developed by a platform partner from the ground-up, <strong>and</strong> subsequently added to the<br />
platform for other partners to reuse <strong>and</strong> customise for their own solutions.