made available under epl v1.01 eclipse process framework – open source initiative per kroll mgr....

42
Made available under EPL v1.0 1 Eclipse Process Framework – Open Source Initiative Per Kroll Mgr. of Methods / EPF Project Lead IBM [email protected]

Upload: sarina-lawrence

Post on 31-Mar-2015

215 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Made available under EPL v1.01 Eclipse Process Framework – Open Source Initiative Per Kroll Mgr. of Methods / EPF Project Lead IBM pkroll@us.ibm.com

Made available under EPL v1.0 1

Eclipse Process Framework – Open Source Initiative

Per KrollMgr. of Methods / EPF Project Lead

[email protected]

Page 2: Made available under EPL v1.01 Eclipse Process Framework – Open Source Initiative Per Kroll Mgr. of Methods / EPF Project Lead IBM pkroll@us.ibm.com

Made available under EPL v1.0 2

Per Kroll - Background

• Project lead – Eclipse Process Framework

• Development Manager – RUP / Rational Method Composer

• Process Technology Strategist – IBM Rational

• (Co-) Author of – The Rational Unified Process

Made Easy – A Practitioner’s Guide to RUP

– Agility and Discipline Made Easy – Practices from OpenUP and RUP

Page 3: Made available under EPL v1.01 Eclipse Process Framework – Open Source Initiative Per Kroll Mgr. of Methods / EPF Project Lead IBM pkroll@us.ibm.com

Made available under EPL v1.0 3

Agenda

• What is EPF?• EPF Composer• OpenUP• Other agile methods• EPF and Wikis• Futures• Summary

Page 4: Made available under EPL v1.01 Eclipse Process Framework – Open Source Initiative Per Kroll Mgr. of Methods / EPF Project Lead IBM pkroll@us.ibm.com

Made available under EPL v1.0 4

What Development Teams Are Facing Today

• 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

Book on J2EE

Article on serialized java beans

Website with Configuration mgmtguidelines

Lessons learnt from previous project and iteration

Knowledge base onmanaging iterative development

Corporate guidelineson compliance

Wiki on agile development

JUnit user guide

Latest research on effectiveness of pair programming

Project plantemplates

Page 5: Made available under EPL v1.01 Eclipse Process Framework – Open Source Initiative Per Kroll Mgr. of Methods / EPF Project Lead IBM pkroll@us.ibm.com

Made available under EPL v1.0 5

A Better Approach

Project plantemplates

Lessons learnt from previous project and

iterationContent onmanaging

iterative developmentCorporate guidelines

on compliance

Content on agile development

JUnit user guidance

Content on J2EE

Configure a cohesive process frameworkcustomized for my project needs

Create project plan templates for Enactment of process in the context of my project

Standardize representation and

manage libraries of reusable Method Content

Develop and manage Processesfor performing projects

Process assetspatterns

Standard or reference processes

Guidance on serialized java beans

Configuration mgmtguidelines

Page 6: Made available under EPL v1.01 Eclipse Process Framework – Open Source Initiative Per Kroll Mgr. of Methods / EPF Project Lead IBM pkroll@us.ibm.com

Made available under EPL v1.0 6

Eclipse Process Framework (EPF) Project

Provide an open and collaborative ecosystem for evolving software development processes

Provide sample practices, process tooling and a metamodel, that can be used as the foundation for a large variety of processes to address IT needs

Uses the Eclipse community to gain wide acceptance of the framework

Page 7: Made available under EPL v1.01 Eclipse Process Framework – Open Source Initiative Per Kroll Mgr. of Methods / EPF Project Lead IBM pkroll@us.ibm.com

Made available under EPL v1.0 7

EPF Ecosystem

TOOLING (Authoring, Publishing) TOOLING (Authoring, Publishing)

Free Process

Content

Plug-ins

Free Process

Content

Plug-ins

META MODEL (Unified Method Architecture)META MODEL (Unified Method Architecture)

ECLIPSEECLIPSE

Commercial

Process

Content

Plug-ins

Commercial

Process

Content

Plug-ins

Tool Extensions

Tool Extensions

Extensible, Customizable, FlexibleExtensible, Customizable, Flexible

Common Language & VocabularyCommon Language & Vocabulary

Open Source DevelopmentOpen Source Development

Inhouse

Content

Plug-ins

Inhouse

Content

Plug-ins

Basic Unified Process

Adapted from RUP

Basic Unified Process

Adapted from RUP

TOOLING (Authoring, Publishing) TOOLING (Authoring, Publishing)

Free Process

Content

Plug-ins

Free Process

Content

Plug-ins

META MODEL (Unified Method Architecture)META MODEL (Unified Method Architecture)

ECLIPSEECLIPSE

Commercial

Process

Content

Plug-ins

Commercial

Process

Content

Plug-ins

Tool Extensions

Tool Extensions

Extensible, Customizable, FlexibleExtensible, Customizable, Flexible

Common Language & VocabularyCommon Language & Vocabulary

Open Source DevelopmentOpen Source Development

EXTENSIONS

• Project Mgmt.

• Oper. Mgmt.

• Systems Mgmt.

EXTENSIONS

• Project Mgmt.

• Oper. Mgmt.

• Systems Mgmt.

EXTENSIONS

• Project Mgmt.

• Oper. Mgmt.

• Systems Mgmt.

EXTENSIONS

• Project Mgmt.

• Oper. Mgmt.

• Systems Mgmt.

Inhouse

Content

Plug-ins

Inhouse

Content

Plug-ins

OpenUP

OpenUP/

DSDM

OpenUP/

DSDM

OpenUP/

Business Rules

OpenUP/

Business Rules

Open Unified Process (OpenUP)

• XP

• Scrum

Other agile processes

• DSDM

• AMDD

Page 8: Made available under EPL v1.01 Eclipse Process Framework – Open Source Initiative Per Kroll Mgr. of Methods / EPF Project Lead IBM pkroll@us.ibm.com

Made available under EPL v1.0 8

Professional

Desires: - Simplicity - Templates - Examples - Guidance

Who Uses EPF?

Process Author

Produces: - Base methods - Plug ins

Management

Requires: - Realistic consistency - Viable governance - Improved ROI

Service Provider

Provides: - Training - Consulting - Mentoring - Adoption services

Wants to: - Build tools - Sell tools - Sell services

Tool Provider

Needs: - Teachable material - Teach process development - Use in student projects - Bring research to mainstream

Academia

Process Coach

Performs: - Tailoring - Publishing - Support - Training

Page 9: Made available under EPL v1.01 Eclipse Process Framework – Open Source Initiative Per Kroll Mgr. of Methods / EPF Project Lead IBM pkroll@us.ibm.com

Made available under EPL v1.0 9

EPF: Growing EcosystemCo-developers

Supporters

Page 10: Made available under EPL v1.01 Eclipse Process Framework – Open Source Initiative Per Kroll Mgr. of Methods / EPF Project Lead IBM pkroll@us.ibm.com

Made available under EPL v1.0 10

Why Should Agile Community Care About EPF?

• Facilitate development of a consolidated agile framework– Let the community evolve content to reflect what works

– Combine the best from different processes

• Make agile development mainstream in large organizations– Documented and auditable processes

– Powerful delivery platform

– Large organizations participating in EPF provides assurance

• Move from big documented processes to ‘instrumented’ micro-processes– Intelligent and non-intrusive process facilitation (compare Java

Developer Tools Quick-fix)

Page 11: Made available under EPL v1.01 Eclipse Process Framework – Open Source Initiative Per Kroll Mgr. of Methods / EPF Project Lead IBM pkroll@us.ibm.com

Made available under EPL v1.0 11

Agenda

• What is EPF?• EPF Composer• OpenUP• Other agile methods• EPF and Wikis• Futures• Summary

Page 12: Made available under EPL v1.01 Eclipse Process Framework – Open Source Initiative Per Kroll Mgr. of Methods / EPF Project Lead IBM pkroll@us.ibm.com

Made available under EPL v1.0 12

EPF Composer Capabilities

• Create reusable method content– Roles, tasks, artifacts, guidelines, examples,

templates

• Create reusable process patterns– E.g. design, implement and test a scenario

• Create processes for different project types• Create derivative method content and processes• Upgrade to new baseline of method content and

processes• Integration: XML, MS Project, API, …

Page 13: Made available under EPL v1.01 Eclipse Process Framework – Open Source Initiative Per Kroll Mgr. of Methods / EPF Project Lead IBM pkroll@us.ibm.com

Made available under EPL v1.0 13

IC / Best Practices

Books / Publications

Standards / Regulations

Homegrown Methods

Manage textual IC and reusable method content.

Page 14: Made available under EPL v1.01 Eclipse Process Framework – Open Source Initiative Per Kroll Mgr. of Methods / EPF Project Lead IBM pkroll@us.ibm.com

Made available under EPL v1.0 14

Easy to use, form-basedrich-text editing capabilities.

Page 15: Made available under EPL v1.01 Eclipse Process Framework – Open Source Initiative Per Kroll Mgr. of Methods / EPF Project Lead IBM pkroll@us.ibm.com

Made available under EPL v1.0 15

Workflow

Breakdown / Iterations / Increments / Sprints / Waterfall

Workflow

Assemble processes with reusable method content and process patterns. Consistent management of WBS and Activity diagrams.

Page 16: Made available under EPL v1.01 Eclipse Process Framework – Open Source Initiative Per Kroll Mgr. of Methods / EPF Project Lead IBM pkroll@us.ibm.com

Made available under EPL v1.0 16

OpenUP applying four RUP phases lifecycle model

Scrum-like process with a lifecycle model using Sprints

Capability Pattern reused from OpenUP method plug-in

OpenUP specific management approach

Scrum specific management approach

Page 17: Made available under EPL v1.01 Eclipse Process Framework – Open Source Initiative Per Kroll Mgr. of Methods / EPF Project Lead IBM pkroll@us.ibm.com

Made available under EPL v1.0 17

Demo• Create a new plug-in• Create a new task (prototype UI) and an artifact

(UI interface)• Add new task to existing capability pattern• View end-to-end (delivery) process• View results

Page 18: Made available under EPL v1.01 Eclipse Process Framework – Open Source Initiative Per Kroll Mgr. of Methods / EPF Project Lead IBM pkroll@us.ibm.com

Made available under EPL v1.0 18

Agenda

• What is EPF?• EPF Composer• OpenUP• Other agile methods• EPF and Wikis• Futures• Summary

Page 19: Made available under EPL v1.01 Eclipse Process Framework – Open Source Initiative Per Kroll Mgr. of Methods / EPF Project Lead IBM pkroll@us.ibm.com

Made available under EPL v1.0 19

What Is OpenUP/Basic?

An iterative software development process that is minimal, complete, and extensible.

• Minimal - only fundamental content is included • Complete - can be manifested as an entire process to build a system • Extensible - can be used as a foundation on which process content

can be added or tailored as needed

Page 20: Made available under EPL v1.01 Eclipse Process Framework – Open Source Initiative Per Kroll Mgr. of Methods / EPF Project Lead IBM pkroll@us.ibm.com

Made available under EPL v1.0 20

penUP

Analyst

Stakeholder

Project Manager

Architect

Developer

Tester

Page 21: Made available under EPL v1.01 Eclipse Process Framework – Open Source Initiative Per Kroll Mgr. of Methods / EPF Project Lead IBM pkroll@us.ibm.com

Made available under EPL v1.0 21

penUP

Analyst

Stakeholder

Project Manager

Architect

Developer

Tester

Page 22: Made available under EPL v1.01 Eclipse Process Framework – Open Source Initiative Per Kroll Mgr. of Methods / EPF Project Lead IBM pkroll@us.ibm.com

Made available under EPL v1.0 22

penUP

Analyst

Stakeholder

Project Manager

Architect

Developer

Tester

Page 23: Made available under EPL v1.01 Eclipse Process Framework – Open Source Initiative Per Kroll Mgr. of Methods / EPF Project Lead IBM pkroll@us.ibm.com

Made available under EPL v1.0 23

penUP

Analyst

Stakeholder

Project Manager

Architect

Developer

Tester

Page 24: Made available under EPL v1.01 Eclipse Process Framework – Open Source Initiative Per Kroll Mgr. of Methods / EPF Project Lead IBM pkroll@us.ibm.com

Made available under EPL v1.0 24

penUP

Analyst

Stakeholder

Project Manager

Architect

Developer

Tester

Page 25: Made available under EPL v1.01 Eclipse Process Framework – Open Source Initiative Per Kroll Mgr. of Methods / EPF Project Lead IBM pkroll@us.ibm.com

Made available under EPL v1.0 25

penUP

Analyst

Stakeholder

Project Manager

Architect

Developer

Tester

Page 26: Made available under EPL v1.01 Eclipse Process Framework – Open Source Initiative Per Kroll Mgr. of Methods / EPF Project Lead IBM pkroll@us.ibm.com

Made available under EPL v1.0 26

Agenda

• What is EPF?• EPF Composer• OpenUP• Other agile methods• EPF and Wikis• Futures• Summary

Page 27: Made available under EPL v1.01 Eclipse Process Framework – Open Source Initiative Per Kroll Mgr. of Methods / EPF Project Lead IBM pkroll@us.ibm.com

Made available under EPL v1.0 27

Other Agile Methods in the Works• XP

– Developed by Object Mentor, with technical assistance from IBM. Awaiting IP due diligence.

• Scrum– Work in progress by Catalysts and others

• AMDD – Scott Ambler in process of developing

• DSDM – DSDM Consortium will donate subset of DSDM

• Essential Unified Process (EssUP)– Ivar Jacobson International will contribute to EPF

• Consolidated agile framework– Jim Highsmith and Mike Cohn have expressed interest

Page 28: Made available under EPL v1.01 Eclipse Process Framework – Open Source Initiative Per Kroll Mgr. of Methods / EPF Project Lead IBM pkroll@us.ibm.com

Made available under EPL v1.0 28

Agenda

• What is EPF?• EPF Composer• OpenUP• Other agile methods• EPF and Wikis• Futures• Summary

Page 29: Made available under EPL v1.01 Eclipse Process Framework – Open Source Initiative Per Kroll Mgr. of Methods / EPF Project Lead IBM pkroll@us.ibm.com

Made available under EPL v1.0 29

EPF and Wiki TechnologyTr

aditi

onal

pro

cess

mis

sion

Mandatory

Milestones and key artifacts

Guidance (Built from tasks, guidelines, artifacts, examples, templates, ….)

Principles & practices

Tacit Knowledge Emerging practices …H

arvesting best practices

EP

F C

ompo

ser

Wik

i …

Page 30: Made available under EPL v1.01 Eclipse Process Framework – Open Source Initiative Per Kroll Mgr. of Methods / EPF Project Lead IBM pkroll@us.ibm.com

Made available under EPL v1.0 30

Opportunities with Wiki

1. Rapidly gather useful feedback by writing comments associated around content (lock content from editing)

2. Build communities around key content areas (lock editing to be centered around dedicated topics)

3. Rapidly gather useful feedback by directly editing process content

4. Improve process content without learning the metamodel or Composer

5. Capture process related experiences through harvesting

Page 31: Made available under EPL v1.01 Eclipse Process Framework – Open Source Initiative Per Kroll Mgr. of Methods / EPF Project Lead IBM pkroll@us.ibm.com

Made available under EPL v1.0 31

Current Status

• LogicaCMG is investigating whether to donate working solution

• Some technical issues needs to be resolved, such as usage of commercial components, etc.

• Meanwhile, LogicaCMG is hosting OpenUP on a trial site so people can try out the technology

Page 32: Made available under EPL v1.01 Eclipse Process Framework – Open Source Initiative Per Kroll Mgr. of Methods / EPF Project Lead IBM pkroll@us.ibm.com

Made available under EPL v1.0 32

Demo• Create a comment• Edit page• Review changes

Page 33: Made available under EPL v1.01 Eclipse Process Framework – Open Source Initiative Per Kroll Mgr. of Methods / EPF Project Lead IBM pkroll@us.ibm.com

Made available under EPL v1.0 33

Agenda

• What is EPF?• EPF Composer• OpenUP• Other agile methods• EPF and Wikis• Futures• Summary

Page 34: Made available under EPL v1.01 Eclipse Process Framework – Open Source Initiative Per Kroll Mgr. of Methods / EPF Project Lead IBM pkroll@us.ibm.com

Made available under EPL v1.0 34

“Open Source is not about Free. It's about Freedom. The freedom to collaborate.

The freedom to innovate.”

“Open source gives more people access to the building blocks of innovation, enabling diverse perspectives and influences to be

integrated into the creative process.

Innovation

Nick DonofrioSr. VP, Technology&Manufacturing, IBM

At LinuxWorld August, 2004

Page 35: Made available under EPL v1.01 Eclipse Process Framework – Open Source Initiative Per Kroll Mgr. of Methods / EPF Project Lead IBM pkroll@us.ibm.com

Made available under EPL v1.0 35

Several Frameworks – Increasingly Shared Content

Consolidated Agile Framework

OPEN ProcessFramework

OpenUP

Refactoring

Use CaseCollaborative Practices

Agile ProjectMgmt

Network Design

Page 36: Made available under EPL v1.01 Eclipse Process Framework – Open Source Initiative Per Kroll Mgr. of Methods / EPF Project Lead IBM pkroll@us.ibm.com

Made available under EPL v1.0 36

Innovation: Process Adaptability and Extensibility• Plug-ins can extend many different base processes

– Using interface / port technology (ref: Kirti Vaidya, Covansys)– Example usage: Add UI content that can be added to XP or

OpenUP

• Practices to be used to chunk up process into adoptable slices

• Wizards to customize the process, and to create an initial project plan

Page 37: Made available under EPL v1.01 Eclipse Process Framework – Open Source Initiative Per Kroll Mgr. of Methods / EPF Project Lead IBM pkroll@us.ibm.com

Made available under EPL v1.0 37

Innovation: Presentation and Technology

Today• HTML pages

Tomorrow• Automate the process through

workflow and rules-based technologies (guides, wizards, intelligent agents, …)

• Game metaphor.

Booster Practices

Essential Practices

Sta

rt h

ere

Fin

ish

her

e

Game Board

Rule Book

Page 38: Made available under EPL v1.01 Eclipse Process Framework – Open Source Initiative Per Kroll Mgr. of Methods / EPF Project Lead IBM pkroll@us.ibm.com

Made available under EPL v1.0 38

Agenda

• What is EPF?• EPF Composer• OpenUP• Other agile methods• EPF and Wikis• Futures• Summary

Page 39: Made available under EPL v1.01 Eclipse Process Framework – Open Source Initiative Per Kroll Mgr. of Methods / EPF Project Lead IBM pkroll@us.ibm.com

Made available under EPL v1.0 39

For More Information

• Eclipse Process Framework (EPF) information– http://www.eclipse.org/epf/– See right column for Getting Started, Newsgroup, Developers Mail List, etc

• Articles in Rational Edge, www.therationaledge.com– DeveloperWorks: The Eclipse Process Framework Project, Kroll,

http://www.ibm.com/developerworks/rational/library/05/1011_kroll/– Eclipse Review: A Development Library at your Fingertips, Kroll and Sand,

http://www.eclipsereview.com/retrieve/er_200609.htm – Rational Edge: Eclipse Process Framework Composer - Part 1: Key Concepts,

Haumer, http://www.eclipse.org/epf/general/EPFComposerOverviewPart1.pdf– Rational Edge: Eclipse Process Framework Composer - Part 2: Authoring

Method Content and Processes, Haumer, http://www.eclipse.org/epf/general/EPFComposerOverviewPart2.pdf

• Books– Per Kroll and Bruce MacIsaac, Agility and Discipline Made Easy—Practices from

OpenUP and RUP, Addision-Wesley (2006)

Page 40: Made available under EPL v1.01 Eclipse Process Framework – Open Source Initiative Per Kroll Mgr. of Methods / EPF Project Lead IBM pkroll@us.ibm.com

Made available under EPL v1.0 40

Summary

• Eclipse Process Framework (EPF)– An eclipse open source project serving as the foundation for a

process ecosystem– Extensible tooling, metamodel, and content organized in several

different method frameworks– Developed by a growing ecosystem of +20 organizations

• OpenUP– A open source implementation of the Unified Process– OpenUP/Basic - An iterative software development process that is

minimal, complete, and extensible

• Consolidated Agile Framework– A number of agile practice leaders are putting their know-how into

EPF

Page 41: Made available under EPL v1.01 Eclipse Process Framework – Open Source Initiative Per Kroll Mgr. of Methods / EPF Project Lead IBM pkroll@us.ibm.com

Made available under EPL v1.0 41

Questions?

??

?

?

?

?

?

?

Page 42: Made available under EPL v1.01 Eclipse Process Framework – Open Source Initiative Per Kroll Mgr. of Methods / EPF Project Lead IBM pkroll@us.ibm.com

Made available under EPL v1.0 42