Introducing the Framework www.eclipse.org/epf

Peter Haumer [email protected]

EPF Project Committer

© 2006; made available under the EPL v1.0 What Development Teams Are Facing Today

Project plan Article on serialized Website with templates beans Configuration mgmt guidelines Book on J2EE Lessons learnt from JUnit user guide previous project and iteration

Wiki on agile Latest research on development effectiveness of pair programming

Knowledge base on Corporate guidelines managing iterative development on compliance

ƒ No common language or terminology between processes - redundancy and inconsistencies ƒ Knowledge cannot easily be customized for different projects or new best practices ƒ No central community or communication framework to facilitate convergence of best practices across domains

2 Introducing the Eclipse Process Framework | © 2006 made available under the EPL v1.0 A better approach Standardize representation and manage libraries Develop and manage processes of reusable method content for performing projects

Content on agile JUnit user Lessons learnt from Process assets development guidance previous project and patterns iteration Content on Content Standard or managing on J2EE reference processes iterative development Corporate Configuration guidelines Project plan Guidance on mgmt on compliance templates serialized java beans guidelines

Cohesive Web site customized for my project needs

Project plan templates and optional process instrumentation, relevant for the context of my project

3 Introducing the Eclipse Process Framework | © 2006 made available under the EPL v1.0 Eclipse Process Framework Project Goals

ƒ Provide an extensible framework and exemplary tools and content for software process engineering ƒ Extensible Framework ƒ Meta-model based on OMG SPEM ƒ Core extensible process tooling framework ƒ Exemplary and extensible tools ƒ Method and Process authoring ƒ Library management and content extensibility ƒ Configuring and publishing ƒ Exemplary and extensible process content ƒ Range of software development and management processes supporting ƒ iterative, agile, and incremental development ƒ applicable to a broad set of development platforms and applications

4 Introducing the Eclipse Process Framework | © 2006 made available under the EPL v1.0 Value to the industry ƒ Converge industry process investments through a common process framework

ƒ Broadly endorsable and will bring diverse process champions together

ƒ A foundation for the industry to engineer, communicate and reuse process assets

ƒ Tools, metamodel and core content for seeding an ecosystem ƒ More reuse, more industry reach, more process/tool integration

5 Introducing the Eclipse Process Framework | © 2006 made available under the EPL v1.0 Manage textual IC and reusable method content. EPF Composer

IC / Best Practices

Books / Publications

Standards / Regulations

Homegrown Methods

6 Introducing the Eclipse Process Framework | © 2006 made available under the EPL v1.0 Easy to use, form-based rich-text editing capabilities.

7 Introducing the Eclipse Process Framework | © 2006 made available under the EPL v1.0 Assemble processes by with reusable method content and process patterns. Consistent management of WBS and Activity diagrams.

Workflow

Workflow

Breakdown / Iterations / Increments / Sprints / Waterfall

8 Introducing the Eclipse Process Framework | © 2006 made available under the EPL v1.0 BUP applying four RUP phases lifecycle model

BUP specific management approach

Scrum-like process with a lifecycle model using Sprints

Scrum specific management approach

Capability Pattern reused from BUP method plug-in

9 Introducing the Eclipse Process Framework | © 2006 made available under the EPL v1.0 Eclipse Process Framework Conceptual Architecture

Commercial EXTENSIONS Process Key: • Project Mgmt. Content Proposed IBM Contribution • Oper. Mgmt. Plug-ins

Proposed Object Mentor • Systems Mgmt. User-defined Content EPL Process Plug-ins Content Plug-ins Basic Unified Agile/XP Process Adapted from RUP

Tool Extensions Extensible, Customizable, Flexible TOOLING (Authoring, Publishing)

Common Language & Vocabulary META MODEL IMPL. (Unified Method Architecture)

Open Source Development ECLIPSE

10 Introducing the Eclipse Process Framework | © 2006 made available under the EPL v1.0 Beacon/RMC Runtime Architecture

Presentation Authoring UI Browsing UI Layer

Library Publishing UMA Edit Service Service

Business Layer

Library UMA Model Persistence

Infrastructure UMA Ecore EMF Layer Extension

Data Layer Method Library Repository

11 Introducing the Eclipse Process Framework | © 2006 made available under the EPL v1.0 High-Level Architecture

Authoring Browsing Publishing Export Import

Diagramming Library Management Application Workbench

Rich Text UMA Service Search Common

JTidy EMF GEF

WST Common Lucene Eclipse RCP Runtime Properties UI

Java Runtime

EPF tool components Eclipse components Other open source components Sun/IBM JRE

12 Introducing the Eclipse Process Framework | © 2006 made available under the EPL v1.0 Technology Stack

ƒ Eclipse Rich Platform (RCP) 3.1 ƒ Eclipse Modeling Framework (EMF) 2.1 ƒ XML Meta Interchange (XMI) 2.0 ƒ Extensible Stylesheet Language Transformation (XSLT) 1.0 ƒ XML Localization Interchange File Format (XLIFF) 1.0 ƒ UML 2.0 Diagram Interchange Specification ƒ Graphical Editing Framework (GEF) 3.1 ƒ Java2D ƒ Eclipse Forms ƒ DHTML (HTML, JavaScript, DOM & CSS) ƒ W3C JTidy ƒ Apache Lucene ƒ Java

13 Introducing the Eclipse Process Framework | © 2006 made available under the EPL v1.0 Industry Support

ƒ IBM ƒ Object Mentor ƒ 2-Pro Mentor ƒ SOFTEAM ƒ Adaptive ƒ University of British Columbia ƒ Ambysoft ƒ aubryConseil ƒ Armstrong Process Group ƒ European Software Institute ƒ BearingPoint ƒ Jaczone ƒ Bedarra Research Labs ƒ NTT Comware ƒ Object Management Group ƒ Capgemini (OMG) ƒ Catalysts ƒ Osellus ƒ Covansys ƒ Sogeti ƒ Ivar Jacobson ƒ Telelogic International ƒ Unisys ƒ Number Six Software ƒ Wind River

14 Introducing the Eclipse Process Framework | © 2006 made available under the EPL v1.0 EPF Project Structure

Technology

……EPF

Project Lead

Subsystems

UP Agile Tool/Meta-Model

15 Introducing the Eclipse Process Framework | © 2006 made available under the EPL v1.0 EPF Project Timeline

• Announcement (Oct 12) • Creation Review EPF v1.5 (Q207) • Proposal posted on (Dec 21) Eclipse Web site (Oct 25)

2005 2006 2007

EPF v1.0 (2H06) • Project creation (Jan) • Updated based on community • Contribution of feedback •parts of RMC tooling • Basic Unified Process •~15% of RUP content • XP / Scrum process • Initiation of open source project •Eclipse 3.2 • Committers face-to-face meeting • APIs •SPEM 2.0

16 Introducing the Eclipse Process Framework | © 2006 made available under the EPL v1.0