1 Introduction to the Eclipse Process Framework. 2.

Slides:



Advertisements
Similar presentations
Rational Unified Process®
Advertisements

Copyright © , Armstrong Process Group, Inc., and others All rights reserved Made available under EPL v1.01 Project Management Review Eclipse Process.
Armstrong Process Group, Inc. Copyright © , Armstrong Process Group, Inc., and others All rights reserved Armstrong Process.
Implementing Autodesk Inventor in Your Company MA405-1
SYSE 802 John D. McGregor Module 2 Session 2 Method Tailoring.
1 IBM Software Group ® PRJ270: Essentials of Rational Unified Process Module 3: RUP Structure and Navigation.
Chapter 22 Object-Oriented Systems Analysis and Design and UML Systems Analysis and Design Kendall and Kendall Fifth Edition.
Static Structure: Process Description
Microsoft ® Office Word 2007 Training Table of Contents II: Customize your TOC [Your company name] presents:
® IBM Software Group © 2007 IBM Corporation Modeling Software Engineering Processes using Eclipse Process Framework Composer (EPFC) / Rational Method Composer.
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall Chapter Chapter 1: Introduction to Decision Support Systems Decision Support.
® IBM Software Group © 2006 IBM Corporation The Eclipse Data Perspective and Database Explorer This section describes how to use the Eclipse Data Perspective,
Developing Enterprise Architecture
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 18 Slide 1 Software Reuse.
Made available under EPL v1.01 Introduction to EPF Agenda The EPF Project OpenUP Overview SPEM 2.0 – Basic Concepts –Basic Concepts –Advanced Concepts.
Databases and LINQ Visual Basic 2010 How to Program 1.
1 IBM Software Group ® PRJ270: Essentials of Rational Unified Process Module 5: Tailoring RUP.
Ontologies Reasoning Components Agents Simulations The Eclipse Process Framework Breno Machado.
-Nikhil Bhatia 28 th October What is RUP? Central Elements of RUP Project Lifecycle Phases Six Engineering Disciplines Three Supporting Disciplines.
® IBM Software Group © 2009 IBM Corporation Rational Publishing Engine RQM Multi Level Report Tutorial David Rennie, IBM Rational Services A/NZ
| | Tel: | | Computer Training & Personal Development Microsoft Office Publisher 2007 Expert.
Miscellaneous Excel Combining Excel and Access. – Importing, exporting and linking Parsing and manipulating data. 1.
Prepared by: Sanaz Helmi Hoda Akbari Zahra Ahmadi Sharif University of Tech. Summer 2006 An Introduction to.
Systems Module Slide 2 – Overview and Navigation
Microsoft Office Word 2013 Expert Microsoft Office Word 2013 Expert Courseware # 3251 Lesson 3: Customizing Document Elements.
Moodle (Course Management Systems). Managing Your class In this Lecture, we’ll cover course management, including understanding and using roles, arranging.
10/18/2015 NORTEL NETWORKS CONFIDENTIAL – FOR TRAINING PURPOSES ONLY Global Documentation Evolution System Overview and End-to-End Process Training.
Chapter 4: Create, Edit, and Perform Calculations in Reports Exploring Microsoft Office Access 2007.
IBM User Technology © 2005 IBM Corporation DITA and componentized information Skyla Loomis.
IBM Software Group ® Overview of SA and RSA Integration John Jessup June 1, 2012 Slides from Kevin Cornell December 2008 Have been reused in this presentation.
MS Access 2007 Management Information Systems 1. Overview 2  What is MS Access?  Access Terminology  Access Window  Database Window  Create New Database.
Systems Analysis and Design in a Changing World, 3rd Edition
1 Introduction to the Eclipse Process Framework. Made available under EPL v1.0 2 EPF is an Open Source project within the Eclipse Foundation The goals.
Database Applications – Microsoft Access Lesson 1 Introduction 26 Slides in Presentation Updated 8/12.
CPSC 871 John D. McGregor Module 3 Session 1 Architecture.
November 25, 2015 © IBM Corporation Unified Method Framework (UMF) RMC Reference Architecture Overview Kelli Houston
Graphical Enablement In this presentation… –What is graphical enablement? –Introduction to newlook dialogs and tools used to graphical enable System i.
Analysis Modeling CpSc 372: Introduction to Software Engineering
1 Class Diagrams. 2 Overview Class diagrams are the most commonly used diagrams in UML. Class diagrams are for visualizing, specifying and documenting.
© 2008 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice Lesson # 9 HP UCMDB 8.0 Essentials.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
Yazd University, Electrical and Computer Engineering Department Course Title: Advanced Software Engineering By: Mohammad Ali Zare Chahooki The Rational.
22 August, 2007Information System Design IT60105, Autumn 2007 Information System Design IT60105 Lecture 8 Use Case Diagrams.
® IBM Software Group © 2007 IBM Corporation Module 1: Getting Started with Rational Software Architect Essentials of Modeling with IBM Rational Software.
CPSC 871 John D. McGregor Process – an introduction Module 0 Session 3.
Word Create a basic TOC. Course contents Overview: table of contents basics Lesson 1: About tables of contents Lesson 2: Format your table of contents.
CPSC 372 John D. McGregor More EPF Module 2 Session 4.
® IBM Software Group © 2009 IBM Corporation Essentials of Modeling with IBM Rational Software Architect, V7.5 Module 18: Applying Patterns and Transformations.
Microsoft Office 2013 Try It! Chapter 4 Storing Data in Access.
XP New Perspectives on Microsoft Office Access 2003, Second Edition- Tutorial 6 1 Microsoft Office Access 2003 Tutorial 6 – Creating Custom Forms.
TEAM FOUNDATION VERSION CONTROL AN OVERVIEW AND WALKTHROUGH By: Michael Mallar.
Copyright © 2007, Oracle. All rights reserved. Managing Items and Item Catalogs.
Made available under EPL v1.01 Introduction to EPF Agenda The EPF Project. OpenUP Overview SPEM 2.0 – Basic Concepts –Basic Concepts –Advanced Concepts.
V7 Foundation Series Vignette Education Services.
Comparison between EPF Composer and Rational Method Composer
CPSC 872 John D. McGregor Session 13 Process. Specification and design problem solution specification implementation specification.
5-4b. Eclipse Process Framework (EPF) Tutorial / Exercise
Lesson # 9 HP UCMDB 8.0 Essentials
DSEEP process authoring made easy
IBM Rational Rhapsody Advanced Systems Training v7.5
John D. McGregor Eclipse Process Framework Module 2 Session 4
Unified Modeling Language
Introduction to Eclipse Process Framework: EPF Composer and OpenUP
COSC-4840 Software Engineering
Exploring Microsoft® Access® 2016 Series Editor Mary Anne Poatsy
This presentation has been prepared by Vault Intelligence Limited (“Vault") and is intended for off line demonstration, presentation and educational purposes.
Analysis models and design models
Rational Publishing Engine RQM Multi Level Report Tutorial
Chapter 22 Object-Oriented Systems Analysis and Design and UML
Presentation transcript:

1 Introduction to the Eclipse Process Framework

2

Made available under EPL v1.0 3 EPF is an Open Source project within the Eclipse Foundation The goals of EPF are to provide: –An extensible framework and tooling for authoring, configuring and publishing processes –Exemplary processes - first delivered is OpenUP EPF Project initiated in January EPF is NOT: –Only applicable for Eclipse Java development. –Intended to create the “perfect process” The EPF Project: Overview

Made available under EPL v1.0 4 The EPF Project: 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

5 SPEM 2.0

6

7 EPF uses SPEM 2.0 SPEM = Software Process Engineering Meta-model Although the title implies Software Processes, any process can be represented using SPEM.

8 Basic Concepts – Method Library Method Library –All Method Elements are stored in a Method Library Method Plug-in –A Method Plug-in represents a physical container for Method Packages and Process Packages. It defines a largest granularity level for the modularization and organization of method content and processes. Method Configuration –a logical subset of a Method Library Delivery Process –a complete and integrated approach for performing a specific type of project. Base Concepts Plug-in OpenUP Plug-in DSDM Plug-in for OpenUP depends on extends OpenUP Library

Made available under EPL v1.0 9 Basic Concepts - Method Library 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

Made available under EPL v Basic Concepts – Method Content, Process 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 Process (When) –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

11 SPEM 2.0 Method Content

Made available under EPL v Basic Concepts - Role Roles define a set of related skills, competencies and responsibilities. Roles are not individuals Individuals on the development team may play multiple roles. Roles Perform Tasks Roles are Responsible for Work Products.

Made available under EPL v Basic Concepts – Work Product Work Products (in most cases) represent the tangible things used, modified or produced by a Task. Roles use Work Products to perform tasks and produce Work Products in the course of performing tasks. Work Products are the responsibility of a Role. There are three types of work products: Artifact: typically a configuration managed item Deliverable: required customer/stakeholder deliverable Outcome: “intangible” result of a task such as an installed server or tool.

Made available under EPL v Basic Concepts - Task A Task defines an assignable unit of work (usually a few hours to a few days in length). Tasks are performed by Roles (one primary, and optionally additional supporting roles). Tasks have a clear purpose, and provide step-by-step descriptions of the work that needs to be done to achieve the goal. Tasks modify or produce Work Products. Tasks do not define when they are performed in the lifecycle.

Made available under EPL v Basic Concepts - Guidance Guidance may be associate with Roles, Tasks, and Work Products. Different types of Guidance depending upon purpose. Use Guidance for detailed methodology and supporting information. This will simplify tailoring. –For example, Tasks should tell you “what” needs to be done, Guidelines provide detailed “how to”. Types of Guidance: Checklist Concept Example Guideline Estimate Considerations Practice Report Reusable Asset Roadmap Supporting Material Template Term Definition Tool Mentor Whitepaper

16 Basic Concepts – Guidance Examples Checklist Identifies a series of items that need to be completed or verified. Checklists are often used in reviews such as walkthroughs or inspections. Concept Outlines key ideas associated with basic principles underlying the referenced item. Concepts normally address more general topics than guidelines and span several work product and/or tasks or activities. Example Provides an example of a completed work product or performed tasks and activities. Reusable Asset Links a prepackaged solution to a problem for a given context. Examples of asset are design patterns or mechanisms, solution frameworks, etc.

17 Basic Concepts – Guidance Examples Guideline Provides additional detail on how to perform a particular task or grouping of tasks, or that provides additional detail, rules, and recommendations on work products and their properties. Practice Represents a proven way or strategy of doing work to achieve a goal that has a positive impact on work product or process quality. Practices are defined orthogonal to methods and processes. They could summarize aspects that impact many different parts of a method or specific process. Report A template for an automatically generated description with extracted content one or several work products.

18 Basic Concepts – Guidance Examples Roadmap A linear walkthrough of a complex process or activity. (This is process specific guidance.) Supporting Material A catch-all for other types of guidance not specifically defined elsewhere. It can be related to all kinds of content elements. Template For a work product, provides a predefined table of contents, sections, packages, and/or headings, a standardized format, as well as descriptions on how the sections and packages are supposed to be used and completed. Term Definition Defines terminology and is used to build up the Glossary.

19 Basic Concepts – Guidance Examples Tool Mentor Shows how to use a specific tool to accomplish some piece of work, either in the context of, or independent from, a task or activity. Whitepaper Similar to concept, but has been externally reviewed or published and can be read and understood in isolation of other content elements and guidance.

Made available under EPL v Basic Concepts - Categories Categories –Used to group related method elements. –There are 5 Standard Categories Discipline: grouping of related tasks Domain: grouping of related WP Work Product Kind: similar to Domain Role Set: Grouping of related Roles Tool: Grouping of Tools –Categories may be nested –You can define your own Custom Categories –Elements can be categorized via their property editor, or via Category properties. –Used to build views in published website (we will see this later).

21 SPEM 2.0 Process Content

Made available under EPL v Basic Concepts: C apability Patterns Capability Patterns define the sequence of related Tasks, performed to achieve a greater purpose. Task can be specialized for the given context (ex. suppress steps, work products) Role Descriptor (instance of a Role) Task Descriptor (instance of Task) Work Product Descriptor (instance of a WP)

Made available under EPL v Basic Concepts: Capability Patterns Capability Patterns may be nested and viewed graphically An Activity is an instance of a Capability Pattern. Activity (instance of a capability pattern)

Made available under EPL v Basic Concepts: Delivery Process Defined using Work Breakdown Structures and/or Activity Diagrams. Defines end-end full- lifecycle process May include Iterations, Phases, Milestones (types of Activities) This is just one example, any other lifecycle can be defined.

Made available under EPL v Advanced Concepts: Method Variability Mechanism that allows you to customize method content without directly modifying the original content. Similar to inheritance in OO programming. –Permits re-use with specialization. For example, if plug-in B that extends elements in plug- in A: –Original elements in plug-in A are intact - all the changes are defined in your plug-in B Content variability is useful, for example: –To change the description of an existing role –To add steps to an existing task –To add guidance to an existing task, and so on.

Made available under EPL v Advanced Concepts: Method Variability There are four types of method variability: –Contribute: The contributing element adds content to the base element. Resulting published element is the base element + contributing element. –Extends: The contributing element inherits the content of the base element and specialized some or all of it. Both the base element and the extending element are published. –Replace: The replacing element replaces the base element. The resulting published element is the replacing element. –Extends-Replace: Similar to extends, however the base element is not published. *Examples taken from “Integrating Personal Practices into a Development Process” by Brian Lyons, NumberSix Software

Made available under EPL v Advanced Concepts Process Variability Similar re-use mechanism are available for Process content as well. In addition, Activities may also be created from CPs in the following ways: –Extends: The activity inherits the properties of the capability pattern. Updates to the capability pattern are automatically reflected in the activity (Green colour in WBS in EPF Composer). –Copy: An activity is created based on the capability pattern. It is not synchronized with the capability pattern (Black colour in WBS). –Deep Copy: Similar to copy, but applied recursively to activities. –Local Variability: When a capability pattern is defined (either by Extends or Copy) local variability may be done (ex. Suppress steps in a task descriptor, change performing role, etc.).

Made available under EPL v EPF Composer Introduction

EPF Composer 29

Made available under EPL v EPF Composer EPF Composer is built upon the Eclipse platform Supports many of the Eclipse plug-ins Different Views present specific information –For example, Library view shows plug-ins and their content Perspectives group related views to support a workflow Standard Perspectives are: –Authoring: for editing method content –Browsing: for previewing published elements

Made available under EPL v EPF Composer Authoring Perspective Library View Configuration View Task Editor (form based) Authoring Perspective

Made available under EPL v EPF Composer Authoring Perspective Form based plain text or… …Rich Text editors

Made available under EPL v EPF Composer Browsing Perspective Configuration View Preview View Browsing Perspective

Made available under EPL v Basic Concepts Configuration: Plug-in and Package Selection Select sub-set of method library for publishing to HTML or exporting to MS Project or XML Configurations Select Content

Made available under EPL v Basic Concepts Configuration: View Definition Categories group related elements Views defined by selecting Categories Standard Categories Custom Categories Define Views

Made available under EPL v Customization Scenario A In this scenario, you are going to leverage the existing content without major customizations. You have reviewed the OpenUP content and feel that it would meet your needs with a minor change to remove the visual modeling aspects of the process. You are going to create a new configuration – based on an existing one - then pick and choose content packages that make sense for your team. Let’s try it: Note: These are examples of customization scenarios. Not all possibilities have been explored due to lack of time for this tutorial.

Made available under EPL v Creating a Plug-in (1/2) Right-click on any existing element in the library –Select New Method Plug-in In the ‘Create a new method plug-in’ dialogue enter: –Name (lower case, no spaces) –Description (optional) –Author (optional) –Referenced Plug-ins ‘Referenced Plug-ins’ set the visibility to other plug- ins

Made available under EPL v Creating a Plug-in (2/2) New Plugin New plug-in created with default (empty) structure Editor opens to permit you to change/update the plug-in description.

Made available under EPL v Creating a Method Content Package (1/2) Right-click on the ‘Content Packages’ Node –Select ‘New Content Package’ The new package is created The editor will open

Made available under EPL v Creating a Method Content Package (2/2) New package created with default (empty) structure –Only appropriate type of element can be created under each node. Enter name (lower case, no spaces) and brief description. New Content Package

Made available under EPL v Creating a Task (1/2) Right-click on the ‘Tasks’ node in the desired content package –Select ‘New Task’ The new task is created The editor will open

Made available under EPL v Creating a Task (2/2) Each method element has two names: –Name: the internal name, maps to filename (lower case, no spaces) –Presentation Name: appears in published website New Task

Made available under EPL v Editing a Task The task editor has a number of tabs along the bottom edge: –Description: to capture general attributes of task and variability –Steps: to define the steps of the task –Roles: to define responsible roles for the task –Work Products: to define input/output work products for the task –Guidance: to associate guidance elements with the task –Categories: to categorize the task –Preview: to preview the task (NOTE: variability not resolved). Each tab has a form to capture attributes Some fields have Rich Text Editing Capability –Click the icon to open the RTE. –The Rich Text Editor also has a tab to view/edit HTML

Made available under EPL v Customization Scenario B In this scenario, you are going to add guidance for your team that is not part of the OOTB content. Your team wants to apply the CRC cards technique for representing design. You are going to create a new plug-in, create a contributing task (using the content variability concept introduced above) and add guidance on Class Responsibility Collaboration (CRC) cards technique. Let’s try it: Note: These are examples of customization scenarios. Not all possibilities have been explored due to lack of time for this tutorial.

Made available under EPL v Creating a Delivery Process (1/5) Right-click on the ‘Delivery Process’ node –Select New Delivery Process The ‘New Process Component’ dialogue will open. Enter: –Name (lower case, no spaces) –Default configuration

Made available under EPL v Creating a Delivery Process (2/5) New Delivery Process New Delivery Process is created Editor opens to permit you to change/update content

Made available under EPL v Creating a Delivery Process (3/5) The Delivery Process editor has a number of tabs along the bottom edge: –Description: to capture general attributes of process –WBS: to define activities of the process and their relationship –Team Allocation: to view and edit roles –Work Products Usage: to view and edit work products –Consolidated View: to view and edit roles, activities, work product roll-up Usually we don’t need to edit the last three, they are populated automatically when activities are added to the WBS. They can be edited if one wishes to specialize the activities.

Made available under EPL v Creating a Delivery Process (4/5) Drag/Drop capability patterns from the configuration view onto the WBS Select Extend, Copy, or Deep Copy (see next slide) Drag/Drop CP

Made available under EPL v Creating a Delivery Process (5/5) When adding a capability pattern to a delivery process you can: –Extend: This will maintain a link to the CP so that any updates to the CP will be reflected in your delivery process. –Copy: this will make a local copy of the CP. It will not be linked to the original CP. –Deep Copy: This is similar to copy, but applied recursively to sub-capability patterns. The most common is Extend. Copy and Deep Copy will increase maintenance overhead as updates must be made manually.

Made available under EPL v EPF Composer Publishing Configuration | Publish to start the Publish Method Wizard Various publishing options

Made available under EPL v Resulting Website

Made available under EPL v Customization Scenario C In this scenario, you will create a new delivery process for your software development lifecycle. You have reviewed the OpenUP delivery process and would rather follow a process that is more like the Scrum lifecycle. You realize that you can reuse existing method and process content from OpenUP plug-in and simply re- define the lifecycle. Let’s try it: Note: These are examples of customization scenarios. Not all possibilities have been explored due to lack of time for this tutorial.

Made available under EPL v EPF Composer Import File | Import to start the Import Wizard Can import a Configuration, a plug-in, or raw XML.

Made available under EPL v EPF Composer Export File | Export to start the Export Wizard Can export a Configuration, a plug-in, raw XML or MS Project Template