Page tree
Skip to end of metadata
Go to start of metadata


Quick Links:

MP-Firebird Tool

Team Members

Kristin Giammarco, Principal Investigator

Mikhail Auguston, Lead Architect & Developer

Cliff Whitcomb, Co-Investigator

Marianna Jones, Project Manager

Center for Educational Design, Development, and Distribution (CED3)


Monterey Phoenix is a Navy-developed formal language and approach for modeling behaviors for systems, software, hardware, people, and organizations, and their dependencies on one another and the environment. MP is used to describe operational processes, business processes, and system or software architectures for behavior, and can support behavior descriptions from a mission level down to a detailed design level.  It is different from other behavior modeling approaches in that it uses lightweight formal methods to generate a scope-complete set of scenario variants from system behaviors and interactions within and among independently specified systems.

MP is intended for the use in software and system architecture design and maintenance as a lightweight Formal Method. It provides an ecosystem for sanity checking tools, reusable architecture patterns, reusable assertions, queries, and tools for extracting architecture views.

The concept of software behavior models based on event grammars and event traces was introduced in [Auguston 1991, 1995], [Auguston, Jeffery, Underwood 2002], [Auguston, Michael, Shing 2006] as an approach to software debugging and testing automation. The early drafts of Monterey Phoenix have appeared in [Auguston 2009 a, 2009 b, 2014], [Auguston, Whitcomb and Giammarco 2010] and [Auguston, Whitcomb 2010, 2012].

Several MP prototypes have been developed by Mikhail Auguston during 2009–2015 and have converged into the MP-Firebird tool with GUI development by Philip McCullick and Michael Nigh at NPS CED3 to support the MP compiler and trace generator developed by Mikhail Auguston.  Kristin Giammarco and Cliff Whitcomb brought Systems Engineering expertise, vision and support for the MP technology.  Kristin Giammarco devised the sequence diagram-like layout for event traces on MP-Firebird, facilitated external sponsorship for MP and introduced MP to SE students, with whom she worked to show how MP could be used to detect, predict, classify and control emergent behaviors in Systems of Systems (SoS).   


References (see the Documentation page for a full bibliography)

AUGUSTON, M., 1991, FORMAN - Program Formal Annotation Language, in Proceedings of 5th Israel Conference on Computer Systems and Software Engineering, Herclia, May 27-28, IEEE Computer Society Press, 1991, pp.149-154.

AUGUSTON, M., 1995, Program Behavior Model Based on Event Grammar and its Application for Debugging Automation, in Proceedings of the 2nd International Workshop on Automated and Algorithmic Debugging, Saint-Malo, France, May 1995.

AUGUSTON, M., JEFFERY, C., UNDERWOOD, S., 2002, A Framework for Automatic Debugging, in Proceedings of the 17th IEEE International Conference on Automated Software Engineering, September 23-27, 2002, Edinburgh, UK, IEEE Computer Society Press, pp.217-222.

AUGUSTON, M., MICHAEL, B., SHING, M., 2006, Environment Behavior Models for Automation of Testing and Assessment of System Safety, Information and Software Technology, Elsevier, Vol. 48, Issue 10 , October 2006, pp. 971-980

AUGUSTON, M., 2009, Software Architecture Built from Behavior Models, ACM SIGSOFT Software Engineering Notes, 34:5.

AUGUSTON, M., 2009, Monterey Phoenix, or How to Make Software Architecture Executable, OOPSLA’09/Onward conference, Orlando, Florida, OOPSLA Companion, October 2009, pp.1031-1038

AUGUSTON, M., WHITCOMB, C., 2010, System Architecture Specification Based on Behavior Models, in Proceedings of the 15th ICCRTS Conference (International Command and Control Research and Technology Symposium), Santa Monica, CA, June 22-24, 2010

AUGUSTON, M.; WHITCOMB, C.; GIAMMARCO, K., 2010, A New Approach to System and Software Architecture Specification Based on Behavior Models. 3rd International Conference on Model-Based Systems Engineering (IC-MBSE 2010), Fairfax, VA, USA, September 27–28, 2010.

AUGUSTON, M., WHITCOMB, C., 2012, Behavior Models and Composition for Software and Systems Architecture, ICSSEA 2012, 24th International Conference on Software & Systems Engineering and their Applications, Telecom ParisTech, Paris, October 23-25, 2012

AUGUSTON, M., 2014, Behavior models for software architecture, NPS Technical Report NPSCS- 14-003, November 2014,


MP consists of a simple event grammar with two basic relations: precedence (to establish event ordering) and inclusion (to establish event hierarchy).  Behaviors are composed using operations like concurrency, alternative selection, and iteration, comparable to those used in Functional Flow Block Diagram (FFBD), Unified Modeling Language (UML), Systems Modeling Language (SysML), and Business Process Modeling Notation (BPMN) activity models.    Unlike other executable modeling formalisms, MP provides for the exhaustive generation, visualization, and querying of event traces (or use case scenarios) up to the specified scope.


MP allows for the compact specification of distinct behaviors for each component, separately  from interactions among components. Behaviors within different components are interleaved through the imposition of interaction constraints on events in the component models.  While current approaches commonly use manual methods to generate behavior scenario variants, MP generates the exhaustive set of possible combinations of permitted behaviors up to a specified scope limit.  MP leverages the Small Scope Hypothesis to expose most errors or other behaviors of interest on small examples (small number of loop iterations).

The Small Scope Hypothesis states that most errors can be exposed on small examples.*  Using MP, a finite number of event traces are generated from a specification containing potentially infinite number of behaviors by simulating only a small number of iterations on loops contained in the model. Many errors of consequence have been exposed for correction at a modest scope of 1, 2, or 3.

* Jackson, D. Software Abstractions: Logic, Language, and Analysis; MIT Press: Cambridge, MA, USA, 2012.

Small Scope Hypothesis:  Most flaws can be demonstrated on small counterexamples


We would like to recognize the important role that students have played in the discovery of emergent behaviors in MP models, especially the work by Joanne Pilcher, Brant Revill, Cassie Nelson, Jordan Bryant, Stephan Mathos, Anthony Constable, Cody Reese, Richard Thrutchley, and Chris Krukowski.  John Palmer and Hannah Nilles contributed the first experiments with assigning probabilities to events in MP to compute whole scenario probabilities, a feature being added in MP version 3.5.  John Quartuccio has contributed a methodology for writing behavior templates in MP to make behavior patterns searchable.  Monica Farah-Stapleton has contributed a methodology for counting function points in MP models to estimate cost.  Joey Rivera participated in the early days of MP research, developing a method and prototype software that uses event attributes to conduct quantitative analysis of MP models, a feature being added in MP version 3.5.  Special thanks go to Megan Mosher for developing a beginners-level tutorial for MP, and for her help with the MP website.

We thank the NPS leadership and the Center for Educational Design, Development, and Distribution (CED3) for their support to the MP project.  

We thank our research sponsors for their forward thinking and support of MP:

  • Office of Naval Research (ONR)
  • Naval Air Systems Command (NAVAIR)
  • Systems Engineering Research Center (SERC)
  • Naval Research Program (NRP)
  • Marine Corps Systems Command (MCSC)
  • Naval Air Weapons Station - China Lake (Naval Air Warfare Center (NAWC))
  • NPS Foundation
  • Consortium for Robotics and Unmanned Systems Education and Research (CRUSER)


Material contained herein is made available for the purpose of peer review and discussion and does not necessarily reflect the views of the Department of the Navy or the Department of Defense.

  • No labels