- From: Austin Tate <a.tate@ed.ac.uk>
- Date: Wed, 30 Apr 2003 17:28:27 +0100
- To: www-ws@w3.org
> >1. Partial modeling using constraints. > > The constraints can be pre/post conditions, but also dependencies among > actions (temporal, causality, etc.) I would argue for a very general view of constraints as "anything which constrains the performance of the nominated activities". A process model would be simple 1. a set of nominated activities 2. a set of constraints for this et of activities. This would allow for great extensibility in future, but also allow us to provide nominated sub-classes of constraint which can be handled in simpler models more automatically. 3. a set of annotations related to these - to capture rationale and other things. > The need for modeling using constraints arises in the following two > situations (amont others -- please supply): We can get many requirements from the NIST PSL requirements document * Schlenoff, C., Knutilla, A., Ray, S., <http://www.nist.gov/msidlibrary/summary/9660.html>Unified Process Specification Language: Requirements for Modeling Process, NISTIR 5910, National Institute of Standards and Technology, Gaithersburg, MD (1996). See http://www.mel.nist.gov/msidlibrary/summary/9660.html An analysis of candidate representations (valid at the time - 1997) to meet these requirements was performed for NIST by us * Polyak, S., Tate, A., <http://www.nist.gov/psl/pubs/97-nist-psl-phase2.ps>Analysis of Candidate PSL Process/Plan Representations, AIAI-PR-66, Artificial Intelligence Applications Institute (AIAI), Edinburgh, 1997. (PS file) See http://www.nist.gov/psl/pubs/97-nist-psl-phase2.ps > Examples of temporal and causality constraints: > > events A and B must both occur. > if event A occurs then event B or C must also occur (before or > after B). > if both A and B occur then A must occur before B. > > The other kind of constraints deal with resource allocation. For > instance, one might want to see if a service can execute under certain > cost constraints (time is viewed as one kind of a cost). > Resource allocation constraints are very different from causality > constraints, and the formalisms for handling them are quite different, > too. Our own work identified a taxonomy of constraint types based on the following 3 kinds. The first two are pretty much essential and will be present in anything claiming to be an activity/process model. The rest can be treated as optional and only needed as required. This is vital to getting an extendable and engineering approach to being able to maintain and extend this - much like the partial shared views in NIST PSL does. a) object/variable constraints (codesignation and non-codesignation / equality and inequality of objects). b) temporal constraints - on time points - which can be associated with the begin and end of any activity as well as with "dummy" nodes put in to ease the temporal constraint expression - this is common in process modelling or when using a graphical tool. Simple "before tp1 tp2" constraints are always needed and are in NIST PSL Core. Extensions allow for a much wider range of James Allen style temporal relations and metric.calendar temporal constraints. c) a range of other constraints that can be extended on need. This can include: c.1) world state constraints - this is where input and output constraints, (pre-)conditions and effect (post-condition in its simplest form) can be stated c.2) resource constraints - including an improtant subtype of "performer" (i.e. actor) constraints c.3) spatial constraints c.4) quality constraints c.5) etc., etc. Austin
Received on Wednesday, 30 April 2003 12:29:13 UTC