blob: e7684cdd65a25bc30826b924d3ea690671899cc6 [file] [log] [blame]
<html>
<head>
<meta http-equiv=Content-Type content="text/html; charset=windows-1252">
<meta name=ProgId content=PowerPoint.Slide>
<meta name=Generator content="Microsoft PowerPoint 10">
<link id=Main-File rel=Main-File href="../EclipseCon2007_LongTalk.html">
<link rel=Preview href=preview.wmf>
<meta name=Robots content=NoIndex>
<script src=script.js></script><script><!--
if( !(IsWin("PPTOtl")||IsWin("PPTNav")||IsWin("PPTOtlNav")) )
{
obj = GetObj("Main-File")
parent.location.href=obj.href
}
var gOtlHiliteClr="#ffffff",gOtlNormalClr="#000000",gOtlActiveClr="#ffff00",gSelected="",gTxtState=false,gChildEntryTable=new Array()
function Load()
{
if( IsWin("PPTOtl" ) ){ LoadOtl(); parent.gOtlLoaded=true; return }
if( g_supportsPPTHTML ) {
if( IsWin("PPTNav" ) ){ LoadNav("NavObj",UpdNav); parent.gNavLoaded=true; return }
if( IsWin("PPTOtlNav" ) ){ LoadNav("OtlNavObj",UpdOtlNav); parent.gOtlNavLoaded=true; return }
}
}
function Upd(){ if( IsWin("PPTNav") ) LoadNav("NavObj",UpdNav) }
function LoadNav( oId,UpdFunc )
{
document.ondragstart=CancelDrag
document.onselectstart=CancelDrag
document.body.style.margin=2
UpdFunc()
obj=document.all.item(oId)
obj.style.display="block"
obj.style.visibility="visible"
document.bgColor="threedface"
if( parent.frames["PPTNts"] )
notesBtn.style.display = ""
if( parent.gHasNarration )
nb_voiceBorder.style.display = ""
}
function LoadOtl()
{
var otl=GetObj("OtlObj")
otl.style.display="block"
otl.style.visibility="visible"
if( gOtlActiveClr == "" ) gOtlActiveClr=document.linkColor
if( gOtlHiliteClr == "" ) gOtlHiliteClr=document.fgColor
if( gOtlNormalClr == "" )
gOtlNormalClr=document.bgColor
else
document.bgColor=gOtlNormalClr
InitArray()
if( ObjExists( parent.gCurSld ) ) {
ChangeState( parent.gCurSld,gOtlNormalClr,gOtlHiliteClr )
gSelected=parent.gCurSld
}
else gSelected = -1
UpdOtl()
}
function UpdOtl(){ UpdIdx(parent.gCurSld) }
function UpdIdx( idx )
{
if( gSelected != idx ) {
if( gSelected > 0 )
ChangeState( gSelected,gOtlHiliteClr,gOtlNormalClr )
if( ObjExists( idx ) ) {
gSelected = idx
ChangeState( gSelected,gOtlNormalClr,gOtlHiliteClr )
}
else gSelected = -1
}
if( gTxtState != parent.gOtlTxtExp ) {
state = "block"
if( !parent.gOtlTxtExp )
state="none"
for(ii=0; ii<gChildEntryTable.length; ii++) {
obj=gChildEntryTable[ii];
if( obj.id == null ) continue;
if( obj.id.indexOf("PPTC") >= 0 )
obj.style.display=state;
}
gTxtState=parent.gOtlTxtExp
if( ObjExists( gSelected ) )
ChangeState( gSelected,gOtlNormalClr,gOtlHiliteClr )
}
}
function InitArray()
{
count=0
var list=GetTags(document,"DIV");
for(ii=0; ii<list.length; ii++) {
obj=list.item(ii)
if( obj.id == null ) continue
if( obj.id.indexOf("PPTC") >= 0 )
gChildEntryTable[count++]=obj
}
}
function ChangeState( idx,fgColor,bgColor )
{
obj=GetObj("PPTL"+idx)
obj.style.color=fgColor
obj=GetObj("PPTP"+idx)
obj.style.backgroundColor=bgColor
}
function ChgClr( o,clr ){ if( o.id != "PPTL"+gSelected ) o.style.color=clr }
function Over( src ){ ChgClr(GetLink(src),gOtlActiveClr) }
function Out( src ){ ChgClr(GetLink(src),gOtlHiliteClr) }
function Follow(src){ window.location.href = GetLink(src).href; }
function ObjExists( ii ) { obj=GetObj("PPTP"+ii ); return( obj ) }
function GoToSld( href ){ UpdIdx(parent.GetSldNum(href)); parent.GoToSld( href ) }
function CancelDrag(){ window.event.cancelBubble=true;window.event.returnValue=false}
function GetLink(src)
{
if(src.tagName=="A") return src
else return GetTags(src,"A").item(0)
}
function UpdNav()
{
txt = "<center>";
if( parent.GetHrefObj( parent.gCurSld ).mOrigVis == 1 )
txt += "Slide " + parent.GetCurSldNum() + " of " + parent.GetNumSlds()
else
txt += "Hidden Slide"
txt += "</center>";
nav_text.innerHTML = txt;
if( !parent.HasPrevSld() )
gBtnArr["nb_prev"].Enabled(0)
else
gBtnArr["nb_prev"].Enabled(1)
if( !parent.HasNextSld() )
gBtnArr["nb_next"].Enabled(0)
else
gBtnArr["nb_next"].Enabled(1)
gBtnArr["nb_nts"].SetEnabled()
gBtnArr["nb_nts"].SetFlag( parent.gHasNts )
gBtnArr["nb_sldshw"].Enabled(1)
gBtnArr["nb_voice"].Enabled(1)
}
function UpdOtlNav()
{
gBtnArr["nb_otl"].SetEnabled();
if( parent.gOtlOpen )
gBtnArr["nb_otlTxt"].Enabled( true );
else
document.all.item("nb_otlTxtBorder").style.visibility = "hidden";
}
//--></script>
<style>
<!--.PTxt
{position:relative;
width:100%;
margin-top:5px;
padding-left:2px;
font-weight:bold;}
.CTxt
{position:relative;
width:100%;
margin-top:5px;}
a
{color:white;
text-decoration:none;}
ul
{color:white;
margin-bottom:0px;
margin-left:20px;}
.sldNum
{margin-top:5px;
color:white;}
.button
{position:absolute;
width:32px;
height:20px;
border-style:solid;
border-width:1px;
border-color:threedface;}
-->
</style>
</head>
<body onload="Load()" style='margin:2px'>
<div id=NavObj onload="Load()" onmouseover="BtnOnOver()"
onmousedown="BtnOnDown()" onmouseout="BtnOnOut()" onmouseup="BtnOnUp()"
onkeypress="_KPH()" style='display:none;visibility:hidden'>
<table id="notesBtn" style='position:absolute;display:none;width:70px' align=left cellpadding=0
cellspacing=0>
<td nowrap>
<div id="nb_ntsElem" align=center style='position:relative;padding:3px;
font-family:Arial;color:buttontext;font-size:9pt'><img src="notes_flag.gif"
border=0 id="notes_flag" style='display:none'><span
style='mso-spacerun:yes'>  </span>Notes</div>
<div title="Show/Hide Notes" id="nb_nts" style='position:absolute;top:0%;
left:0%;width:100%;height:100%'></div>
</td>
</table>
<table style='position:relative;width:70px' align=right cellpadding=0 cellspacing=0>
<td nowrap>
<div id="nb_sldshwText" title="Full
Screen Slide Show" align=center style='position:relative;margin-left:20px;padding:3px;
font-family:Arial;color:buttontext;font-size:9pt;cursor:default'>Slide
Show</div>
<div id="nb_sldshwBorder" title="Full Screen Slide Show" style='position:absolute;top:0%;left:0%;width:100%;height:20px'>
<div style='position:absolute;clip:rect(0px, 18px, 18px, 0px)'><img
src="buttons.gif" id="nb_sldshw" style='position:relative;left:-254px'></div>
</div>
</td>
<td>
<div id="nb_voiceBorder" style='display:none;position:absolute;top:0;left:-40px;
width:20px;height:20px'>
<div style='position:absolute;clip:rect(0px, 18px, 18px, 0px)'><img
src="buttons.gif" id="nb_voice" title="Pause/Play Narration" style='position:
relative;left:-290px'></div>
</div>
</td>
</table>
<table style='position:relative' align=center cellpadding=0 cellspacing=0>
<td nowrap>
<div id="nb_prevBorder" class=button style='left:-30px'>
<div style='position:absolute;clip:rect(0px, 30px, 18px, 0px)'><img
src="buttons.gif" id="nb_prev" title="Previous Slide" style='position:relative;
left:0px'></div>
</div>
<span id="nav_text" style='position:relative;top:3px;width:100px;font-family:
Arial;color:buttontext;font-size:9pt'></span>
<div id="nb_nextBorder" class=button>
<div style='position:absolute;clip:rect(0px, 30px, 18px, 0px)'><img
src="buttons.gif" id="nb_next" title="Next Slide" style='position:relative;
left:-90px'></div>
</div>
</td>
</table>
</div>
<div id=OtlNavObj onload="Load()" onmouseover="BtnOnOver()"
onmousedown="BtnOnDown()" onmouseout="BtnOnOut()" onmouseup="BtnOnUp()"
onkeypress="_KPH()" style='display:none;visibility:hidden'>
<table style='position:relative;width:70px' align=left cellpadding=0 cellspacing=0>
<td nowrap><div title="Show/Hide
Outline" id="nb_otl"
style='position:absolute;top:0%;left:0%;width:100%;height:100%;cursor:default'>
<div id="nb_otlElem" align=center style='position:relative;padding:3px;font-family:Arial;
color:buttontext;font-size:9pt'>Outline</div></div>
</td>
</table>
<table style='position:relative' align=center cellpadding=0 cellspacing=0>
<td>
<div style='position:absolute;left:-18px;width:24px;height:20px;border-style:
solid;border-width:1px;border-color:threedface' id="nb_otlTxtBorder">
<div style='position:absolute;clip:rect(0px, 22px, 18px, 0px)'><img
src=buttons.gif id="nb_otlTxt" title="Expand/Collapse Outline"
style='position:relative;left:-157px'></div>
</div>
</td>
</table>
</div>
<div id=OtlObj style='display:none;visibility:hidden;'>
<table width="100%" style='font-family:Arial;font-size:9pt'>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>1</font></div>
</td>
<td width="100%">
<div id=PPTP1 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0030.html');" id=PPTL1>What do YOU want UML™
to be?</a></font></div>
<div id=PPTC1 class=CTxt style='display:none'><font size=2>
<ul>
<li>Long Talk</li>
<br>
<br>
<li>Kenn Hussey</li>
<li>IBM Rational Software</li>
</ul>
</font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>2</font></div>
</td>
<td>
<div id=PPTP2 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0029.html');" id=PPTL2>Contents</a></font></div>
<div id=PPTC2 class=CTxt style='display:none'><font size=2>
<ul>
<li>Background</li>
<li>Language Units</li>
<li>Compliance Levels</li>
<li>Package Merge</li>
<li>Redefinition</li>
<li>Subsets</li>
<li>Derived Unions</li>
<li>Profiles</li>
<li>Extending UML(2)</li>
<li>Featherweight Extensions</li>
<li>Lightweight Extensions</li>
<li>Middleweight Extensions</li>
<li>Heavyweight Extensions</li>
<li>Summary</li>
</ul>
</font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>3</font></div>
</td>
<td>
<div id=PPTP3 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0117.html');" id=PPTL3>Contents</a></font></div>
<div id=PPTC3 class=CTxt style='display:none'><font size=2>
<ul>
<li>Background</li>
<li>Language Units</li>
<li>Compliance Levels</li>
<li>Package Merge</li>
<li>Redefinition</li>
<li>Subsets</li>
<li>Derived Unions</li>
<li>Profiles</li>
<li>Extending UML(2)</li>
<li>Featherweight Extensions</li>
<li>Lightweight Extensions</li>
<li>Middleweight Extensions</li>
<li>Heavyweight Extensions</li>
<li>Summary</li>
</ul>
</font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>4</font></div>
</td>
<td>
<div id=PPTP4 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0032.html');" id=PPTL4>Background – What is
UML?</a></font></div>
<div id=PPTC4 class=CTxt style='display:none'><font size=2>
<ul>
<li>Unified Modeling Language, an Object Management Group (OMG) standard</li>
<br>
<br>
<li>A language for specifying, visualizing, and documenting models of
software systems</li>
<br>
<br>
<li>Current version is 2.1.1</li>
</ul>
</font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>5</font></div>
</td>
<td>
<div id=PPTP5 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0033.html');" id=PPTL5>Background – What is
UML2?</a></font></div>
<div id=PPTC5 class=CTxt style='display:none'><font size=2>
<ul>
<li>Unified Modeling Language 2.x</li>
<br>
<br>
<li>A component of the Model Development Tools (MDT) Modeling subproject at
Eclipse</li>
<br>
<br>
<li>Current release, 2.0.3, is based on UML 2.1.1</li>
<br>
<br>
<li>Next release tentatively scheduled for June 2007 (Europa)</li>
</ul>
</font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>6</font></div>
</td>
<td>
<div id=PPTP6 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0034.html');" id=PPTL6>Background – What is
UML2?</a></font></div>
<div id=PPTC6 class=CTxt style='display:none'><font size=2>
<ul>
<li>UML2 provides</li>
<ul>
<li>a useable implementation of the UML metamodel to support the
development of modeling tools</li>
<li>a common XMI™ schema to facilitate interchange of semantic models</li>
<li>test cases as a means of validating the specification</li>
<li>validation rules as a means of defining and enforcing levels of
compliance</li>
</ul>
<br>
<li>UML2 includes a customized EMF code generator that can handle “UMLisms”
like redefinition, subsetting, and derived unions</li>
<br>
<br>
</ul>
</font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>7</font></div>
</td>
<td>
<div id=PPTP7 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0118.html');" id=PPTL7>Contents</a></font></div>
<div id=PPTC7 class=CTxt style='display:none'><font size=2>
<ul>
<li>Background</li>
<li>Language Units</li>
<li>Compliance Levels</li>
<li>Package Merge</li>
<li>Redefinition</li>
<li>Subsets</li>
<li>Derived Unions</li>
<li>Profiles</li>
<li>Extending UML(2)</li>
<li>Featherweight Extensions</li>
<li>Lightweight Extensions</li>
<li>Middleweight Extensions</li>
<li>Heavyweight Extensions</li>
<li>Summary</li>
</ul>
</font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>8</font></div>
</td>
<td>
<div id=PPTP8 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0036.html');" id=PPTL8>Language Units</a></font></div>
<div id=PPTC8 class=CTxt style='display:none'><font size=2>
<ul>
<li>The modeling concepts in UML are organized into language units</li>
<br>
<br>
<li>A language unit is a collection of tightly coupled modeling concepts
that deal with a particular aspect of a system</li>
<br>
<br>
<li>Language units are further partitioned into packages (merge increments)</li>
<br>
<br>
<li>Language units are used as the foundation for defining compliance in UML</li>
</ul>
</font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>9</font></div>
</td>
<td>
<div id=PPTP9 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0119.html');" id=PPTL9>Contents</a></font></div>
<div id=PPTC9 class=CTxt style='display:none'><font size=2>
<ul>
<li>Background</li>
<li>Language Units</li>
<li>Compliance Levels</li>
<li>Package Merge</li>
<li>Redefinition</li>
<li>Subsets</li>
<li>Derived Unions</li>
<li>Profiles</li>
<li>Extending UML(2)</li>
<li>Featherweight Extensions</li>
<li>Lightweight Extensions</li>
<li>Middleweight Extensions</li>
<li>Heavyweight Extensions</li>
<li>Summary</li>
</ul>
</font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>10</font></div>
</td>
<td>
<div id=PPTP10 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0035.html');" id=PPTL10>Compliance Levels</a></font></div>
<div id=PPTC10 class=CTxt style='display:none'><font size=2>
<ul>
<li>The modeling concepts in UML are also partitioned into horizontal layers
of capability referred to as compliance points</li>
<br>
<br>
<li>A compliance level is ultimately merged into a single “UML” package
which defines a shared namespace for all compliance levels</li>
<br>
<br>
<li>UML specifies five pre-defined compliance levels, namely L0, LM, L1, L2,
and L3</li>
<br>
<br>
<li>UML2 is based on the L3 compliance level of UML</li>
<br>
<br>
</ul>
</font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>11</font></div>
</td>
<td>
<div id=PPTP11 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0048.html');" id=PPTL11>Compliance Levels – L0</a></font></div>
<div id=PPTC11 class=CTxt style='display:none'><font size=2>
<ul>
<li>Level 0 is the most basic compliance level for UML</li>
<br>
<br>
<li>Contains the basic ability to model structure</li>
<br>
<br>
<li>Has the same modeling capability as EMOF but does not include the other
MOF™ capabilities such as reflection, identity, or extensions</li>
<br>
<br>
<li>Level 0 is a good starting point for extending UML with additional
behavior using MOF</li>
</ul>
</font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>12</font></div>
</td>
<td>
<div id=PPTP12 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0037.html');" id=PPTL12>Compliance Levels – L0</a></font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>13</font></div>
</td>
<td>
<div id=PPTP13 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0049.html');" id=PPTL13>Compliance Levels – LM</a></font></div>
<div id=PPTC13 class=CTxt style='display:none'><font size=2>
<ul>
<li>Level M is the Metamodel constructs compliance level from
InfrastructureLibrary</li>
<br>
<br>
<li>Adds an extra language unit for more advanced class-based structures
used for building metamodels (using CMOF), such as UML itself</li>
</ul>
</font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>14</font></div>
</td>
<td>
<div id=PPTP14 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0038.html');" id=PPTL14>Compliance Levels – LM</a></font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>15</font></div>
</td>
<td>
<div id=PPTP15 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0050.html');" id=PPTL15>Compliance Levels – L1</a></font></div>
<div id=PPTC15 class=CTxt style='display:none'><font size=2>
<ul>
<li>Level 1 extends the capabilities provided by Level M</li>
<br>
<br>
<li>Adds language units for use cases, interactions, structures, actions,
and activities</li>
</ul>
</font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>16</font></div>
</td>
<td>
<div id=PPTP16 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0039.html');" id=PPTL16>Compliance Levels – L1</a></font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>17</font></div>
</td>
<td>
<div id=PPTP17 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0040.html');" id=PPTL17>Compliance Levels – L1</a></font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>18</font></div>
</td>
<td>
<div id=PPTP18 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0051.html');" id=PPTL18>Compliance Levels – L2</a></font></div>
<div id=PPTC18 class=CTxt style='display:none'><font size=2>
<ul>
<li>Level 2 extends the language units already provided in Level 1</li>
<br>
<br>
<li>Adds language units for deployment, state machine modeling, and profiles</li>
</ul>
</font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>19</font></div>
</td>
<td>
<div id=PPTP19 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0041.html');" id=PPTL19>Compliance Levels – L2</a></font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>20</font></div>
</td>
<td>
<div id=PPTP20 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0042.html');" id=PPTL20>Compliance Levels – L2</a></font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>21</font></div>
</td>
<td>
<div id=PPTP21 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0052.html');" id=PPTL21>Compliance Levels – L3</a></font></div>
<div id=PPTC21 class=CTxt style='display:none'><font size=2>
<ul>
<li>Level 3 represents the complete UML</li>
<br>
<br>
<li>Extends the language units provided by Level 2</li>
<br>
<br>
<li>Adds new language units for modeling information flows, templates, and
model packaging</li>
</ul>
</font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>22</font></div>
</td>
<td>
<div id=PPTP22 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0043.html');" id=PPTL22>Compliance Levels – L3</a></font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>23</font></div>
</td>
<td>
<div id=PPTP23 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0044.html');" id=PPTL23>Compliance Levels – L3</a></font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>24</font></div>
</td>
<td>
<div id=PPTP24 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0045.html');" id=PPTL24>Compliance Levels –
UML2</a></font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>25</font></div>
</td>
<td>
<div id=PPTP25 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0120.html');" id=PPTL25>Contents</a></font></div>
<div id=PPTC25 class=CTxt style='display:none'><font size=2>
<ul>
<li>Background</li>
<li>Language Units</li>
<li>Compliance Levels</li>
<li>Package Merge</li>
<li>Redefinition</li>
<li>Subsets</li>
<li>Derived Unions</li>
<li>Profiles</li>
<li>Extending UML(2)</li>
<li>Featherweight Extensions</li>
<li>Lightweight Extensions</li>
<li>Middleweight Extensions</li>
<li>Heavyweight Extensions</li>
<li>Summary</li>
</ul>
</font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>26</font></div>
</td>
<td>
<div id=PPTP26 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0046.html');" id=PPTL26>Package Merge</a></font></div>
<div id=PPTC26 class=CTxt style='display:none'><font size=2>
<ul>
<li>A directed relationship between two packages which indicates that the
contents of the two packages are to be combined</li>
<br>
<br>
<li>Can be viewed as an operation that takes the contents of two packages
and produces a new package that combines the contents of the packages
involved in the merge</li>
<br>
<br>
<li>By selecting which increments to merge, it is possible to obtain a
custom definition of a concept for a specific end</li>
<br>
<br>
<br>
</ul>
</font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>27</font></div>
</td>
<td>
<div id=PPTP27 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0053.html');" id=PPTL27>Package Merge –
Terminology</a></font></div>
<div id=PPTC27 class=CTxt style='display:none'><font size=2>
<ul>
<li>merged element – contained by merged package before the merge</li>
<br>
<br>
<li>receiving element – contained by receiving package before the merge</li>
<br>
<br>
<li>resulting element – contained by resulting package after the merge</li>
<br>
<br>
<li>merged package – target of the merge, contains merged elements</li>
<br>
<br>
<li>receiving package – source of the merge, contains receiving elements</li>
<br>
<br>
<li>resulting package – result of the merge, contains resulting elements</li>
</ul>
</font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>28</font></div>
</td>
<td>
<div id=PPTP28 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0047.html');" id=PPTL28>Package Merge –
Semantics</a></font></div>
<div id=PPTC28 class=CTxt style='display:none'><font size=2>
<ul>
<li>The semantics of package merge are defined by a set of constraints and
transformation rules</li>
<br>
<br>
<li>When a merged element and a receiving element represent the same entity,
their contents are conceptually merged into a single resulting element
according to the rules of package merge</li>
<br>
<br>
<li>UML2 provides a utility that will enforce these constraints and apply
these transformations</li>
</ul>
</font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>29</font></div>
</td>
<td>
<div id=PPTP29 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0054.html');" id=PPTL29>Package Merge –
Example (before)</a></font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>30</font></div>
</td>
<td>
<div id=PPTP30 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0055.html');" id=PPTL30>Package Merge –
Example (after)</a></font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>31</font></div>
</td>
<td>
<div id=PPTP31 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0121.html');" id=PPTL31>Contents</a></font></div>
<div id=PPTC31 class=CTxt style='display:none'><font size=2>
<ul>
<li>Background</li>
<li>Language Units</li>
<li>Compliance Levels</li>
<li>Package Merge</li>
<li>Redefinition</li>
<li>Subsets</li>
<li>Derived Unions</li>
<li>Profiles</li>
<li>Extending UML(2)</li>
<li>Featherweight Extensions</li>
<li>Lightweight Extensions</li>
<li>Middleweight Extensions</li>
<li>Heavyweight Extensions</li>
<li>Summary</li>
</ul>
</font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>32</font></div>
</td>
<td>
<div id=PPTP32 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0056.html');" id=PPTL32>Redefinition</a></font></div>
<div id=PPTC32 class=CTxt style='display:none'><font size=2>
<ul>
<li>Redefinition refers to the ability for one element to redefine another
in the context of a generalization hierarchy</li>
<br>
<br>
<li>A redefining element must be consistent with the redefined element, but
may add specific constraints or other details particular to the
specializing classifier</li>
<br>
<br>
<li>The detailed semantics of redefinition vary for each specialization of RedefinableElement
in UML</li>
<br>
<br>
<li>The UML2 API and code generator provide support for Java™ code to
enforce these redefinition constraints</li>
</ul>
</font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>33</font></div>
</td>
<td>
<div id=PPTP33 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0057.html');" id=PPTL33>Redefinition – Example
(properties)</a></font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>34</font></div>
</td>
<td>
<div id=PPTP34 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0059.html');" id=PPTL34>Redefinition – Example
(properties)</a></font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>35</font></div>
</td>
<td>
<div id=PPTP35 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0058.html');" id=PPTL35>Redefinition – Example
(operations)</a></font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>36</font></div>
</td>
<td>
<div id=PPTP36 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0060.html');" id=PPTL36>Redefinition – Example
(operations)</a></font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>37</font></div>
</td>
<td>
<div id=PPTP37 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0122.html');" id=PPTL37>Contents</a></font></div>
<div id=PPTC37 class=CTxt style='display:none'><font size=2>
<ul>
<li>Background</li>
<li>Language Units</li>
<li>Compliance Levels</li>
<li>Package Merge</li>
<li>Redefinition</li>
<li>Subsets</li>
<li>Derived Unions</li>
<li>Profiles</li>
<li>Extending UML(2)</li>
<li>Featherweight Extensions</li>
<li>Lightweight Extensions</li>
<li>Middleweight Extensions</li>
<li>Heavyweight Extensions</li>
<li>Summary</li>
</ul>
</font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>38</font></div>
</td>
<td>
<div id=PPTP38 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0061.html');" id=PPTL38>Subsets</a></font></div>
<div id=PPTC38 class=CTxt style='display:none'><font size=2>
<ul>
<li>A property may be marked as the subset of another, as long as every
element in the context of the subsetting property conforms to the
corresponding element in the context of the subsetted property</li>
<br>
<br>
<li>The collection of values associated with an instance of the subsetting
property must be included in, or the same as, the collection of values
associated with an instance of the corresponding subsetted property</li>
<br>
<br>
<li>The UML2 API and code generator provide support for Java code to enforce
these subset constraints</li>
</ul>
</font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>39</font></div>
</td>
<td>
<div id=PPTP39 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0062.html');" id=PPTL39>Subsets – Example
(non-derived)</a></font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>40</font></div>
</td>
<td>
<div id=PPTP40 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0064.html');" id=PPTL40>Subsets – Example
(non-derived)</a></font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>41</font></div>
</td>
<td>
<div id=PPTP41 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0063.html');" id=PPTL41>Subsets – Example
(non-derived)</a></font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>42</font></div>
</td>
<td>
<div id=PPTP42 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0065.html');" id=PPTL42>Subsets – Example
(derived)</a></font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>43</font></div>
</td>
<td>
<div id=PPTP43 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0066.html');" id=PPTL43>Subsets – Example
(derived)</a></font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>44</font></div>
</td>
<td>
<div id=PPTP44 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0123.html');" id=PPTL44>Contents</a></font></div>
<div id=PPTC44 class=CTxt style='display:none'><font size=2>
<ul>
<li>Background</li>
<li>Language Units</li>
<li>Compliance Levels</li>
<li>Package Merge</li>
<li>Redefinition</li>
<li>Subsets</li>
<li>Derived Unions</li>
<li>Profiles</li>
<li>Extending UML(2)</li>
<li>Featherweight Extensions</li>
<li>Lightweight Extensions</li>
<li>Middleweight Extensions</li>
<li>Heavyweight Extensions</li>
<li>Summary</li>
</ul>
</font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>45</font></div>
</td>
<td>
<div id=PPTP45 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0067.html');" id=PPTL45>Derived Unions</a></font></div>
<div id=PPTC45 class=CTxt style='display:none'><font size=2>
<ul>
<li>If a property is derived, then its value(s) can be computed from other
information</li>
<br>
<br>
<li>A property may be marked as being a derived union</li>
<br>
<br>
<li>The collection of values denoted by the property in some context is
derived by being the strict union of all of the values denoted, in the
same context, by properties defined to subset it</li>
<br>
<br>
<li>If a derived union property is not multivalued, the values of all the
subsets must be either the same or null</li>
<br>
<br>
<li>The UML2 API and code generator provide support for Java code to enforce
these derived union constraints</li>
</ul>
</font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>46</font></div>
</td>
<td>
<div id=PPTP46 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0068.html');" id=PPTL46>Derived Unions –
Example</a></font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>47</font></div>
</td>
<td>
<div id=PPTP47 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0069.html');" id=PPTL47>Derived Unions –
Example</a></font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>48</font></div>
</td>
<td>
<div id=PPTP48 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0070.html');" id=PPTL48>Derived Unions –
Example</a></font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>49</font></div>
</td>
<td>
<div id=PPTP49 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0071.html');" id=PPTL49>Derived Unions –
Example</a></font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>50</font></div>
</td>
<td>
<div id=PPTP50 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0124.html');" id=PPTL50>Contents</a></font></div>
<div id=PPTC50 class=CTxt style='display:none'><font size=2>
<ul>
<li>Background</li>
<li>Language Units</li>
<li>Compliance Levels</li>
<li>Package Merge</li>
<li>Redefinition</li>
<li>Subsets</li>
<li>Derived Unions</li>
<li>Profiles</li>
<li>Extending UML(2)</li>
<li>Featherweight Extensions</li>
<li>Lightweight Extensions</li>
<li>Middleweight Extensions</li>
<li>Heavyweight Extensions</li>
<li>Summary</li>
</ul>
</font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>51</font></div>
</td>
<td>
<div id=PPTP51 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0115.html');" id=PPTL51>Profiles</a></font></div>
<div id=PPTC51 class=CTxt style='display:none'><font size=2>
<ul>
<li>UML provides a mechanism that allows metaclasses from an existing
metamodel to be adapted for different purposes</li>
<br>
<br>
<li>A profile is a kind of package that extends a reference metamodel</li>
<br>
<br>
<li>A stereotype is a kind of class that may extend one or more metaclasses
via extension relationships, as part of a profile</li>
<br>
<br>
<li>It is possible to interchange profiles, together with models to which
they have been applied, via XMI</li>
<br>
<br>
<li>UML2 provides support for defining and interchanging profiles</li>
</ul>
</font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>52</font></div>
</td>
<td>
<div id=PPTP52 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0125.html');" id=PPTL52>Contents</a></font></div>
<div id=PPTC52 class=CTxt style='display:none'><font size=2>
<ul>
<li>Background</li>
<li>Language Units</li>
<li>Compliance Levels</li>
<li>Package Merge</li>
<li>Redefinition</li>
<li>Subsets</li>
<li>Derived Unions</li>
<li>Profiles</li>
<li>Extending UML(2)</li>
<li>Featherweight Extensions</li>
<li>Lightweight Extensions</li>
<li>Middleweight Extensions</li>
<li>Heavyweight Extensions</li>
<li>Summary</li>
</ul>
</font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>53</font></div>
</td>
<td>
<div id=PPTP53 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0116.html');" id=PPTL53>Extending UML(2) –
Why?</a></font></div>
<div id=PPTC53 class=CTxt style='display:none'><font size=2>
<ul>
<li>Use terminology that is adapted to a particular platform or domain</li>
<br>
<br>
<li>Specify a syntax for constructs that do not have a notation</li>
<br>
<br>
<li>Specify a different notation for symbols that already exist</li>
<br>
<br>
<li>Add semantics that are left unspecified in UML</li>
<br>
<br>
<li>Add semantics that do not exist in UML</li>
<br>
<br>
<li>Add constraints that restrict the way one may use UML</li>
<br>
<br>
<li>Add information that can be used when transforming a model to another
model or code</li>
</ul>
</font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>54</font></div>
</td>
<td>
<div id=PPTP54 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0072.html');" id=PPTL54>Extending UML(2) –
How?</a></font></div>
<div id=PPTC54 class=CTxt style='display:none'><font size=2>
<ul>
<li>One of the strengths of the latest version of UML is that it can be
customized to meet the needs of a given application or domain</li>
<br>
<br>
<li>There are two “official” ways of customizing UML</li>
<ul>
<li>lightweight extensions using profiles</li>
<li>heavyweight, or first-class, extensions using MOF</li>
</ul>
<br>
<li>UML2 supports these kinds of extensions but also provides two
lighter-weight alternatives which weÂ’ll call featherweight and middleweight
extensions</li>
</ul>
</font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>55</font></div>
</td>
<td>
<div id=PPTP55 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0073.html');" id=PPTL55>Extending UML(2) –
Example</a></font></div>
<div id=PPTC55 class=CTxt style='display:none'><font size=2>
<ul>
<li>Assume we want to customize UML for modeling testing systems</li>
<br>
<br>
<li>WeÂ’ll (ab)use some concepts from the UML Testing Profile and JUnit</li>
<ul>
<li>Test Suite – a package containing text contexts to test a system</li>
<li>Test Context – a class owning test cases to test a component</li>
<li>Test Case – an operation specifying tests to realize an objective</li>
<br>
<br>
</ul>
<li>We’ll examine how to extend UML2 for this “domain” using the four
different approaches</li>
</ul>
</font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>56</font></div>
</td>
<td>
<div id=PPTP56 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0074.html');" id=PPTL56>Extending UML(2) –
Example</a></font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>57</font></div>
</td>
<td>
<div id=PPTP57 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0126.html');" id=PPTL57>Contents</a></font></div>
<div id=PPTC57 class=CTxt style='display:none'><font size=2>
<ul>
<li>Background</li>
<li>Language Units</li>
<li>Compliance Levels</li>
<li>Package Merge</li>
<li>Redefinition</li>
<li>Subsets</li>
<li>Derived Unions</li>
<li>Profiles</li>
<li>Extending UML(2)</li>
<li>Featherweight Extensions</li>
<li>Lightweight Extensions</li>
<li>Middleweight Extensions</li>
<li>Heavyweight Extensions</li>
<li>Summary</li>
</ul>
</font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>58</font></div>
</td>
<td>
<div id=PPTP58 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0075.html');" id=PPTL58>Featherweight
Extensions</a></font></div>
<div id=PPTC58 class=CTxt style='display:none'><font size=2>
<ul>
<li>Featherweight extensions are done by adorning model elements with keywords</li>
<br>
<br>
<li>A keyword is a label for a model element that is typically displayed
within guillemots</li>
<br>
<br>
<li>UML2 stores these keywords in Ecore annotations</li>
</ul>
</font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>59</font></div>
</td>
<td>
<div id=PPTP59 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0076.html');" id=PPTL59>Featherweight
Extensions – Example</a></font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>60</font></div>
</td>
<td>
<div id=PPTP60 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0083.html');" id=PPTL60>Featherweight
Extensions – Example</a></font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>61</font></div>
</td>
<td>
<div id=PPTP61 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0084.html');" id=PPTL61>Featherweight
Extensions – Example</a></font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>62</font></div>
</td>
<td>
<div id=PPTP62 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0085.html');" id=PPTL62>Featherweight
Extensions – Example</a></font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>63</font></div>
</td>
<td>
<div id=PPTP63 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0110.html');" id=PPTL63>Featherweight
Extensions – Pros/Cons</a></font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>64</font></div>
</td>
<td>
<div id=PPTP64 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0127.html');" id=PPTL64>Contents</a></font></div>
<div id=PPTC64 class=CTxt style='display:none'><font size=2>
<ul>
<li>Background</li>
<li>Language Units</li>
<li>Compliance Levels</li>
<li>Package Merge</li>
<li>Redefinition</li>
<li>Subsets</li>
<li>Derived Unions</li>
<li>Profiles</li>
<li>Extending UML(2)</li>
<li>Featherweight Extensions</li>
<li>Lightweight Extensions</li>
<li>Middleweight Extensions</li>
<li>Heavyweight Extensions</li>
<li>Summary</li>
</ul>
</font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>65</font></div>
</td>
<td>
<div id=PPTP65 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0077.html');" id=PPTL65>Lightweight Extensions</a></font></div>
<div id=PPTC65 class=CTxt style='display:none'><font size=2>
<ul>
<li>Lightweight extensions are done by creating profiles/stereotypes and
applying them to model elements</li>
<br>
<br>
<li>Stereotypes can be used to add keywords, constraints, images, and
properties (tagged values) to model elements</li>
<br>
<br>
<li>Metadata for profiles must be defined and deployed</li>
<br>
<br>
<li>UML2 stores stereotype applications as dynamic EMF objects</li>
</ul>
</font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>66</font></div>
</td>
<td>
<div id=PPTP66 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0086.html');" id=PPTL66>Lightweight Extensions
– Example</a></font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>67</font></div>
</td>
<td>
<div id=PPTP67 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0078.html');" id=PPTL67>Lightweight Extensions
– Example</a></font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>68</font></div>
</td>
<td>
<div id=PPTP68 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0087.html');" id=PPTL68>Lightweight Extensions
– Example</a></font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>69</font></div>
</td>
<td>
<div id=PPTP69 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0088.html');" id=PPTL69>Lightweight Extensions
– Example</a></font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>70</font></div>
</td>
<td>
<div id=PPTP70 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0089.html');" id=PPTL70>Lightweight Extensions
– Example</a></font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>71</font></div>
</td>
<td>
<div id=PPTP71 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0090.html');" id=PPTL71>Lightweight Extensions
– Example</a></font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>72</font></div>
</td>
<td>
<div id=PPTP72 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0111.html');" id=PPTL72>Lightweight Extensions
– Pros/Cons</a></font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>73</font></div>
</td>
<td>
<div id=PPTP73 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0128.html');" id=PPTL73>Contents</a></font></div>
<div id=PPTC73 class=CTxt style='display:none'><font size=2>
<ul>
<li>Background</li>
<li>Language Units</li>
<li>Compliance Levels</li>
<li>Package Merge</li>
<li>Redefinition</li>
<li>Subsets</li>
<li>Derived Unions</li>
<li>Profiles</li>
<li>Extending UML(2)</li>
<li>Featherweight Extensions</li>
<li>Lightweight Extensions</li>
<li>Middleweight Extensions</li>
<li>Heavyweight Extensions</li>
<li>Summary</li>
</ul>
</font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>74</font></div>
</td>
<td>
<div id=PPTP74 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0079.html');" id=PPTL74>Middleweight
Extensions</a></font></div>
<div id=PPTC74 class=CTxt style='display:none'><font size=2>
<ul>
<li>Middleweight extensions are done by creating a metamodel that extends
the UML2 metamodel via specialization</li>
<br>
<br>
<li>An API and schema for the new metamodel must be generated, implemented,
and deployed</li>
<br>
<br>
<li>The implementation classes in the specialized metamodel extend the UML2
implementation classes (discouraged)</li>
<br>
<br>
<li>The API and resource implementation must conform with the UML2 API and
resource implementation</li>
</ul>
</font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>75</font></div>
</td>
<td>
<div id=PPTP75 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0091.html');" id=PPTL75>Middleweight
Extensions – Example</a></font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>76</font></div>
</td>
<td>
<div id=PPTP76 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0080.html');" id=PPTL76>Middleweight
Extensions – Example</a></font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>77</font></div>
</td>
<td>
<div id=PPTP77 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0103.html');" id=PPTL77>Middleweight
Extensions – Example</a></font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>78</font></div>
</td>
<td>
<div id=PPTP78 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0101.html');" id=PPTL78>Middleweight
Extensions – Example</a></font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>79</font></div>
</td>
<td>
<div id=PPTP79 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0102.html');" id=PPTL79>Middleweight
Extensions – Example</a></font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>80</font></div>
</td>
<td>
<div id=PPTP80 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0092.html');" id=PPTL80>Middleweight
Extensions – Example</a></font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>81</font></div>
</td>
<td>
<div id=PPTP81 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0093.html');" id=PPTL81>Middleweight
Extensions – Example</a></font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>82</font></div>
</td>
<td>
<div id=PPTP82 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0094.html');" id=PPTL82>Middleweight
Extensions – Example</a></font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>83</font></div>
</td>
<td>
<div id=PPTP83 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0112.html');" id=PPTL83>Middleweight
Extensions – Pros/Cons</a></font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>84</font></div>
</td>
<td>
<div id=PPTP84 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0129.html');" id=PPTL84>Contents</a></font></div>
<div id=PPTC84 class=CTxt style='display:none'><font size=2>
<ul>
<li>Background</li>
<li>Language Units</li>
<li>Compliance Levels</li>
<li>Package Merge</li>
<li>Redefinition</li>
<li>Subsets</li>
<li>Derived Unions</li>
<li>Profiles</li>
<li>Extending UML(2)</li>
<li>Featherweight Extensions</li>
<li>Lightweight Extensions</li>
<li>Middleweight Extensions</li>
<li>Heavyweight Extensions</li>
<li>Summary</li>
</ul>
</font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>85</font></div>
</td>
<td>
<div id=PPTP85 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0081.html');" id=PPTL85>Heavyweight Extensions</a></font></div>
<div id=PPTC85 class=CTxt style='display:none'><font size=2>
<ul>
<li>Heavyweight extensions are done by creating a metamodel that merges
packages from UML</li>
<br>
<br>
<li>An API and schema for the new metamodel must be generated, implemented,
and deployed</li>
<br>
<br>
<li>The implementation classes in the specialized metamodel do not extend
the UML2 implementation classes</li>
<br>
<br>
<li>The API and resource implementation need not conform with the UML2 API
and resource implementation</li>
</ul>
</font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>86</font></div>
</td>
<td>
<div id=PPTP86 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0097.html');" id=PPTL86>Heavyweight Extensions
– Example</a></font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>87</font></div>
</td>
<td>
<div id=PPTP87 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0096.html');" id=PPTL87>Heavyweight Extensions
– Example</a></font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>88</font></div>
</td>
<td>
<div id=PPTP88 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0104.html');" id=PPTL88>Heavyweight Extensions
– Example</a></font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>89</font></div>
</td>
<td>
<div id=PPTP89 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0098.html');" id=PPTL89>Heavyweight Extensions
– Example</a></font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>90</font></div>
</td>
<td>
<div id=PPTP90 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0105.html');" id=PPTL90>Heavyweight Extensions
– Example</a></font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>91</font></div>
</td>
<td>
<div id=PPTP91 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0106.html');" id=PPTL91>Heavyweight Extensions
– Example</a></font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>92</font></div>
</td>
<td>
<div id=PPTP92 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0107.html');" id=PPTL92>Heavyweight Extensions
– Example</a></font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>93</font></div>
</td>
<td>
<div id=PPTP93 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0108.html');" id=PPTL93>Heavyweight Extensions
– Example</a></font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>94</font></div>
</td>
<td>
<div id=PPTP94 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0109.html');" id=PPTL94>Heavyweight Extensions
– Example</a></font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>95</font></div>
</td>
<td>
<div id=PPTP95 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0082.html');" id=PPTL95>Heavyweight Extensions
– Example</a></font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>96</font></div>
</td>
<td>
<div id=PPTP96 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0099.html');" id=PPTL96>Heavyweight Extensions
– Example</a></font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>97</font></div>
</td>
<td>
<div id=PPTP97 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0100.html');" id=PPTL97>Heavyweight Extensions
– Example</a></font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>98</font></div>
</td>
<td>
<div id=PPTP98 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0113.html');" id=PPTL98>Heavyweight Extensions
– Pros/Cons</a></font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>99</font></div>
</td>
<td>
<div id=PPTP99 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0130.html');" id=PPTL99>Contents</a></font></div>
<div id=PPTC99 class=CTxt style='display:none'><font size=2>
<ul>
<li>Background</li>
<li>Language Units</li>
<li>Compliance Levels</li>
<li>Package Merge</li>
<li>Redefinition</li>
<li>Subsets</li>
<li>Derived Unions</li>
<li>Profiles</li>
<li>Extending UML(2)</li>
<li>Featherweight Extensions</li>
<li>Lightweight Extensions</li>
<li>Middleweight Extensions</li>
<li>Heavyweight Extensions</li>
<li>Summary</li>
</ul>
</font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>100</font></div>
</td>
<td>
<div id=PPTP100 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0114.html');" id=PPTL100>Summary</a></font></div>
<div id=PPTC100 class=CTxt style='display:none'><font size=2>
<ul>
<li>UML can be extended to suit the needs of your application or domain</li>
<br>
<br>
<li>The UML2 component of MDT supports several customization mechanisms,
each having their own pros and cons</li>
<br>
<br>
<li>The choice of which approach to take will depend on the amount of
overlap between your domain and UML</li>
<br>
<br>
<li>Domains having little or nothing in common with UML can be supported
with a domain specific language (DSL) developed with EMF</li>
</ul>
</font></div>
</td>
</tr>
<tr onmouseover="Over(this)" onmouseout="Out(this)" onclick="Follow(this)"
style='cursor:hand'>
<td align=right valign=top>
<div class=sldNum><font size=2>101</font></div>
</td>
<td>
<div id=PPTP101 class=PTxt><font size=2><a
href="javascript:GoToSld('slide0031.html');" id=PPTL101>Legal Notices</a></font></div>
<div id=PPTC101 class=CTxt style='display:none'><font size=2>
<ul>
<li>UML, XMI, and MOF are trademarks of the Object Management Group</li>
<br>
<br>
<li>Java and all Java-based trademarks are trademarks of Sun Microsystems,
Inc. in the United States, other countries, or both</li>
<br>
<br>
<li>Other company, product, or service names may be trademarks or service
marks of others</li>
</ul>
</font></div>
</td>
</tr>
</table>
</div>
<div style='display:none'><a href=master08.html></a><a href=master08.xml></a><a
href=preview.wmf></a><a href="master08_image001.jpg"></a><a
href="master08_image002.jpg"></a><a href=master09.html></a><a
href=master09.xml></a><a href=master02.html></a><a href=pres.xml></a><a
href=editdata.mso></a><a href=slide0030.html></a><a href="master09_image003.jpg"></a><a
href="master09_image004.jpg"></a><a href=slide0029.html></a><a
href="master08_image005.jpg"></a><a href="master08_image006.gif"></a><a
href="master08_image007.jpg"></a><a href=slide0117.html></a><a
href=slide0032.html></a><a href=slide0033.html></a><a href=slide0034.html></a><a
href=slide0118.html></a><a href=slide0036.html></a><a href=slide0119.html></a><a
href=slide0035.html></a><a href=slide0048.html></a><a href=slide0037.html></a><a
href="slide0037_image008.png"></a><a href="slide0037_image009.gif"></a><a
href=slide0049.html></a><a href=slide0038.html></a><a
href="slide0038_image010.png"></a><a href="slide0038_image011.gif"></a><a
href=slide0050.html></a><a href=slide0039.html></a><a
href="slide0039_image012.png"></a><a href="slide0039_image013.gif"></a><a
href=slide0040.html></a><a href="slide0040_image014.gif"></a><a
href=slide0051.html></a><a href=slide0041.html></a><a
href="slide0041_image015.png"></a><a href="slide0041_image016.gif"></a><a
href=slide0042.html></a><a href="slide0042_image017.gif"></a><a
href=slide0052.html></a><a href=slide0043.html></a><a
href="slide0043_image018.png"></a><a href="slide0043_image019.gif"></a><a
href=slide0044.html></a><a href="slide0044_image020.gif"></a><a
href=slide0045.html></a><a href="slide0045_image021.png"></a><a
href="slide0045_image022.gif"></a><a href=slide0120.html></a><a
href=slide0046.html></a><a href=slide0053.html></a><a href=slide0047.html></a><a
href=slide0054.html></a><a href="slide0054_image023.png"></a><a
href="slide0054_image024.gif"></a><a href=slide0055.html></a><a
href="slide0055_image025.png"></a><a href="slide0055_image026.gif"></a><a
href=slide0121.html></a><a href=slide0056.html></a><a href=slide0057.html></a><a
href="slide0057_image027.png"></a><a href="slide0057_image028.gif"></a><a
href=slide0059.html></a><a href=slide0058.html></a><a
href="slide0058_image029.png"></a><a href="slide0058_image030.gif"></a><a
href=slide0060.html></a><a href=slide0122.html></a><a href=slide0061.html></a><a
href=slide0062.html></a><a href="slide0062_image031.png"></a><a
href="slide0062_image032.gif"></a><a href=slide0064.html></a><a
href=slide0063.html></a><a href=slide0065.html></a><a
href="slide0065_image033.png"></a><a href="slide0065_image034.gif"></a><a
href=slide0066.html></a><a href=slide0123.html></a><a href=slide0067.html></a><a
href=slide0068.html></a><a href="slide0068_image035.png"></a><a
href="slide0068_image036.gif"></a><a href=slide0069.html></a><a
href="slide0069_image037.png"></a><a href="slide0069_image038.gif"></a><a
href=slide0070.html></a><a href=slide0071.html></a><a href=slide0124.html></a><a
href=slide0115.html></a><a href=slide0125.html></a><a href=slide0116.html></a><a
href=slide0072.html></a><a href=slide0073.html></a><a href=slide0074.html></a><a
href="slide0074_image039.png"></a><a href="slide0074_image040.gif"></a><a
href=slide0126.html></a><a href=slide0075.html></a><a href=slide0076.html></a><a
href="slide0076_image041.png"></a><a href="slide0076_image042.gif"></a><a
href=slide0083.html></a><a href="slide0083_image043.png"></a><a
href=oledata.mso></a><a href="slide0083_image044.jpg"></a><a
href=slide0084.html></a><a href=slide0085.html></a><a href=slide0110.html></a><a
href="slide0110_image045.gif"></a><a href=slide0127.html></a><a
href=slide0077.html></a><a href=slide0086.html></a><a
href="slide0086_image046.png"></a><a href="slide0086_image047.gif"></a><a
href=slide0078.html></a><a href="slide0078_image048.png"></a><a
href="slide0078_image049.jpg"></a><a href=slide0087.html></a><a
href="slide0087_image050.png"></a><a href="slide0087_image051.jpg"></a><a
href="slide0087_image052.png"></a><a href="slide0087_image053.gif"></a><a
href=slide0088.html></a><a href="slide0088_image054.png"></a><a
href="slide0088_image055.jpg"></a><a href="slide0088_image056.png"></a><a
href="slide0088_image057.jpg"></a><a href=slide0089.html></a><a
href=slide0090.html></a><a href=slide0111.html></a><a
href="slide0111_image058.gif"></a><a href=slide0128.html></a><a
href=slide0079.html></a><a href=slide0091.html></a><a
href="slide0091_image059.png"></a><a href="slide0091_image060.gif"></a><a
href=slide0080.html></a><a href="slide0080_image061.png"></a><a
href="slide0080_image062.jpg"></a><a href=slide0103.html></a><a
href="slide0103_image063.png"></a><a href="slide0103_image064.jpg"></a><a
href=slide0101.html></a><a href="slide0101_image065.png"></a><a
href="slide0101_image066.jpg"></a><a href=slide0102.html></a><a
href=slide0092.html></a><a href="slide0092_image067.png"></a><a
href="slide0092_image068.jpg"></a><a href="slide0092_image069.png"></a><a
href="slide0092_image070.jpg"></a><a href=slide0093.html></a><a
href=slide0094.html></a><a href=slide0112.html></a><a
href="slide0112_image071.gif"></a><a href=slide0129.html></a><a
href=slide0081.html></a><a href=slide0097.html></a><a
href="slide0097_image072.png"></a><a href="slide0097_image073.gif"></a><a
href=slide0096.html></a><a href="slide0096_image074.png"></a><a
href="slide0096_image075.jpg"></a><a href=slide0104.html></a><a
href="slide0104_image076.png"></a><a href="slide0104_image077.jpg"></a><a
href=slide0098.html></a><a href="slide0098_image078.png"></a><a
href="slide0098_image079.jpg"></a><a href=slide0105.html></a><a
href="slide0105_image080.png"></a><a href="slide0105_image081.jpg"></a><a
href=slide0106.html></a><a href="slide0106_image082.png"></a><a
href="slide0106_image083.jpg"></a><a href=slide0107.html></a><a
href=slide0108.html></a><a href=slide0109.html></a><a href=slide0082.html></a><a
href="slide0082_image084.png"></a><a href="slide0082_image085.jpg"></a><a
href="slide0082_image086.png"></a><a href="slide0082_image087.jpg"></a><a
href=slide0099.html></a><a href=slide0100.html></a><a href=slide0113.html></a><a
href="slide0113_image088.gif"></a><a href=slide0130.html></a><a
href=slide0114.html></a><a href=slide0031.html></a><a href=master01.html></a><a
href="master08_stylesheet.css"></a><a href=script.js></a><a
href="../EclipseCon2007_LongTalk.html"></a><a href=fullscreen.html></a><a
href=buttons.gif></a><a href=frame.html></a><a href=outline.html></a></div>
</body>
</html>