Modular Approach to Software Construction Operation and Test

Last updated

The Modular Approach to Software Construction Operation and Test (MASCOT) is a software engineering methodology developed under the auspices of the United Kingdom Ministry of Defence starting in the early 1970s at the Royal Radar Establishment and continuing its evolution over the next twenty years. The co-originators of MASCOT were Hugo Simpson and Ken Jackson (currently with Telelogic).

In software engineering, a software development process is the process of dividing software development work into distinct phases to improve design, product management, and project management. It is also known as a software development life cycle. The methodology may include the pre-definition of specific deliverables and artifacts that are created and completed by a project team to develop or maintain an application.

Ministry of Defence (United Kingdom) United Kingdom government department responsible for implementing the defence policy

The Ministry of Defence is the British government department responsible for implementing the defence policy set by Her Majesty's Government and is the headquarters of the British Armed Forces.

The Royal Radar Establishment was a research center in Malvern, Worcestershire in the United Kingdom. It was formed in 1953 as the Radar Research Establishment by the merger of the Air Ministry's Telecommunications Research Establishment (TRE) and the British Army's Radar Research and Development Establishment (RRDE). It was given its new name after a visit by Queen Elizabeth II in 1957. Both names were abbreviated to RRE. In 1976 the Signals Research and Development Establishment (SRDE), involved in communications research, joined the RRE to form the Royal Signals and Radar Establishment (RSRE).

Contents

Where most methodologies tend to concentrate on bringing rigour and structure to a software project's functional aspects, MASCOT's primary purpose is to emphasise the architectural aspects of a project. Its creators purposely avoided saying anything about the functionality of the software being developed, and concentrated on the real-time control and interface definitions between concurrently running processes.

MASCOT was successfully used in a number of defence systems, most notably the Rapier ground-to-air missile system of the British Army. Although still in use on systems in the field, it never reached critical success and has been subsequently overshadowed by object oriented design methodologies based on UML.

Object-oriented programming (OOP) is a programming paradigm based on the concept of "objects", which can contain data, in the form of fields, and code, in the form of procedures. A feature of objects is an object's procedures that can access and often modify the data fields of the object with which they are associated. In OOP, computer programs are designed by making them out of objects that interact with one another. OOP languages are diverse, but the most popular ones are class-based, meaning that objects are instances of classes, which also determine their types.

Unified Modeling Language general-purpose, developmental, modeling language in the field of software engineering

The Unified Modeling Language (UML) is a general-purpose, developmental, modeling language in the field of software engineering that is intended to provide a standard way to visualize the design of a system.

A British Standards Institution (BSI) standard was drafted for version 3 of the methodology, but was never ratified. Copies of the draft standard can be still obtained from the BSI.

MASCOT in the field

The UK Ministry of Defence has been the primary user of the MASCOT method through its application in significant military systems, and at one stage mandated its use for new operational systems. Examples include the Rapier missile system, and various Royal Navy Command & Control Systems.

The Future of the Method

MASCOT's principles continue to evolve in the academic community (principally at the DCSC) and the aerospace industry Matra BAe Dynamics, through research into temporal aspects of software design and the expression of system architectures, most notably in the DORIS (Data-Oriented Requirements Implementation Scheme) method and implementation protocols. Work has also included combining UML and DORIS to provide a richer means of describing complex real-time systems (Computer Science Research Institute).

Matra BAe Dynamics was formed in August 1996 by merger of half the missile business of Matra Defense of France and BAe Dynamics of the UK and was Europe's largest manufacturer of missiles and UAVs.

Related Research Articles

Systems design is the process of defining the architecture, modules, interfaces, and data for a system to satisfy specified requirements. Systems design could be seen as the application of systems theory to product development. There is some overlap with the disciplines of systems analysis, systems architecture and systems engineering.

Rapier (missile) surface-to-air missile

Rapier is a surface-to-air missile developed for the British Army to replace their towed Bofors 40/L70 anti-aircraft guns. The system is unusual as it uses a manual optical guidance system, sending guidance commands to the missile in flight over a radio link. This results in a high level of accuracy, therefore a large warhead is not required.

Software design is the process by which an agent creates a specification of a software artifact, intended to accomplish goals, using a set of primitive components and subject to constraints. Software design may refer to either "all the activity involved in conceptualizing, framing, implementing, commissioning, and ultimately modifying complex systems" or "the activity following requirements specification and before programming, as ... [in] a stylized software engineering process."

Model-driven architecture (MDA) is a software design approach for the development of software systems. It provides a set of guidelines for the structuring of specifications, which are expressed as models. Model-driven architecture is a kind of domain engineering, and supports model-driven engineering of software systems. It was launched by the Object Management Group (OMG) in 2001.

Computer-aided software engineering type of software tools

Computer-aided software engineering (CASE) is the domain of software tools used to design and implement applications. CASE tools are similar to and were partly inspired by computer-aided design (CAD) tools used for designing hardware products. CASE tools are used for developing high-quality, defect-free, and maintainable software. CASE software is often associated with methods for the development of information systems together with automated tools that can be used in the software development process.

A functional software architecture (FSA) is an architectural model that identifies enterprise functions, interactions and corresponding IT needs. These functions can be used as reference by different domain experts to develop IT-systems as part of a co-operative information-driven enterprise. In this way both software engineers and enterprise architects are able to create an information-driven, integrated organizational environment.

Metamodeling

A metamodel or surrogate model is a model of a model, and metamodeling is the process of generating such metamodels. Thus metamodeling or meta-modeling is the analysis, construction and development of the frames, rules, constraints, models and theories applicable and useful for modeling a predefined class of problems. As its name implies, this concept applies the notions of meta- and modeling in software engineering and systems engineering. Metamodels are of many types and have diverse applications.

The Shlaer–Mellor method, also known as Object-Oriented Systems Analysis (OOSA) or Object-Oriented Analysis (OOA) is an object-oriented software development methodology introduced by Sally Shlaer and Stephen Mellor in 1988. The method makes the documented analysis so precise that it is possible to implement the analysis model directly by translation to the target architecture, rather than by elaborating model changes through a series of more platform-specific models. In the new millennium the Shlaer–Mellor method has migrated to the UML notation, becoming Executable UML.

Object-oriented analysis and design (OOAD) is a popular technical approach for analyzing and designing an application, system, or business by applying object-oriented programming, as well as using visual modeling throughout the development life cycles to foster better stakeholder communication and product quality.

Executable UML is both a software development method and a highly abstract software language. It was described for the first time in 2002 in the book "Executable UML: A Foundation for Model-Driven Architecture". The language "combines a subset of the UML graphical notation with executable semantics and timing rules." The Executable UML method is the successor to the Shlaer–Mellor method.

RM-ODP

Reference Model of Open Distributed Processing (RM-ODP) is a reference model in computer science, which provides a co-ordinating framework for the standardization of open distributed processing (ODP). It supports distribution, interworking, platform and technology independence, and portability, together with an enterprise architecture framework for the specification of ODP systems.

In software engineering, team programming is a project management strategy for coordinating task distribution in computer software development projects, which involves the assignment of two or more computer programmers to work collaboratively on an individual sub-task within a larger programming project. In general, the manner in which this term is used today refers to methods currently in vogue within the software development industry where multiple individuals work simultaneously on the same activity; in these systems, programmers are often grouped in pairs at the same computer workstation, one observing the other working on the software and alternating roles at time intervals.

In computing, aspect-oriented software development (AOSD) is a software development technology that seeks new modularizations of software systems in order to isolate secondary or supporting functions from the main program's business logic. AOSD allows multiple concerns to be expressed separately and automatically unified into working systems.

CAMM (missile family)

The CAMM series is a family[8] of surface-to-air missiles developed by MBDA for the United Kingdom. CAMM shares some common features and components with the ASRAAM air-to-air missile, but with updated electronics and an active radar homing seeker. The Common Anti-Air Modular Missile is intended to replace the Sea Wolf missile on Type 23 frigates of the Royal Navy from 2017, the Rapier missile in British Army service from 2018 and is contributing to the updating of MBDA’s ASRAAM in service with the Royal Air Force. [1][9]

Reverse engineering, also called back engineering, is the process by which a man-made object is deconstructed to reveal its designs, architecture, or to extract knowledge from the object; similar to scientific research, the only difference being that scientific research is about a natural phenomenon.

Enterprise engineering is defined as the body of knowledge, principles, and practices to design all or part of an enterprise. An enterprise is a complex, socio-technical system that comprises interdependent resources of people, information, and technology that must interact with each other and their environment in support of a common mission. According to Kosanke, Vernadat and Zelm, enterprise engineering is an enterprise life-cycle oriented discipline for the identification, design, and implementation of enterprises and their continuous evolution, supported by enterprise modelling. Enterprise engineering is a subdiscipline of industrial engineering / systems engineering. The discipline examines each aspect of the enterprise, including business processes, information flows, material flows, and organizational structure. Enterprise engineering may focus on the design of the enterprise as a whole, or on the design and integration of certain business components.

References

  1. MASCOT - A Modular Approach to Software Construction Operation and Test, Royal Radar Establishment, RRE Technical Note No 778, October 1975
  2. Simpson, H. 1986. The Mascot method. Softw. Eng. J. 1, 3 (May 1986), 103-120. ISSN 0268-6961
  3. DD 196:1991; Guide for a modular approach to software construction, operation and test (MASCOT), British Standards Institute
  4. Simpson, H. 1994. Architecture for Computer Based Systems. IEEE Workshop on the Engineering of Computer Based Systems, 1994.
  5. Hull MEC, Ewart S, Millar RJ, Hanna JRP. March 2004. Modeling Complex Real-Time and Embedded Systems - The UML and DORIS Combination, Real-Time Systems, Vol. 26, No. 2, 135-159, ISSN 0922-6443