The Eclipse Process Framework - PowerPoint PPT Presentation

About This Presentation
Title:

The Eclipse Process Framework

Description:

The Eclipse Process Framework Breno Machado * SPEM defines the elements used in describing a process as well as elements used for structuring and managing this ... – PowerPoint PPT presentation

Number of Views:264
Avg rating:3.0/5.0
Slides: 31
Provided by: Jacq149
Category:

less

Transcript and Presenter's Notes

Title: The Eclipse Process Framework


1
The Eclipse Process Framework
  • Breno Machado

2
The Eclipse Process Framework
  • EPF is an Open Source project within the Eclipse
    Foundation
  • Goals
  • An extensible framework and tooling for
    authoring, configuring and publishing processes
  • Exemplary Process first delivered is OpenUP
  • EPF is NOT
  • Only applicable for Eclipse Java development.
  • Intended to create the perfect process
  • EPF is based in SPEM 2.0 (Software Process
    Engineering Metamodel)

3
The Eclipse Process Framework
  • EPF is for two audiences
  • Process Authors and Coaches (Process Management
    Team)
  • Tooling for creating and publishing processes
  • Foundational process for starting point
  • Libraries of additional content that can be
    plugged-in
  • Process Consumers (Project Team)
  • Published website of process content for simple
    browsing
  • Guidance in the form of checklists, concepts,
    guidelines
  • Browse the content adapted to your experience
    level

4
Basic Concepts - EPF
  • Method Library
  • All Method Elements are stored in a Method
    Library
  • Method Plug-in
  • Physical container for Method Packages and
    Process Packages
  • Method Configuration
  • A logical subset of a Method Library
  • Delivery Process
  • A complete and integrated approach for performing
    a specific type of project

5
Basic Concepts - EPF
  • Libraries contain
  • Method plug-ins
  • Configurations
  • The OpenUP library has
  • Three method plug-ins
  • base_concepts
  • dsdm_openup
  • openup
  • Two delivery processes
  • Openup_DSDM
  • openup_lifecycle
  • Two configurations
  • OpenUP
  • OpenUPDSDM

6
Basic Concepts - EPF
  • Process (When)
  • End-End sequence of Phases, Iterations,
    Activities and Milestones that define the
    development lifecycle.
  • Defines When tasks are performed via Activity
    Diagrams and/or Work Breakdown Structures
  • Method Content (Who, What, Why, How)
  • Highly re-useable information
  • Definition of Roles, Tasks, Work Products and
    associated relationships
  • Includes Guidance and Categories
  • No timing information

7
Method Content - EPF
  • Role
  • Set of related skills, competencies and
    responsabilities
  • Are NOT individuals
  • Individuals may play multiple roles
  • Perform Tasks
  • Are responsible for Work Products
  • Work Product
  • Tangible things used, modified or produced by a
    Task
  • Roles use and produce Work Product performing
    tasks
  • Are responsability of a Role
  • 3 types
  • Artifact
  • Deliverable
  • Outcome
  • Task
  • Define a assignable unit of work
  • Perfomed by Roles
  • Describe a work step-by-step to achieve a goal.
  • Modify or produce Work Products
  • Dont define WHEN they are performed in the
    lifecicle.

8
Method Content - EPF
  • Guidance
  • May be associate with Roles, Tasks and Work
    Products
  • Different types depending upon purpose
  • Detailed methodology and supporting information
  • Tasks say what
  • Guidance say how-to
  • Categories
  • Group related method elements
  • Five Standard Categories
  • Discipline
  • Domain
  • Work Product Kind
  • Role Set
  • Tool
  • May be nested
  • Can define custom categories
  • Used to build views in published website
  • Types
  • Checklist
  • Concept
  • Example
  • Guideline
  • Estimate
  • Considerations
  • Practice
  • Report
  • Reusable Asset
  • Roadmap
  • Supporting Material
  • Template
  • Term Definition
  • Tool Mentor
  • Whitepaper

9
Process Content - EPF
  • Capability Patterns
  • Sequence of related tasks, performed to achieve a
    greater purpose
  • Tasks can be specialized for the given context

Task Descriptor (instance of Task)
Role Descriptor (instance of Role)
Work Product Descriptor (instance of Work
Product)
10
Process Content - EPF
  • Capability Patterns
  • Capability Patterns may be nested and viewed
    graphically
  • An Activity is an instance of a Capability Pattern

Activity (Instance of Capability Patterns)
11
Process Content - EPF
  • Delivery Process
  • Defined using Work Breakdown Structure and/or
    Activity Diagrams
  • Define end-end full lifecycle process
  • May include Iterations, Phases, Milestones (type
    of Activity)

12
EPF Composer Authoring Perspective
Authoring Perspective
Library View
Task Editor (form based)
Configuration View
13
EPF Composer Authoring Perspective
Form based plain text or
Rich Text editors
14
EPF Composer Publishing
15
Processes Available as Reusable EPF Specification
  • EPF available s examples of process to use
  • OpenUP
  • SCRUM
  • XP
  • http//www.eclipse.org/epf/downloads/downloads.php

16
Interesting Aspects of OpenUPSpecified in EPF
  • An Agile Inspired process with its roots in the
    UP
  • An iterative software development process that is
    minimal, complete, and extensible
  • Minimal - Contains vital roles, tasks and
    guidance
  • Complete - Complete for small co-located teams
  • Extensible - Serves as a foundation that can be
    extended and tailored

17
OpenUP Core Principles
  • OpenUP is based on a set of mutually supporting
    core principles
  • Collaborate to align interests and share
    understanding
  • Evolve to continuously obtain feedback and
    improve
  • Balance competing priorities to maximize
    stakeholder value
  • Focus on articulating the architecture
  • OpenUP incorporates a number of agile practices
  • Test-First Design
  • Continuous Integration
  • Agile Estimation
  • Daily Standup, Iteration Assessment, Iteration
    Retrospective
  • Self-organizing teams
  • within the context of an iterative, incremental
    lifecycle (UP).

18
OpenUP Project Lifecycle
  • OpenUP uses an iterative, incremental lifecycle.
  • Proper application of this lifecycle directly
    addresses the first core principle (Evolve).
  • The lifecycle is divided into 4 phases, each with
    a particular purpose and milestone criteria to
    exit the phase
  • Inception To understand the problem.
  • Elaboration To validate the solution
    architecture.
  • Construction To build and verify the solution in
    increments.
  • Transition To transition the solution to the
    operational environment and validate the
    solution.

19
OpenUP - Disciplines
  • A discipline is a collection of tasks that are
    related to a major "area of concern" within the
    overall project.
  • Within the lifecycle, tasks are performed
    concurrently across several disciplines.
  • Separating tasks into distinct disciplines is
    simply an effective way to organize content that
    makes comprehension easier.
  • OpenUP defines the following Disciplines

20
OpenUP - Roles
  • Roles define a set of related skills,
    competencies and responsibilities.
  • OpenUP defines the following Roles

21
Interesting Aspects of XPSpecified in EPF
  • eXtreme Programming is a development process that
    can be used by medium and small sized times in
    the face of vague or rapidly changing
    requirements.
  • Customer create stories that is a very
    lightweight use-cases
  • Development is done iteratively and incrementally
  • Every two weeks delivers working stories to the
    customer
  • Programmers work on their programming tasks in
    pairs

22
XP Values
  • Communication
  • XP emphasizes face-to-face communication
  • Simplicity
  • XP presumes that it is better to do the simple
    thing today
  • Feedback
  • Continuous feedback allows the customer to steer
    the project to success
  • Courage
  • Perhaps a better name for this value is trust

23
XP Practices
24
XP Roles
25
XP Work Products
26
Interesting Aspects of SCRUMSpecified in EPF
  • Is a mechanism in the sport of rugby for getting
    an out-of-play ball back into play
  • Scrum focuses on the social and collective aspect
    of development
  • Scrum Goal is to improve quality and
    productivity, with an empirical approach, relying
    on autonomous teaming
  • Empirism
  • An empirical process requires a good visibility
  • 2 regulation cycles
  • During Daily Scrums
  • During Sprint Reviews
  • Scope
  • not describe all the software development
    activities - analysis, design, coding, testing

27
SCRUM Lifecycle
28
SCRUM Roles
29
SCRUM Artifacts
30
SCRUM Colaboration Points
Write a Comment
User Comments (0)
About PowerShow.com