What is the eclipse process framework
This presentation is the property of its rightful owner.
Sponsored Links
1 / 27

What is the Eclipse Process Framework PowerPoint PPT Presentation


  • 59 Views
  • Uploaded on
  • Presentation posted in: General

What is the Eclipse Process Framework. Agenda. What is Eclipse Process Framework (EPF) OpenUP Overview and Demo EPF Future Vision. What Development Teams Are Facing Today. Article on serialized java beans. Website with Configuration mgmt guidelines. Project plan templates.

Download Presentation

What is the Eclipse Process Framework

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


What is the eclipse process framework

What is the Eclipse Process Framework


Agenda

Agenda

  • What is Eclipse Process Framework (EPF)

  • OpenUP Overview and Demo

  • EPF Future Vision


What development teams are facing today

What Development Teams Are Facing Today

Article on serialized java beans

Website with

Configuration mgmt

guidelines

Project plan

templates

  • 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

Lessons learnt from

previous project and iteration

JUnit user guide

Wiki on agile

development

Latest research on

effectiveness of pair programming

Knowledge base on

managing iterative development

Corporate guidelines

on compliance


A better approach

A Better Approach

Standardize representation and manage libraries of reusable Method Content

Develop and manage Processesfor performing projects

Content on agile

development

JUnit user guidance

Lessons learnt from

previous project and iteration

Process assetspatterns

Content on

managing iterative development

Content on J2EE

Standard or reference processes

Corporate guidelines

on compliance

Configuration mgmt

guidelines

Project plan

templates

Guidance on

serialized java beans

Configurea cohesive process framework

customized for my project needs

Create project plan templates for

Enactmentof process in the context of my project


Eclipse process framework epf project

Eclipse Process Framework (EPF) Project

Serves as a foundation for an evolving open source software development process ecosystem

Provides tooling, a unified metamodel, and content 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


Epf ecosystem

EXTENSIONS

EXTENSIONS

EXTENSIONS

EXTENSIONS

Project Mgmt.

Project Mgmt.

Project Mgmt.

Project Mgmt.

Oper. Mgmt.

Oper. Mgmt.

Oper. Mgmt.

Oper. Mgmt.

Systems Mgmt.

Systems Mgmt.

Systems Mgmt.

Systems Mgmt.

EPF Ecosystem

Inhouse

Inhouse

Inhouse

Inhouse

Free Process

Free Process

Free Process

Free Process

Content

Content

Content

Content

Content

Content

Content

Content

Plug

Plug

-

-

ins

ins

Plug

Plug

-

-

ins

ins

Plug

Plug

-

-

ins

ins

Plug

Plug

-

-

ins

ins

Open Unified Process (OpenUP)

Commercial

Commercial

Commercial

Commercial

OpenUP/

DSDM

OpenUP/

Business Rules

Process

Process

Process

Process

Content

Content

Content

Content

Plug

Plug

-

-

ins

ins

Plug

Plug

-

-

ins

ins

OpenUP

Other agile processes

Basic Unified

Basic Unified

Process

Process

  • DSDM

  • XP

Adapted from RUP

Adapted from RUP

  • AMDD

  • Scrum

Tool

Tool

Tool

Tool

Extensions

Extensions

Extensions

Extensions

Extensible, Customizable, Flexible

Extensible, Customizable, Flexible

TOOLING (Authoring, Publishing)

TOOLING (Authoring, Publishing)

Extensible, Customizable, Flexible

Extensible, Customizable, Flexible

TOOLING (Authoring, Publishing)

TOOLING (Authoring, Publishing)

Common Language & Vocabulary

Common Language & Vocabulary

META MODEL (Unified Method Architecture)

META MODEL (Unified Method Architecture)

Common Language & Vocabulary

Common Language & Vocabulary

META MODEL (Unified Method Architecture)

META MODEL (Unified Method Architecture)

ECLIPSE

ECLIPSE

Open Source Development

Open Source Development

ECLIPSE

ECLIPSE

Open Source Development

Open Source Development


Who uses epf

Produces:

- Base methods

- Plug ins

Requires:

- Realistic consistency

- Viable governance

- Improved ROI

Process Author

Management

Performs:

- Tailoring

- Publishing

- Support

- Training

Provides:

- Training

- Consulting

- Mentoring

- Adoption services

Service Provider

Process Coach

Needs:

- Teachable material

- Teach process development

- Use in student projects

- Bring research to mainstream

Wants to:

- Build tools

- Sell tools

- Sell services

Professional

Tool Provider

Academia

Who Uses EPF?

Desires:

- Simplicity

- Templates

- Examples

- Guidance


Epf growing ecosystem

EPF: Growing Ecosystem

Co-developers

Supporters


Epf community growing everyday

EPF Community – growing everyday!

  • 27 committers from 11 organizations

  • +1,000 downloads per week

  • Committer and Supporter Meetings

    • Over 80 people attended the 5 face-to-face meetings from 20 organizations and 9 countries

    • Weekly conference calls for various component teams

  • Press Stories

    • +100 mentioning

  • Newsgroup postings

    • Good interest in the newsgroups – 30 – 40 posts each month.

    • Developer email list – over 30 posts each DAY

  • EPF v1.0 Release date – September 2006


Example work in progress

Example Work-in-Progress

  • Process

    • OpenUP

      • OpenUP/Basic – evolved by ~10 organizations

      • Model-Driven Architecture – ESI, Capgemini, IBM, …

      • Value-Based Software Engineering – University Southern California

    • Agile

      • DSDM Consortium - DSDM

      • Agile modeling – Scott Ambler

      • eXtreme Programming – Object Mentor / IBM

      • Scrum – Catalysts

      • APM – Catalysts / Highsmith

    • OPEN Process Framework - Contribution pending for OPFRO

  • Tool

    • XML schema

    • Proposed set of APIs

    • Export to Microsoft Project


Agenda1

Agenda

  • What is Eclipse Process Framework (EPF)

  • OpenUP Overview and Demo

  • EPF Future Vision


What is a method framework

A framework is based on a common set of principles

A Method Framework

JUnit

Contains any number of extension plug-ins

  • Adds additional processes or modifies existing processes

  • Adds additional method content

J2EE

DistributedDevelopment

Contains a base of standard content

  • Base content (principles, practices, roles, work products, tasks, …)

  • Optionally a base process (lifecycle)

Base

What Is a Method Framework?

  • All pieces within a framework fits together

  • Enables rapid assembly of a diverse set of processes

  • A process framework can contain sub frameworks


What is the open unified process openup

What Is the Open Unified Process (OpenUP)

  • A process framework united by a set of core principles

    • Application of an iterative lifecycle that mitigates risk early and often, and shows results early and often

    • Focus on the collaboration within a development team including the product stakeholders to maximize results

    • Management of requirements in a form that represents stakeholder value and drives the development process

    • Cognizance of architecture as a means to increase quality and technical understandability

  • OpenUP consists of

    • A base process - OpenUP/Basic

    • Extensions to this base process, such as MDA content


What is openup basic

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


What is the eclipse process framework

Demo


Core principles iterative lifecycle

Core Principles: Iterative Lifecycle

  • Unified Process Lifecycle – Inception, Elaboration, Construction, Transition

  • Work item list – a list of all things to potentially work on. Work items references use cases and other artifacts for details.

  • Project plan – a high-level plan briefly outlining expected resource needs and results from each iteration.

  • Iteration plan – Created at the beginning of each iteration – team defines what subset of work items to work on.

  • Status Assessment - At end of each iteration, the team assess what works well, and determines how they can improve.


Core principle collaboration

Core Principle: Collaboration

  • Collaborative practices

    • Share the dream (Vision, architecture, …)

    • Buddy up (Adjacent programming, ying-yang buddies)

    • Tear down the wall (Daily team meetings, collocation, customer representative ,…)

    • High-trust environments

  • Tasks performed by multiple roles

    • primary performer + additional performers

    • Some examples

      • Assess Results (Project Manager + Stakeholders + team)

      • Initiate Iteration (Project Manager + team)

        • PM could either assign or ask people to volunteer for work

  • Expecting more community contributions in this area


Core principle requirements

Core Principle: Requirements

  • Management of requirements in a form that represents stakeholder value and drives the development process

  • Work item list contains a list of all types of requirements

  • Functional requirements are expressed as Use Cases or Scenarios

  • For iteration planning purposes, requirements need to be narrow enough to map to a few days or weeks work


Core principle architecture

Core Principle: Architecture

  • Architecture promotes re-use and maintenance tasks, enhances intellectual control, and avoids technical risks

  • Architecture must not be an afterthought

  • A key differentiator compared to many other agile processes

  • Architectures needs to be grown, start small and grow it


Agenda2

Agenda

  • What is Eclipse Process Framework (EPF)

  • OpenUP Overview and Demo

  • EPF Future Vision


Several frameworks increasingly shared content

Consolidated Agile Framework

OPEN Process

Framework

OpenUP

Collaborative Practices

Agile ProjectMgmt

Several Frameworks – Increasingly Shared Content

Use Case

Refactoring

Network

Design


Innovation process adaptability and extensibility

Today

Plug-ins focusing on specific areas of concerns (compare aspect)

Size / complexity, formality, technology / technique, industry vertical, …

Practices can specify a slice of process

Currently not used much (see PPM09: Incremental Adoption of RUP and OpenUP)

Customize by choosing

A set of plug-ins and method packages

Modify out-of-the-box delivery processes

Tomorrow

Plug-ins can extend many different base processes

Using interface / port technology (ref: Kirti Vaidya, Covansys)

Practices to be used to chunk up process into adoptable slices

Customize by choosing

Practices or plug-ins and method packages

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

Innovation: Process Adaptability and Extensibility


Innovation presentation and technology

Today

HTML pages

Process advisor (not a part of EPF)

Tomorrow

Automate the process through workflow and rules-based technologies (guides, wizards, intelligent agents, …)

Game metaphor (ref Ivar Jacobson’s presentation on Moving to a Next Generation Process).

Rule Book

Finish here

Start here

Essential Practices

Booster

Practices

Game Board

Innovation: Presentation and Technology


Innovation community and process

Innovation: Community and Process

  • Involve practitioners and increase the value of the process experience

    • Wiki – collective authoring by the team, continuous process improvement

    • Integrate discussion and other collaboration technology with process guidance


Summary

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 +10 organizations

    • Constitutes an open source kernel of RMC

  • OpenUP

    • A open source implementation of the Unified Process

    • A method framework built with OpenUP/Basic as a base

    • OpenUP/Basic is an iterative software development process that is minimal, complete, and extensible


What is the eclipse process framework

Questions


What is the eclipse process framework

Thank You


  • Login