FAMOOS Home | E-mail Feedback

FAMOOS Logo

Last revision: February, 22nd 2008

SCG / FAMOOS / FAMIX (Information Exchange Model)

This page provides various pointers to the FAMIX model. This model provides a language-independent representation of object-oriented source code and is used by the FAMOOS tool prototypes as a basis for exchanging information about object-oriented software systems.


Famix is still in use, please refer to

Old FAMIX pointers

Why FAMIX ?


The Rationale underlying FAMIX
This document is describing why we did the effort of specifying our own proper information exchange model, and why we did not rely on existing standards such as UML.
[ HTML | Compressed Postcript | PDF ]

FAMIX Release 2.0


The FAMIX 2.0 specification
This specification is based upon the CDIF standard so that it can be transferred via flat ASCII streams.
[ HTML | PDF | Compressed postcript ]


The CDIF headers for FAMIX 2.0 transfers
All CDIF ASCII streams contain headers in order for the readers to be able to interpret the information cantained in the transfer. If you write a CDIF stream, you should include one of the following ...
[ Complete CDIF FAMIX specification | Minimal CDIF FAMIX specification ]


An example
An example of a FAMIX/CDIF file generated from a simple Java project containing a class Point and a class ColoredPoint.
[ Point.java | ColoredPoint.java | CDIF file ]

FAMIX Language Plugins


C++ Language Plug-in 1.0
This document describes the interpretation and extension of FAMIX for the C++ language.
[ HTML | PDF | Compressed postcript ]
Java Language Plug-in 1.0
This document describes the interpretation and extension of FAMIX for the Java language.
[ HTML | PDF | Compressed postcript ]
Ada Language Plug-in 2.2
This document describes the interpretation and extension of FAMIX for the Ada language.
[ HTML | PDF | Compressed postcript ]

Tool support


MOOSE
Moose is the Smalltalk implementation of the FAMIX metamodel. For more information see the page dedicated to MOOSE.


sniff2famix
sniff2famix extracts information according to the FAMIX model from SNiFF+ symbol tables and puts it into CDIF industrial standard ASCII streams. For more information see the sniff2famix Wiki page

Older FAMIX Releases


The FAMIX 1.1 specification
This specification is based upon the CDIF standard so that it can be transferred via flat ASCII streams. While writing the specification, the name FAMIX was not yet agreed upon, so this explains why it is never mentioned in the document.
[ HTML | PDF | Compressed postcript | Compressed postcript (2 page up) ]


The CDIF headers for FAMIX 1.1 transfers
All CDIF ASCII streams contain headers in order for the readers to be able to interpret the information cantained in the transfer. If you write a CDIF stream, you should include one of the following ...
[ Complete FAMIX specification | Minimal FAMIX specification ]

FAMOOS Home | E-mail Feedback