Professional Documents
Culture Documents
: Submitted by
Indranil Nandy
Department of Computer Sc. & Engg
MTech, 2007
Roll no. : 06CS6010
CASE & its scope:
A CASE tool is a generic term used to denote any form of automated support
for software engineering. In a more restrictive sense, a CASE tool can mean any tool
used to automate some activity associated with software development. Many CASE
tools are now available. Some of these tools assist in phase-related tasks such as
specification, structured analysis, design, coding, testing etc., and others are related to
non-phase activities such as project management and configuration management. The
primary objectives of deploying CASE tool are:
• To increase productivity
• To produce better quality software at lower cost
With the decline of the mainframe, AD/Cycle and the Big CASE tools died
off, opening the market for the mainstream CASE tools of today. Interestingly, nearly
all of the leaders of the CASE market of the early 1990s ended up being purchased by
Computer Associates, including IEW, IEF, ADW, Cayenne, and LBMS.
CASE environment:
Although individual CASE tools are useful, the true power of a tool set can be
realized only when these set of tools are integrated into a common framework or
environment. If the different CASE tools are not integrated, then the data generated
by one tool would have to input to the other tools. This may also involve format
conversions as the tools developed by different vendors are likely to use different
formats. This results in an additional effort of exporting data from one tool and
importing to another. Also, many tools do not allow exporting data and maintain the
data in proprietary formats.
Coding Project
support Management
activities Facilities
Consistency
&
completeness Prototyping
analysis
Configuration
Document management
generation Central facilities
Repository
Structured Structured
analysis Diagram
facilities Facilities
Transfer
Query and
Facilities in
Report
different
facilities
formats
A CASE environment
Benefits of CASE:
Several benefits accrue from the use of a CASE environment or even from the use of
isolated CASE tools. Some of these are as follows:
• A key benefit arising out of the use of a CASE environment is cost saving
through all developmental phases. Different studies carried out to measure
the impact of CASE put the effort reduction to between 30% and 40%.
• Use of CSE tools leads to considerable improvements to quality. This is
mainly due to the facts that one can effortlessly iterate through different
phases of software development and the chances of human error are
considerably reduced.
• CASE tools help produce high quality and consistent documents. Since the
important data relating to a software product is maintained in a central
repository redundancy in the stored data is reduced and therefore chances
of inconsistent documentation are reduced to a great extent.
• CASE tools reduce the drudgery in a software engineer's work. For
example, they need not check laboriously the balancing of the DFDs but
can do it effortlessly through the press of a button.
• CASE tools have led to revolutionary cost savings in software
maintenance efforts. This has been possible not only due to the tremendous
value of a CASE environment in traceability and consistency checks, but
also due to the systematic information capture during the various phases of
software development as a result of adhering to a CASE environment.
• Use of a CASE environment has an impact on the style of working of a
company, and makes it conscious of structured and orderly approach.
Key Features
1. Full UML 2.1 notations
2. Requirements management
3. Import/export to XML and image
4. Intuitive visual modeling
5. Shape Editor — design your own shapes
Detailed Features
UML support
1. Class diagram
2. Use Case diagram
3. Sequence diagram
4. Communication diagram
5. State Machine diagram
6. Activity diagram
7. Component diagram
8. Deployment diagram
9. Package diagram
10. Object diagram
11. Composite structure diagram
12. Timing diagram
13. Interaction overview diagram
14. Use Case details editor
15. Support Use Case flow of event
16. Generate Sequence diagram from flow of events
17. Business use case support
Requirements management
1. Requirement diagram
2. Textual analysis
3. CRC card diagram
4. Identify candidate activity and action by textual analysis
Database modeling
1. Entity relationship diagram
2. ORM diagram
3. Reverse existing database into ERD
4. Generate database from ERD
5. Reverse stored procedure to ERD
6. Foreign key auto naming
7. Download database driver automatically
8. Show database architecture by ORM pane
9. Customizable SQL generation
10. Generate class diagram from ERD
11. Generate ERD from class diagram
12. Support Oracle schema in generate/reverse database
13. Generate/reverse user-defined database type
Object-relational mapping
1. Java ORM code generation
2. .NET ORM code generation
3. PHP ORM code generation
4. Lazy collection fetching
5. Database view support
6. Support custom ID generator
7. Mapping one class to multiple tables
8. Custom query support
9. Automatic array table generation
10. Generate criteria classes
11. Generate DAO Code
12. Generate Factory Code
13. Generate POJO Code
14. Optional libraries selection
Visual modeling
1. Customizable data type to fit to any programming language
2. Overview diagram
3. Resource centric interface
4. Structure resource centric interface
5. Model sharing
6. Cut/copy/paste
7. Copy to other applications as image
8. Undo/redo
9. Mouse gestures
10. Reverse connector direction
11. Support grouping
12. Jump to shape/model
13. Quick connect
14. Navigate to connected element
15. Model comment
16. Duplicate shape/model
17. Support selectable/non-selectable shape
18. Lock diagram
19. Reference to any type of artifact
20. Advanced file and directory chooser
21. Advanced tree support
22. Duplicate, move and reconnect connector
23. Package header for all types of diagram
24. Visualize tagged value in diagram element
25. Sub-diagram and reference indicator
26. Visio integration
27. Import Visio stencils
28. Rectilinear, Round Rectilinear, Oblique, Round Oblique, Curve connector style
29. Gesture Pen
30. Sweeper
31. Create shape with specified initial size
32. Drag and drop from tree to diagram to create shape
33. Auto fit shapes size
34. Inline editing
35. Visual alignment guide
36. Various grid options
37. Show diagram info in diagram
Documentation generation
1. PDF report generation
2. MS Word report generation
3. HTML report generation
4. Ad Hoc report creation
5. Project publisher
6. Intelligent element sorting in report generation
Printing
1. Print multiple diagrams at the same time
2. Preview printable page
3. Print clip marks
4. Support change page margins, size and orientation
5. Fit to pages option
6. Fit to ratio
7. Customizable page header/footer
8. Show project name, diagram name in header/footer
9. Support print with frame, border
10. Enable/disable gradient color printing
11. Support quick print
IDE integrations
1. Activate full UML environment from your favorite IDEs
2. Automatic code and model synchronization
3. Simple installation of IDE integration
4. Import existing VP-UML project to IDE integration
5. Integration with Eclipse
6. Integration with NetBeans
7. Integration with IntelliJ IDEA
8. Integration with WebLogic Workshop
9. Integration with Borland JBuilder
10. Integration with Oracle JDeveloper
Reverse engineering
1. Instant reverse engineering code or executable to class diagram
2. Reverse engineering Java source, classes and jar
3. Reverse engineering C++ source
4. Reverse engineering .NET dll and exe
5. Reverse engineering CORBA IDL source
6. Reverse engineering Ada 9x source
7. Reverse engineering XML
8. Reverse engineering XML schema
9. Reverse engineering database with JDBC
10. Reverse engineering Hibernate mapping file
11. Reverse engineering PHP 5.0 source
12. On-demand Java reverse engineering
Code generation
1. Instant generate code from diagram
2. Generate Java
3. Generate C#
4. Generate VB.NET
5. Generate PHP 5.0
6. Generate Object Definition Language
7. Generate Flash ActionScript
8. Generate IDL
9. Generate C++
10. Generate Delphi
11. Generate Perl
12. Generate XSD
13. Generate Python
14. Generate Objective-C
Shape editor
1. Design your own shape
2. Import SVG shape
3. Incorporate different shapes into UML diagram
4. Organize shapes by gallery, category and stencil
5. Advanced shape design capabilities
Layout facilities
1. Automatic diagram layout
2. Aligning and centering shapes
3. Make all selected shapes same width/height
4. Automatic distribution shapes
Interoperability
1. Export/import EMF based UML2 model
2. Import/export XMI 1.0, 1.2 and 2.1
3. Import/export XML
4. Import/export VP project file format
5. Import/export Use Case model to MS Word
6. Import Rational Rose project file
7. Import ERwin data modeler project file
8. Generate BPEL for Oracle workflow engine
9. Generate BPEL for JBoss workflow engine
10. Export diagram to JPG, PNG, SVG and EMF image format
11. Slice exported diagrams
Automatic updates
1. Automatic on-line updates
2. Maintain local update server - Update synchronizer
Open architecture
1. Plug-in Support (Java)
2. Interact VP model with XML
VP-UML User's Guide
The user's guide will be divided in the following chapters:
• Introduction
Chapter 1: Getting started with VP for UML
• Working with VP for UML
Chapter 2: Working with Projects
Chapter 3: Working with Diagrams
Chapter 4: Generating Documentation
Chapter 5: Interoperability
Chapter 6: Automatic Diagram Layouts
Importing a Workspace
In case you have an existing workspace, you can import it so that all its default settings, user interface
perspectives and other preferences can be preserved, all the projects in the existing workspace will also
be copied to the workspace. To import a workspace, click Import Workspace...in the Workspace
Launcher, and then specify the path of the workspace used for import.
Dockable Environment
VP-UML adapts dockable environment which allows you to drag UI components around to customize
your favorite working environment. You can save the environment as a perspective which you can
reopen later. It allows you to use different perspectives for different purposes.
Using the Dockable Environment
The Dockable Environment is composed of a number of windows, called dockable frames. A dockable
frame may be standalone (floating) or docked into another container (split pane/tab pane).
You can click on the title bar of a dockable frame to drag it to anywhere you like.
The open specification dialog box contains several pages which show different aspects of the selected
item. Basically, general information such as name, stereotype, documentation, files are included in
most of the model elements. For some of the model elements, relationship between other diagram
elements (children, relations) and information that is specific to the diagram elements
(attributes/operations in Class, sub-diagrams of Package) will be displayed, too.
Chapter 2 - Working with Projects
A VP-UML project is a virtual container that stores all the diagrams and models related details. A VP-
UML project file, with extension .vpp, is a physical entity of project. This chapter offers basis in
working with VP-UML project, say creating, exporting and merging a project.
In this chapter:
• Creating, Opening and Saving Projects
• Exporting and Importing Projects
• Working with Project Templates
• Managing Project Properties
Opening a Project
To open an existing project, select File > Open Project...from the main menu or press Ctrl-O. This
displays the Open dialog box. In the dialog, locate the VP-UML project file (with extension. vpp) and
click Open to open the project file.
VP-UML also provides access to the most recently opened projects. You can click to open project from
the recent project list on the start page. An alternative is to open the project file by choosing File >
Reopen > %FILE_PATH% from the main menu. The maximum size of the list on start page is 5,
while the list from File menu is 10.
Saving a Project
Once the project is modified, you can save it to commit the changes to the project file. To save a
project, select File > Save Project from main menu. If the project has not been saved yet, this displays
the Save dialog box so you can specify a location for the file and click Save to save the file. If the
project has been saved before, it will commit the project data to the file.
Note
Alternatively, you can press Ctrl-S, or click the Save Project button on the toolbar, or select
from main menu File > Save Project as...to save a project. Notice that selecting the File >
Save Project as...from main menu is for saving the project to another location.
Exporting and Importing (Merging) of Project
Exporting Project
To export the current project into a new project, choose File > Export > VP-UML Project...from main
menu. This displays the Export Project dialog box. Specify all the relevant information and click
Export.
Importing (Merging) a VP-UML Project
To import a project, opening the master project in VP-UML (the project where the exported projects are
derived from). After that, select File > Import > VP-UML Project...from main menu. This displays
the Open dialog box. In the dialog, locate the VP-UML project file (with extension .vpp) and click
Open to open the project file. The changes in the selected project will be merged to the master project.
Project Template
A project template is a pre-defined project structure that can be used over again on new projects. It
defines the diagram type as well as their name of a project. For example, if you have created two class
diagrams in a project, Domain Model and MyClassDiagram, and you think this project structure will be
used over again in your development you can save this project as a project template for future use.
Saving Project as Template
To save the current project as a template, select File > Save as Project Template...from main menu.
This displays the Save Template dialog box.
Maintaining Project Template
To maintain existing templates, choose File > Maintain Project Template...from main menu. This
displays the Maintain Templates dialog box.
By selecting a template from the Templates list, its preview will be shown on the Template Preview
tree. To rename a template, select and right-click on the target template from the Templates list, select
Rename...from popup menu, enter a new name and then click OK to commit.
To edit the template description, select the target template from the Templates list and edit the
description in the Template Description text field.
To remove a template, select and right-click on the target template from the Template list and select
Delete Project Template from popup menu.
Connector Styles
Connectors are the lines that connect two shapes. When more shapes are created and more connectors
appear, one may find that it is annoying to handle the spaghetti like connectors. To overcome this
problem, VP-UML provides six connector styles to help you handle the connectors, namely Follow
Diagram, Rectilinear, Oblique, Curve, Round Oblique and Round Rectilinear.
Follow Diagram Connector Style
Follow Diagram is a "virtual" connector style in which the actual style will be determined by the owner
diagram. When you right-clicks on a diagram you can set its default connector style from its popup
menu, once the diagram connector style is changed, all connectors whose connector style is set to
Follow Diagram will be updated to follow the new style.
Rectilinear Connector Style
Once the connector is set to Rectilinear, the connector always remains either horizontal or vertical. You
cannot create a breakpoint on the connector by yourself. The breakpoints are generated on the
connector automatically after you reshape the line.
In the following figure, there is a pin icon at each end of the connector. Pinning a connection end point
allows the pinned end point of a connector to be fixed, no matter how the connecting shapes are
moved.
Connection Point
Each shape has a property called Connection Point that specifies how the connecting points of the
connectors should move if the shape is being moved.
Setting Connection Point Style
To set the connection point style:
Using the popup menu
1. Select one or more shapes and right-click on the selection.
2. Select the Format > Connection Point...from popup menu. This displays the Select Connection
Point Style dialog box.
Undo
You can roll back undesirable changes by performing Undo. To undo an action, perform one of the
following actions:
• Select Edit > Undo from main menu.
• Click on the Undo button on toolbar.
• Press Ctrl-Z.
Redo
This feature is to re-perform actions that were just undone. To redo an action, perform one of the
following actions:
• Select Edit > Redo from main menu.
• Click on the Redo button on toolbar.
• Press Ctrl-Y.
Copy
You can select and copy diagram element(s) and reuse it later on. There are five kinds of copy available
in VP-UML.
• Default Copy
• Copying within VP-UML
• Copying to Clipboard as OLE
• Copying to Clipboard as Image (JPG)
• Copying to Clipboard as Image (EMF)
Default Copy
The default copy is triggered when the hotkey Ctrl + C is pressed. The actual action performed by
default copy follows the VPUML application option (as configured in the Options dialog box ->
Diagramming category -> Environment page). The default copy action can be set to one of the
following:
• Copying within VP-UML
• Copying to Clipboard as OLE
• Copying to Clipboard as Image (JPG)
• Copying to Clipboard as Image (EMF)
The default "default copy" action is Copying within VP-UML
Alignment
This feature provides a facility to align selected diagram elements.
To align shapes, perform one of the following actions:
• From the main menu, choose Edit > Align Shapes and select one of the alignment methods. You may
also select the menu item Align Shapes...to align selected diagram elements by using a dialog box.
This will be described later in the section.
• Right-click on the selection and choose Alignment from popup menu and select one of the alignment
methods in the popup menu. You may also select the menu item Align Shapes...to align selected
diagram elements by using a dialog box. This will be described later in the section.
• Click on the drop down arrow beside the Alignment button on toolbar and select one of the
alignment methods from the popup menu. You may also select the menu item Align Shapes...to align
selected diagram elements using a dialog box.
Presentation Options
Click the Presentation Options tab on the Form Diagram dialog box to set the presentation options
for the classes in the new diagram (fig 3.15)
Hierarchical Diagram
If you selected Hierarchical in the cascading menu, a new diagram is created with the diagram elements
of the selected models, the parents and children of the diagram elements and the generalization
relationships between the diagram elements (fig. 3.16).
Figure 3.15 - The presentation options
In the following case, the class model called "Clerk" is selected. The new diagram (on the right hand
side) shows the generalization relationships between the "Clerk" model and other related models (fig.
3.17).
Sub-Diagrams
Most diagram elements in VP-UML allow sub-diagrams to be defined to facilitate the traceability
across diagrams.
Creating a Sub-Diagram
To create a new sub-diagram for a diagram element, perform one of the following actions:
• Right-click on the diagram element and choose Sub Diagrams from the popup menu to expand it. A
list of recommended sub-diagram types (according to the nature of the model) is shown. If the type of
diagram you want to add is not one of the recommended types, select Other Diagrams to expand it.
From the Sub Diagrams or Other Diagrams menu, select %SUB_DIAGRAM_TYPE% > Create
%SUB_DIAGRAM_TYPE% (e.g. Sub Diagrams > Use Case Diagram > Create Use Case Diagram).
• Right-click on the diagram element and choose Open Specification from popup menu. This displays
the Open Specification dialog box. From the dialog box, switch to Diagram tab, click Add. A list of
recommended sub diagram types (according to the nature of the model) is shown. If the type of
diagram you want to add is not one of the recommended types, select Other Diagrams to expand it.
From the root menu or Other Diagrams menu, select the desired type of sub-diagram to create.
Logical View
The Logical View refers to a user's view of the way project is organized. It provides another view of
creating, structuring and sharing the UML diagrams and models apart from the traditional Diagram
Navigator, Model Tree View and Class Repository.
Modeler
Modeler is a generic diagramming environment providing plenty of shapes apart from ordinary UML
notations. You can create UML diagrams with the shapes from the stencils in VP-UML.
Although the original UML notations are rich, but still may not expressive enough to present your idea.
Stencils in VP-UML provide a large variety of shapes apart from the ordinary shapes, and can be used
in the UML diagram.
Stencil
A stencil is a collection of shapes associated with a particular drawing type. Stencils are stored under
Stencil Pane which displays all the available stencils in tabbed pages.
Diagram Navigator
The Diagram Navigator displays all diagrams within the project in a form of a project tree and
organizes them by their diagram type. Through the use of a folding tree structure you can browse the
names of these diagrams by either expanding or collapsing the folders and perform sorting by diagram
type and name.
Updating a Report
In reality, software design keeps on changing from time to time. Originally, users need to modify the
related documents manually to ensure that it is fully conform to the latest design. Report Writer binds
closely with the VP-UML project, hence generated element can then be updated without affecting the
user-defined content.
To update a report, choose the desired report for updating from the drop-down menu and click the
Update from Model button from the toolbar or select Report > Update from Model from main menu.
Update process will start automatically. Data will be extracted from project and replace with the
content within the existing generated element.
Menu Pane
It shows the sub-menus of the Navigator pane. The contents shown in this pane varies with the link you
clicked in the Navigator Pane. For more details about the possible contents please refer to the
Navigator Pane section. To view the details of an item (diagram, model or package/class), click on its
link in the Menu Pane and its details will be shown in the Content Pane.
Models
The Models section of the diagram content page shows the name, type and documentation of the
models of all shapes in the diagram. You can click on the link of a model to view its details.
Model Content
The type, name and general model properties of a model are shown in the content page.
Relationships The summary of the relationships of the model is shown in the Relationships
Summary section. Just click on a relationship interested and it will take you to the relationship's details
in the Relationships Detail section.
Chapter 5 - Interoperability
XMI, short for XML Metadata Interchange, is a widely used XMI based format for exchanging
metadata information. The most common use of XMI is for interchange of UML objects.
VP-UML facilitates excellent interoperability by allowing exchanging UML diagrams and models via
XMI. Apart from this, you also can import models created from IBM Rational Rose previously.
This chapter guides you through the process of importing an XMI file and IBM Rational Rose model,
and exporting VP-UML project as a XMI file. In this chapter:
• XMI Importer and Exporter
Figure 5.1
Class Diagram
Hierarchy base (Factory class diagram)
Performing Layout
• To layout all the diagram elements in the diagram, right-click on the diagram and select Layout from
the popup menu.
• To layout the selected diagram elements, right-click on the selection and select Layout from the
popup menu (make sure there are more than one diagram elements selected).
Appendix D - Keyboard Shortcuts
Action -----Hot Key\nDescription
New Project... Ctrl-N
To create either a new UML 1.x or a new UML 2.0 project. The Create New Project dialog box
will appear which allows you to create a blank project, a project created from existing project
templates, or import from other CASE tool project files.
Open Project... Ctrl-O
To open an existing project.
Save Project….. Ctrl-S
To save the current project. If the project is a new one, this operation is equivalent to "Save
Project as...
New Diagram...Ctrl-Shift-N
To create a new diagram.
Print... Ctrl-P
To print selected diagrams in the current project. A new dialog box will be presented, allowing
you to select the diagrams to be printed, as well as configuring various printing options.
Undo…… Ctrl-Z
To undo the last action that you performed.
Redo…… Ctrl-Y
To redo the last action that you performed.
Repeat Create... F3
To repeat create last shape.
Cut ……Ctrl-X
To cut the selected diagram elements from the diagram and copy them to the application
clipboard.
Default Copy……… Ctrl-C
To perform the copy action as configured in the VP-UML application options (Options dialog
box -> Diagramming category -> Environment page). The default "default copy" action is
Copying within VP-UML.
Copy to Clipboard as OLE…….Ctrl-Shift-C
To copy the selected diagram elements from the diagram to the system clipboard. The diagram
elements can then be pasted to OLE containers like Word, Excel and PowerPoint, which can be
edited directly.
Copy toClipboard asImage )JPG(……..Ctrl-Alt-C
To copy the selected diagram elements as a JPG image to the system clipboard.
Copy to Clipboard as Image )EMF(………Ctrl-Alt-Shift-C
To copy the selected diagram elements as an EMF image to the system clipboard.
Duplicate……. Ctrl-E
To duplicate the selected diagram elements.
Paste View…….. Ctrl-V
To paste the contents of the application clipboard to the drawing pane.
Delete……. Delete
To delete the selected diagram elements from the diagram.
Select All………. Ctrl-A
To select all the diagram elements from the current diagram.
Deselect………. Ctrl-D
To deselect all diagram elements.
Find Ctrl-F
To find elements (model elements and diagram elements) in the current project.
Jump to Element in Active Diagram.......Ctrl-J
To jump to an element in the active diagram.
Jump to Element........Ctrl-Shift-J
To jump to an element in the project. If the selected element belongs to a diagram, this diagram
will be opened, and the element will be selected and centered in the diagram. If the selected
element is a model that does not have a view, it will be selected in the Model pane.
Group ……Ctrl-G
To organize shapes in group. The group can manipulate related shapes together (select, deselect, move,
align and resize).
Ungroup……..Ctrl-Shift-G
To ungroup the grouped shapes in diagram.
Align Shapes……… F12
To display the Align Shapes dialog box that allows you to configure the top/bottom, left/right
alignments and same width/same height options all at a time.
Show Diagram Navigator………Ctrl-Shift-I
To open/activate the Diagram Navigator.
Show Model Pane……..Ctrl-Shift-O
To open/activate the Model Pane.
Show Class Repository……..Ctrl-Shift-L
To open/activate the Class Repository Pane.
Show Logical View………Ctrl-Shift-A
To open/activate the Logical View Pane.
Show ORM Pane……..Ctrl-Shift-R
To open/activate the ORM Pane.
Show Stencil Pane……..Ctrl-Shift-S
To open/activate the Stencil Pane.
Show Property Pane……..Ctrl-Shift-P
To open/activate the Property Pane.
Show Diagram Overview Pane……….Ctrl-Shift-V
To open/activate the Diagram Overview Pane.
Show Documentation Pane……..Ctrl-Shift-U
To open/activate the Documentation Pane.
Show Message Pane………Ctrl-Shift-M
To open/activate the Message Pane.
Toggle Show Resources……….. Ctrl-R
To toggle the visibility of resources.
Full Screen ………F11
To toggle the full screen mode (display only the Toolbar and the Diagram Pane, all the
other UI components will be hidden).
Zoom In……Ctrl-Equals
To magnify the diagram by 10%.
Zoom Out………Ctrl-Minus
To diminished the diagram by 10%.
Zoom 100% )Actual Size( Ctrl-0
To view the diagram in its actual size.
Previous Diagram…….. Alt-Left
To switch to the previous diagram.
Next Diagram ……..Alt-Right
To switch to the next diagram.
Switch to Diagram..........Ctrl-Shift-E
To manage windows by selecting windows to close, and/or activate a selected window.
Close Active Window…….. Ctrl-W
To close the active window.
Close All Windows………Ctrl-Shift-W
To close all opened the windows.
Open Specification... Enter
To open the specification of active diagram or diagram element
Classes
Action ………Hot Key ……….. Description
Add Attribute………. Alt-Shift-A………. To add a attribute to a currently selected Class
Add Operation ……….Alt-Shift-O………. To add an operation to a currently selected Class
Entities
Action ……..Hot Key ……… Description
New Column….. Alt-Shift-C….. To add a new column to an currently selected Entity or ResultSet