blob: 8001d59d6cfb4dcf789843cf2c80a74444f98369 [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<meta name="copyright" content="Copyright (c) Thales Corporate Services S.A.S, 2009. This page is made available under license. For full details see the LEGAL in the documentation book that contains this page." >
<meta name="author" content="Benoit Langlois" >
<meta name="keywords" content="contract"/>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=ISO-8859-1">
<META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css">
<LINK REL="STYLESHEET" HREF="../book.css" CHARSET="ISO-8859-1" TYPE="text/css">
<title>Contract</title>
</HEAD>
<BODY BGCOLOR="#ffffff">
<table border="0" cellpadding="2" cellspacing="0" width="100%">
<tbody>
<tr>
<td colspan="2" align="left" bgcolor="#0080c0" valign="top">
<h2><font face="Arial,Helvetica"><font color="#ffffff">
&nbsp;Contract
</font></font></h2>
</td>
</tr>
</tbody>
</table>
<a name="definition"><h2>Definition</h2></a>
<p class="Para">A contract is the declaration of a datum required for the execution of an activity, i.e. a factory component or task.</p>
<a name="motivation"><h2>Motivation</h2></a>
<p class="Para">A contract is a visible piece of information required to execute an activity. The set of contracts of an activity encapsulates internal information and represents the dependencies with other activities.</p>
<a name="structure"><h2>Structure</h2></a>
<p class="Para">Contract properties:</p>
<ul CLASS="UnorderedList">
<li CLASS="Item">It has a mode: Input / Output / Input-Output</li>
<li CLASS="Item">It is mandatory or optional</li>
<li CLASS="Item">It is is a key/value association</li>
<li CLASS="Item">A value has a type that can be simple (e.g., a string value), complex (e.g., a list) or a reference (e.g., a domain model reference)
<li CLASS="Item">It can have a default value</li>
</ul>
</body>
</html>