1 Transforming software and systems delivery White paper May 2008 Tips for writing good use cases. James Heumann, Requirements Evangelist, IBM Rational Software
2 Page 2 Contents 2 Introduction 2 Understanding what a use case is (and what it is not) 4 Use cases are software requirements that specify functionality 9 References allow users to reconstruct the whole story 15 Conclusion Introduction Writing good use cases is more of an art than a science. And as with any art, there are no absolute rules for creating your masterpieces. Ultimately, use cases are about clearly communicating detailed information to a very diverse audience and reaching the goal of creating successful development projects. Ivar Jacobson invented use cases. Maria Ericsson worked with Jacobson and was coauthor of one of his books. Kurt Bittner and Ian Spence also wrote a popular book on use cases. These pioneers and many people at IBM who have years of experience working with clients to develop good use cases have contributed to the technologies described in this paper. Writing a good use case isn t easy, but, fortunately, our experience can be your guide. The concepts and principles assembled here represent the works of many people at IBM, and they form a foundation of proven best practices. Many of the tips referenced in this paper are part of the IBM Rational Unified Process (RUP ) methodology; others are new and have not made it into RUP. Understanding what a use case is (and what it is not) Use cases have become very popular for outlining the business logic of development projects. This popularity, unfortunately, can also result in confusion and varying opinions about what they are and how they should be structured and written. Without a standard style and set guidelines for writing use cases, use case writers within your organization will write use cases their own way, possibly confusing readers and jeopardizing projects as well as the desired result of a quality solution that provides immediate business value.
3 Page A use case is the story of how the business or system and the user interact. Use cases are part of the Object Management Group (OMG) Unified Modeling Language (UML) standard. This standard tells us what the parts of the use case diagrams mean the stick figures, ovals and lines and it gives us the definition of a use case. But it doesn t tell us how to structure or write one. So we re left to read books or articles (like this one), to try to figure out the right way. So, what is the right way? The best way is the way that works for you without straying too far from the definition of what a use case is: A use case is the specification of a set of actions performed by a system, which yields an observable result that is, typically, of value for one or more actors or other stakeholders of the system (UML 2). A less formal definition might be: A use case is a list of steps that specifies how a user interacts with the business or system while keeping in mind the value that this interaction provides to the user or other stakeholders. Simpler still: A use case is the story of how the business or system and the user interact. Use cases are formal requirements that clearly define the resultant value. A use case is not to be confused with a user story, a software system requirement formulated as one or two sentences in the everyday language of the user. Use cases are formal requirements with context and structure that clearly define the resultant value. This still leaves use case writers with a big job figuring out the best way to actually write use cases, given the significant ambiguity built into the definition. This paper s goal is to help you make the right decisions so that you can successfully do that job. Another type of use case the business use case is used to develop models that describe how a business will interact with its customers and other external parties and provide value to these entities. This paper does not address business use cases and focuses exclusively on system use cases.
4 Page Use cases transform shall statements into groups that provide observable value and context, organized from a user perspective. Use cases are software requirements that specify functionality People often talk about requirements and use cases, implying that they are different things. Use cases are simply a different method for organizing functional requirements; they are still requirements. Traditionally, requirements capture a system s functionality by using a long list of shall statements, sometimes numbering in the thousands. The goal of creating use cases is to transform these many shall statements into smaller groups that provide observable value and context, organized from a user perspective. Use cases are about behaviors (at least, the output) that are observable to the user. There are other types of requirements besides functional ones, usually called nonfunctional or supplementary requirements. These requirements are normally also specified as shall statements, but they contain different information than what s in the use cases. They describe the necessary qualities of the system: how fast it has to be, how reliable it should be, how secure it must be and other qualities. Use cases need to decscribe what the system should do. They should express the interactive steps a user should take to achieve a valuable result. Use cases describe both functionality and results. A use case describes functionality but it also must describe a result. This is important, and it is addressed in the first definition that says use cases provide value to one or more actors or other stakeholders of the system. One of the common issues observed in organizations that are just getting started with use cases is that they don t understand this focus on value. And, as a result, they end up writing many smaller use cases that don t add up to the full story. They don t focus on interactions that drive value and are of interest to the actors involved in the use case.
5 Page This approach can often be seen in its impact on the testing phase of a project. If the test cases are based on use cases that reflect unit tests, rather than user acceptance tests, there are probably too many and they are too low level. A common mistake is to confuse requirements with design specifications. As an example, one client IBM has engaged with had about 10 people working on a project that was scheduled to last about a year. Initially, the organization had approximately 150 use cases, because there was a lack of understanding of their purpose. Upon deeper examination, it was determined that many of their use cases were really design specifications, not requirements, and others were too focused on interactions so minor that they didn t show any value to actor or stakeholder. An effort was made to take a step back and focus on revising their use cases. After removing inappropriate cases and combining others, the client ended up with fewer than 10 use cases, each focused on complementary and comprehensive parts of the overall vision and showing significant value to each actor or stakeholder. For this client, it was an ah ha moment when the company s devleopers saw how these new, bigger, more complete use cases would be both easier to understand and of greater use in designing, developing and testing its system. Diagrams provide a visual reference for the use case. Tip: Don t forget the diagram Use cases are represented graphically as ovals on use case diagrams, and they are also expressed as textual specifications (see figures 1 and 2). The text is definitely the essence of a use case model, and you can certainly benefit from writing the text without drawing the diagrams. However, the diagram can help communicate the requirements at a high level. It also helps stakeholders see what is in scope and what is out of scope. Actors are outside the system being developed, and use cases are inside. This is especially important for the use case survey diagram, which shows all actors and use cases on a single diagram.
6 Page People are the most important use case element. Tip: Human actors are the most important element The stick figures employed in use case diagrams are referred to as actors. They indicate any person (or role), other system or perhaps even a device that is outside the system being built but that interacts with it. It is the human actors that represent the most interesting and difficult interactions for most systems, and the human/system interactions are where the real value of the use case comes into perspective. The functionality put into a use case will help actors do their job or task better in a significant way. Unless the system that you are building has a heavy dependency on other systems or devices, your time and effort are much better spent addressing the needs of human actors. Tip: Go with the flow Good use cases are not just paragraphs of clear and concise text. They have a structure that defines how the parts of the use case fit together. And they can be structured in many ways referred to as a use case style. Establishing a use case style makes writing and reading them faster and easier. A common structural technique when creating use cases is to have one big list of steps from start to finish. This approach can cause issues, as there are conditional behavior and/or error processes that benefit by modularizing breaking out each logical piece for a specific part of the use case. Modularizing makes it easier to write and to read, but only if the pieces can be fit together to depict the whole picture.
7 Page Use cases should have a single main flow and multiple alternative flows. A use case should have a single main flow and multiple alternative flows. The main flow (see figure 1) explains what happens when everything goes right and the use case accomplishes its goal. This is sometimes called the happy path scenario, and occurs most of the time. Sometimes use case writers try to have multiple main flows, but this can dilute the understandability of the use case because it makes the reader work harder to understand the true goal. So the most common scenario should be the anchor of the process, serving as a single main flow. A good brief description aids readability Actor choices: one chosen for the main/basic flow No references in the main flow Steps have short names Figure 1: A well-written use case that tells how a student registers for courses.
8 Page 8 Alternative flows explain deviation from the main flow. Alternative flows (see figure 2) explain what happens when something causes a deviation from the main flow. These deviations may or may not be labeled as exceptions or errors. Either way, they do not occur as often or are not as important as the main flow. In a use case document, each type of flow is listed in its own section. Sometimes alternative flows are broken into more detailed categories such as user errors and exceptions. Note that low-level error codes are beyond the scope of alternative flows. Reference at start of flow What caused the flow to start What the system does Where the flow resumes Flows have names An alternative flow can start in another alternative flow References use names, not numbers Figure 2: Alternative flows describe possible outcomes, when they start and when they end.
9 Page Use cases are not design documents; they are requirements documents. A use case with a single flow remains unfinished, because a good use case will always have multiple flows of events. Remember that use cases are supposed to explain to customers, users and development teams the functional requirements in enough detail to enable those users to either approve them or employ the use case to design the system. Understand that a use case is not a design document on how the requirements are to be implemented; rather, it s an indication of what needs to be built. Thus, a single flow is not enough to show the needed detail, or it may mean that there are many other smaller use cases that could be combined into others as alternative flows. References allow users to reconstruct the whole story It s best practice to modularize a use case by splitting it into multiple flows. But to be able to tell a whole story, you must also have some way to put the pieces back together again to illustrate the specific end-to-end scenarios. This is accomplished by using references, which essentially define the beginning and the end of an alternative flow by referring to a particular step in the main flow or another alternative flow (See figure 3). Making a use case easily understandable requires a consistent technique for using references. References define the beginning and the end of an alternative flow. Tip: Put references in the alternative flows, not the main flows The main flow illustrates what happens when everything in the use case goes right and the actor succeeds in his goal. It includes a time-ordered set of steps (events) that explains what the system does and what the actor does to accomplish the use case. References are simple statements about where a flow starts and how and where it ends. It is recommended that you not use references in the main flow, which would take the user to an alternative flow or to another use case if a specific condition occurs. Focusing on the happy path keeps the flow simple and easy to read, and it clearly communicates what happens when the use case succeeds. Some styles of use cases do use references in the main flow, which often show up as if-then statements and branch to many other places in the use case or outside of it. But this technique can be confusing, and it is recommended that all references occur in alternative flows.
10 Page 10 References indicate what caused an alternative flow to start and what the system does in response. Alternative flows contain the references. (Alternative flows explain what happens when errors occur or when expected outcomes occur, yet they are not as important as the main flow.) This is where the importance of references comes in. Every alternative flow will start somewhere else in the use case. It may branch off of one of the steps in the main flow or extend from another alternative flow. And when an alternative flow ends, the use case will usually continue somewhere else. Alternative flows explain what caused them to start and what the system does in response to the alternative flow. Not only do alternative flows contain references for where they start and where they resume, they also say what caused them to start and what the system does in response. Looking downstream in the development process, this information will be useful in writing test cases. Tip: Scenarios tell the full story Actors can t execute an alternative flow, but they can execute a scenario. The concept of a scenario can be confusing because people define scenarios in so many different ways. At IBM, we define them simply as the paths through a use case or the set of steps and flows that an actor might take start to finish through a use case to provide a result. Given the many possible alternative flows, there will be many scenarios, with many results both positive and negative. The process of walking through scenarios and identifying these negative results provides great platforms for stakeholder conversations as teams try to satisfy the business requirements across all possible scenarios. Keep in mind that the complete set of scenarios tells the full story of the use case. It is this full set of scenarios that will be used by the designers and tester as the basis of their work. Readability can suffer if there are if statements in a flow, because it usually means multiple requirements. Tip: Be careful with if statements IT professionals, particularly those with programming backgrounds, are familiar with if statements, and you often see such statements used in use cases. An if in a programming language specifies conditional behavior, and that s usually true in use cases as well. Problems arise when there are one or more if statements in a flow, because it usually means that you are specifying multiple requirements. This can be a negative for readability it can be hard to follow the flow of multiple if statements in text. It s also a negative for designing and testing the system. It s best for both the reader and the project if you break each if into its own flow. It makes for more flows, but the trade-off is worth it.
11 Page 11 Selecting a single choice for an actor, and creating alternative flows for other choices, can simplify the main flow. Tip: Specify actor choices Actors often make choices in use cases. Consider the example of a university registration system being defined in a Register for Courses use case. In this example, a main flow step might ask the actor to: 1) create a schedule, 2) modify a schedule and 3) delete a schedule. Often use case writers will try to use if statements to show actors making choices, but for reasons indicated earlier, this may not be the best idea. A better alternative is to have all actor choices listed at the appropriate point and have one selected option addressed within the current flow and the others dealt with in alternative flows. This technique keeps each flow simple and reduces branching. Tip: Kick out the CRUD Often we see writers address actor choices by creating separate use cases for each choice. It s a tempting solution but also a dangerous one. The danger is the need to manage the exponential complexity that is often created, resulting in unnecessarily repetitive behaviors and, ultimately, use cases with minimal value. Instead, try to focus on the thing the actor really wants to do, which is usually not about the actions of create, read, update and delete (CRUD). In our university registration system example, there are the choices for 1) create a schedule, 2) modify a schedule and 3) delete a schedule. All are in the Register for Courses use case because the student doesn t really care about creating and modifying schedules; the student only wants to register. Taking the easy way out and listing all CRUD activities results in three or four times as many use cases as necessary and can quickly make the process complicated and hard to manage. For an example of a use case model with a lot of CRUD, look to the example below from a project to update the database administration for a local government shelter program. If we take out all of the CRUD-type activities, what are the actual benefits to the business derived from all the effort to define this specific model?
12 Page 12 Actors accessing common use cases Women s shelter worker Save incomplete residential services form A poorly written use case has too many create, read, update and delete activities, reducing clarity. Log out Social services staff Create new residential services form Edit/validate residential services form Log in Manage user access and change passwords Social services system administration View and print reports Download reported data List/receive incomplete residential services form Submit validated residential services form Lots of CRUD Figure 3: A poorly written use case has too many CRUD-type activities included.
13 Page 13 Same functionality is covered but packaged differently Removing CRUD creates a sim- pler document. Actor generalization Social services staff View residential services information Women s shelter worker Gather and submit residential services information Social services system administration Manage user access and change passwords Figure 4: A well-written use case clearly indicates paths and value. Sequencing the events in a flow is not always necessary to achieve clarity. Tip: The sequence of events can be optional We say that the steps in a use case are usually time ordered, but it should be considered whether the order of the steps is a requirement. For example, does the actor have to complete step four prior to completing step five? Usually the answer will be yes, but not always. It s a very simple thing, when developing the text of a use case, to clarify any temporal constraints and add comments such as This step can occur in any order or This step can occur at any time before this step to a line. The point is, you don t want to constrain the designers of the system by having implicit temporal requirements when they are not necessary.
14 Page 14 Tip: Use the correct level of detail One of the most common questions is, How much detail goes in a use case? Remember, use cases are requirements. They aren t design documents, and they re certainly not user interface designs. One should never reference user interface elements, such as home pages, login screens or click buttons, in a use case. Similarly, architectural details should be avoided. For instance, in the course registration example, a statement like the schedule is saved in the SQL Server database should not go in a use case. The part about saving the schedule is appropriate, but where it gets saved is an architectural detail that would have to be modified later if the database administrator decides that the schedule should be be saved in a different database. Don t forget you re writing use cases for the end user. Tip: Put yourself in the actor s shoes Use cases are different than using shall statements. Since they do specify time-ordered steps, they create more context than stand-alone shall statements, which are not temporal. Because of this, they are more reflective of the intended user experience. Keep this in mind. If use cases are requirements (and they are), the designers and developers will be constrained by what they say. Remember this, take pity on the actor and write your use cases in a way that makes the system as easy as possible for the user.
15 Page 15 Agreement on use case structure and processes is essential to achieving quality and consistency. Conclusion When written well and with a consistent approach, use cases can be a great way to specify requirements in a way that is understandable to users and stakeholders and, at the same time, directly usable by the development team. But quality and consistency can only be achieved if there is agreement on use case structure and processes. So here s a final tip: Document the decisions you and your organization make about how to write good use cases. Create a use case style guidelines document or presentation, provide writers with plenty of examples of good use cases and then enforce the established guidelines. Just as all of the effort put into a use case will (hopefully) pay off with a successful development project, the effort put into establishing standard practices and following these tips can result in better use cases that are valued by everyone involved in the process. For more information To learn more about how to write effective use cases and how IBM Rational software can help, please contact your IBM representative or IBM Business Partner, or visit: ibm.com/software/rational/offerings/irm
16 Copyright IBM Corporation 2008 IBM Corporation Software Group Route 100 Somers, NY U.S.A. Produced in the United States of America All Rights Reserved IBM, the IBM logo, Rational, Rational Unified Process and RUP are trademarks or registered trademarks of International Business Machines Corporation in the United States, other countries, or both. Other company, product and service names may be the trademarks or service marks of others. The information contained in this documentation is provided for informational purposes only. While efforts were made to verify the completeness and accuracy of the information contained in this documentation, it is provided as is without warranty of any kind, express or implied. In addition, this information is based on IBM s current product plans and strategy, which are subject to change by IBM without notice. IBM shall not be responsible for any damages arising out of the use of, or otherwise related to, this documentation or any other documentation. Nothing contained in this documentation is intended to, nor shall have the effect of, creating any warranties or representations from IBM (or its suppliers or licensors), or altering the terms and conditions of the applicable license agreement governing the use of IBM software. Recommended reading: Cockburn, Alistar, Writing Effective Use Cases, Addison-Wesley Professional, Bittner, Kurt and Spence, Ian, Use Case Modeling, Addison-Wesley Professional, Leffingwell, Dean and Widrig, Don, Managing Software Requirements: A Use Case Approach, Addison-Wesley Professional, Contributors to this paper were Robin Bater, Yan Zhuo and Bruce Baron. RAW14023-USEN-00
Software development White paper October 2007 The role of integrated requirements Jim Heumann, requirements evangelist, IBM Rational 2 Contents 2 Introduction 2 What is integrated requirements management?
Copyright Rational Software 2003 http://www.therationaledge.com/content/nov_03/f_usability_jh.jsp User experience storyboards: Building better UIs with RUP, UML, and use cases by Jim Heumann Requirements
White paper June 2009 Ten steps to better requirements management. Dominic Tavassoli, IBM Actionable enterprise architecture management Page 2 Contents 2 Introduction 2 Defining a good requirement 3 Ten
The Role of Requirements Traceability in System Development by Dean Leffingwell Software Entrepreneur and Former Rational Software Executive Don Widrig Independent Technical Writer and Consultant In the
Business Process Flow and s Prepared by Alice Bouché President, January 23, 2006 Overview Business Process Flow Swim lane approach s Unified Modeling Language (UML) Textual specification Style Techniques
Gain a competitive edge through optimized B2B file transfer Contents: 1 Centralized systems enable business success 2 Business benefits of strategic file transfer that you can experience for yourself 2
QuickBooks 2008 Software Installation Guide Welcome 3/25/09; Ver. IMD-2.1 This guide is designed to support users installing QuickBooks: Pro or Premier 2008 financial accounting software, especially in
IBM Rational ClearCase and IBM Rational ClearQuest October 2004 Simplifying development through activity-based change management Allan Tate Product Manager IBM Software Group Karen Wade SCM Product Marketing
WebSphere Commerce V7 Feature Pack 2 Pricing tool 2011 IBM Corporation This presentation provides an overview of the Pricing tool of the WebSphere Commerce V7.0 feature pack 2. PricingTool.ppt Page 1 of
Functional-based modeling White paper June 2009 UML for the C programming language. Bruce Powel Douglass, PhD, IBM Page 2 Contents 2 Executive summary 3 FunctionalC UML profile 4 Functional development
Web application security White paper January 2008 Web application security: automated scanning versus manual penetration testing. Danny Allan, strategic research analyst, IBM Software Group Page 2 Contents
Intellect Platform - The Workflow Engine Basic HelpDesk Troubleticket System - A102 Interneer, Inc. Updated on 2/22/2012 Created by Erika Keresztyen Fahey 2 Workflow - A102 - Basic HelpDesk Ticketing System
UML TUTORIALS THE USE CASE MODEL www.sparxsystems.com.au Sparx Systems 2004 Page 1/5 describes the proposed functionality of the new system. A Use Case represents a discrete unit of interaction between
IBM Software Group What s New in Rational Asset Manager 18.104.22.168 Released March 19, 2010 Derek Baron, Product Manager 2006 IBM Corporation IBM Corporation 2010 The information contained in this presentation
Enhance visibility into and control over software projects IBM Rational change and release management software Accelerating the software delivery lifecycle Faster delivery of high-quality software Software
To the point a recipe for creating lean products Paulo Caroli This book is for sale at http://leanpub.com/tothepoint This version was published on 2015-10-21 This is a Leanpub book. Leanpub empowers authors
SINGLE SIGNON FUNCTIONALITY IN HATS USING MICROSOFT SHAREPOINT PORTAL SINGLE SIGNON: Single Signon feature allows users to authenticate themselves once with their credentials i.e. Usernames and Passwords
Connectivity and integration Executive brief Optimize the potential of ERP systems through IBM SMART SOA integration strategies. Page 2 Contents 2 Executive overview 3 A problem of integration 4 How this
Rational Asset Manager 7.2 Editions and Licensing Derek D. Baron, firstname.lastname@example.org Product Manager, Rational Asset Manager 2009 IBM Corporation IBM Corporation 200 The information contained in this presentation
Use Case Diagrams Tutorial What is a use case? A requirements analysis concept A case of a use of the system/product Describes the system's actions from a the point of view of a user Tells a story A sequence
Business Process Management IBM Business Process Manager V7.5 Federated task management overview This presentation gives you an overview on the federated task management feature in IBM Business Process
Business Process Management IBM Business Process Manager V7.5 Federated task management for BPEL processes and human tasks This presentation introduces the federated task management feature for BPEL processes
IBM WebSphere Application Server OAuth 2.0 service provider and TAI 2012 IBM Corporation This presentation describes support for OAuth 2.0 included in IBM WebSphere Application Server V22.214.171.124. WASV70025_OAuth20.ppt
IBM WebSphere Application Server Communications Enabled Applications Configuring a CEA environment 2011 IBM Corporation This presentation describes how to configure a WebSphere Application Server environment
Software change and release management White paper June 2008 Extending open source tools for more Page 2 Contents 2 Integrating and complementing open source tools 2 Trends in business shape software development
IBM Software Industry Solutions Industry/Product Identifier A proven 5-step framework for managing supplier performance Achieving proven 5-step spend framework visibility: benefits, for managing barriers,
4.1 Domain Analysis Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 4: Developing The process by which a software engineer learns about the domain to better
August 2009 Lowering business costs: Mitigating risk in the software delivery Roberto Argento IBM Rational Business Development Executive Valerie Hamilton IBM Rational Solution Marketing Manager and Certified
Connecting PPM and software delivery Efficiently deliver strategic, high-value, low-risk software projects Contents 2 The outdated approach to PPM 2 A better approach to PPM for software delivery 4 IBM
David Chappell INTRODUCING AZURE SEARCH Sponsored by Microsoft Corporation Copyright 2015 Chappell & Associates Contents Understanding Azure Search... 3 What Azure Search Provides...3 What s Required to
Use Cases Reference: Craig Larman, Applying UML and Patterns, Ch. 6 Use Case What it is: Text story Widely used to discover and record (mostly functional) requirements What is it about: Some actor(s) using
Web servers and WebSphere Portal By default IBM WebSphere Portal uses the internal HTTP transport within IBM WebSphere Application Server to handle requests. However, because WebSphere Application Server
IBM Software Group Implementing Agile Requirements using IBM Rational Requirements Composer with C/ALM Yan (Tina) Zhuo, IBM Rational Topics IBM Rational Requirements Composer Agile Requirements Project
Process management with IBM Rational ClearQuest software White paper Better management through process automation. David Lawrence, technical marketing specialist May 2006 Page 2 Contents 2 Introduction
Email Marketing Content Creation Writing your way into the inbox. Email marketing is primarily a textual medium focusing on phrases, stories and sentences that are used to gain attention and hold it until
Group18-CUCE2012 Mr. Mobile Project Software Testing Plan (STP) Version: 4.0 CM Identifier: G18_SE004 26 April 2010 Revision History Prepared/ Modified by Ahmed Adel Ahmed Abdullah, Ahmed Hafez and Sheriff
Business Process Management IBM Business Process Manager V7.5 Application development process 2011 IBM Corporation This presentation provides information about developing process applications using IBM
Memory-to-memory session replication IBM WebSphere Application Server V7 This presentation will cover memory-to-memory session replication in WebSphere Application Server V7. WASv7_MemorytoMemoryReplication.ppt
Performance Testing Web 2.0 David Chadwick Rational Testing Evangelist email@example.com Dawn Peters Systems Engineer, IBM Rational firstname.lastname@example.org 2009 IBM Corporation WEB 2.0 What is it? 2 Web
SPECIFICATION BY EXAMPLE How successful teams deliver the right software Gojko Adzic MANNING Shelter Island Brief Contents 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 Preface xiii Acknowledgments xxii
How to register and use our Chat System Why this document? We have a very good chat system and easy to use when you are set up, but getting registered and into the system can be a bit complicated. If you
-oriented architecture White paper March 2009 Introduction to SOA governance and Best practices for development and deployment Bill Brown, executive IT architect, worldwide SOA governance SGMM lead, SOA
Developing accessible portals and portlets with IBM WebSphere Portal Level: Introductory IBM Human Ability and Accessibility Center Austin, Texas February, 2006 Copyright International Business Machines
Chapter Four: How to Collaborate and Write With Others Why Collaborate on Writing? Considering (and Balancing) the Two Extremes of Collaboration Peer Review as Collaboration * A sample recipe for how peer
How to Study Mathematics Written by Paul Dawkins Before I get into the tips for how to study math let me first say that everyone studies differently and there is no one right way to study for a math class.
White paper October 2008 The Telelogic Harmony/ESW process for realtime and embedded development. Bruce Powel Douglass, IBM Page 2 Contents 3 Overview 4 Telelogic Harmony/ESW core principles 6 Harmony/ESW
TDDC88 Lab 2 Unified Modeling Language (UML) Introduction What is UML? Unified Modeling Language (UML) is a collection of graphical notations, which are defined using a single meta-model. UML can be used
Using Use Cases on Agile Projects Ivar Jacobson with Ian Spence Agenda What are agile teams looking for? Cards, conversations, and confirmations Knowing what to do and when it s done Being agile with use
Writing a Requirements Document For Multimedia and Software Projects Rachel S. Smith, Senior Interface Designer, CSU Center for Distributed Learning Introduction This guide explains what a requirements
Smart SOA application integration with WebSphere software To support your business objectives Achieving business agility and cost optimization by reducing IT complexity. The value of adding ESB enrichment
QaTraq Pro Scripts Professional Test Scripts Module for QaTraq QaTraq Professional Modules QaTraq Professional Modules are a range of plug in modules designed to give you even more visibility and control
IBM Software Group Continuous integration using Rational Team Concert Peter Steinfeld November 4, 2009 2009 IBM Corporation Overview The importance of using continuous integration How to use Rational Team
WebSphere Message Broker Version 6.1 TCP/IP nodes 2011 IBM Corporation This presentation will discuss the TCP/IP nodes that were introduced to WebSphere Message Broker in version 6.1. WMB61_IEA_TCPIP.ppt
5 Group Policy Management Capabilities You re Missing Don Jones 1. 8 0 0. 8 1 3. 6 4 1 5 w w w. s c r i p t l o g i c. c o m / s m b I T 2011 ScriptLogic Corporation ALL RIGHTS RESERVED. ScriptLogic, the
Exploratory Testing in an Agile Context A guide to using Exploratory Testing on Agile software development teams. Elisabeth Hendrickson 2 Exploratory Testing. So you bang on the keyboard randomly, right?
Managing Business Transformation IBM Enterprise Architecture Goals and Objectives Derive business value quickly -- make existing Enterprise Architecture more actionable Maintain a current & accurate enterprise
Testing, What is it Good For? Absolutely Everything! An overview of software testing and why it s an essential step in building a good product Beth Schechner Elementool The content of this ebook is provided
Datalogix Using IBM Netezza data warehouse appliances to drive online sales with offline data Overview The need Infrastructure could not support the growing online data volumes and analysis required The
User Stories Applied for Agile Software Development Mike Cohn Boston San Francisco New York Toronto Montreal London Munich Paris Madrid Capetown Sydney Tokyo Singapore Mexico City Chapter 2 Writing Stories
BEDIFFERENT ACE G E R M A N Y ACE Germany Implementation Best Practices Scrum Methodology Patrick Willemsen Senior Consultant ARAS Software AG Slide 3 Dilbert says Slide 4 Agenda Agile Methodology An Overview
Object-oriented design methodologies An object-oriented methodology is defined as the system of principles and procedures applied to object-oriented software development. Five years ago, there was no standard
The A Z of Email Design Table of Contents A Z of Email Design Introduction 3 1. Planning 4 A. Email length 4 B. Audience 4 C. Scheduling 4 2. Content 4 D. Content considerations 4 Why Consumers Open Emails
Providing business intelligence for your software assets IBM Rational Asset Manager Highlights A collaborative software development asset management solution, IBM Enabling effective asset management Rational
The Essentials Series: Code-Signing Certificates What Are Certificates? sponsored by by Don Jones W hat Are Certificates?... 1 Digital Certificates and Asymmetric Encryption... 1 Certificates as a Form
Using Use Cases for requirements capture Pete McBreen 1998 McBreen.Consulting email@example.com All rights reserved. You have permission to copy and distribute the document as long as you make no changes
Four keys to effectively monitor and control secure file transfer Contents: 1 Executive summary 2 Key #1 Make your data visible wherever it is in the network 2 Key #2 Reduce or even eliminate ad hoc use
Paper 10-27 Designing Web Applications: Lessons from SAS User Interface Analysts Todd Barlow, SAS Institute Inc., Cary, NC ABSTRACT Web application user interfaces combine aspects of non-web GUI design
19-1 Chapter 19 Use Cases A user story is to a use case as a gazelle is to a gazebo -- Alistair Cockburn Chapter 19 Table of Contents Introduction... 19-2 The Problems with User stories and Backlog items...
Branded Websites: The Best Thing You Can Do for Your Business A White Paper from Katalyst Creative Group Copyright 2012 Katalyst Creative Group, LLC firstname.lastname@example.org 1 Branded Websites: The Best Thing
Microsoft Customer Solution Case study Microsoft CRM Microsoft Business Solutions CRM Helps Slash Costs, Boost Productivity, and Improve Customer Service Microsoft CRM paid for itself in less than a month
IBM RATIONAL PERFORMANCE TESTER Today, a major portion of newly developed enterprise applications is based on Internet connectivity of a geographically distributed work force that all need on-line access
IBM Software Group Non-Functional Requirements Peter Eeles email@example.com Agenda IBM Software Group Rational software Definitions Types of requirement Classifying requirements Capturing NFRs Summary
Paper PO03 A Case of Online Data Processing and Statistical Analysis via SAS/IntrNet Sijian Zhang University of Alabama at Birmingham BACKGROUND It is common to see that statisticians at the statistical
A puzzle based authentication method with server monitoring GRADUATE PROJECT REPORT Submitted to the Faculty of The School of Engineering & Computing Sciences Texas A&M University-Corpus Christi Corpus
1 IBM Software Group IBM Software Group Traceability From Use Cases To Test Cases Peter Zielczynski, Ph.D. The A Consulting Team PZielczynski@tact.com RM14 Agenda Overview of the requirements types Traceability
The most practical project management software Do You Make These 5 Most Common Mistakes in Managing Multiple Projects? 5 proven strategies Have you ever wondered why some managers seem to be natural born
The Smart Archive strategy from IBM IBM s comprehensive, unified, integrated and information-aware archiving strategy Highlights: A smarter approach to archiving Today, almost all processes and information
Rob Davis Everyone wants a good process. Our businesses would be more profitable if we had them. But do we know what a good process is? Would we recognized one if we saw it? And how do we ensure we can
Drupal + Formulize A Step-by-Step Guide to Integrating Drupal with XOOPS/ImpressCMS, and installing and using the Formulize module May 16, 2007 Updated December 23, 2009 This document has been prepared
The People Factor in Change Management Content Introduction... 3 Know your audience... 3 Address your audience...4 Train your audience... 5 Support your audience... 7 Future trends...8 2 Introduction Have
Software Requirements Specification for Task Management System Version 1.0 Prepared by Group Name: Pink and Purple Kathrynn Gonzalez 11387240 firstname.lastname@example.org Tina Roper 11380457 email@example.com
Office of Transfer, Career, and Internship Services 802-387-6823 firstname.lastname@example.org Transfer Guide: The College Admissions Essay Writing a Winning College Application Essay The college essay
March 2004 Rational Systems Engineering with RUP: Process Adoption in the Aerospace/ Defense Industry Why companies do it, how they do it, and what they get for their effort By Dave Brown, Karla Ducharme,
METU DEPARTMENT OF COMPUTER ENGINEERING Software Requirements Specification SNMP Agent & Network Simulator Mustafa İlhan Osman Tahsin Berktaş Mehmet Elgin Akpınar 05.12.2010 Table of Contents 1. Introduction...