With a wealth of experience ranging from aerospace to insurance, The Object
Forge brings a unique blend of computing talent, scientific knowledge, design
flair, and engineering common sense to all of its projects. Concentrating on Object
Oriented design, development, and mentoring, the company’s current project is
MASCOT 2002 and its reference implementation MOJO (MASCOT On Java Objects).
MASCOT 2002 is a framework and suite of tools that implements a unified approach to
system design, development, and deployment. MASCOT 2002 and MOJO offer a
lightweight alternative to currently available technologies and are equally applicable to
enterprise, corporate, personal, and embedded systems.
For further information about the Object Forge, it’s background,
products, and ethos, and contact details please browse the links on this page.
The Object Forge was founded in 1996 by Allan Clearwaters who is the company’s
CEO and Chief Architect. Allan brings over 30 years of computing experience to the
company in both the scientific and commercial domains.
Allan started his career at the Naval Underwater Systems Center where he engaged in
displays and network research. In 1979 he came to the UK as an exchange scientist
to the Royal Signals and Radar Establishment (now QinetiQ) in Malvern. He returned
to Malvern in in 1981 to become a founding member and Technical Director of Helitune
Ltd. Allan remained with Helitune 15 years as the company’s Chief Architect
until he
left to form Object Forge. In that time he lead numerous projects including the
development of the Rotortuner, the world’s first automatic
helicopter Rotor Track and
Balance and Virbration Analysis (RTB/VA) equipment. First released in 1985, the
Rotortuner was and remains the mainstay of Helitune’s business, established its
reputation the the helicopter maintenance field, and is still in service today with the
British MOD and other commercial and military customers around the world.
Since its inception Object Forge has engaged in a number of projects for customers
including the National Grid (now Npower), IBM, and Axa insurance. Today it
concentrates on the design and development of Object Oriented systems and
products.
Allan brings an aggressive, innovative approach to development tempered by his
experience in the industry. He believes that development can be hard, should be fun,
benefits from imagination, demands a sense of humor, and is required to deliver.
Since its inception the Object Forge has offered design, development, and
mentoring services. While the company’s primary interest is in the area of Object
Orientation, it maintains the ability to deal with a wide range of commercial,
engineering, and scientific topics. To discuss your requirements contact us.
The company’s first product is MASCOT 2002 and its reference Java implementation,
MOJO. Under development for the past year, MASCOT 2002 offers a unique, robust
methodology and framework aimed at the design, development, deployment, and
maintenance of complex systems. MASCOT 2002 reimplements and extends MASCOT
2, a UK Ministry of Defense standard applied extensively in the 1980s.
MASCOT (Modular Approach to Software Construction, Operation, and Test) explicitly
addresses the issues surrounding how software runs, not how it is built. As such it
complements rather than supplants current design methodologies by defining a
vocabulary, diagram set, and implementation independent platform for the delivery of
MASCOT systems. MASCOT creates an environment where developers can reason
about a system’s runtime behavior and promotes consideration of threading and inter-
process communication issues early in the design process rather later during system
integration. MASCOT can have a profound impact and eases many of the problems
normally associated with the deployment and maintenance of large software systems.
While MASCOT 2002‘s primarily target is server-side applications where it offers a
lightweight alternative to currently available technology, it is not limited to this domain
and is equally applicable to PC and embedded systems.
MOJO (MASCOT On Java Objects) is a MASCOT 2002 reference implementation
written in Java. MOJO provides the support for systems developed under MASCOT
2002 and runs without modification on Windows and Linux/Unix platforms Evaluation
copies of the current version, MOJO R1.0, are available on this site; production
versions require a license from the Object Forge. Please see the contact link for
details.
Known variously as real-time, multi-tasking, multi-threaded, cooperative,
distributed, or (more recently) web enabled, systems built from cooperating
collections of independent entities have always been and will probably remain hard to
design and deliver. At the heart of this difficulty lies the definition and control of inter-
process communication and synchronization and the lack of a formalism that
addresses these issues. Most methodologies and their supporting tool sets address
how a system is built and provide solutions for requirements capture, system
specification, and software design. There are few tools, however, that deal explicitly
with deployment, ie. how a system is expected to run, and bring the same level of
discipline to it that has become commonplace in other areas.
Synchronization and inter-process communication is almost always part of any system
whether or not it is explicitly apparent in the design. The reason for this is simple;
real world problems exhibit parallelism and so software solutions tend to reflect this
fact. MASCOT (Modular Approach to Software Construction, Operation, and Test)
explicitly addresses these aspects of system design and provides a simple, elegant,
and powerful way to reason about them. MASCOT is not a replacement for modern
design techniques and tools but rather complements them by adding another
dimension to the design process. By encouraging designers to define runtime
behavior early the design rather than late in the integration phase, MASCOT offers a
unique approach to system design and development.
MASCOT was developed at the Royal Signals and Radar Establishment (now QinetiQ)
in Malvern, England, and applied as a software standard by the British Ministry of
Defense during the 1970s and 80s. MASCOT 2002 extends and enhances the original
MASCOT 2 standard to reflect advances in software and system technology since then.
MASCOT defines three main components and a unique design process that neatly
bridges the discontinuity between design and integration and deployment. MASCOT’s
primary design tool is the Activity, Channel, and Pool (ACP) diagram. ACP diagrams
provide a graphical description of system structure and offer a way for designers and
developers to reason about a system’s runtime behaviour. The vocabulary, symbology,
and structure of ACP diagrams assumes the existence of a MASCOT machine that
supports the synchronization and inter-process communication implicit in MASCOT
systems. MASCOT machines come in many flavours from kernel executives to
operating system interfaces (depending on the underlying hardware and software) but
in all cases they implement a small set of primitives and a consistent deployment
target. MASCOT machines provide a virtual platform for MASCOT systems and
preserve the implementation independence of ACP diagrams; in essence, any ACP
diagram should run on any MASCOT machine.
System Element Templates (SETs) provide the bridge between ACP diagrams and
MASCOT machines. SETs documents are simple files generated from ACP diagrams
that capture their content and structure. A MASCOT machine reads and parses SET
documents, configures itself according to their content, and then ‘executes’ the
MASCOT system described by the SET.
Through these three components MASCOT defines a methodology that not only
supports design but also a direct path to deployment. Anyone who has experienced
the trauma of chasing obscure bugs during integration and delivery will appreciate the
gains MASCOT can bring to the development process.