The Official Handbook of Mascot. Version 3.1. Issue 1

Abstract : Mascot is a Modular Approach to Software Construction Operation and Test which incorporates: a) a means of design representation; b) a method for deriving the design; c) a way of constructing software so that it is consistent with the design; d) a means of executing the constructed software so that the design structure remains visible at run time; e) facilities for testing the software in terms of the design structure. Of particular importance in the design representation is the ability to represent, directly, concurrent functions and the data flows between them. An equally important facet of the method is the fact that individual components in the design structure are de-coupled from each other. This has a significant impact on both the design method and the testing strategy and leads directly to a form of component technology familiar in all other branches of engineering. It causes a design to be expressed as a structure (or assembly) of interconnected components each of which is of a specific type. Thus each component type has its own characteristics and embodies constraints on where and how it may be connected to other component types. But, and this is a critical feature, no component refers directly to another component. Such interconnection information is specified in a separate form rather like an engineering drawing. The software structure, by its insistence upon decoupling, also has a significant impact upon the components potential for re-use and specifically makes the creation of test systems very much more straightforward. Mascot can be and has been used in a wide range of application areas. It is however aimed primarily at real-time embedded application areas where the software is complex and highly interactive.