OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

camp message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: [OASIS Issue Tracker] Updated: (CAMP-55) Lifecycle Diagram is conflating two levels of states, leading to inconsistencies


     [ http://tools.oasis-open.org/issues/browse/CAMP-55?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Gilbert Pilz updated CAMP-55:
-----------------------------

    Proposal: 
1. Define a general "application lifecycle" diagram with just 3 states: uploaded / deployed / active.
- uploaded: the app is ready to be deployed ("deploy" request)
- deployed: an assemblyTemplate has been created for this app, ready to be instantiated one or more times.
- active: at least one run-time has been instantiated (one Assembly) from the assemblyTemplate. In this state we can still "instantiate", and maybe even "customize".

2. Then define a finer state machine for "application instances", i.e. for each Assembly. That one would have: running / suspended / stopped (maybe) /  ... And such a state machine would apply to each "run-time" or  instance of an Application. Such finer states only make sense when the application is in its "active" state.
See attached ppt for how we could update the lifecycle diagram. See: https://www.oasis-open.org/apps/org/workgroup/camp/download.php/48331/CAMP-lifecyclediagrams-issue55.pptx

Latest concrete proposal: https://www.oasis-open.org/apps/org/workgroup/camp/download.php/49552/camp-spec-v1.1-wd11-issue55-v3.doc

  was:
1. Define a general "application lifecycle" diagram with just 3 states: uploaded / deployed / active.
- uploaded: the app is ready to be deployed ("deploy" request)
- deployed: an assemblyTemplate has been created for this app, ready to be instantiated one or more times.
- active: at least one run-time has been instantiated (one Assembly) from the assemblyTemplate. In this state we can still "instantiate", and maybe even "customize".

2. Then define a finer state machine for "application instances", i.e. for each Assembly. That one would have: running / suspended / stopped (maybe) /  ... And such a state machine would apply to each "run-time" or  instance of an Application. Such finer states only make sense when the application is in its "active" state.
See attached ppt for how we could update the lifecycle diagram. See: https://www.oasis-open.org/apps/org/workgroup/camp/download.php/48331/CAMP-lifecyclediagrams-issue55.pptx



Update with link to latest concrete proposal.

> Lifecycle Diagram is conflating two levels of states, leading to inconsistencies
> --------------------------------------------------------------------------------
>
>                 Key: CAMP-55
>                 URL: http://tools.oasis-open.org/issues/browse/CAMP-55
>             Project: OASIS Cloud Application Management for Platforms (CAMP) TC
>          Issue Type: Bug
>          Components: Spec
>            Reporter: Jacques Durand 
>            Assignee: Gilbert Pilz
>            Priority: Critical
>
> The issue with our current application  lifecycle diagram (and state machine): it conflates two concepts behind the notion of "application lifecycle": 
> (1) the general notion of application covering a broad lifecycle from upload to removal, 
> (2) the narrower notion of run-time with more dynamic states. 
> That leads to the following inconsistencies:
> - Because the same assemblyTemplate can be used to create several Assemblies (as expected for some apps when used in a SaaS context), each one of these assemblies can find itself in a different state (suspended, running...) What state is the application in now?
> - just because you delete one instance among several does not bring you back to "deployed".
> - a state diagram like ours generally assume that you can find yourself in only one state at a time. E.g. if you go from "deployed" to "Instantiated" then you are no longer "deployed". However, again after an instantiation the assemblyTemplate still exists and is available for new instantiations. That means that you can still do an "instantiate" operation when  in the "Instantiated" state. That reflexive  transition is missing in our diagram, yet would sound weird... (why would you "instantiate" again if in the "instantiated" state?). 
> - Also, can you still customize your assemblyTemplate between two instantiations? I'd assume so since we don't try hard to maintain 100% consistency between an Assembly and its assemblyTemplate (can modify the Assembly too).

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://tools.oasis-open.org/issues/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]