introduction to eclipse process framework: epf composer

20
Introduction to EPF: EPF Composer and OpenUP | © 2007 by IBM and others; made available under the EPL v1.0 Introduction to Eclipse Process Framework: EPF Composer and OpenUP Ricardo Balduino IBM Rational Software - San Jose, CA EPF Committer Updated by Chris Sibbald, EPF Committer, Telelogic. Step-by-step instructions Version 1.1 08/10/2007

Upload: others

Post on 07-May-2022

12 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Introduction to Eclipse Process Framework: EPF Composer

Introduction to EPF: EPF Composer and OpenUP | © 2007 by IBM and others; made available under the EPL v1.0

Introduction to Eclipse Process Framework:

EPF Composer and OpenUP

Ricardo Balduino

IBM Rational Software - San Jose, CA

EPF Committer

Updated by Chris Sibbald, EPF Committer, Telelogic.

Step-by-step instructions

Version 1.1

08/10/2007

Page 2: Introduction to Eclipse Process Framework: EPF Composer

Introduction to EPF: EPF Composer and OpenUP | © 2007 by IBM and others; made available under the EPL v1.0

Pre-requisites

This tutorial requires the following tools be installed:

A Web Browser: Supported browsers: Microsoft Internet Explorer 6.0 SP1, Microsoft Internet

Explorer 5.5 SP2, Mozilla Firefox 1.0.7, Mozilla 1.7.12

EPF Composer 1.2.0

o http://www.eclipse.org/epf/downloads/tool/epf1.2.0_downloads.php

OpenUP library

o Latest build available here (also included in EPF Composer 1.2.0 download above).

http://www.eclipse.org/epf/downloads/openup/openup_downloads.php

Page 3: Introduction to Eclipse Process Framework: EPF Composer

Introduction to EPF: EPF Composer and OpenUP | © 2007 by IBM and others; made available under the EPL v1.0

Recommendation: it is not recommended making changes directly to the OpenUP plug-in (or any plug-in

over which you don’t have control). When you install new releases of the plug-in, changes you made

before may be overridden.

The recommended approach is to create a plug-in that extends OpenUP, so you can apply any

modifications in there. This is the approach followed in this tutorial.

Scenario A – Use existing plug-ins and packages to build your own process (as a subset of the OOTB

process)

In this scenario, you are going to leverage the existing content without major customizations. You are

going to create a configuration – based on an existing one - then pick and choose content packages that

make sense for your team.

In order to build process as a subset of the OOTB process, with minor modifications, follow these steps:

1- Open the OpenUP library. Expand the Configurations node and double-click the OpenUP

configuration. Select the plug-in and Package Selection tab to see which plug-ins are included in

this configuration as depicted below:

Figure 1: OpenUP Configuration

2- Right-click on the OpenUP configuration. From the pop-up menu, select Copy. Right-click on the

Configurations node and select Paste. A copy of OpenUP configuration will be created, so you

can pick and choose the packages needed for your project. Give the configuration a name

(MyProjectConfiguration).

Page 4: Introduction to Eclipse Process Framework: EPF Composer

Introduction to EPF: EPF Composer and OpenUP | © 2007 by IBM and others; made available under the EPL v1.0

3- Double-click on the newly created configuration. On the right hand side, the configuration editor

will appear. Select the second tab Plug-in and Package Selection. Expand the openup node until

you reach the visual_modeling packages under solution/architecture and solution/development

packages. Deselect the visual_modeling packages, as depicted in the Figure 2 below. Verify if

there are any warnings in the Problems tab. Deselecting packages may affect existing

dependencies between packages and plug-ins. These will be reported on the Problems Tab.

Figure 2: Deselecting Visual Modeling in MyProjectConfiguration

4- Save your new configuration (use Save or Save All menu/buttons).

Note: creating a new configuration causes changes to the library, but not to the plug-ins. If you install

a new library in the same location, your changes will be lost. For consistency and prevention of data

loss, you should export and import plug-ins out of and into your library. This is not covered in this

tutorial though.

5- In order to preview the new content, you can use the Browsing perspective (or publish a new Web

site, but let’s publish a Web site as a final exercise, part of the last scenario in this tutorial). Verify

that the content around Visual Modeling does not appear as part of this configuration. For

example, make sure that MyProjectConfiguration is selected in the configuration drop-down list

(see Figure 3) and view the task Design the Solution (located under Disciplines/Development).

Note that there are 5 guidelines listed at the bottom of the page that are associated with this task.

Now select OpenUP in the configuration drop-down list and view the same task. Note that there is

an additional guideline related to visual modeling.

Note: Make sure you select the correct configuration when you switch to the Browsing perspective. You

want to select the configuration you just created, as seen in Figure 3 below:

Page 5: Introduction to Eclipse Process Framework: EPF Composer

Introduction to EPF: EPF Composer and OpenUP | © 2007 by IBM and others; made available under the EPL v1.0

Figure 3: Configuration drop-down list

Page 6: Introduction to Eclipse Process Framework: EPF Composer

Introduction to EPF: EPF Composer and OpenUP | © 2007 by IBM and others; made available under the EPL v1.0

Scenario B – Add guidance that is needed by your team

Concept: Content Variability

Content variability refers to a mechanism in the tool that allows you to customize method content

without directly modifying the original content.

Content variability allows you to change method content in plug-in A by building plug-in B that

contributes, extends, replaces or extends-replaces elements. Contributes will result in an element

in the configuration (published site) that includes the content from the original element and adds

content, on an attribute by attribute basis to the original element in plug-in A. New content in the

element in plug-in B is appended to the original content in the resulting configuration. Extends

will result in an element in the configuration that inherit the content from the original and permit

you to specialize this content on an attribute by attribute basis. Both the original element and your

specialized element will be published. Replace will replace the original element in plug-in A in the

configuration with the content you provide in the new element. Extends-Replace is similar to

Extends, with the exception that only the new element is present in the configuration. In all cases

the original elements in plug-in A intact since all the changes are defined in your plug-in B.

Content variability is useful, for example:

To change the description of an existing role (Replace, Extend or Extend-Replace)

To add steps to an existing task (Contribute)

To add a guidance to an existing task, and so on. (Contribute)

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, a contributing task (using the content variability concept introduce above) in order to add guidance on

CRC cards technique.

1. Ensure you have selected the Authoring perspective. Create a new plug-in. Go to menu File-

>New->Method Plug-in. Give the plug-in a name (my_plugin). Establish a dependency to the

openup plug-in as shown in Figure 4, below:

Page 7: Introduction to Eclipse Process Framework: EPF Composer

Introduction to EPF: EPF Composer and OpenUP | © 2007 by IBM and others; made available under the EPL v1.0

Figure 4: New Method Plug-in Dialogue

2. In my_plugin, expand to the level of Content Packages. It may be useful and easier to maintain a

package structure that has a name space similar to the parent plug-in. Right-click on Content

Packages and create a Content Package structure like this: solution -> development -> crc_cards.

3. In the crc_cards package, right-click on the Tasks folder and create a new task named

design_solution_crc (no need to define a Presentation name – contributors do not show up in the

resolved content, they just contribute content and relationships). See Figure 5 below for the results

of steps 2. and 3.

Figure 5: New Task design_solution_crc and package structure

4. The task design_solution_crc will contribute to task design_solution in OpenUP (located under

content package solution -> development). To do so, scroll down on the design_solution_crc task

Page 8: Introduction to Eclipse Process Framework: EPF Composer

Introduction to EPF: EPF Composer and OpenUP | © 2007 by IBM and others; made available under the EPL v1.0

editor, and select the variability type Contributes and the base task design_solution. See Figure 6,

below.

Figure 6: Establishing Contributes Variability

Page 9: Introduction to Eclipse Process Framework: EPF Composer

Introduction to EPF: EPF Composer and OpenUP | © 2007 by IBM and others; made available under the EPL v1.0

5. Add a new step to the task design_solution_crc. Select the second tab on the task editor, Steps, and

add a new step Run a CRC cards session. You can define the order this step will appear in the task

by selecting Order (this allows you to order the steps with the steps defined by the parent task).

See Figure 7, below.

Figure 7: Adding and ordering a new step

Page 10: Introduction to Eclipse Process Framework: EPF Composer

Introduction to EPF: EPF Composer and OpenUP | © 2007 by IBM and others; made available under the EPL v1.0

6. Create a new guideline. Right-click on Guidance, menu New -> Guideline. Name the guideline

crc_cards_session (presentation name How to run a CRC cards session).

7. Attach the guideline to the newly created task: go to the task editor, select the tab Guidance and

add the new guidance crc_cards_session. See Figure 8, below.

Figure 8: Adding a guidance element to a task

Page 11: Introduction to Eclipse Process Framework: EPF Composer

Introduction to EPF: EPF Composer and OpenUP | © 2007 by IBM and others; made available under the EPL v1.0

8. Alternatively, put a link from the step you created to the new guideline. Expand the rich text editor

icon ( ) for the step text. Then drag-and-drop the guideline from the tree-browser to the text in

the editor. This will create a hyperlink to the guideline.

Figure 9: Adding a hyperlink in the Rich Text Editor via drag-and-drop

Page 12: Introduction to Eclipse Process Framework: EPF Composer

Introduction to EPF: EPF Composer and OpenUP | © 2007 by IBM and others; made available under the EPL v1.0

9. Make sure you add my_plugin plug-in to MyProjectConfiguration configuration. Save the

configuration.

Figure 10: Adding plug-in to the configuration

10. In order to preview the new content, you can use the Browsing perspective (or publish a new Web

site, but let’s publish a Web site as a final exercise, part of the last scenario in this tutorial). Verify

that the task Design the Solution contains a new step and points to the new guideline about CRC

cards.

Page 13: Introduction to Eclipse Process Framework: EPF Composer

Introduction to EPF: EPF Composer and OpenUP | © 2007 by IBM and others; made available under the EPL v1.0

Scenario C - Define a different development lifecycle to be followed by your team

In this scenario, you will create a new software development lifecycle by reusing existing process content

from OpenUP plug-in.

1. Right-click on the Delivery Processes node and select New->Delivery Process to create a new

delivery process in your plug-in. Name it MyProcessLifecycle and associate it to

MyProjectConfiguration configuration.

Figure 11: Creating a new Delivery Process

Page 14: Introduction to Eclipse Process Framework: EPF Composer

Introduction to EPF: EPF Composer and OpenUP | © 2007 by IBM and others; made available under the EPL v1.0

2. Make sure MyProjectConfiguration is selected on the drop-down box on the top tool bar. Select

the delivery process editor Work Breakdown Structure (WBS) tab. Right click on the first node

on the WBS, then select menu New Child -> Iteration. Name the iteration as Iteration 0. See

Figure 12, below.

Figure 12: Adding an Iteration to the lifecycle

Page 15: Introduction to Eclipse Process Framework: EPF Composer

Introduction to EPF: EPF Composer and OpenUP | © 2007 by IBM and others; made available under the EPL v1.0

3. In the Configuration window, expand the Processes node, Capability Patterns node, the Sub-

processes node, and the Management node (See Figure 13). Drag-and-drop the two available

capability patterns from Management to the Iteration 0 node in the WBS. When you release the

mouse button, a pop-up menu will ask if you want to Copy, Extend or Deep Copy the content to

the WBS. Select Copy. (We will not use all types of process variability as part of this tutorial).

Figure 13: Adding capability patterns to the WBS via drag-and-drop

4. Repeat the same steps, now dragging-and-dropping capability pattern Identify and Refine

Requirements from the Intent sub-process, then Agree on Technical Approach from the Solution

sub-process.

Page 16: Introduction to Eclipse Process Framework: EPF Composer

Introduction to EPF: EPF Composer and OpenUP | © 2007 by IBM and others; made available under the EPL v1.0

5. Repeat steps above to create a new Iteration in the WBS, named Iteration n, and add capability

patterns via drag-and-drop until you have a WBS populated as shown in Figure 14.

Figure 14: Resulting WBS

6. Alternatively, you can create activity diagrams showing the precedence relationships between

activities in the WBS. To create an activity diagram, right-click on the desired iteration (e.g.

Iteration n), then select menu Diagrams -> Open Activity Diagram. An activity diagram with the

children activities will appear, including a palette that allows you to draw the relationships and

sequence between activities. Re-create the diagram shown in Figure 15.

Page 17: Introduction to Eclipse Process Framework: EPF Composer

Introduction to EPF: EPF Composer and OpenUP | © 2007 by IBM and others; made available under the EPL v1.0

Figure 15: Activity diagram for Iteration n

7. To conclude this tutorial, you want to publish the Web site with the new method and process

content you just authored. In order to do that, a last step on customization is recommended: the

creation of a custom category (used to create the views in the published Web site tree-browser).

a. In my_plugin plug-in, Custom Categories folder, create a new custom category named

my_process_views (Presentation name: My Process Views).

b. In the custom category editor, Assign tab, add existing custom categories in order to

populate the view. In the dialog box that appears, expand the openup plug-in until you

reach the openup_treebrowser custom category.

c. Expand the openup_treebrowser custom category and select Discipline Grouping

openup_disciplines, openup_roles, openup_wp and openup _disciplines (hold Ctrl key to

select multiple entries). Scroll down to my_plugin plug-in and select MyProcessLifecycle

delivery process. Click OK to close the dialog box. You can reorder the categories as

desired. See Figure 16 for the results.

Page 18: Introduction to Eclipse Process Framework: EPF Composer

Introduction to EPF: EPF Composer and OpenUP | © 2007 by IBM and others; made available under the EPL v1.0

Figure 16: Creating and populating a custom category

d. Open the configuration editor for MyProjectConfiguration. Select the third tab Views and

remove the existing view (the one copied from OpenUP configuration).

e. Click on Add View button, and select my_process_views custom category you just created

and populated. You should have something like the picture below and be ready to publish

your Web site next.

Figure 17: Creating Views for a Configuration

Page 19: Introduction to Eclipse Process Framework: EPF Composer

Introduction to EPF: EPF Composer and OpenUP | © 2007 by IBM and others; made available under the EPL v1.0

8. Finally, publish your process Web site.

a. Go to menu Configuration -> Publish.

b. On the wizard window that appears, select MyProjectConfiguration on the first screen.

Click Next.

c. Select Publish the selected configuration option. Next.

d. On the next screen, select the publishing options shown in Figure 18 (or experiment) and

click Next.

Figure 18: Sample publishing options

Page 20: Introduction to Eclipse Process Framework: EPF Composer

Introduction to EPF: EPF Composer and OpenUP | © 2007 by IBM and others; made available under the EPL v1.0

e. On the last page of the Publish Method Configuration Wizard select a suitable target folder

on your computer and select the Static Website option.

f. See picture below for the published Web site. You may want to “polish” your Web site by

reorganizing elements in the view, creating a high level activity diagram for your delivery

process, and so on. Have fun!