|Number of pages
||Software and systems engineering
This International standard is Part 1 of a multi-part standard concerned with defining a modelling language and its transfer format, known as High-level Petri Nets. Part 1 defines a semigraphical technique for the specification, design and analysis of discrete event systems. The technique is mathematically defined and may thus be used to provide unambiguous specifications and descriptions of applications. It is also an executable technique, allowing specification prototypes to be developed to test ideas at the earliest and cheapest opportunity. Specifications written in the technique may be subjected to analysis methods to prove properties about the specifications, before implementation commences, thus saving on testing and maintenance time and providing a high level of quality assurance. Petri nets have been used to describe a wide range of systems since their invention in 1962. A problem with Petri nets is the explosion of the number of elements of their graphical form when they are used to describe complex systems. High-level Petri Nets were developed to overcome this problem by introducing higher-level concepts, such as the use of complex structured data as tokens, and using algebraic expressions to annotate net elements. The use of ‘high-level’ to describe these Petri nets is analogous to the use of ‘high-level’ in high-level programming languages (as opposed to assembly languages), and is the usual term used in the Petri net community. Two of the early forms of high-level nets that this standard builds on are Predicate- Transition Nets and Coloured Petri Nets, first introduced in 1979 and developed during the 1980s. It also uses some of the notions developed for Algebraic Petri nets, first introduced in the mid 1980s. It is believed that this standard captures the spirit of these earlier developments (see bibliography). The technique promises to have multiple uses. For example, it may be used directly to specify systems or to define the semantics of other less formal languages. It may also serve to integrate techniques currently used independently such as state transition diagrams and data flow diagrams. The technique is particularly suited to parallel and distributed systems development as it supports concurrency. The technique is able to specify systems at a level that is independent of the choice of implementation (i.e. by software, hardware (electronic and/or mechanical) or humans or a combination). This International Standard may be cited in contracts for the development of systems (particularly distributed systems), or used by application developers or Petri net tool vendors or users. Part 1 of this International Standard provides an abstract mathematical syntax and a formal semantics for the technique. Conformance to the standard is possible at several levels. The level of conformance depends on the class of high-level net chosen and the degree to which the syntax is supported. The basic level of conformance is to the semantic model.