CaseComplete Roadmap

Similar documents
CaseComplete 2010 Modeling Process

Page Topic 02 Log In to KidKare 02 Using the Navigation Menu 02 Change the Language

Alfresco Content Services 5.2. Getting Started Guide

BrainStorm Quick Start Card for Microsoft OneDrive for Business

Getting Started with AnyBook

MICROSOFT WORD 2010 BASICS

WORKING IN TEAMS WITH CASECOMPLETE AND SUBVERSION. Contents

TourMaker Reference Manual. Intro

Office 365 Training For the

WORKING IN TEAMS WITH CASECOMPLETE AND THE CASECOMPLETE PROJECT SHARING ADDIN. Contents

Oracle Cloud. Content and Experience Cloud Android Mobile Help E

The IBM I A Different Roadmap

Bucknell University Digital Collections. LUNA Insight User Guide February 2006

In our first lecture on sets and set theory, we introduced a bunch of new symbols and terminology.

Esri Story Maps let you combine authoritative maps with narrative text, images, and multimedia

In this tutorial we are going to be taking a look at the CentovaCast 3 panel running ShoutCast 1 and how to get started with using it.

Google Drive: Access and organize your files

CollabNet TeamForge 6.2 User Guide

Original photo by Jonathan Fadden

DEALER TRAINING MANUAL YOUR ONLINE BACK OFFICE

MERCATOR TASK MASTER TASK MANAGEMENT SCREENS:- LOGIN SCREEN:- APP LAYOUTS:-

2 Document Manager Lite v5.2 User Guide

Oracle Cloud. Content and Experience Cloud ios Mobile Help E

Google Groups. Using, joining, creating, and sharing. content with groups. What's Google Groups? About Google Groups and Google Contacts

Contents Office 365 Groups in Outlook 2016 on the web... 3 What are groups?... 3 Tips for getting the most out of Office 365 Groups...

Introduction to Microsoft Office 2007

QuickStart Guide MindManager 7 MAC

A Quick Introduction to the Genesis Framework for WordPress. How to Install the Genesis Framework (and a Child Theme)

GW Box User Guide. Have additional questions? Visit community.box.com for more information and training resources. Contents... 1

Chronodat Issue Tracker Add-in. User Manual CHRONODAT, LLC. February 15, 2017 Version P age

Table of Contents. Revu ipad. v3.6. Navigation. Document Manager. File Access. Markups. Signature Tool. Field Verification Measurements

GeographyPortal Instructor Quick Start World Regional Geography Without Subregions, Fifth Edition Pulsipher

Task Management User Guide

Unit 10: Advanced Actions

Designing a Database -- Understanding Relational Design

Salesforce Classic Guide for iphone

PsychPortal Instructor Quick Start for Myers, Psychology 10e In Modules

Run and Modify Reports

2013 edition (version 1.1)

Microsoft Office Word 2010

ClientBase. Windows. FUNctionality

EnviroPortal Instructor Quick Start for Friedland, Relyea, & Courard-Hauri Environmental Science: Foundations and Applications

Salesforce Classic Mobile Guide for iphone

Microsoft Office SharePoint. Reference Guide for Contributors

Lab 7 Macros, Modules, Data Access Pages and Internet Summary Macros: How to Create and Run Modules vs. Macros 1. Jumping to Internet

Patient Portal User Guide The Patient s Guide to Using the Portal

eportfolio Support Guide

Content Author's Reference and Cookbook

AHC SharePoint 2010 Intro to Content Administration

Office 365 for Business Basics

Tracking changes in Word 2007 Table of Contents

ONLINE REGISTRATION: A STEP-BY-STEP GUIDE

Hello, and welcome to another episode of. Getting the Most Out of IBM U2. This is Kenny Brunel, and

TeamForge 7.1 User Guide

Volunteer Scheduler Pro Quick Start Guide Salvation Army

EDITING AN EXISTING REPORT

USING DRUPAL. Hampshire College Website Editors Guide

Navigating Your Profile

Microsoft Office OneNote 2007

ATMS ACTION TRACKING MANAGEMENT SYSTEM. Quick Start Guide. The ATMS dev team

In the first class, you'll learn how to create a simple single-view app, following a 3-step process:

SharePoint: Fundamentals

Administrative Training Mura CMS Version 5.6

SharePoint: Fundamentals

How to Use Google. Sign in to your Chromebook. Let s get started: The sign-in screen.

CheckBook Pro 2 Help

RECORD. Published : License : None

Getting Help...71 Getting help with ScreenSteps...72

Contents Release Notes System Requirements Using Jive for Office

Atlassian JIRA Introduction to JIRA Issue and Project Tracking Software Tutorial 1

The Stack, Free Store, and Global Namespace

Roxen Content Provider

Siteforce Pilot: Best Practices

d95f-41eb-addd- 5e6eff41b083

Getting Started Guide

Bridgit Conferencing Software User s Guide. Version 3.0

I made a 5 minute introductory video screencast. Go ahead and watch it. Copyright(c) 2011 by Steven Shank

Google Docs Website (Sign in or create an account):

INTRODUCTION... 4 GETTING STARTED WITH OFFICE ONENOTE

VEDATRAK CRM 3.0. User Guide

One of the fundamental kinds of websites that SharePoint 2010 allows

Edmodo for Teachers Guide (Taken directly from Edmodo s site.)

When. you.) This. not available. organization. If it s. might

Voyant Connect User Guide

Ning Frequently Asked Questions

edev Technologies integreat4tfs 2016 Update 2 Release Notes

The following topics describe how to work with reports in the Firepower System:

Atlas 2.0. Atlas Help

Creating Word Outlines from Compendium on a Mac

Tutor Handbook for WebCT

Updated PDF Support Manual:

Life after Lotus Notes

AdminPlus Contact DB User Guide LEARN OUR SOFTWARE STEP BY STEP

EconPortal Instructor Quick Start for Krugman/Wells Macroeconomics, 3e

Managing Your Website with Convert Community. My MU Health and My MU Health Nursing

University of Sunderland. Microsoft Word 2007

Creating Reports in Access 2007 Table of Contents GUIDE TO DESIGNING REPORTS... 3 DECIDE HOW TO LAY OUT YOUR REPORT... 3 MAKE A SKETCH OF YOUR

BEGINNER PHP Table of Contents

Working with Tables in Word 2010

Furl Furled Furling. Social on-line book marking for the masses. Jim Wenzloff Blog:

Transcription:

CaseComplete Roadmap Copyright 2004-2014 Serlio Software Development Corporation

Contents Get started... 1 Create a project... 1 Set the vision and scope... 1 Brainstorm for primary actors and their goals... 1 Questions that reveal actors:... 3 Identify the first set of use cases... 3 Create use cases from actor goals... 3 Describe each use case... 3 Add, subtract and merge use cases... 3 Tips on finding use cases... 4 Create a use case diagram... 4 Consider user stories... 5 Create user stories from actor goals... 5 Describe each story... 5 Add acceptance criteria... 6 Lay stories out on a diagram... 6 Organize your project... 7 Create packages... 7 Create a package... 7 Move items into your package... 8 Filter by package... 9 Strategies for choosing packages... 9 Create and maintain a dictionary... 9 Create dictionary package(s)... 9 Add entries to the dictionary... 9 Add fields to a dictionary entry... 10 Add constraints to a field... 10 Add supplemental information... 11 Notes... 11 Issues... 11 Related Documents... 11 Develop your use cases... 12 Add preconditions and guarantees... 12 Write the main success scenario... 12 i

Tips to keep your main success scenario clean and simple... 12 Write extensions... 13 Write the extensions... 13 Write the extension handling steps... 13 Generate an activity diagram... 14 Move complex flows to their own use case... 14 Enhance the picture... 15 Identify non-functional requirements and business rules... 15 Add requirements... 15 Add child requirements... 15 Link requirements to other items... 15 Consider these attributes when brainstorming for non-functional requirements... 16 Add screen mockups... 16 Create a diagram... 16 Add Shapes... 16 Link diagrams together... 16 Create test cases... 17 Create a test scenario... 17 Edit the test scenario... 17 Add references to screen mockups... 18 Create more test scenarios... 18 Share your content... 18 Generate reports... 19 Select the type of report and the content... 19 Create a custom report... 19 Publish to Requirements.cc... 19 Upload your project... 19 Share with others... 19 Create a history of changes... 20 Create a poll... 20 Export... 20 ii

Get started In this set of steps you'll create a new CaseComplete project that has a vision document, a context diagram, and an initial set of actors and use cases. Create a project First things first, create a project to hold your use cases and requirements. Select File / New, then choose a Local or Shared project. A shared project allows multiple team members to contribute to the same project If you're just starting out, choose Local (you can always share it later if you want) Learn more about shared projects Set the vision and scope Before you start defining requirements, project stakeholders need to agree on the business goals and the scope of the system under development. A vision document is a great place to record this information. CaseComplete provides a Word template to help you get started, or you can attach your own document as a related document (see how). Next, create a context diagram that shows the external actors (people or hardware systems) that provide inputs to the system or receive outputs from the system. A context diagram further defines the scope of your system and gets you started thinking about actors and their goals. Example Brainstorm for primary actors and their goals Describing primary actors in a system puts a focus on who will use the system and how it will be used, so it's a natural precursor to identifying use cases. An actor is anyone or anything that 1

interacts with your system. Actors can be human (defined by a role such as Bank Customer, not a specific person), or non-human such as hardware or software systems. During brainstorming sessions, you may want to select View / Quick Entry View to quickly add actors and descriptions: Add goals for each actor - the things they need to accomplish while using the system. Use simple 2 or 3 word verb-noun phrases such as "Make Payments". A quick way to add goals for the selected actor is via the bulleted list in the Goals tab found at the bottom of the main window: 2

Questions that reveal actors: Who initiates events in the system? Who or what interacts with the system? Are there reporting interfaces? Are there system administrators? Are there legacy systems? Are there external hardware or software systems? Are there external systems that need to be informed of events in the system? Are there external systems that provide information? Who starts and stops the system? Who does user and security management? Is there a monitoring process? How are software updates performed? Is 'time' an actor because the system does something in response to a time event? Who evaluates system activity and performance? Who evaluates system logs? Identify the first set of use cases Create use cases from actor goals Use Tools / Use Cases from Goals (take me there) to create your first set of use cases from the actor goals you've defined so far. Keep in mind that there isn't necessarily a 1 to 1 correspondence between actor goals and use cases. Describe each use case Add 2 to 6 sentences in the description to remind people what's going on in the use case. State the purpose, describe the major behaviors, and indicate the result when the use case is successful. Add, subtract and merge use cases Writing use cases is a process of discovery so you'll be modifying your set of use cases as you gain a greater understanding of the system. When creating new use cases, use 2 or 3 word verb-noun phrases, such as Evaluate Loan. 3

Tips on finding use cases Consider inputs and outputs to the system: every input must have a use case to do something with it, and every output must have a use case to produce it What causes someone to interact with the system? When does the system need to produce something? What signals the system to do something? Consider different levels of use cases: summary, user goal and subfunction. Create a use case diagram Create a use case diagram if you d like to show a visual overview of related use cases and actors: Then drag and drop items from the project browser into the diagram. Add boxes to indicate groupings or convey other information: 4

When you drop shapes into the diagram, arrows will automatically be drawn between related items in the diagram. To bring in related shapes that aren't already in the diagram, use the shape's context menu: Consider user stories Create user stories from actor goals A user story is a short description of a feature, written from the perspective of the user. Stories are similar to use cases, but don't contain detailed steps and scenarios. On some projects, you might not need the detail found in a use case. Or you might choose to start with user stories, then evolve to use cases as needed. Use Tools / User Stories from Goals (take me there) to create your first set of user stories from the actor goals you've defined so far. Keep in mind that there isn't necessarily a 1 to 1 correspondence between actor goals and stories. Describe each story A good user story is short and captures some functionality that is valuable to a stakeholder. Using the quick-entry view helps make sure you're not writing stories that are too long and complex. 5

Add acceptance criteria Capture details and assumptions about each story in its acceptance criteria. Together, these criteria can be used to test whether a story has been implemented. Lay stories out on a diagram Traditionally, stories are written on index cards. The cards can be grouped and sorted in order to help you plan your project. 6

Organize your project Perform these steps throughout the lifetime of your project to keep your project organized. Create packages As your list of project items grow, group them into packages. A package is very similar to a folder on your computer. (If you're wondering why we call them packages, it's because that's what UML calls them). Create a package Use the button on the Home tab, or right click on any existing package in the project browser: You'll be presented with a dialog to choose a package name and a file name (these can be different if you'd like) and select the ID format: 7

Saving a package to its own file is optional, but it's important for shared projects since it allows team members to simultaneously work on the same project by checking out packages for editing. Learn more about working in teams. If you choose to save it in its own file, choose a unique prefix or starting number so that IDs for items in this package don't overlap with IDs from other packages. If you ever change your mind, choose Tools / Renumber to select a different prefix or starting number. Move items into your package OK, you've got a package now, but it's empty. Move existing items into your new package using drag and drop......or by selecting 1 or more items and using the context menu: 8

Filter by package Select a package in the navigation bar (seen here) or the project browser to show only the items belonging to that package: Any new items that you create will automatically get added to the currently selected package. Learn more about project navigation in a video quick tip). Strategies for choosing packages Create a package for each actor. Break your project into functional areas, such as Billing, Inventory Management, Shipping, etc. Create packages per team member. Packages can own other packages with no limit to how deeply they can be nested. Create and maintain a dictionary A dictionary holds two types of entries: Definitions to help reduce miscommunication between stakeholders. Domain objects and their fields. Example: an Address has a Street, City, State and Postal code. Create dictionary package(s) Any package can hold dictionary entries, however you may want to create one or more packages that contain dictionary entries exclusively. Create a dictionary package just as you create any other package (described above). Add entries to the dictionary An easy way to add a new dictionary entry is to do it right in the text editor: 9

Once added, the term will automatically change color to indicate it's a dictionary entry. Note: other text that already refers to the entry you just created won't change color until the next time you edit that text. You may also add entries by right clicking in the dictionary list or on a package in the project browser. Add fields to a dictionary entry Add fields to document data associated with a dictionary entry. First, select a dictionary entry and then right click anywhere in the Fields tab found at the bottom of the main window: Add constraints to a field Add constraints to specify valid inputs for a field (see screenshot above, select Edit constraints). Examples: Field is required Valid values are Red, Green or Blue 50 characters maximum 10

Add supplemental information All major items (use cases, actors, packages, etc.) can hold notes, issues and related documents. Add these via the tabs along the bottom after selecting an item, or on the item's details form: Notes Notes can be anything you want to remember regarding the item, such as reminders, reviewer comments, changes made to the item, etc. CaseComplete will show the date that the note is created. Issues When you encounter questions that can't immediately be answered or topics that need clarification, add them to the issues section. Issues for the selected item appear in the tabs along the bottom, while the aggregate list of issues appears in the Issues tab. From either location, you can open the details form for the issue via the context menu: This will allow you to record additional details about the issue, such as a description of its resolution when the issue is closed. Related Documents Attach external documentation or URLs to the selected item by right clicking in the related documents section, or by dragging in a file from Windows Explorer. Here are a few examples of documents you might attach: Documents that contain background material, source documentation, or information about legacy systems Word documents that contain tabular data Visio documents A picture or screenshot using any standard image file format When generating a Word report, you have the option to include the contents of the document into your report for many document types including Word, Visio, and images files. 11

Develop your use cases It's time to start adding details to your use cases. You will be describing the flow of the use case when everything goes as expected, as well as documenting failure conditions. Don't get too caught up in the technical aspects of use cases - just concentrate on writing simple prose that's easy to read and communicates your ideas. Add preconditions and guarantees Preconditions describe what we think is true before the use case executes, for example the completion of a prior use case. They help define the scope of the use case. Add preconditions on the Details tab of the use case details form. Add one precondition per line. Examples from an ATM system: Customer has an ATM card and PIN. ATM is online and in service. Bank welcome screen is displayed Likewise, add success guarantees which describe what happened as a result of successful completion of the use case. Examples: The email was sent. The file was saved. Write the main success scenario Next, write the main success scenario, the actions performed in order to accomplish the use case goal. First, describe the most common flow of events where nothing goes wrong (you'll describe failure conditions and alternative flows later on when you write extensions). Steps often take on one of these 3 forms: An interaction using actor/verb phrases: Customer swipes card. System displays options. A validation: System validates password. An internal change: System updates account balance. Tips to keep your main success scenario clean and simple Don't use "check whether" phrases or "if then else" statements. Instead use a validation as described above. Assume the validation succeeds in the main success scenario and handle failures in the extensions. Keep user interface details out of the scenario. Besides cluttering your steps with too much detail, you shouldn't be making any assumptions about your user interface at this point. Focus on the goal (e.g. customer chooses desired language), not how it's accomplished (customer selects the language option from the main dropdown list). 12

Keep data definitions out of the use case and instead use dictionary entries with fields. (See Create and maintain a dictionary). Use the Tab key to indent a step (i.e. create a sub-step) and Shift+Tab to move a nested step out. Use Ctrl+Arrow to reorder steps. These options are also available on the context menu. Write extensions Use extensions to document what should happen when things go wrong or when the actor takes a different path through the use case. An extension consists of a condition that the system can detect (e.g. timeout waiting for a password) followed by a list of steps to handle the condition. Write the extensions Start by brainstorming for extensions. Here are some ideas to help you get started: Alternate success path Incorrect behavior by primary actor Inaction by primary actor Validation needed Lack of response from supporting actor Incorrect response from supporting actor Internal failure of the system Critical performance failure of the system To create an extension, select the step in the main success scenario where the extension occurs, and press Ctrl+E (or use the context menu). The extension and step numbers will stay in sync as other steps are added or removed. Press Alt+E to create an extension that can happen at any time during the flow of events. These are denoted with an asterisk. Write the extension handling steps Next, start writing the steps that occur in response to each condition. If the system responds the same way for two conditions, merge them together. Example: In an ATM system, Card inserted upside down, and Card Damaged might both be handled by a more generic condition, ATM can't read card. A phrase such as Continue at step 3.1 in the extension's last step will join the extension back up with the main success scenario. That number will automatically be adjusted as steps are added or removed to the main success scenario. 13

Generate an activity diagram To get a visual representation of the steps and their extensions, right click on a use case and select Generate Activity Diagram. If you add or remove steps after creating the diagram, regenerate the diagram in the same manner. Move complex flows to their own use case Move steps into their own sub-use case when: A set of steps is used by multiple use cases, for example logging into the system. A use case is too long, making it hard to understand. Generally, the main success scenario should be about 3 to 10 steps. Extension steps need their own extensions. To move steps into a new use case, select the steps and right click on one of them. In this example, we'll move 3 steps and their extensions to a new use case to handle logging in: CaseComplete replaces the steps you moved out with a reference to the new use case. You may Ctrl+Click on the ID reference to navigate to the new use case: 14

To reference the Log In use case again, press Ctrl+L or use the context menu when editing any text. When a reference appears in a step or extension as above, it's treated as an included use case. Included use cases are also useful in summary use cases. They are shown in use case diagrams with a dashed arrow: Enhance the picture At this point, you've got some use cases that are fairly detailed, and probably some that aren't quite as far along. It's time to start adding requirements, screen mockups, and test cases. Identify non-functional requirements and business rules Use cases describe the behavioral requirements of the system from the actor's point of view. But, that's only part of the story because they don't describe non-functional requirements, things like business rules and quality requirements. Add requirements Add a requirement using the toolbar button or by right clicking on a package. In addition, you can right click on any selected text to create a requirement from that text. Set the type of the requirement in the properties window or the details form. Choices for type include business rule and performance, or you can specify your own custom type. Add child requirements Create a child (aka nested) requirement by right clicking on a requirement and selecting Add child requirement. To nest an existing requirement, drag and drop it on the desired parent. To move a child requirement back to the top level, drag and drop it on a package. Link requirements to other items You can reference requirements from use cases, dictionary entries and other requirements. For example, reference the requirement, Response time must be less than 2 seconds, from all the use cases where it's applicable. Doing this will help when testing your use cases because you'll have the list of requirements that must be met. Create a reference in one of two ways: Drag and drop 1 or more requirements onto a use case, or vice versa. Use Shift+drag when creating a reference between requirements; otherwise you'll end up creating a child relationship Use the Select requirements dialog from the details form. 15

Consider these attributes when brainstorming for non-functional requirements Attributes important to users: Availability Efficiency Flexibility Integrity Interoperability Reliability Robustness Usability Performance Scalability Attributes important to developers: Maintainability Portability Reusability Testability Add screen mockups As mentioned earlier, your use cases should be free from user interface details as much as possible. Instead of describing the user interface in the use case steps, create screen mockups. Create a diagram First, create a diagram attached to the item that you're describing the user interface for. All of the main item types (use cases, actors, etc.) can own diagrams. Add Shapes Select the UI Shapes library for a set of shapes such as buttons and dropdown lists. Add them to your diagram by dragging them in. Save any custom shapes you create to your own shape library so you can use them in any diagram. Learn how. Link diagrams together You can simulate screen flow by linking diagrams together. Drag a diagram from the project browser and drop on any shape or empty area in diagram: 16

When you hover over a shape that links to another diagram, you'll be given the opportunity to navigate to it: Create test cases Use Cases serve as a great foundation for your functional testing. By adding guidance to your use cases such as the procedures and inputs needed to complete various tests and a description of the expected results, you can create detailed test plans. Create a test scenario Create a test scenario from the project browser, or in the use case details form: Edit the test scenario Add procedures, inputs and expected results to steps and extensions of the use case. Do this from either of two locations: 1) Directly in the use case details form: 17

2) Or in the test scenario details form. Open the test scenario details form from the use case details form, or from the project browser: The test scenario details form allows you to add procedures and expected results as above. In addition, it lets you edit other properties of the test scenario, such as its description and priority, and lets you add notes, issues and related documents. Add references to screen mockups If you've created screen mockups, you may want to reference them either in the use case's steps, or in the test scenario's procedures and expected results (right click / Insert Diagram Reference). By doing so, when you upload tests to TFS (via the Connect tab), images of the diagrams will be uploaded as attachments to the test case. Create more test scenarios Each use case can own any number of test scenarios. You may want to create one for each possible flow through the use case, for example, one for each extension. Or you may want to keep your test scenarios more general, for example, create one for success scenarios, one for user input errors, and one for failure conditions. It's up to you how granular your test scenarios are. You should also create test scenarios for your requirements. Example: for a business rule requirement that deals with collecting taxes from a customer, you might have a test scenario that identifies which countries and states to test for. You create test scenarios for requirements in the same manner that you create them for use cases. Share your content Solicit feedback from other stakeholders throughout your project's lifecycle. Share your requirements by generating reports, publishing to Requirements.cc, or exporting to another application. 18

Generate reports Select the type of report and the content There are many built-in report templates to choose from. To generate a complete specification of your project in one document, use the Project Specification Word report. Other templates allow you to report on a specific kind of item, such as the Issues or Requirements reports. Most templates allow you to report on a subset of your project. For example, when generating a use case report, you have the option to include all use cases, just those currently selected in the use case list, or just those belonging to a specific package: Create a custom report Reports are fully customizable, allowing you to make customizations such as including your company's logo, changing the layout, or changing what information is shown. The instructions for customizing a report are beyond the scope of this roadmap, but it's not as hard as you might think. Learn how to get started. Publish to Requirements.cc Requirements.cc is the place to securely publish, share, and get feedback on requirements you've created with CaseComplete. It's a cloud-based application, so your requirements will be accessible from anywhere. Learn more at http://requirements.cc. Upload your project Click Connect / Requirements.cc. You'll be given the opportunity to create an account on Requirements.cc if you don't already have one. Share with others Requirements.cc is secure, so only the people you choose to share your project with will have access to it. Most pages on Requirements.cc have a share button:. Click it to create a private URL for the page you're currently viewing. The URL will expire after a given number of days (you decide), and you may optionally specify a password, so you don't have to worry about it ever getting into the wrong hands. Give the URL to anyone you want. They will be able to view your content and add comments even if they don't use CaseComplete or have a Requirements.cc account. 19

Create a history of changes Each time you upload your project, anything that changed from the previous upload will be recorded. You will be able to see what items were changed, added or deleted, and see the specific changes made to each item. Create a poll Most projects have too much to do in too little time. If you need to cut or delay features, create a poll for your stakeholders to get guidance on which are most important. You can create polls to solicit feedback for many different aspects, such as which use cases will be most difficult to implement, or which ones are most confusing so will need more work. Learn more about polls. Export See the Export section under the Connect tab to see the various export formats supported. If you have an application that isn't listed, see if it supports import via Excel. If so, you can easily create a custom Excel report to put the data in the format expected by your application. 20