Universal Systems Language. Universal Systems Language (USL) is a systems modeling language and formal method for the specification and design of software and other complex systems. It was designed by Margaret Hamilton based on her experiences writing flight software for the Apollo program. The language is implemented through the 001 Tool Suite software by Hamilton Technologies, Inc. USL evolved from 001AXES which in turn evolved from AXES all of which are based on Hamilton's axioms of control. The 001 Tool Suite uses the preventive concept of Development Before the Fact (DBTF) for its life-cycle development process. DBTF eliminates errors as early as possible during the development process removing the need to look for errors after-the-fact.

Philosophy
USL was inspired by Hamilton's recognition of patterns or categories of errors occurring during Apollo software development.

Certain correctness guarantees are embedded in the USL grammar.

USL is regarded by some users as more user-friendly than other formal systems. It is not only a formalism for software, but also defines ontologies for common elements of problem domains, such as physical space and event timing.

Formalism for a theory of control

Primitive structures are universal in that they are able to be used to derive new abstract universal structures, functions or types. The process of deriving new objects (i.e., structures, types and functions) is equivalent to the process of deriving new types in a constructive type theory.

Implementation
The process of developing a software system with USL together with its automation, the 001 Tool Suite (001), is as follows: define the system with USL, automatically analyze the definition with 001's analyzer to ensure that USL was used correctly, automatically generate much of the design and all of the implementation code with 001's generator. USL can be used to lend its formal support to other languages.

See also
 Systems philosophy
 IDEF
 Model-driven architecture
 Systems modeling language
 Object process methodology

References

Further reading 
 Hamilton, M., Zeldin, S. (1976), "Higher Order Software — A Methodology for Defining Software," IEEE Transactions on Software Engineering, vol. SE-2, no. 1, Mar. 1976.
Hamilton, M. (April 1994). "Inside Development Before the Fact". (Cover story). Special Editorial Supplement. 8ES-24ES. Electronic Design.
 Hamilton, M. (June 1994). "001: A Full Life Cycle Systems Engineering and Software Development Environment". (Cover story). Special Editorial Supplement. 22ES-30ES. Electronic Design.
 Hamilton, M., Hackler, W.R.. (2004), Deeply Integrated Guidance Navigation Unit (DI-GNU) Common Software Architecture Principles (revised dec-29-04), DAAAE30-02-D-1020 and DAAB07-98-D-H502/0180, Picatinny Arsenal, NJ, 2003–2004.
 Hamilton, M. and Hackler, W.R. (2007), "Universal Systems Language for Preventative Systems Engineering," Proc. 5th Ann. Conf. Systems Eng. Res. (CSER), Stevens Institute of Technology, Mar. 2007, paper #36.
 Hamilton, M.; Hackler, W. R. (2007). "A Formal Universal Systems Semantics for SysML". 17th Annual International Symposium, INCOSE 2007, San Diego, CA, Jun. 2007.

External links

 Hamilton Technologies

Formal specification languages
Systems engineering
Modeling languages