What is your e-mail address?

My e-mail address is:

Do you have a password?

Forgot your password? Click here
close

    Reality Check | The value of user scenarios

    User-scenario modeling is the most effective method of designing software systems

    Michael Daconta

    GCN

    IT'S EASY FOR an enterprise software system to lack
    cohesion ' because its parts are often disparate and
    illfitting. Such a system typically limps along, frustrating users
    and management because of its halting, onestep forward, two-steps
    backward path. To bring cohesion to such a system requires an
    architecture that ties the pieces together into a single efficient
    machine.


    This all sounds good except for two details: What kind of
    vehicle are you building and where are you driving it?


    Although architecture is the solution here, it is not a
    guaranteed solution. Architecture performed wrong can easily lead
    systems astray. If architecture is to be more than just consulting
    hype, it must be grounded in solid engineering principles.


    The first principle is the classic 'form follows
    function.' And there is only one way to get a detailed
    understanding of the required functionality: walk through it.


    How do we do that? I started my career by building military
    simulations for the Army. That experience has proved helpful in
    understanding the correlation between realistic training and
    superior execution in real conditions. In other words, practice
    does indeed make perfect.


    Applying simulation to architecture gives us a novel approach to
    designing robust systems. I call it userscenario modeling, and it
    is a combination of Alan Cooper's interaction design and the
    Unified Modeling Language's use case diagrams.


    I recently used the technique while facilitating a three-day
    architecture workshop for a government client. The client needed an
    architecture for an enterprise information- sharing system and had
    created an architecture design group of key stakeholders in the
    organization. My job was to guide and facilitate the group.


    I started by recommending that we create detailed user scenarios
    and walk through the proposed architecture. It's worth
    clarifying those terms. A user scenario is a domain-specific,
    instantiated use case. In turn, a use case is a generic set of
    steps in which a user performs an action on the system to receive a
    result.


    For example, in a banking application, 'Withdraw
    Money' would be a use case. To turn a use case into a user
    scenario, you instantiate it by implementing it with a specific
    user, a specific situation and specific results.


    Another key requirement for a good user scenario is to select
    one that demonstrates full-loop functionality. A full loop starts
    and ends with the user.


    On the first day of the workshop, we tried a narrative approach
    to userscenario modeling. However, the small groups produced a
    result that suffered from inconsistency and confusion over what a
    good user scenario looks like.


    So that night I devised a simple user-scenario modeling notation
    in Microsoft PowerPoint (available at www.daconta.us/
    downloads.html). It galvanized the three breakout groups, and on
    the second day, they produced detailed user scenarios and a
    cohesive high-level architecture.


    The architecture group ended the workshop with consensus,
    confidence and motivation. Excitement is infectious, and it was
    great to see the group know it had a good architecture because the
    members had modeled it and walked through it with detailed user
    scenarios.


    Some of you might notice that this approach combines multiple
    similar views in the Department of Defense Architecture Framework.
    So why not just use DODAF views for user-scenario modeling? The
    multitude of DODAF views is overkill and overly complex for a
    threeday workshop. More importantly, in my opinion, userscenario
    modeling is the most effective method of designing software
    systems. The views you choose to model them with are secondary.


    I encourage you to examine the roots, theory and practice of
    designing detailed user scenarios. Mastering userscenario design
    will surely raise the bar on your software systems development.


    Daconta, mdaconta@ acceleratedim.com, is chief technology
    officer at Accelerated Information Management LLC and former
    metadata program manager at the Homeland Security Department. His
    latest book is 'Information as Product: How to Deliver the
    Right Information to the Right Person at the Right
    Time.'

    Reader Comments

    Please post your comments here. Comments are moderated, so they may not appear immediately after submitting. We will not post comments that we consider abusive or off-topic.

    Your Name:(optional)
    Your Email:(optional)
    Your Location:(optional)
    Comment:
    Please type the letters/numbers you see above

    GCN eNewsletters

    eSeminar