blob: c1e67bc060b64850fa527cf7a229290259115074 [file] [log] [blame]
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>Eclipse Free BIRD Tools</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content="Eclipse Free BIRD Tools" />
<meta name="keywords" content="Eclipse Free BIRD Tools" />
<meta name="author" content="Neil Mackenzie" />
<!-- Facebook and Twitter integration -->
<meta property="og:title" content=""/>
<meta property="og:image" content=""/>
<meta property="og:url" content=""/>
<meta property="og:site_name" content=""/>
<meta property="og:description" content=""/>
<meta name="twitter:title" content="" />
<meta name="twitter:image" content="" />
<meta name="twitter:url" content="" />
<meta name="twitter:card" content="" />
<link href="https://fonts.googleapis.com/css?family=Raleway:100,300,400,700" rel="stylesheet">
<!-- Animate.css -->
<link rel="stylesheet" href="css/animate.css">
<!-- Icomoon Icon Fonts-->
<link rel="stylesheet" href="css/icomoon.css">
<!-- Themify Icons-->
<link rel="stylesheet" href="css/themify-icons.css">
<!-- Bootstrap -->
<link rel="stylesheet" href="css/bootstrap.css">
<!-- Magnific Popup -->
<link rel="stylesheet" href="css/magnific-popup.css">
<!-- Owl Carousel -->
<link rel="stylesheet" href="css/owl.carousel.min.css">
<link rel="stylesheet" href="css/owl.theme.default.min.css">
<!-- Theme style -->
<link rel="stylesheet" href="css/style.css">
<!-- Modernizr JS -->
<script src="js/modernizr-2.6.2.min.js"></script>
<!-- FOR IE9 below -->
<!--[if lt IE 9]>
<script src="js/respond.min.js"></script>
<![endif]-->
</head>
<body>
<div class="gtco-loader"></div>
<div id="page">
<nav class="gtco-nav" role="navigation">
<div class="gtco-container">
<div class="row">
<div class="col-sm-2 col-xs-12">
<div id="gtco-logo"><a href="index.html">Eclipse Free BIRD Tools</a></div>
</div>
<div class="col-xs-10 text-right menu-1">
<ul>
<li><a href="opensource.html">Open Source</a></li>
<li><a href="collaboration.html">Collaborative</a></li>
<li><a href="calculation.html">Calculation</a></li>
<li><a href="lineage.html">Lineage</a></li>
<li><a href="model_driven.html">Model</a></li>
<li><a href="ldm.html">LDM Tools</a></li>
<li><a href="testing.html">Testing Tools</a></li>
</ul>
</div>
</div>
</div>
</nav>
<header id="gtco-header" class="gtco-cover gtco-cover-xs gtco-inner" role="banner">
<div class="gtco-container">
<div class="row">
<div class="col-md-12 col-md-offset-0 text-left">
<div class="display-t">
<div class="display-tc">
<div class="row">
<div class="col-md-8 animate-box">
<h1 class="no-margin">Model</h1>
<p>Model</p>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</header>
<!-- END #gtco-header -->
<div class="gtco-section">
<div class="gtco-container">
<div class="row">
<div class="col-md-8 col-md-offset-2 gtco-heading text-left">
<h2>Model</h2>
<h3>UML</h3>
CoCaLiMo is a model, its defined as UML class diagrams and has documentation for each class and attribute, it has no operations.<br><br>
We build up model instances, they are stored as CoCaSon files. <br><br>
CoCoMo focusses on 4 different parts of the model:<br><br>
<ul>
<li>Requirements</li>
<li>Functional design</li>
<li>Testing</li>
</ul><br>
CoCoMo for SMCubes adds the following parts to the model: <br><br>
<ul>
<li>Data Structures (defined by SMCubes)</li>
<li>Input Data (which matches the dat structures)</li>
</ul><br>
Note that the input data can be linked to tests. input data is linked to data structures, requirements are linked to functional design, and functional design is linked to tests.<br><br>
Note that the UML for data structures is basically the same as the UML of SMCubes .<br><br>
An example of the UML for SMCubes is here:<br>
<img src="core.jpg" alt="" height="600" width="800"> <br>
A ‘model instance’ is a concrete instance of some classes (e.g. a VARIABLE with the name attribute set to ‘CountryOfResidence’ with an associated Domain Object with a name attribute set to ‘Countries’) . <br> <br>
Instances of the models can be stored as CoCaSon, and can be loaded into memory as in memory objects. <br> <br>
<h3>Technology-Independent API </h3>
For each UML model we provide an API of useful functions around that model, for example providing the results of queries on that model (e.g. to provide to a UI), or translating from one model to another . <br><br>
Typically, we split this API into model queries and more advanced manipulations which we call the component API.<br><br>
<h3>Reference Implementation with UI</h3>
We provide an implementation of the models , model queries, component API, and models in Java, in particular we use the Eclipse Modelling Framework, which describes models using the Ecore standard.<br><br>
Ecore is an implementation of the EMOF standard for model driven engineering, provided by the Object Management Group who also manage the UML Standard.<br><br>
We provide a visual user interface based on Eclipse Sirius model visualization tool. Other user interfaces could be built on top of the technology independent API.<br><br>
<br><br>
</div>
</div>
</div>
</div>
<!-- END .gtco-services -->
<footer id="gtco-footer" class="gtco-section" role="contentinfo">
<div class="gtco-copyright">
<div class="gtco-container">
<div class="row">
<div class="col-md-6 text-left">
</div>
<div class="col-md-6 text-right">
</div>
</div>
</div>
</div>
</footer>
</div>
<div class="gototop js-top">
<a href="#" class="js-gotop"><i class="icon-arrow-up"></i></a>
</div>
<!-- jQuery -->
<script src="js/jquery.min.js"></script>
<!-- jQuery Easing -->
<script src="js/jquery.easing.1.3.js"></script>
<!-- Bootstrap -->
<script src="js/bootstrap.min.js"></script>
<!-- Waypoints -->
<script src="js/jquery.waypoints.min.js"></script>
<!-- Carousel -->
<script src="js/owl.carousel.min.js"></script>
<!-- Magnific Popup -->
<script src="js/jquery.magnific-popup.min.js"></script>
<script src="js/magnific-popup-options.js"></script>
<!-- Main -->
<script src="js/main.js"></script>
</body>
</html>