Upload
others
View
13
Download
0
Embed Size (px)
Citation preview
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
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
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).
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:
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
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:
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
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
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
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
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
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.
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
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
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.
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.
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.
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
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
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!