
<!DOCTYPE html>
<html lang="en">
<head>
  
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">

<title>Back From EclipseCon France 2018 | The Eclipse OpenCert</title>
<meta property="og:title" content="Back From EclipseCon France 2018 | The Eclipse OpenCert" />
<meta name="twitter:title" content="Back From EclipseCon France 2018 | The Eclipse OpenCert" />

<meta name="description" content="&lt;p&gt;AMASS was present on stage during the plenary session. Atif explains the process to migrate EPF to the latest version of the Eclipse platform.&lt;/p&gt;">
<meta property="og:description" content="&lt;p&gt;AMASS was present on stage during the plenary session. Atif explains the process to migrate EPF to the latest version of the Eclipse platform.&lt;/p&gt;">
<meta name="twitter:description" content="&lt;p&gt;AMASS was present on stage during the plenary session. Atif explains the process to migrate EPF to the latest version of the Eclipse platform.&lt;/p&gt;">
<meta name="author" content="AMASS ECSEL project partners"/>
<link href='/opencert/images/logo_square.png' rel='icon' type='image/x-icon'/>
<meta property="og:image" content="/opencert/images/logo.png" />
<meta name="twitter:image" content="/opencert/images/logo.png" />
<meta name="twitter:card" content="summary" />
<meta name="twitter:site" content="@AMASSproject" />
<meta name="twitter:creator" content="@AMASSproject" />
<meta property="og:url" content="https://www.eclipse.org/opencert/news/2018-06-25-epf-presentation-at-ec-france/" />
<meta property="og:type" content="website" />
<meta property="og:site_name" content="Eclipse Opencert" />
<meta name="keywords" content="eclipse, project, polarsys, amass, assurance, certification, Cyber-Physical Systems, CPS">


<meta name="generator" content="Hugo 0.81.0" />
<link rel="canonical" href="https://www.eclipse.org/opencert/news/2018-06-25-epf-presentation-at-ec-france/" />


<link rel="stylesheet" href="https://eclipse.org/eclipse.org-common/themes/solstice/public/stylesheets/quicksilver.min.css">
  
  <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>
  
<script>
	
		var tableClasses = "table";
	
</script>

  
<link href="https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap" rel="stylesheet" type="text/css"/>

  
</head>
<body>
  

<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-5WLCZXC"
height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>

<a class="sr-only" href="#content">Skip to main content</a>
<header class="header-wrapper header-wrapper header-default-bg-img featured-jumbotron-bottom-shape" id="header-wrapper">
  

<div class="clearfix toolbar-container-wrapper">
  <div class="container">
    <div class="text-right toolbar-row row hidden-print">
      <div class="col-md-24 row-toolbar-col">
        <ul class="list-inline">
          <li><a href="https://accounts.eclipse.org/user/edit" class="" data-tab-destination="tab-profile"><i class="fa fa-edit fa-fw"></i> Edit my account</a></li>
          <li><a class="toolbar-link toolbar-manage-cookies dropdown-toggle"><i class="fa fa-wrench"></i> Manage Cookies</a></li>
          
        </ul>
      </div>
    </div>
  </div>
</div>
<div class="navbar-wrapper">
  <div class="container">
    <div class="row" id="header-row">
      <div class="col-sm-5 col-md-4" id="header-left">
        <div class="wrapper-logo-default">

            

            
            
            

            
        
            <a title="Eclipse Opencert" href="https://www.eclipse.org/opencert/">
              <img width="140" class="logo-eclipse-default img-responsive hidden-xs" src="/opencert/images/logo.png" alt="Eclipse Opencert" />
            </a>
            

        </div>
      </div>
      
      
        
      
      <div class="col-sm-19 col-md-20 margin-top-10" id="main-menu-wrapper">
        
        
        
          
        
        
        
        
        
        
          <div class="float-right hidden-xs" id="btn-call-for-action">
            <div id="btn-call-for-action"><a href="https://projects.eclipse.org/projects/polarsys.opencert/governance" class="btn btn-huge btn-warning"><i class="fa fa-download"></i> Download</a></div>
          </div>
        
        <div class="navbar float-sm-right yamm" id="main-menu">
          <div class="navbar-collapse collapse reset float-right" id="navbar-main-menu">
            <ul class="nav navbar-nav">
              



<li>
  <a class="" href="/opencert/">
  
  Home
  </a>
  
</li>


<li>
  <a class="" href="/opencert/resources/">
  
  Resources
  </a>
  
</li>


<li>
  <a class="" href="/opencert/community/">
  
  Community
  </a>
  
</li>


<li>
  <a class="" href="/opencert/about/">
  
  About
  </a>
  
</li>


<li>
  <a class="" href="https://projects.eclipse.org/projects/polarsys.opencert">
  
  PMI
  </a>
  
</li>


<li class="dropdown eclipse-more hidden-xs">
  <a data-toggle="dropdown" class="dropdown-toggle" role="button">More<b class="caret"></b></a>
  <ul class="dropdown-menu">
    <li>
      
      <div class="yamm-content">
        <div class="row">
          <ul class="col-sm-8 list-unstyled">
            <li>
              <p><strong>Community</strong></p>
            </li>
            <li><a href="http://marketplace.eclipse.org">Marketplace</a></li>
            <li><a href="http://events.eclipse.org">Events</a></li>
            <li><a href="http://www.planeteclipse.org/">Planet Eclipse</a></li>
            <li><a href="https://www.eclipse.org/community/eclipse_newsletter/">Newsletter</a></li>
            <li><a href="https://www.youtube.com/user/EclipseFdn">Videos</a></li>
            <li><a href="https://blogs.eclipse.org">Blogs</a></li>
          </ul>
          <ul class="col-sm-8 list-unstyled">
            <li>
              <p><strong>Participate</strong></p>
            </li>
            <li><a href="https://www.eclipse.org/downloads">Download</a></li>
            <li><a href="https://www.eclipse.org/forums/">Forums</a></li>
            <li><a href="https://www.eclipse.org/mail/">Mailing Lists</a></li>
            <li><a href="https://wiki.eclipse.org/">Wiki</a></li>
            <li><a href="https://wiki.eclipse.org/IRC">IRC</a></li>
          </ul>
          <ul class="col-sm-8 list-unstyled">
            <li>
              <p><strong>Eclipse IDE</strong></p>
            </li>
            <li><a href="https://www.eclipse.org/downloads">Download</a></li>
            <li><a href="https://www.eclipse.org/downloads">Learn more</a></li>
            <li><a href="https://help.eclipse.org">Documentation</a></li>
            <li><a href="https://www.eclipse.org/getting_started">Getting Started / Support</a></li>
            <li><a href="https://www.eclipse.org/contribute/">How to Contribute</a></li>
            <li><a href="https://www.eclipse.org/ide/">IDE and Tools</a></li>
            <li><a href="https://www.eclipse.org/forums/index.php/f/89/">Newcomer Forum</a></li>
          </ul>
        </div>
      </div>
    </li>
  </ul>
</li>




            </ul>
          </div>
          
<div class="navbar-header">
  
    <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#navbar-main-menu">
      <span class="sr-only">Toggle navigation</span>
      <span class="icon-bar"></span>
      <span class="icon-bar"></span>
      <span class="icon-bar"></span>
      <span class="icon-bar"></span>
    </button>
  
  <div class="wrapper-logo-mobile">
      
      
      

        

      <a class="navbar-brand visible-xs" title="Eclipse Opencert" href="https://www.eclipse.org/opencert/">
        <img width="140" class="logo-eclipse-default-mobile img-responsive" src="/opencert/images/logo.png" alt="Eclipse Opencert" />
      </a>
    
  </div>
</div>

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

  


</header>

  
<section class="default-breadcrumbs hidden-print" id="breadcrumb">
  <div class="container">
    <h3 class="sr-only">Breadcrumb</h3>
    <div class="row">
      <div class="col-sm-24">
        <ol class="breadcrumb">
          
          
          
          
          
          
          <li>
            <a href="https://www.eclipse.org/opencert/">Eclipse OpenCert</a>
          </li>
        
          
          <li>
            <a href="https://www.eclipse.org/opencert/news/">News</a>
          </li>
        
          
          <li class="active">
            <a href="https://www.eclipse.org/opencert/news/2018-06-25-epf-presentation-at-ec-france/">Back From EclipseCon France 2018</a>
          </li>
        
        </ol>
        
      </div>
    </div>
  </div>
</section>

  
  



 
<main>
  <div class="container">
    
      <div class="row">
        <div class="col-md-18 padding-bottom-30">
    

    
      <h1>Back From EclipseCon France 2018</h1>
    
  
  <p>AMASS was present on stage during the plenary session. Atif explains the process to migrate EPF to the latest version of the Eclipse platform.</p>
<p><img src="../../images/201806AtifEclipseConFrance.jpg" alt="Atif at EclipseCon France" title="Atif at EclipseCon France"></p>
<p>At Eclipse France 2018, Muhammad Atif Javed from MDH, explained the whole attendance
the process of migrating Eclipse Process Framework composer to the latest version of Eclipse.</p>
<p>During the second half of 2017, Mälardalen University (MDH), with the help of
the Eclipse Foundation, started an important contribution to the Eclipse Process
Framework project and more specifically to EPF Composer. The project was under
maintenance since 2013, with no new official release since then, and still
running on an old version of the Eclipse platform.</p>
<p>Due to this too old version of the Eclipse platform, it was not possible to
integrate EPF Composer in the AMASS open platform prototype.</p>
<p>MDH stepped up to fix this, and with the help of the Eclipse Foundation,
the AMASS partners started to collaborate with the IBM team which was
maintaining EPF Composer.</p>
<p>After initial contacts, MDH developed a patch to port EPF to Eclipse Neon.
This patch was then tested by the EPF development team before integration.
Later, as MDH designated developer, Muhammad Atif Javed, had proved his ability
to contribute to the project, he was elected as a new committer of the EPF
project in conformance with the principles of meritocracy promoted by the
Eclipse Development Process.</p>
<p>Then, the EPF project team collaborated to create a new release,
which is the one integrated in the AMASS Open Platform.</p>
<p><em>Article by <strong>Gaël Blondelle</strong>, Eclipse Foundation</em></p>

  

     
      
      </div>
        <div class="col-md-6  padding-bottom-30">
          
            


          
        </div>
      </div>
    
  </div>
</main>
  
  
  <div class="featured-footer" id="featured-footer" data-publish-target="eclipse_org">
    <div class="container">
      <div class="row">
        <div class="col-sm-24 featured-container">
        </div>
      </div>
    </div>
  </div>

  
<p id="back-to-top">
  <a class="visible-xs" href="#top">Back to the top</a>
</p>
<footer id="solstice-footer" class="">
  <div class="container">
    <div class="row">
      
      <section class="col-sm-6 hidden-print" id="footer-eclipse-foundation">
  <h2 class="section-title">Eclipse Foundation</h2>
  <ul class="nav">
    <li><a href="https://www.eclipse.org/org/">About Us</a></li>
    <li><a href="https://www.eclipse.org/org/foundation/contact.php">Contact Us</a></li>
    <li><a href="https://www.eclipse.org/donate">Donate</a></li>
    <li><a href="https://www.eclipse.org/membership">Members</a></li>
    <li><a href="https://www.eclipse.org/org/documents/">Governance</a></li>
    <li><a href="https://www.eclipse.org/org/documents/Community_Code_of_Conduct.php">Code of Conduct</a></li>
    <li><a href="https://www.eclipse.org/artwork/">Logo and Artwork</a></li>
    <li><a href="https://www.eclipse.org/org/foundation/directors.php">Board of Directors</a></li>
  </ul>
</section>
<section class="col-sm-6 hidden-print" id="footer-legal">
  <h2 class="section-title">Legal</h2>
  <ul class="nav">
    <li><a href="https://www.eclipse.org/legal/privacy.php">Privacy Policy</a></li>
    <li><a href="https://www.eclipse.org/legal/termsofuse.php">Terms of Use</a></li>
    <li><a href="https://www.eclipse.org/legal/copyright.php">Copyright Agent</a></li>
    <li><a href="https://www.eclipse.org/legal/epl-2.0/">Eclipse Public License</a></li>
    <li><a href="https://www.eclipse.org/legal/">Legal Resources </a></li>
  </ul>
</section>
<section class="col-sm-6 hidden-print" id="footer-useful-links">
  <h2 class="section-title">Useful Links</h2>
  <ul class="nav">
    <li><a href="https://bugs.eclipse.org/bugs/">Report a Bug</a></li>
    <li><a href="//help.eclipse.org/">Documentation</a></li>
    <li><a href="https://www.eclipse.org/contribute/">How to Contribute</a></li>
    <li><a href="https://www.eclipse.org/mail/">Mailing Lists</a></li>
    <li><a href="https://www.eclipse.org/forums/">Forums</a></li>
    <li><a href="//marketplace.eclipse.org">Marketplace</a></li>
  </ul>
</section>
<section class="col-sm-6 hidden-print" id="footer-other">
  <h2 class="section-title">Other</h2>
  <ul class="nav">
    <li><a href="https://www.eclipse.org/ide/">IDE and Tools</a></li>
    <li><a href="https://www.eclipse.org/projects">Projects</a></li>
    <li><a href="https://www.eclipse.org/org/workinggroups/">Working Groups</a></li>
    <li><a href="https://www.eclipse.org/org/research/">Research@Eclipse</a></li>
    <li><a href="https://www.eclipse.org/security/">Report a Vulnerability</a></li>
    <li><a href="https://status.eclipse.org">Service Status</a></li>
  </ul>
</section>
<div class="col-sm-24 margin-top-20">
  <div class="row">
    <div id="copyright" class="col-md-16">
      <p id="copyright-text">Copyright &copy; Eclipse Foundation. All Rights Reserved.</p>
    </div>
    
<div class="col-md-8 social-media">
  <ul class="list-inline">
    <li><a class="social-media-link fa-stack fa-lg" href="https://twitter.com/EclipseFdn"> <i class="fa fa-circle-thin fa-stack-2x"></i> <i
        class="fa fa-twitter fa-stack-1x"></i> <span class="sr-only">Twitter account</span>
    </a></li>
    <li><a class="social-media-link fa-stack fa-lg" href="https://www.facebook.com/eclipse.org"> <i class="fa fa-circle-thin fa-stack-2x"></i> <i
        class="fa fa-facebook fa-stack-1x"></i> <span class="sr-only">Facebook account</span>
    </a></li>
    <li><a class="social-media-link fa-stack fa-lg" href="https://www.youtube.com/user/EclipseFdn"> <i class="fa fa-circle-thin fa-stack-2x"></i> <i
        class="fa fa-youtube fa-stack-1x"></i> <span class="sr-only">Youtube account</span>
    </a></li>
    <li><a class="social-media-link fa-stack fa-lg" href="#ZgotmplZ" title="">
        <i class="fa fa-circle-thin fa-stack-2x"></i> <i class="fa fa-linkedin fa-stack-1x"></i> <span class="sr-only">Linkedin account</span>
    </a></li>
  </ul>
</div>
  </div>
</div>


      
      <a href="#" class="scrollup">Back to the top</a>
    </div>
  </div>
</footer>
  
  

<script src="https://www.eclipse.org/eclipse.org-common/themes/solstice/public/javascript/main.min.js"></script>


    <script src="/opencert/js/solstice.hugo.js"></script>






<script>
(function($, document) {
  
  
  
    $("#featured-story").eclipseFdnApi({
      type: "featuredStory"
    });
  
  
    $("#featured-footer").eclipseFdnApi({
      type: "featuredFooter"
    });
  
})(jQuery, document);
</script>
</body>
</html>

