| | EventStudio | UML Sequence Diagram Tools |
| Multiple scenario support | - Sequence diagrams can be generated for multiple scenarios from the same input file.
- Success and failure legs of a feature are defined using the case statement.
- A selection of feature legs defines a scenario
- Documents are generated for all defined scenarios
- EventStudio automatically reconciles with newly added scenario legs
- Use the scenario bar to quickly navigate to scenario legs
| - Not supported. Draw separate sequence diagram for every scenario
|
| Automatic consistency checking and review | EventStudio reviews your design and catches errors like:- Free running timers
- Resource leaks
- Unfinished actions
- Object deletion without cleanup
| |
| Document layout and formatting | - Documents are produced in industry standard PDF and HTML formats
- Documents are always produced on standard paper sizes
- EventStudio automatically scales and reorients the sequence diagrams for your selected paper size
- Scenario legs are added as bookmarks in the PDF document
- You can control the level of detail in the generated sequence diagrams
- Generate summary sequence diagrams to get a "bird's eye view" of a feature
| - Most UML tools produce sequence diagrams that are larger than the standard paper sizes
- You are expected to tape the different sheets together
|
| Editing and maintenance | - EventStudio has a built in standard syntax coloring text editor
- You can also use any editor of your liking to edit files
- No need to learn another "graphical editing system"
- FDL files are ASCII so they are compatible with any configuration management and version control system
- Comparing and merging different versions of the FDL file is easy
- Reordering columns or messages in a sequence diagram just involves copy and paste
- Work on different parts of a FDL file by splitting your editor window
| - Most UML tools have clumsy graphical editors for drawing sequence diagrams
- Graphical editors are difficult to work with when drawing large sequence diagrams
- Comparing and merging of different versions of graphical files is confusing and impractical
- Reordering columns or messages often involves cumbersome drag and drop on a scrolling screen
|
| Timer management | - Timer start, stop and expiry are supported
- Free running timers at object deletion and feature end are reported as warnings
| |
| Object actions | - Actions can be single step or they may involve action start and stop
- Single step action example: "object inserts a value in the database"
- Action start/stop example: "begin feeding dial-tone", "end feeding dial-tone"
- Actions that have been started but not stopped are flagged as warnings
| |
| Resource management | - Resource allocation is supported via resource allocate and resource free statements
- Resources that have been allocated but not freed are flagged as warnings
| |
| State transitions | - State transitions are supported
| |
| Dynamic object creation/deletion | - Objects can be dynamically created and destroyed
- Resource leaks, unfinished actions and free running timers at object deletion time are reported as warnings
| - UML has only basic support for object creation and deletion
|
| Environment interactions | - Environment can be used to specify interactions with entities that are outside your system
- EventStudio supports two environment entities (left and right)
| |
| Module, processor and object relationships | - EventStudio allows you to specify the architecture of the system.
- You can define modules, processors and objects
- Modules contain processors
- Processors contain objects
- You can define multiple instances of the same object type
| |
| Interface sequence diagrams | - EventStudio can automatically generate interface documents by filtering on individual instance or object type
- A module level interface document will list interactions involving processors and objects within the module
- A processor level interface document will list interactions involving objects within the module
- An object level interface document will list interactions involving that object
- A message level interface document will only list message interactions containing the filter string
| |
| Interaction sequence diagrams | - Processor interaction document includes only inter-processor messages. Intra-processor interactions are excluded.
- Module interaction document includes only inter-module messages. Intra-module interactions are excluded.
- Environment interaction document includes only message interactions with the environment. All other message interactions are excluded.
| |
| Text description and comments | - Supports standard C type comments
- Remarks are printed on the right side of the sequence diagram
- Block remark is printed along the entire width of the sequence diagram
- Unresolved issues during design can be listed with an issue statement
- EventStudio reports unresolved issues as warnings
| - Limited support to text based comments
|
| Unit test procedures | - Generate unit test procedures for objects
| |
| Object wise summary | - List all interactions as an object wise summary
- You have the option to restrict the summary to a particular module, processor or object
| |
| Message statistics | - Generate message interaction statistics
- Counts of message exchanges between modules, processors and objects are listed
- Allows you to compare the complexity of different modules by looking at the message interaction statistics
- Managers can use these statistics for staffing decisions
| |