<!DOCTYPE html>
<html class="no-js">
<head>
<!-- Basic Page Needs
        ================================================== -->
<meta charset="utf-8">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link rel="icon" type="image/png" href="images/favicon.ico">
<title>Is Capella a SysML Tool ?</title>
<meta name="description"
	content="Capella is an Open Source MBSE tool that implements the Arcadia method. It is a comprehensive, extensible and field-proven MBSE solution.">
<meta name="keywords" content="">
<meta name="author" content="">
<!-- Mobile Specific Metas
        ================================================== -->
<meta name="format-detection" content="telephone=no">
<meta name="viewport" content="width=device-width, initial-scale=1">

<!-- Template CSS Files
        ================================================== -->
<!-- Twitter Bootstrs CSS -->
<link rel="stylesheet" href="css/bootstrap.min.css">
<!-- animate css -->
<link rel="stylesheet" href="css/animate.css">
<link rel="stylesheet" href="css/jquery.fancybox.css">
<!-- template main css file -->
<link rel="stylesheet" href="css/main.css">
<!-- responsive css -->
<link rel="stylesheet" href="css/responsive.css">
<link rel="stylesheet" href="css/latofonts.css">

<script src="https://use.fontawesome.com/b51f77a16a.js"></script>

<!-- Cookie content -->
<link rel="stylesheet" type="text/css"
	href="//www.eclipse.org/eclipse.org-common/themes/solstice/public/stylesheets/vendor/cookieconsent/cookieconsent.min.css" />
<script
	src="//www.eclipse.org/eclipse.org-common/themes/solstice/public/javascript/vendor/cookieconsent/default.min.js"></script>

<!-- Eclipse Foundation Google Tag Manager -->
<script>
	(function(w, d, s, l, i) {
		w[l] = w[l] || [];
		w[l].push({
			'gtm.start' : new Date().getTime(),
			event : 'gtm.js'
		});
		var f = d.getElementsByTagName(s)[0], j = d.createElement(s), dl = l != 'dataLayer' ? '&l='
				+ l
				: '';
		j.async = true;
		j.src = 'https://www.googletagmanager.com/gtm.js?id=' + i + dl;
		f.parentNode.insertBefore(j, f);
	})(window, document, 'script', 'dataLayer', 'GTM-5WLCZXC');
</script>
<!-- End Google Tag Manager -->

<!-- Template Javascript Files
        ================================================== -->
<!-- Angular -->
<base href="/capella/">
<script src="js/angular-1.7.8.min.js"></script>
<script src="angular/capella.js"></script>

<!-- modernizr js -->
<script src="js/vendor/modernizr-2.6.2.min.js"></script>
<!-- jquery -->
<script src="js/jquery-3.4.1.min.js"></script>
<!-- bootstrap js -->
<script src="js/bootstrap.min.js"></script>
<!-- wow js -->
<script src="js/wow.min.js"></script>
<script src="js/jquery.fancybox.js"></script>
<!-- template main js -->
<script src="js/main.js"></script>

</head>
<body ng-app="capella" data-deferred-cloak>
	<!--
        ==================================================
        Header Section
        ================================================== -->
	<ng-include src="'angular/blocks/header.html'"></ng-include>

	<!--
        ==================================================
        Intro Section
        ================================================== -->
	<section class="hero-area home">
		<div class="container">
			<div class="row">
				<div class="col-md-12 text-center">
					<div class="block wow fadeInUp" data-wow-delay=".3s">
						<section class="cd-intro">
							<h1 class="wow fadeInUp" data-wow-delay=".4s">
								Equivalences and differences<br>between SysML and
								Arcadia/Capella<br>
							</h1>
						</section>
						<!-- cd-intro -->
						<h2 class="wow fadeInUp" data-wow-delay=".4s">
							Among the standards from which Arcadia and Eclipse Capella&trade; are inspired,
							the SysML language is definitely prominent. This page explains
							why Arcadia/Capella is to some extent a SysML-like solution
							to design the architecture of complex systems using models.
						</h2>

						<div class="row text-center">
							<div class="col-md-3 col-md-offset-3">
								<a class="wow fadeInUp btn btn-default smooth-scroll"
									data-wow-delay=".5s" href="#equivalences"
									data-row="#equivalences">Equivalences</a>
							</div>
							<div class="col-md-3">
								<a class="wow fadeInUp btn btn-default default smooth-scroll"
									data-wow-delay=".5s" href="#differences"
									data-row="#differences">Differences</a>
							</div>
						</div>
						<div class="clear"></div>
					</div>
				</div>
			</div>

		</div>
	</section>
	<!--/#intro_banner-->

        <!--
        ==================================================
        Webinar 
        ================================================== -->
        <section id="webinar" class="bg_lightest_grey text-center">
            <div class="container">
              	<h2 class="title wow fadeInDown" data-wow-delay=".3s">Webinar</h2>
                <div class="row">
                	<h3 class="wow fadeInDown" data-wow-delay=".5s">
                		This webinar illustrates the main equivalences and differences <br>between SysML and Arcadia/Capella with substantial rationales
				</h3><br>
                   
	                <div class="col-md-12 text-center">
						<p><a class="fancybox" href="https://www.youtube.com/embed/qFfj8K3uj3Y" data-fancybox-type="iframe"><img src="images/arcadia_sysml/webinar_sysml_arcadia_capella.png" alt="" /></a></p>
					</div>
                </div>
            </div>
        </section> <!-- #key_points -->

	<!--
        ==================================================
        Comparaison
        ================================================== -->
	<section id="compare" class="text-center">
		<div class="container">
			<div class="row">
				<h2 class="title wow fadeInDown" data-wow-delay=".3s">Overview</h2>
				<p class="wow fadeInDown" data-wow-delay=".4s">Designing complex
					and critical systems, and more generally architectures that are
					subject to multiple functional and non-functional constraints, is
					an activity which requires a level of rigor that can only be
					provided by formalized and tooled modeling approaches like the ones
					based on Arcadia/Capella and SysML tools.</p>

				<table class="table table-striped wow fadeInDown"
					data-wow-delay=".5s">
					<thead>
						<tr>
							<th width="20%"></th>
							<th class="txt_indigo" width="40%">SysML</th>
							<th class="txt_indigo">Arcadia/Capella</th>
						</tr>
					</thead>
					<tbody>
						<tr>
							<td class="txt_indigo"><strong>Positioning</strong></td>
							<td><p>SysML is a standard and a general-purpose modeling
								language for modeling systems. SysML provides very rich and
								advanced expression means covering a very broad spectrum of
								applications, spanning from high-level architecture modeling to
								detailed design at the frontier of simulation.</p></td>
							<td><p>Inspired by SysML concepts, the Arcadia/Capella solution
								focuses on the design of systems architectures. For the sake of
								an easier learning curve and because of the precise scope
								addressed by Arcadia/Capella, the expression means are sometimes
								reduced compared to SysML. The ultimate goal of Arcadia/Capella
								is to have systems engineers embrace the cultural change of MBSE
								rather than having modeling “experts” owning the model on behalf
								of systems engineers. Therefore, Arcadia/Capella are strongly
								driven by the current practices and concerns of system
								engineering practitioners.</p></td>
						</tr>
						<tr>
							<td class="txt_indigo"><strong>Method</strong></td>
							<td><p>SysML is not associated to a particular method even
								though several engineering methods can be followed. As such,
								SysML only provides a vocabulary, but it does not specify when
								to use one concept or another, how to organize models, etc.</p></td>
							<td><p>The Arcadia method enforces an approach structured on
								different engineering perspectives establishing a clear
								separation between system context and need modeling (operational
								need analysis and system need analysis) and solution modeling
								(logical and physical architectures), in accordance with the
								IEEE 1220 standard and covering parts of ISO/IEC/IEEE 15288.</p></td>
						</tr>
						<tr>
							<td class="txt_indigo"><strong>Language</strong></td>
							<td><p>Technically, the SysML language itself is defined as an
								extension of the Unified Modeling Language (UML). Both UML and
								SysML are general-purpose languages targeting wide spectrums of
								engineering domains and are relying on software-originated
								engineering paradigms using types, inheritance, etc.</p></td>
							<td><p>The Arcadia concepts are mostly similar to the UML/SysML
								standard (about 75%) and the NATO Architecture Framework (NAF)
								standard (5%). Interoperability with SysML tools is possible
								using ad-hoc imports/exports. Because of the focus on
								architectural design, some of the SysML concepts have been
								simplified or specialized in order to better match the concepts
								system engineering practitioners already use in their
								engineering documents and assets. This is the case of the
								concepts related to functional analysis for instance.</p></td>
						</tr>
						<tr>
							<td class="txt_indigo"><strong>Diagrams</strong></td>
							<td><p>SysML includes diagrams inherited from UML2 and adds new
								diagrams:</p>

								<ul>
									<li>4 diagrams are the same as UML2 diagrams (Sequence,
										State Machine, Use Case and Package);</li>
									<li>3 diagrams are extensions of UML2 diagrams (Activity,
										Block definition and Internal Block);</li>
									<li>2 diagrams are new diagram types (Requirement and
										Parametric).</li>
								</ul>
							</td>
							<td><p>Arcadia method is supported by various kinds of diagrams
								largely inspired by UML and SysML:</p>
								<ul>
									<li>Architecture diagrams;</li>
									<li>Dataflows diagrams;</li>
									<li>Functional chains diagrams;</li>
									<li>Sequence diagrams;</li>
									<li>Tree diagrams;</li>
									<li>Mode and States diagrams;</li>
									<li>Classes and Interfaces diagrams.</li>
								</ul>
							</td>
						</tr>
					</tbody>
				</table>
				<p class="wow fadeInDown text-center" data-wow-delay=".7s">
					<em>In practice, the operational added value of the MBSE
						approach is based on many other criteria such as the definition of
						project modeling objectives, the implementation of adapted
						methods, the skills of the teams, the involvement of the
						hierarchy, the integration with the existing information system
						and third party tools, etc. In short, there are a other aspects to
						consider when evaluating when to use a SysML tool or Capella than
						just the language.</em>
				</p>
			</div>
		</div>
	</section>
	<!-- #how -->

	<!--
        ==================================================
        All Diagrams - Intro Banner with Anchors
        ================================================== -->
	<section class="bg_indigo">
		<div class="container">
			<div class="row" id="equivalences">
				<div class="col-md-12 text-center txt_white">
					<div class="block wow fadeInUp" data-wow-delay=".2s">
						<h2 class="title wow fadeInUp txt_white" data-wow-delay=".2s">
							Similarities and equivalences between SysML and Arcadia</h2>
						<p class="wow fadeInUp txt_white" data-wow-delay=".3s">
							For the main SysML diagrams, Arcadia proposes a twin diagram. <br>See
							below the similarities and equivalences between SysML diagrams
							and the corresponding ones in Arcadia:
						</p>
						<br>
						<p>
							<a class="wow fadeInUp smooth-scroll" data-wow-delay=".1s"
								href="#block-definition"
								data-row="#block-definition">Block Definition Diagram <i
								class="fa fa-arrow-circle-right" aria-hidden="true"></i></a>
						</p>
						<p>
							<a class="wow fadeInUp smooth-scroll" data-wow-delay=".2s"
								href="#internal-block"
								data-row="#internal-block">Internal Block Diagram <i
								class="fa fa-arrow-circle-right" aria-hidden="true"></i></a>
						</p>
						<p>
							<a class="wow fadeInUp smooth-scroll" data-wow-delay=".4s"
								href="#activity" data-row="#activity">Activity
								Diagram <i class="fa fa-arrow-circle-right" aria-hidden="true"></i>
							</a>
						</p>
						<p>
							<a class="wow fadeInUp smooth-scroll" data-wow-delay=".5s"
								href="#sequence" data-row="#sequence">Sequence
								Diagram <i class="fa fa-arrow-circle-right" aria-hidden="true"></i>
							</a>
						</p>
						<p>
							<a class="wow fadeInUp smooth-scroll" data-wow-delay=".6s"
								href="#state-machine"
								data-row="#state-machine">State Machine Diagram <i
								class="fa fa-arrow-circle-right" aria-hidden="true"></i></a>
						</p>
						<p>
							<a class="wow fadeInUp smooth-scroll" data-wow-delay=".7s"
								href="#use-case" data-row="#use-case">Use
								Case Diagram <i class="fa fa-arrow-circle-right"
								aria-hidden="true"></i>
							</a>
						</p>
						<p>
							<a class="wow fadeInUp smooth-scroll" data-wow-delay=".8s"
								href="#requirement" data-row="#requirement">Requirement
								Diagram <i class="fa fa-arrow-circle-right" aria-hidden="true"></i>
							</a>
						</p>
						<p>
							<a class="wow fadeInUp smooth-scroll" data-wow-delay=".9s"
								href="#parametric" data-row="#parametric">Parametric
								Diagram <i class="fa fa-arrow-circle-right" aria-hidden="true"></i>
							</a>
						</p>
					</div>
				</div>
			</div>
		</div>
	</section>
	<!--/#extensions-->

	<!--
        ==================================================
        Diagrams sections
        ================================================== -->
	<section class="next-section" id="all_diagrams_equivalences">
		<div class="container">
			<p class="txt_indigo text-center">
				<span class="caret">&nbsp; </span>
			</p>

			<div class="row" id="block-definition">
				<div class="block wow fadeInUp" data-wow-delay=".1s">
					<div class="section-heading">
						<h2 class="title wow fadeInUp text-center" data-wow-delay=".1s">
							Block Definition Diagram</h2>
					</div>
					<div class="col-md-6 left-content">
						<div class="separator hidden-sm">
							<h4>SysML</h4>
							<p class="wow fadeInUp" data-wow-delay=".1s">The Block
								Definition Diagram in SysML defines features of blocks and
								relationships between blocks such as associations,
								generalizations, and dependencies. It captures the definition of
								blocks in terms of properties and operations, and relationships
								such as a system hierarchy or a system classification tree.</p>
							<p class="text-center">
								<a rel="gallery" class="fancybox"
									href="images/arcadia_sysml/sysml-block-definition-diagram_1.jpg">
									<img
									src="images/arcadia_sysml/sysml-block-definition-diagram_1.jpg" />
								</a>
							</p>
							<p class="text-center">
								<a rel="gallery" class="fancybox"
									href="images/arcadia_sysml/sysml-block-definition-diagram_2.jpg">
									<img
									src="images/arcadia_sysml/sysml-block-definition-diagram_2.jpg" />
								</a>
							</p>
						</div>
					</div>
					<div class="col-md-6 right-content">
						<h4>Arcadia/Capella</h4>
						<p class="wow fadeInUp" data-wow-delay=".1s">What is performed
							through Block Definition Diagrams in SysML is achieved in Arcadia
							through two kinds of diagrams:</p>
						<ul>
							<li>Component Breakdown Diagrams show the component
								hierarchy through a graphical tree.
								<p class="text-center">
									<a rel="gallery" class="fancybox"
										href="images/arcadia_sysml/arcadia-block-definition-diagram_2.jpg">
										<img
										src="images/arcadia_sysml/arcadia-block-definition-diagram_2.jpg" />
									</a>
								</p>
							</li>
							<li>Component Interface Diagrams show composition
								relationships between components through graphical containment
								and relationships between components and interfaces through
								ports. Component properties are not displayed graphically.
								<p class="text-center">
									<a rel="gallery" class="fancybox"
										href="images/arcadia_sysml/arcadia-block-definition-diagram_1.jpg"><img
										src="images/arcadia_sysml/arcadia-block-definition-diagram_1.jpg" /></a>
								</p>
							</li>
						</ul>
					</div>
				</div>
			</div>

			<div class="row" id="internal-block">
				<div class="block wow fadeInUp" data-wow-delay=".1s">
					<div class="section-heading">
						<h2 class="title wow fadeInUp text-center" data-wow-delay=".1s">
							Internal Block Diagram</h2>
					</div>
					<div class="col-md-6 left-content">
						<div class="separator hidden-sm">
							<h4>SysML</h4>
							<p class="wow fadeInUp" data-wow-delay=".1s">The Internal
								Block Diagram in SysML captures the internal structure of a
								block in terms of properties and connectors between properties.
							</p>
							<p class="text-center">
								<a rel="gallery" class="fancybox"
									href="images/arcadia_sysml/sysml-internal-block-diagram_1.jpg"><img
									src="images/arcadia_sysml/sysml-internal-block-diagram_1.jpg" /></a>
							</p>
						</div>
					</div>
					<div class="col-md-6 right-content">
						<h4>Arcadia/Capella</h4>
						<p class="wow fadeInUp" data-wow-delay=".1s">Arcadia
							Architecture Diagrams describe the assembly of components in
							terms of internal breakdown and connections.</p>
						<p class="text-center">
							<a rel="gallery" class="fancybox"
								href="images/arcadia_sysml/arcadia-internal-block-diagram_1.jpg"><img
								src="images/arcadia_sysml/arcadia-internal-block-diagram_1.jpg" /></a>
						</p>
						<p>
							<em>Note: See the dedicated section in <a class="wow fadeInUp smooth-scroll"
									data-wow-delay=".5s" href="#differences"
									data-row="#differences">Differences</a> to
								understand how the concepts of parts, blocks and cardinalities
								are managed in Capella.</em>
						</p>

					</div>
				</div>
			</div>

			<div class="row" id="activity">
				<div class="block wow fadeInUp" data-wow-delay=".1s">
					<div class="section-heading">
						<h2 class="title wow fadeInUp text-center" data-wow-delay=".1s">
							Activity Diagram</h2>
					</div>
					<div class="col-md-6 left-content">
						<h4>SysML</h4>
						<p class="wow fadeInUp" data-wow-delay=".1s">The Activity
							Diagram is a behavior diagram representing the flow of control
							and objects between activities.</p>
						<p class="text-center">
							<a rel="gallery" class="fancybox"
								href="images/arcadia_sysml/sysml-activity-diagram_1.jpg"><img
								src="images/arcadia_sysml/sysml-activity-diagram_1.jpg" /></a>
						</p>
					</div>
					<div class="col-md-6 right-content">
						<div class="separator hidden-sm">
							<h4>Arcadia/Capella</h4>
							<p class="wow fadeInUp" data-wow-delay=".1s">
								Capella functions naturally map to SysML activities/actions.
								However, while SysML Activity Diagrams are primarily intended to
								specify the control flows between activities, Capella Dataflows
								Diagrams only present the dependencies between functions with
								absolutely no semantics of control. The rationale for this
								choice is explained in this <a
									href="http://download.polarsys.org/capella/publis/INCOSE_Capella_SysML_paper.pdf"
									target="_blank">dedicated paper</a>.
							</p>

							<p class="wow fadeInUp" data-wow-delay=".1s">Allocating
								functions to components in Capella is similar to allocating
								actions to partitions representing blocks in SysML. Capella
								Architecture Diagrams ressemble to a mapping of SysML Activity
								Diagrams onto Internal Block Diagrams.</p>
							<p class="wow fadeInUp" data-wow-delay=".1s">The following is
								a Capella Architecture Diagram voluntarily made similar to a
								SysML Activity Diagram where actions would be displayed in
								vertical partitions.</p>
							<p class="text-center">
								<a rel="gallery" class="fancybox"
									href="images/arcadia_sysml/arcadia-activity-diagram_1.jpg">
									<img src="images/arcadia_sysml/arcadia-activity-diagram_1.jpg" />
								</a>
							</p>
						</div>
					</div>
				</div>
			</div>

			<div class="row" id="sequence">
				<div class="block wow fadeInUp" data-wow-delay=".1s">
					<div class="section-heading">
						<h2 class="title wow fadeInUp text-center" data-wow-delay=".1s">
							Sequence Diagram</h2>
					</div>
					<div class="col-md-6 left-content">
						<h4>SysML</h4>
						<p class="wow fadeInUp" data-wow-delay=".1s">Sequence Diagrams
							describe the interaction information with a focus on the time
							sequence.</p>
						<p class="wow fadeInUp" data-wow-delay=".2s">This diagram
							represents the sending and receiving of messages between the
							interacting entities called lifelines, where time is represented
							along the vertical axis. The sequence diagrams can represent
							highly complex interactions with special constructs to represent
							various types of control logic, reference interactions on other
							sequence diagrams, and decomposition of lifelines into their
							constituent parts.</p>
						<p class="text-center">
							<a rel="gallery" class="fancybox"
								href="images/arcadia_sysml/sysml-sequence-diagram_1.jpg"><img
								src="images/arcadia_sysml/sysml-sequence-diagram_1.jpg" /></a>
						</p>
					</div>
					<div class="col-md-6 right-content">
						<div class="separator hidden-sm">
							<h4>Arcadia/Capella</h4>
							<p class="wow fadeInUp" data-wow-delay=".1s">The Capella
								underlying constructs of Sequence Diagrams are strictly mapped
								onto SysML ones. The differences reside in the variety of
								elements that can be referenced in a consistent manner by
								lifelines and sequence messages.</p>
							<p class="wow fadeInUp" data-wow-delay=".1s">In the following
								figure, lifelines represent components (blocks in SysML) and
								sequence messages represent dependencies existing between the
								functions (actions/activities in SysML) respectively allocated
								to source and target components.</p>
							<p class="text-center">
								<a rel="gallery" class="fancybox"
									href="images/arcadia_sysml/arcadia-sequence-diagram_1.jpg"><img
									src="images/arcadia_sysml/arcadia-sequence-diagram_1.jpg" /></a>
							</p>
							<p class="wow fadeInUp" data-wow-delay=".1s">In the next
								Sequence Diagram lifelines represent functions
								(actions/activities in SysML) and sequence messages represent
								dataflows between these functions.</p>
							<p class="text-center">
								<a rel="gallery" class="fancybox"
									href="images/arcadia_sysml/arcadia-sequence-diagram_2.jpg"><img
									src="images/arcadia_sysml/arcadia-sequence-diagram_2.jpg" /></a>
							</p>
							<p class="wow fadeInUp" data-wow-delay=".1s">In the following
								Sequence Diagram lifelines represent components or data (blocks
								in SysML) and sequence messages represent operations belonging
								to the interfaces provided/required by the source and target
								components.</p>
							<p class="text-center">
								<a rel="gallery" class="fancybox"
									href="images/arcadia_sysml/arcadia-sequence-diagram_3.jpg"><img
									src="images/arcadia_sysml/arcadia-sequence-diagram_3.jpg" /></a>
							</p>
						</div>
					</div>
				</div>
			</div>

			<div class="row" id="state-machine">
				<div class="block wow fadeInUp" data-wow-delay=".1s">
					<div class="section-heading">
						<h2 class="title wow fadeInUp text-center" data-wow-delay=".1s">
							State Machine Diagram</h2>
					</div>
					<div class="col-md-6 left-content">
						<div class="separator hidden-sm">
							<h4>SysML</h4>
							<p class="wow fadeInUp" data-wow-delay=".1s">The State
								Machine Diagram is a behavior diagram describing the state
								transitions and actions that a system or its parts perform in
								response to events. It is used for representing behavior as the
								state history of an object in terms of its transitions and
								states.</p>
							<p class="text-center">
								<a rel="gallery" class="fancybox"
									href="images/arcadia_sysml/sysml-state-machine-diagram_1.jpg"><img
									src="images/arcadia_sysml/sysml-state-machine-diagram_1.jpg" /></a>
							</p>
						</div>
					</div>
					<div class="col-md-6 right-content">
						<h4>Arcadia/Capella</h4>
						<p class="wow fadeInUp" data-wow-delay=".1s">The Modes and
							States Machines in Capella are extremely close to SysML. The
							constructs are the same, but Capella adds a bit of semantics
							(difference between modes and states, articulation with
							functional analysis and interfaces).</p>
						<p class="text-center">
							<a rel="gallery" class="fancybox"
								href="images/arcadia_sysml/arcadia-state-machine-diagram_1.jpg"><img
								src="images/arcadia_sysml/arcadia-state-machine-diagram_1.jpg" /></a>
						</p>
					</div>
				</div>
			</div>

			<div class="row" id="use-case">
				<div class="block wow fadeInUp" data-wow-delay=".1s">
					<div class="section-heading">
						<h2 class="title wow fadeInUp text-center" data-wow-delay=".1s">
							Use Case Diagram</h2>
					</div>
					<div class="col-md-6 left-content">
						<div class="separator hidden-sm">
							<h4>SysML</h4>
							<p class="wow fadeInUp" data-wow-delay=".1s">The Use Case
								Diagram is a method for describing the usages of a system. It
								represents a high-level description of functionalities that are
								achieved through interaction among a system (subject) and its
								actors (environment) to achieve a goal.</p>
							<p class="text-center">
								<a rel="gallery" class="fancybox"
									href="images/arcadia_sysml/sysml-use-case-diagram_1.jpg"><img
									src="images/arcadia_sysml/sysml-use-case-diagram_1.jpg" /></a>
							</p>
						</div>
					</div>
					<div class="col-md-6 right-content">
						<h4>Arcadia/Capella</h4>
						<p class="wow fadeInUp" data-wow-delay=".1s">Capabilities in
							Capella are equivalent to SysML use cases and Capabilities
							Diagrams largely ressemble SysML Use Case diagrams. Capabilities
							are intensively used in Capella to organize the functional
							analysis: the involvement of stakeholders in a given capability
							is enriched by a specification of the stakeholder functions
							performed in the context of this capability.</p>
						<p class="text-center">
							<a rel="gallery" class="fancybox"
								href="images/arcadia_sysml/arcadia-use-case-diagram_1.jpg"><img
								src="images/arcadia_sysml/arcadia-use-case-diagram_1.jpg" /></a>
						</p>
					</div>
				</div>
			</div>

			<div class="row" id="requirement">
				<div class="block wow fadeInUp" data-wow-delay=".1s">
					<div class="section-heading">
						<h2 class="title wow fadeInUp text-center" data-wow-delay=".1s">
							Requirement Diagram</h2>
					</div>
					<div class="col-md-6 left-content">
						<h4>SysML</h4>
						<p class="wow fadeInUp" data-wow-delay=".1s">SysML includes a
							graphical construct to represent text based requirements and
							relate them to other model elements. The Requirements Diagram
							captures requirements hierarchies and requirements derivation,
							and the satisfy and verify relationships allow a modeler to
							relate a requirement to a model element that satisfies or
							verifies the requirements. The requirement diagram provides a
							bridge between the typical requirements management tools and the
							system models.</p>
						<p class="text-center">
							<a rel="gallery" class="fancybox"
								href="images/arcadia_sysml/sysml-requirement-diagram_1.jpg"><img
								src="images/arcadia_sysml/sysml-requirement-diagram_1.jpg" /></a>
						</p>
					</div>
					<div class="col-md-6 right-content">
						<div class="separator hidden-sm">
							<h4>Arcadia/Capella</h4>
							<p class="wow fadeInUp" data-wow-delay=".1s">Textual
								requirements can be displayed in any Capella diagram.
								Relationships between requirements and model elements as well as
								between requirements can be shown. There is however no dedicated
								requirement diagram in Capella.</p>
							<p class="text-center">
								<a rel="gallery" class="fancybox"
									href="images/arcadia_sysml/arcadia-requirement-diagram_1.jpg"><img
									src="images/arcadia_sysml/arcadia-requirement-diagram_1.jpg" /></a>
							</p>
						</div>
					</div>
				</div>
			</div>

			<div class="row" id="class">
				<div class="block wow fadeInUp" data-wow-delay=".1s">
					<div class="section-heading">
						<h2 class="title wow fadeInUp text-center" data-wow-delay=".1s">
							Class Diagrams</h2>
					</div>
					<div class="col-md-6 left-content">
						<h4>SysML</h4>
						<p class="wow fadeInUp" data-wow-delay=".1s">The UML Class
							Diagram does not belong to the official subset of UML diagrams
							available in SysML (it is replaced by the Block Definition
							Diagram which is based on the UML Class Diagram, with
							restrictions and extensions). However, it is presented here, as
							it is frequently used in addition to SysML diagrams.</p>
						<p class="text-center">
							<a rel="gallery" class="fancybox"
								href="images/arcadia_sysml/sysml-class-diagram_1.jpg"><img
								src="images/arcadia_sysml/sysml-class-diagram_1.jpg" /></a>
						</p>
					</div>
					<div class="col-md-6 right-content">
						<div class="separator hidden-sm">
							<h4>Arcadia/Capella</h4>
							<p class="wow fadeInUp" data-wow-delay=".1s">Capella class
								diagrams are fully aligned on UML class diagrams. Capella
								however adds a certain amount of construction rules (prohibiting
								dependency cycles for example, or enforcing certain
								visualization choices according to the properties of elements).</p>
							<p class="text-center">
								<a rel="gallery" class="fancybox"
									href="images/arcadia_sysml/arcadia-class-diagram_1.jpg"><img
									src="images/arcadia_sysml/arcadia-class-diagram_1.jpg" /></a>
							</p>
						</div>
					</div>
				</div>
			</div>
			<div class="row" id="parametric">
				<div class="block wow fadeInUp" data-wow-delay=".1s">
					<div class="section-heading">
						<h2 class="title wow fadeInUp text-center" data-wow-delay=".1s">
							Parametric Diagrams</h2>
					</div>
					<div class="col-md-6 left-content">
						<h4>SysML</h4>
						<p class="wow fadeInUp" data-wow-delay=".1s">Parametric
							Diagrams are a restricted form of Internal Block Diagram that
							shows only the use of constraint blocks along with the properties
							they constrain within a context. Parametric Diagrams are used to
							support engineering analysis, such as performance or mass
							properties analysis.</p>
						<p class="text-center">
							<a rel="gallery" class="fancybox"
								href="images/arcadia_sysml/sysml-parametric-diagram_1.jpg"><img
								src="images/arcadia_sysml/sysml-parametric-diagram_1.jpg" /></a>
						</p>
					</div>
					<div class="col-md-6 right-content">
						<div class="separator hidden-sm">
							<h4>Arcadia/Capella</h4>
							<p class="wow fadeInUp" data-wow-delay=".1s">While most of
								the underlying concepts are present in Capella (constraints,
								opaque expressions with assisted editing, parseable expressions,
								properties on elements, physical dimensions, etc.), no diagram
								is dedicated to their graphical display.</p>
							<p class="text-center">
								<a rel="gallery" class="fancybox"
									href="images/arcadia_sysml/arcadia-parametric-diagram_1.jpg"><img
									src="images/arcadia_sysml/arcadia-parametric-diagram_1.jpg" /></a>
							</p>
							<p>
								<em>Note: Currently, Capella users typically use dedicated
									viewpoints (language and analyses extensions + graphical layers
									on top of existing diagrams) to evaluate their architecture
									against non-functional constraints. They rarely use the
									architecture models for simulation purposes. Should the
									end-user request them, parametric diagrams could be an easy
									addition to Capella.</em>
							</p>
						</div>
					</div>
				</div>
			</div>

		</div>
	</section>
	<!--/#all_diagrams-->

	<!--
        ==================================================
        Differences - Intro Banner with Anchors
        ================================================== -->
	<section class="bg_indigo">
		<div class="container">
			<div class="row" id="differences">
				<div class="col-md-12 text-center txt_white">
					<div class="block wow fadeInUp" data-wow-delay=".2s">
						<h2 class="title wow fadeInUp txt_white" data-wow-delay=".2s">
							Differences between SysML and Arcadia/Capella</h2>
						<p class="wow fadeInUp txt_white" data-wow-delay=".3s">The
							purpose of Arcadia and Capella is to have systems engineers
							embrace the cultural change of MBSE, rather than having modeling
							“experts” owning the model on behalf of systems engineers. The
							following differences are motivated by the commitment to reach
							this goal and result from the integration of the actual practices
							and concerns of systems engineers who do not necessarily have
							software engineering background.</p>
						<br>
						<p>
							<a class="wow fadeInUp smooth-scroll" data-wow-delay=".1s"
								href="#functional-analysis"
								data-row="#functional-analysis">Functional Analysis <i
								class="fa fa-arrow-circle-right" aria-hidden="true"></i></a>
						</p>
						<p>
							<a class="wow fadeInUp smooth-scroll" data-wow-delay=".2s"
								href="#integration-functions-components-interfaces"
								data-row="#integration-functions-components-interfaces">Integration Functions / Components / Interfaces <i
								class="fa fa-arrow-circle-right" aria-hidden="true"></i>
							</a>
						</p>
						<p>
							<a class="wow fadeInUp smooth-scroll" data-wow-delay=".3s"
								href="#management-instances-definitions-usages"
								data-row="#management-instances-definitions-usages">Management of "Instances", or "Definitions and Usages" <i
								class="fa fa-arrow-circle-right" aria-hidden="true"></i></a>
						</p>
					</div>
				</div>
			</div>
		</div>
	</section>
	<!--/#extensions-->

	<!--
        ==================================================
        Differences - Diagrams Sections
        ================================================== -->
	<section class="next-section" id="all_diagrams_differences">
		<div class="container">
			<p class="txt_indigo text-center">
				<span class="caret">&nbsp; </span>
			</p>

			<div class="row" id="functional-analysis">
				<div class="block wow fadeInUp" data-wow-delay=".1s">
					<div class="section-heading">
						<h2 class="title wow fadeInUp text-center" data-wow-delay=".1s">
							Functional Analysis</h2>
					</div>
					<div class="col-md-12">
						<p class="wow fadeInUp" data-wow-delay=".3s">Functional
							analysis is a classical technique broadly used by systems
							engineers. Arcadia and Capella provide methodological guidance
							and engineering helpers to support this technique that has been
							mostly left out of SysML V1.</p>
						<p class="wow fadeInUp" data-wow-delay=".3s">The mapping of
							Capella functions to SysML activity is the most natural one in
							terms of semantics. Capella functions are verbs specifying the
							actions expected from the component they are allocated to. This
							section describes the structural differences between SysML
							activities/actions and Capella functions.</p>
						<br>
					</div>

					<div class="col-md-6 left-content">
						<h4>SysML</h4>
						<p class="wow fadeInUp" data-wow-delay=".1s">The articulation
							between several Activity Diagrams relies on two major concepts:
							activities are described by different kinds of actions including
							some that can reference other activities, and the parameters of a
							given activity are connected (delegated) to the output or input
							pins of the actions describing it. This strong encapsulation
							mechanism favors the reuse of activity definitions in multiple
							contexts but imposes constraints on what can be represented in
							one single diagram and makes bottom-up workflows more difficult
							to implement.</p>
						<p class="text-center">
							<a rel="gallery" class="fancybox"
								href="images/arcadia_sysml/sysml-functional-analysis_1.jpg">
								<img src="images/arcadia_sysml/sysml-functional-analysis_1.jpg" />
							</a>
						</p>
					</div>
					<div class="col-md-6 right-content">
						<div class="separator hidden-sm">
							<h4>Arcadia/Capella</h4>
							<p class="wow fadeInUp" data-wow-delay=".1s">There are three
								major differences between SysML Activity Diagrams and Capella
								dataflows:</p>
							<ol>
								<li>There is no control flow in Capella Dataflow Diagrams,
									meaning that there is no semantics of execution and there are
									no control nodes such as Join, Fork, etc.. The detailed
									rationale for the absence of control flows in Capella dataflow
									is explained in <a
									href="http://download.polarsys.org/capella/publis/INCOSE_Capella_SysML_paper.pdf"
									target="_blank">this dedicated paper</a>.
								</li>
								<li>The relationship between a function and its subfunctions is a direct containment
								</li>
								<li>There is no delegation mechanism between functions at
									each level of decomposition in Capella. The rationale is
									detailed hereunder.</li>
							</ol>
							<p class="wow fadeInUp" data-wow-delay=".2">In a hierarchy of
								Capella functions, non-leaf functions are only “grouping”
								elements. This means:</p>
							<ul>
								<li>Non-leaf functions are not supposed to have ports nor
									functional dependencies</li>
								<li>Non leaf-functions are not supposed to be allocated to
									components</li>
								<li>A leaf function can be connected freely to any other
									leaf function</li>
								<li>When a non-leaf function has ports, the design is
									considered non-finalized. The remaining ports are supposed to
									be moved towards a leaf function</li>
								<li>Low-levels dependencies between leaf functions are
									automatically displayed when intermediate/parent/non-leaf
									functions are displayed on a diagram.</li>
							</ul>
							<p class="wow fadeInUp" data-wow-delay=".3">The rationales
								for this modeling choice are multiple:</p>
							<ul>
								<li>This helps manage the complexity of functional trees by
									relieving engineers from the tedious task of maintaining the
									consistency of dependencies between several levels of
									decomposition</li>
								<li>This allows the immediate production of simplified
									views of the functional analysis</li>
								<li>This enables the easy combination between top-down and
									bottom-up workflows</li>
							</ul>

							<p class="text-center">
								<a rel="gallery" class="fancybox"
									href="images/arcadia_sysml/arcadia-functional-analysis_1.jpg">
									<img
									src="images/arcadia_sysml/arcadia-functional-analysis_1.jpg" />
								</a>
							</p>
							<p class="wow fadeInUp" data-wow-delay=".12">Capella
								leverages this language choice to provide several kinds of
								simplified views of the system architecture. The following
								diagram for example is automatically computed. Ports are
								displayed on non-leaf functions but still belong to children
								functions.</p>
							<p class="text-center">
								<a rel="gallery" class="fancybox"
									href="images/arcadia_sysml/arcadia-functional-analysis_2.jpg">
									<img
									src="images/arcadia_sysml/arcadia-functional-analysis_2.jpg" />
								</a>
							</p>
							<p class="wow fadeInUp" data-wow-delay=".12">Similarly,
								graphical simplifications of Architecture Diagrams can be computed by
								automatically performing grouping at component and function
								levels.</p>
							<p class="text-center">
								<a rel="gallery" class="fancybox"
									href="images/arcadia_sysml/arcadia-functional-analysis_3.jpg">
									<img
									src="images/arcadia_sysml/arcadia-functional-analysis_3.jpg" />
								</a>
							</p>
							<p class="text-center">
								<a rel="gallery" class="fancybox"
									href="images/arcadia_sysml/arcadia-functional-analysis_4.jpg">
									<img
									src="images/arcadia_sysml/arcadia-functional-analysis_4.jpg" />
								</a>
							</p>
						</div>
					</div>
				</div>
			</div>

			<div class="row" id="integration-functions-components-interfaces">
				<div class="block wow fadeInUp" data-wow-delay=".1s">
					<div class="section-heading">
						<h2 class="title wow fadeInUp text-center" data-wow-delay=".1s">
							Integration Functions / Components / Interfaces</h2>
					</div>

					<div class="col-md-12">
						<p class="wow fadeInUp" data-wow-delay=".1s">The biggest
							objective of the Arcadia method is to secure the architectural
							design activity through identification and justification of the
							interfaces. This is achieved by providing a global approach to
							conduct functional, structural, and interface modeling in
							parallel:</p>
						<ul>
							<li>Identification of the functional expectations of the
								subsystems (allocation of functions to components)</li>
							<li>Identification of the functional dependencies between
								the subsystems (specification of the exchanges between functions
								ideally with a structural description of the exchanged items)</li>
							<li>Allocation of functional dependencies to assembly
								relationships between subsystems (allocation of functional ports
								to component ports, allocation of functional exchanges to
								component exchanges, etc.)</li>
							<li>Specification of the interfaces provided and required
								through component ports (with a possible automated deduction
								based on all the above-mentioned specification)</li>
						</ul>
						<p class="text-center">
							<a rel="gallery" class="fancybox"
								href="images/arcadia_sysml/arcadia-integration-structure-interface-functions_1.jpg">
								<img
								src="images/arcadia_sysml/arcadia-integration-structure-interface-functions_1.jpg" />
							</a>
						</p>
						<p>Instead of showing the actual element name, the label of
							functional dependencies can show references towards the exchanged
							items.</p>
						<p class="text-center">
							<a rel="gallery" class="fancybox"
								href="images/arcadia_sysml/arcadia-integration-structure-interface-functions_2.jpg">
								<img
								src="images/arcadia_sysml/arcadia-integration-structure-interface-functions_2.jpg" />
							</a>
						</p>
						<p>The following diagram details the content of the interfaces
							between the components, deduced from the functional analysis and
							multiple allocations.</p>
						<p class="text-center">
							<a rel="gallery" class="fancybox"
								href="images/arcadia_sysml/arcadia-integration-structure-interface-functions_3.jpg">
								<img
								src="images/arcadia_sysml/arcadia-integration-structure-interface-functions_3.jpg" />
							</a>
						</p>
						<p>This integration of the functions / components / interfaces
							triptych is not straightforward to implement and enforce in SysML
							v1. This global approach promoted in Capella also comes with a
							set of assistance tooling enforcing the model correctness
							regarding this integration and providing automation means.</p>
						<p>
							<em>Note: The topic of a better integration between
								structure and behaviour is currently being investigated within
								the SysML v2 SST submission team. </em>
						</p>
					</div>
				</div>
			</div>

			<div class="row" id="management-instances-definitions-usages">
				<div class="block wow fadeInUp" data-wow-delay=".1s">
					<div class="section-heading">
						<h2 class="title wow fadeInUp text-center" data-wow-delay=".1s">
							Management of "instances", or "definitions and usages"</h2>
					</div>
					<div class="col-md-12">
						<p class="wow fadeInUp" data-wow-delay=".1s">The SysML
							Internal Block Diagram is dedicated to model the internal
							structure of a block. SysML relies on a generic block/part
							paradigm: in an Internal Block Diagram, a block can be decomposed
							into parts (usages) which are themselves typed by other blocks
							(definitions). A bicycle “block” has two parts “front wheel” and
							“rear wheel” which are both typed by the block “wheel”. The
							“wheel” definition is captured in one dedicated block and the
							same definition can be reused many times in the system through
							the part concept.</p>
						<p class="wow fadeInUp" data-wow-delay=".1s">It is possible in
							Capella to use the same block/part paradigm than in SysML. The
							following diagrams show how the memory card compartment of the
							camera can have two slots. There is only one “Memory Card”
							component, but it is referenced twice. The component breakdown
							diagram shows the unicity of the “Memory Card” component.</p>
						<p class="text-center">
							<a rel="gallery" class="fancybox"
								href="images/arcadia_sysml/arcadia-management-instances_1.jpg">
								<img
								src="images/arcadia_sysml/arcadia-management-instances_1.jpg" />
							</a>
						</p>
						<p class="text-center">
							<a rel="gallery" class="fancybox"
								href="images/arcadia_sysml/arcadia-management-instances_2.jpg">
								<img
								src="images/arcadia_sysml/arcadia-management-instances_2.jpg" />
							</a>
						</p>
						<p class="wow fadeInUp" data-wow-delay=".1s">However, Capella
							is configured by default for an instance-driven modeling. Return
							of experience showed that systems engineers are not necessarily
							comfortable with the workflow of creating definition elements
							first (“blocks” or “components”) and then referencing them from
							specific usage elements (“parts”).</p>
						<p class="wow fadeInUp" data-wow-delay=".1s">In addition,
							architectural design in Capella also consists in performing non
							functional analyses where it is critical to be able to
							distinguish the different occurrences of each element and to be
							able to give them different properties or values. For example,
							safety analyses typically require to distinguish between the
							execution of an “identical” function in two distinct components.</p>
						<p class="wow fadeInUp" data-wow-delay=".1s">This means
							components and functions in Capella are by default considered as
							instances or usages.</p>

						<p class="text-center">
							<a rel="gallery" class="fancybox"
								href="images/arcadia_sysml/arcadia-management-instances_3.jpg">
								<img
								src="images/arcadia_sysml/arcadia-management-instances_3.jpg" />
							</a>
						</p>
						<p class="text-center">
							<a rel="gallery" class="fancybox"
								href="images/arcadia_sysml/arcadia-management-instances_4.jpg">
								<img
								src="images/arcadia_sysml/arcadia-management-instances_4.jpg" />
							</a>
						</p>
						<p>To support this approach, Capella provides automated
							mechanisms allowing the replication and synchronization of model
							elements (REC and RPL, for Records and Replica).</p>
						<p>
							<em>Note: This topic is known as “usage-based modeling” in
								the SysML v2 submission SST team, the goal being to have a
								language able to efficiently support multiple creation
								workflows. The outcome of this effort might at some point be
								taken into account in Capella. </em>
						</p>
					</div>
				</div>
			</div>
		</div>
	</section>

	<div id="back-to-top" data-spy="affix" data-offset-top="100"
		class="back-to-top hidden-xs hidden-sm affix-top">
		<button class="btn btn-default" title="Back to Top">
			<i class="fa fa-caret-up"></i>
		</button>
	</div>
	<script type="text/javascript">
	// Back to top
		jQuery('#back-to-top').on('click', function() {
			jQuery("html, body").animate({
				scrollTop : 0
			}, 500);
			return false;
		});
	</script>

	<!--
        ==================================================
        Call To Action Section Start
        ================================================== -->
	<ng-include src="'angular/blocks/call2action.html'"></ng-include>

	<!--
        ==================================================
        Footer Section
        ================================================== -->
	<ng-include src="'angular/blocks/footer.html'"></ng-include>
	<script async src="js/googleAnalytics.js"></script>
</body>
</html>