What is the Eclipse Process Framework. 2 Agenda What is Eclipse Process Framework (EPF) OpenUP Overview and Demo EPF Future Vision.

Slides:



Advertisements
Similar presentations
Connected Health Framework
Advertisements

September 2008Mike Woodard Rational Unified Process Key Concepts Mike Woodard.
Armstrong Process Group, Inc. Copyright © , Armstrong Process Group, Inc., All rights reserved Armstrong Process Group,
Made available under EPL v1.01 Eclipse Process Framework – Open Source Initiative Per Kroll Mgr. of Methods / EPF Project Lead IBM
Unified process(UP) UP is an OO system development methodology offered by Rational(Rational Rose) s/w, now a part of IBM Developed by Booach,Rambaugh,Jacobson--
AGILE DEVELOPMENT Outlines : Quick Look of agile development Agility
RUP/UP Software Development Method Hoang Huu Hanh, Hue University hanh-at-hueuni.edu.vn.
Agile development By Sam Chamberlain. First a bit of history..
IBM Business Consulting Services © Copyright IBM Corporation 2006 Unified Process March 27, 2006 Chris Armstrong.
® IBM Software Group © 2007 IBM Corporation Modeling Software Engineering Processes using Eclipse Process Framework Composer (EPFC) / Rational Method Composer.
L4-1-S1 UML Overview © M.E. Fayad SJSU -- CmpE Software Architectures Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I.
SE 470 Software Development Processes James Nowotarski 21 April 2003.
Software Factory Assembling Applications with Models, Patterns, Frameworks and Tools Anna Liu Senior Architect Advisor Microsoft Australia.
Computer Engineering 203 R Smith Agile Development 1/ Agile Methods What are Agile Methods? – Extreme Programming is the best known example – SCRUM.
Rational Worldwide Software Symposium
Iterative development and The Unified process
Software Engineering: A Practitioner’s Approach, 6/e Chapter 4 Agile Development copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc. For University.
Using the Essential Unified Process with Visual Studio Team System Ian Spence and Craig Lucia.
Eclipse Process Framework Plugin example: documents & maps generation
Software Engineering Lecture No:12. Lecture # 7
1 OpenUP Distilled Per Kroll Mgr. of Methods IBM Brian Lyons CTO Number Six Software
Enterprise Architecture
Principles of Object Technology Module 1: Principles of Modeling.
Introduction to RUP Spring Sharif Univ. of Tech.2 Outlines What is RUP? RUP Phases –Inception –Elaboration –Construction –Transition.
1 IBM Software Group ® PRJ270: Essentials of Rational Unified Process Module 5: Tailoring RUP.
BEFORE AGILE METHODS Other Engineering fields development models were used, ie: Waterfall Method: Intensive planning and refactoring before coding is actually.
Using IBM Rational Unified Process for software maintenance
1 IBM Software Group ® Mastering Object-Oriented Analysis and Design with UML 2.0 Module 1: Best Practices of Software Engineering.
Ontologies Reasoning Components Agents Simulations The Eclipse Process Framework Breno Machado.
CSE G674/2009 Project Project Management Section Presented by: Amir Aref Adib.
Software Engineering 1 Object-oriented Analysis and Design Applying UML and Patterns An Introduction to Object-oriented Analysis and Design and Iterative.
Chapter 4 Agile Development 1. The Manifesto for Agile Software Development 2 “We are uncovering better ways of developing software by doing it and helping.
Tuesday, June 8 th, Agile Development-Successful Delivery & Implementing Across the Enterprise.
Thirteenth Lecture Hour 8:30 – 9:20 am, Sunday, September 16 Software Management Disciplines Process Automation (from Part III, Chapter 12 of Royce’ book)
-Nikhil Bhatia 28 th October What is RUP? Central Elements of RUP Project Lifecycle Phases Six Engineering Disciplines Three Supporting Disciplines.
Current Trends in Systems Develpment
ETICS2 All Hands Meeting VEGA GmbH INFSOM-RI Uwe Mueller-Wilm Palermo, Oct ETICS Service Management Framework Business Objectives and “Best.
Agile Methodologies: Comparative Study and Future Direction 林佳蓁 資工 4B.
Chapter 1 Object-Oriented Analysis and Design. Disclaimer Slides come from a variety of sources: –Craig Larman-developed slides; author of this classic.
Iterative development and The Unified process Chapter 2 Applying UML and Patterns -Craig Larman.
Notes of Rational Related cyt. 2 Outline 3 Capturing business requirements using use cases Practical principles  Find the right boundaries for your.
Rational Unified Process Fundamentals Module 5: Implementing RUP.
Unified Modeling Language* Keng Siau University of Nebraska-Lincoln *Adapted from “Software Architecture and the UML” by Grady Booch.
L6-S1 UML Overview 2003 SJSU -- CmpE Advanced Object-Oriented Analysis & Design Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I College.
Rational Unified Process (RUP) Process Meta-model Inception Phase These notes adopted and slightly modified from “RUP Made Easy”, provided by the IBM Academic.
November 25, 2015 © IBM Corporation Unified Method Framework (UMF) RMC Reference Architecture Overview Kelli Houston
J. Scott Hawker p. 1Some material © Rational Corp. Rational Unified Process Overview See and use the RUP Browser on lab machines.
The Rational Unified Process 1 EECS810: Software Engineering.
Chapter 3 Agile Development
Requirements Engineering Requirements Engineering in Agile Methods Lecture-28.
Overview of RUP Lunch and Learn. Overview of RUP © 2008 Cardinal Solutions Group 2 Welcome  Introductions  What is your experience with RUP  What is.
Rational Unified Process Fundamentals Best Practices of Software Engineering Rational Unified Process Fundamentals Best Practices of Software Engineering.
Intelligence and Information Systems 1 3/17/2004 © 2004 Raytheon Company USC/CSE Executive Workshop on Agile Experiences March 17, 2004 A Raytheon Agile.
Meghe Group of Institutions Department for Technology Enhanced Learning 1.
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
The Latest In Agile Processes - OpenUP Per Kroll, Chief Architect IBM Rational Expertise Development & Innovation, IBM
RATIONAL UNIFIED PROCESS PROCESS FRAMEWORK OVERVIEW.
Comparison between EPF Composer and Rational Method Composer
CPSC 872 John D. McGregor Session 13 Process. Specification and design problem solution specification implementation specification.
Process 4 Hours.
DSEEP process authoring made easy
Introduction to Eclipse Process Framework: EPF Composer and OpenUP
Unified Process Source & Courtesy: Jing Zou.
Approaches to Systems Development
Introduction to Software Engineering
Rational Worldwide Software Symposium
Rational Worldwide Software Symposium
Software engineering -1
Rational Worldwide Software Symposium
Presentation transcript:

What is the Eclipse Process Framework

2 Agenda What is Eclipse Process Framework (EPF) OpenUP Overview and Demo EPF Future Vision

3 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 mgmt guidelines Lessons learnt from previous project and iteration Knowledge base on managing iterative development Corporate guidelines on compliance Wiki on agile development JUnit user guide Latest research on effectiveness of pair programming Project plan templates

4 A Better Approach Project plan templates Lessons learnt from previous project and iteration Content on managing iterative development Corporate guidelines on compliance Content on agile development JUnit user guidance Content on J2EE Configure a cohesive process framework customized 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 Processes for performing projects Process assets patterns Standard or reference processes Guidance on serialized java beans Configuration mgmt guidelines

5 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

6 EPF Ecosystem TOOLING (Authoring, Publishing) Free Process Content Plug-ins Free Process Content Plug-ins META MODEL (Unified Method Architecture) ECLIPSE Commercial Process Content Plug-ins Commercial Process Content Plug-ins Tool Extensions Tool Extensions Extensible, Customizable, Flexible Common Language & Vocabulary Open 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) Free Process Content Plug-ins Free Process Content Plug-ins META MODEL (Unified Method Architecture) ECLIPSE Commercial Process Content Plug-ins Commercial Process Content Plug-ins Tool Extensions Tool Extensions Extensible, Customizable, Flexible Common Language & Vocabulary Open 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

7 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

8 EPF: Growing Ecosystem Co-developers Supporters

9 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 list – over 30 posts each DAY EPF v1.0 Release date – September 2006

10 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

11 Agenda What is Eclipse Process Framework (EPF) OpenUP Overview and Demo EPF Future Vision

12 A Method Framework A framework is based on a common set of principles What Is a Method Framework? Distributed Development J2EE JUnit Contains any number of extension plug-ins  Adds additional processes or modifies existing processes  Adds additional method content Base Contains a base of standard content  Base content (principles, practices, roles, work products, tasks, …)  Optionally a base process (lifecycle)  All pieces within a framework fits together  Enables rapid assembly of a diverse set of processes  A process framework can contain sub frameworks

13 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

14 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

15 Demo

16 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.

17 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

18 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: Requirements

19 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

20 Agenda What is Eclipse Process Framework (EPF) OpenUP Overview and Demo EPF Future Vision

21 Several Frameworks – Increasingly Shared Content Consolidated Agile Framework OPEN Process Framework OpenUP Refactoring Use Case Collaborative Practices Agile Project Mgmt Network Design

22 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

23 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). Booster Practices Essential Practices Start here Finish here Game Board Rule Book

24 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

25 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

26 Questions

27 Thank You