This group of Market criteria analyses the formal specification in the scope of its market environment, and more precisely it examines the implementations of the formal specification and the market players. This implies identifying to which extent the formal specification benefits from market support and wide adoption, what are its level of maturity and its capacity of reusability.
Market support is evaluated through an analysis of how many products implementing the formal specification exist, what their market share is and who their end-users are. The quality and the completeness (in case of partitioning) of the implementations of the formal specification can also be analysed. Availability of existing or planned mechanisms to assess conformity of implementations to the standard or to the specification could also be identified. The existence of at least one reference implementation (i.e.: mentioning a recognized certification process) - and of which one is an open source implementation - can also be relevant to the assessment. Wide adoption can also be assessed across domains (i.e.: public and private sectors), in an open environment, and/or in a similar field (i.e.: best practices).
A formal specification is mature if it has been in use and development for long enough that most of its initial problems have been overcome and its underlying technology is well understood and well defined. Maturity is also assessed by identifying if all aspects of the formal specification are considered as validated by usage, (i.e.: if the formal specification is partitioned), and if the reported issues have been solved and documented.
Reusability of a formal specification is enabled if it includes guidelines for its implementation in a given context. The identification of successful implementations of the standard or specification should focus on good practices in a similar field. Its incompatibility with related standards or specifications should also be taken into account.
The ideas behind the Market Criteria can also be expressed in the form of the following questions:
- Does the standard have strong support in the marketplace?
- What products exist for this formal specification?
- How many implementations of the formal specification are there?
- Are there products from different suppliers in the market that implement this formal specification?
- Are there many products readily available from a variety of suppliers?
- What is the market share of the products implementing the formal specification, versus other implementations of competing formal specifications?
- Who are the end-users of these products implementing the formal specification?
- Are there any existing or planned mechanisms to assess conformity of the implementations of the formal specification?
- Is there a reference implementation (i.e.: mentioning a recognized certification process)?
- Is there an open source implementation?
- Does the formal specification show wide adoption?
. Across different domains? (I.e.: public and private)
. In an open environment?
. In a similar field? (i.e.: can best practices be identified?)
- Has the formal specification been in use and development long enough that most of its initial problems have been overcome?
- Is the underlying technology of the standard well-understood? (e.g., a reference model is well-defined, appropriate concepts of the technology are in widespread use, the technology may have been in use for many years, a formal mathematical model is defined, etc.)
- Is the formal specification based upon technology that has not been well-defined and may be relatively new?
- Has the formal specification been revised? (Yes/No, Nof)
- Is the formal specification under the auspices of an architectural board? (Yes/No)
- Is the formal specification partitioned in its functionality? (Yes/No)
. To what extent does each partition participate to its overall functionality? (NN%)
. To what extent is each partition implemented? (NN%) (cf market adoption)
- Does the formal specification provide guidelines for its implementation in a given organisation?
- Can other cases where similar systems implement the formal specification be considered as successful implementations and good practices?
- Is its compatibility with related formal specification documented?
Status of This Document
CAMSS has been evolving gradually since its creation in 2007. This is work in progress and the document will be subject to change. New terms may be added at any time, and consequently this specification is an evolving work. The extent of change is communicated by the change of version. A change in the first number notifies a major semantic change, in the second number a minor semantic change, the character is a for alpha and b for beta and finally the last number is just a syntactic change, Major Semantic. Minor Semantic (a|b) Syntactic.
This CAMSS documentation is produced as part of the CAMSS project, to provide authoritative documentation of the contents, status and purpose. The author welcomes comments on this document, preferably via e-mail to email@example.com. Further work is also needed on the explanatory text in this document and on the CAMSS website; progress towards this will be measured in the version number of future revisions to the CAMSS documentation.
Members of the CAMSS expert group. See acknowledgements.
© European Communities, 2009. Reproduction is authorised provided the source is acknowledged. Printed in Belgium
Nature of documentation: Article