﻿<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <title>Eclipse Requirements Modeling Framework</title>
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta name="description" content="The website of Eclipse Requirements Modeling Framework, a toolset for Requirements Management">
    <meta name="author" content="Michael Jastram">
	<link rel="shortcut icon" href="images/favicon16.png">

	<link id="callCss" rel="stylesheet" href="themes/css/bootstrap.min.css" type="text/css" media="screen" charset="utf-8" />
	<link id="callCss" rel="stylesheet" href="themes/css/style.css" type="text/css" media="screen" charset="utf-8" />
	<link href="themes/css/bootstrap-responsive.min.css" rel="stylesheet">
	<link rel="stylesheet" href="themes/font-awesome/css/font-awesome.min.css">

	<!--[if IE 7]>
	  <link rel="stylesheet" href="themes/font-awesome/css/font-awesome-ie7.css">
	<![endif]-->
	<!-- Le HTML5 shim, for IE6-8 support of HTML5 elements -->
	<!--[if lt IE 9]>
	  <script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
	<![endif]-->
<!-- 
<link href='http://fonts.googleapis.com/css?family=Lato:100,300,400,700,900,100italic,300italic,400italic,700italic,900italic' rel='stylesheet' type='text/css'>
Imbeded font from Google -->
</head>


<body data-spy="scroll" data-targe293361293361t=".navbar">
	<div id="headerSection">
	<div class="container">
		<h1 class="brand cntr"><img src="images/rmf-small.png"/></h1>

		<div style="position:absolute; top:0px; left:-50px;">
		<img src="images/thumb-incubation.png" />
	        </div>

		<!-- Place this tag where you want the +1 button to render. -->
		<div style="position:absolute; top:20px; right:20px;">
	        <div class="g-plusone" data-href="http://eclipse.org/rmf"></div>
	        </div>

		<div class="navbar">
			<div class="nav-collapse">
				<ul class="nav">
					<li class="active"><a  class="clickscroll" href="#introSection">Home</a></li>
					<li><a class="clickscroll" href="#welcomeSection">RMF/ProR</a></li>
					<li><a class="clickscroll" href="#getStarted">Getting Started</a></li>
					<li><a class="clickscroll" href="#portfolioSection">News</a></li>
					<li><a href="http://eclipse.org/rmf/download.php">Download</a></li>
					<li><a href="http://www.eclipse.org/forums/index.php?t=thread&frm_id=230">Forum</a></li>
					<li><a href="http://www.eclipse.org/">eclipse.org</a></li>
					</ul>
			</div>
		</div>
	</div>
	</div>

<!-- Place this tag after the last +1 button tag. -->
<script type="text/javascript">
  (function() {
    var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true;
    po.src = 'https://apis.google.com/js/platform.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s);
  })();
</script>
	
<!--Header Ends================================================ -->
<!--
<div id="carouselSection" class="cntr"> 
		<div id="myCarousel" class="carousel slide">
			<div class="carousel-inner">
				<div class="item active">
					<a class="cntr" href="#"><img src="themes/images/carousel/1.png" alt=""></a>
				</div>
				<div class="item">
					<a class="cntr" href="#"><img src="themes/images/carousel/2.png" alt=""></a>
				</div>
				<div class="item">
					<a class="cntr" href="#"><img src="themes/images/carousel/3.png" alt=""></a>
				</div>
				<div  class="item">
					<a class="cntr" href="#"><img src="themes/images/carousel/4.png" alt=""></a>
				</div>
				<div class="item">
					<a class="cntr" href="#"><img src="themes/images/carousel/5.png" alt=""></a>
				</div>
			</div>
			<a class="left carousel-control" href="#myCarousel" data-slide="prev">&lsaquo;</a>
			<a class="right carousel-control" href="#myCarousel" data-slide="next">&rsaquo;</a>
		</div>
</div>
-->
<!-- Our Services======================================== -->
<div id="introSection"> 	
<div class="container">

	<a href="http://www.youtube.com/v/sdfTNZduvZ4&amp;hl=nl&amp;fs=1&amp;rel=0&amp;hd=1&amp;autoplay=1"><img alt="ProR Introduction" src="images/intro-arrow.png" align="right" /></a>

		<br/>
		<h1 class="white"><b>Requirements Management</b> for Eclipse</h1>
		<p class="white">Requirements Management is now a first-class citizen in the Eclipse world. You can get started authoring requirements using the ProR Tool.</p>
		<p align="center">
		<a href="http://eclipse.org/rmf/download.php"><img class="white" src="images/download.png" /></a>
		</p>
		</div>
	</div>

<!-- Sectionone block ends======================================== -->
 
<div id="welcomeSection"> 
	<div class="container cntr">
			<h4>Testimonials</h4>
			<div id="testimonial" class="carousel slide">
			<div class="carousel-inner">
				<div class="item active">
					<p>ProR convinced us of the feasability of Open Source in a commercial setting. (Stefan Langer, resolut GmbH)<br/><br/></p>
				</div>
				<div class="item">
					<p>Interested Parties include Airbus, Obeo, Atos and many more (see Proposal)<br/><br/></p>
				<div class="item">
					<p>The tool covers all important aspects of requirements management and provides dependability through open standards. (Stefan Langer, resolut GmbH)<br/><br/></p>
				</div>
				<div class="item">
					<p>ProR is the first open source reference implementation of ReqIF. (Dr. Michael Jastram, Formal Mind GmbH)<br/><br/></p>
				</div>
			</div>
			<!--
			<a class="left carousel-control" href="#testimonial" data-slide="prev">&lsaquo;</a>
			<a class="right carousel-control" href="#testimonial" data-slide="next">&rsaquo;</a>
			-->
		</div>

		
<h2>What is RMF?</h2>

<p>RMF is a framework for working with textual requirements, structured as ReqIF models, the industry standard for exchanging requirements. RMF uses natively ReqIF, the open standard for requirements exchange, allowing you to exchange requirements with many industry applications like Rational DOORS® or PTC integrity®.</p>

<img src="images/reqif-exchange.png" />

<h2>What is ProR?</h2>

<p>ProR is the GUI that allows comfortable working with Requirements. It opens ReqIF files with a click, allowing you to immediately inspect and edit files. Powerful extensions exist for dealing with rich text, ReqIFz-Archives, and much more.</p>

<img src="images/eclipse-integration.png" />

<p>ProR is designed explicitly for integration and extendability.  An Extension Point exists that allows tools to integrate their own renderer or even editor.  Some integrations are publicly available, including a <a href="http://formalmind.com/en/blog/traceability-between-uml-and-requirements-pror" target="_blank">UML/SysML integration</a> and an <a href="http://www.formalmind.com/en/blog/integrating-requirements-and-models"  target="_blank">integration with the formal modeling tool Rodin</a>.</p>

	</div>
</div>

<!-- Our Services======================================== -->
<div id="ourServices"> 	
<div class="container">	
		<h1 class="cntr">Features and Key Ideas of RMF and ProR</h1>
		<div class="row">
		<div class="span4">
			<div class="thumbnail">
			<img src="images/thumb-pror.png" />
			  <h4>Start right away with ProR</h4>			  
				<p>If you are just looking for a Requirements or ReqIF-Editor, just download 
				<a href="http://formalmind.com/studio" target="_blank">formalmind Studio</a> and start being productive.  
				Formal Mind Studio is a third-party, stand-alone build of ProR with enhancements.  
				Alternatively, you can install ProR into any Eclipse-Installation (3.6 and later) by using the update site URL
				provided on the <a href="download.php">Download Page</a>.
				</p>
			</div>
			
		</div>
		<div class="span4">

		<div class="thumbnail">
		
			    <img src="images/thumb-incubation.png" />
			    <h4>Incubation</h4>
				<p>
					RMF became an Eclipse project in November 2011 (<a href="http://eclipse.org/proposals/modeling.mdt.rmf">Initial Proposal</a>).
					As it is still developing at a rapid pace with some parts of the API still changing, it is still in
					incubation.  Nevetheless, the data model is stable (as it is based on the
					OMG ReqIF standard), and it is already used in production environments.
				</p>		</div>
		</div>
		<div class="span4">
			<div class="thumbnail">
				<img src="images/thumb-reqif.png" />
				<h4>ReqIF as the underlying Data Model</h4>
				<p>
					The <b>Requirements Interchange Format</b> (ReqIF) is an <a href="http://www.omg.org/spec/ReqIF/">OMG Standard</a>
					for exchaning requirements.  ProR supports Version 1.0.1 and 1.1 (which are binary compatible), while
					code for handling RIF 1.1 and 1.2 is part of the RMF Core.  ProR is used by the <a href="http://www.prostep.org/en/projects/internationalization-of-the-requirements-interchange-format-intrif.html">ProSTEP Implementor Forum</a>
					for testing the various ReqIF implementations.
				</p>
			</div>
		<br>
		</div>
</div>
		<div class="row">

		<div class="span4">
			<div class="thumbnail">
			<img src="images/thumb-integration.png" />
			  <h4>Seamless Integration</h4>
				<p>
					RMF provides a rich API to work with ReqIF models. ProR provides
					extension points, allowing the use of alternative renderers and
					behavior.  Therefore, providing a <b>seamless integration</b>
					with other Eclipse tools and EMF models  is
					comparably easy.  This has been demonstrated in the 
					<a href="http://wiki.event-b.org/index.php/ProR">FP7 research project Deploy</a>.
			</div>
		</div>

		<div class="span4">

		</div>
		
		<div class="span4">
			<div class="thumbnail">
				<img src="images/thumb-essentials.png" />
				<h4>ProR Essentials</h4>
				<p>
					A collection of useful utilities called <a href="http://www.formalmind.com/pror-essentials">ProR Essentials</a>
					is available for free and allows, amongst other things, the correct
					rendering and editing of rich text (xhtml), handling of ReqIF archives (.reqifz)
					and more.  Note that these are third-party extensions that are
					not part of Eclipse.  The third-party <a href="http://formalmind.com/studio" target="_blank">formalmind Studio</a> 
                                        already comes with Essentials installed.
				</p>
			</div>
		<br>
		</div>
</div>
</div>
</div>


</div>
<!-- Get Started======================================== -->
<div id="getStarted">
<h1 class="cntr">Getting Started</h1>
<div class="container">

<div class="span5">

<h3>As a User</h3>



<p>To get started as a user, the following resources will be useful:</p>

<ul>
  <li><a href="http://formalmind.com/studio" target="_blank"><b>Download formalmind Studio</b> - The fastest way to get started is to download formalmind Studio, which is a third-party distribution that extends ProR with useful enhancements.  Alternatively, you can use the binaries on the download page.</a></li>
  <li><a href="http://download.eclipse.org/rmf/documentation/rmf-latex/main.html"><b>ProR Handbook</b> - The ProR User Documentation (including Tutorial)</a></li>
  <li><a href="http://www.eclipse.org/forums/index.php?t=thread&frm_id=230"><b>RMF and ProR User Forum</b> - Ask Questions and get Answers</a></li>
  <li><a href="https://bugs.eclipse.org/bugs/enter_bug.cgi?assigned_to=&blocked=&bug_file_loc=http%3A%2F%2F&bug_severity=normal&bug_status=NEW&comment=&contenttypeentry=&contenttypemethod=autodetect&contenttypeselection=text%2Fplain&data=&dependson=&description=&flag_type-1=X&flag_type-11=X&flag_type-12=X&flag_type-2=X&flag_type-4=X&flag_type-6=X&flag_type-7=X&flag_type-8=X&form_name=enter_bug&keywords=&maketemplate=Remember%20values%20as%20bookmarkable%20template&op_sys=All&product=MDT.RMF&qa_contact=&rep_platform=All&short_desc=&version=unspecified"><b>File a Bug</b> - Think you found a problem?  You have a feature request? Then file an issue in Bugzilla.  You need an account to file bugs.</a></li>

</ul>
</div>

<div class="span5">

<h3>As a Developer</h3>

<p>The following collection of links will hopefully help you find quickly what you are looking for.</p>

<ul>
  <li><a href="https://wiki.eclipse.org/Category:RMF/Contributor_Guide"><b>Contributor Guide</b> - This Wiki page contains everything to get started.</a></li>
  <li><a href="https://projects.eclipse.org/projects/modeling.mdt.rmf"><b>Project Page</b> - Contains Statistics, Repositry links, Committer Information, etc.</a></li>
  <li><a href="https://wiki.eclipse.org/RMF/Contributor_Guide/Presentations"><b>Extend ProR</b> - To extend the functionality of ProR, you can create so-called presentations. which are plug-ins that provide custom renderers and other extensions.</a></li>
</ul>

</div>

</div>



</div>
<!-- Get Started======================================== -->
</div><div id="portfolioSection">
<h1 class="cntr">News</h1>

<p>You can subscribe to news <a href="http://www.formalmind.com/en/newsletter" target="_blank">via Email</a> or <a href="http://formalmind.com/blog/rss.xml" target="_blank">via RSS</a>

<div class="container">	

<script language="JavaScript" src="https://feed2js.org//feed2js.php?src=http%3A%2F%2Fformalmind.com%2Fen%2Fblog%2Frss.xml&num=8&desc=250&date=y&targ=y&utf=y&html=p"  charset="UTF-8" type="text/javascript"></script>

    <noscript>
    <a href="http://formalmind.com/en/blog/feed">View RSS feed</a>
    </noscript>
</div>


</div>
</div>

<div id="footerSection">
	<div class="container">
<!--
	<div class="socialMedia">
		<a class="facebook" href="#"></a>
		<a class="twitter" href="#"></a>
	</div>
-->
	<div id="footerMenu">
			<a href="http://www.eclipse.org/legal/privacy.php">Privacy Policy</a>
			<a href="http://www.eclipse.org/legal/termsofuse.php">Terms of Use</a>
			<a href="http://www.eclipse.org/legal/copyright.php">Copyright Agent</a>
			<a href="http://www.eclipse.org/legal/">Legal</a>
			<a href="http://www.eclipse.org">Eclipse Home</a>
			<a href="http://marketplace.eclipse.org/">Market Place</a>
			<a href="http://live.eclipse.org/">Eclipse Live</a>
			<a href="http://www.planeteclipse.org/">Eclipse Planet</a>
	</div>
		<p><small>eclipse.org &copy; 2014 All rights reserved.</small></p>
	</div>
</div>
<a href="#" class="go-top" style="display: none;"><i class="icon-double-angle-up"></i></a>

<!-- Javascript
    ================================================== -->
    <!-- Placed at the end of the document so the pages load faster -->

<script src="themes/js/jquery-1.9.1.min.js"></script>
<script src="themes/js/bootstrap.min.js" type="text/javascript"></script>
<script src="themes/js/jquery.scrollTo-1.4.3.1-min.js" type="text/javascript"></script>
<script src="themes/js/jquery.easing-1.3.min.js"></script>
<script src="themes/js/jquery.scrollTo-1.4.3.1-min.js"></script>
<script src="themes/js/default.js"></script> 
<script type="text/javascript">

	$('#testimonial').carousel({
	  interval: 10000
	})
	$('#myCarousel').carousel({
	  interval: 7000
	})

</script>
</body>
</html>
