User-Driven Development
Custom Implementation
Responsive Support

A non-profit network of experts helping
the medical community use Vista

Note

The Overview is based on a document originally written by our own Kathy Ice; it was originally prepared by VEN and T3 TigerTech for OSEHRA in 2013, and was published under the Creative Commons Attribution Share-Alike 3.0 Unported license. The version that appears here, which has been updated, does so under the same terms.

The photos which appear in this document were licensed from iStockPhoto.

Vista Software Lifecycle

Vista is the result of a remarkable approach to software development. It is very different from the way most software is developed, and results in amazing improvements in development productivity. It has yet to be formally documented.

Overview

This provides a brief overview of the Vista Lifecycle. Special emphasis is placed on the executive point of view, and on specific things that managers can do to keep their Vista system healthy. It is a companion of sorts to the “Vista Architecture” document.

A complete discussion of the Vista Lifecycle, and other issues related to the management of Vista, can be found in the softcover book Vista Mastery by Frederick D. S. Marshall and Kathy Ice, available for purchase at our bookstore.

doctor.jpg

engineer.jpg

“I know medicine . . .

“I know software . . .

“ . . . Let us work together without interference, and your Vista system will improve!”

The Golden Pair

At the center of any Vista system is the golden pair : one medical professional and one programmer, working together. The medical professional knows what the software needs to do. The programmer knows how to get the software to do it. This golden pair forms the heart of the Vista lifecycle.

The further away you get from this model—one clinician and one programmer working together—the more the software will suffer. Allow your golden pairs to work together and communicate freely!


man-with-boxes.jpg

man-with-one-box.jpg

Don’t take on too much at once!

Smaller projects are an easier “lift”!

Small Projects

According to research done by the Standish Group, the majority of IT projects fail—that is, they do not deliver what they set out to deliver.

There are any number of reasons for this, but one very important reason is project size. Large projects are more likely to fail. Small projects are less likely to fail. Success with Vista means keeping projects to a manageable size.

Keep in mind that, just because you can state a project as a simple declarative sentence, that doesn’t mean it will actually be easy to do. For example, “all we need to do to form a lasting peace in the Middle East is to write a treaty that everybody can agree to.” Piece of cake!

If your programmers are telling you that a project is bigger than you seem to think it is, believe them.


barbed-wire.jpg

colleagues-at-computer.jpg

Don’t restrict it . . .

Fix it!

Bugs Happen: the Key to Rapid Prototyping

Bugs happen. Bugs happen because software is written by human beings, and human beings are imperfect. There is no amount of pre-planning, experience, know-how, or testing that will completely eliminate bugs.

So don’t try.

Vista is designed for rapid prototyping. Get something in front of the user, quickly, rather than dragging out the process by trying to prevent what is not preventable. It is far easier to fix bugs than prevent them—so long as the rapid-prototyping model stays in place.

computer-nerd-thinking.jpg

“This is what happens when you let me name things.”

What Is a “Patch?”

In everyday language, a “patch” is something you use to fix something that’s been damaged. You patch a threadbare jacket, or a leaking tire, or a software vulnerability.

In Vista, the term “patch” began with that meaning, but soon expanded. Programmers found that the patching system was also the best way to distribute improvements and new features to the code. When installed as a patch, the new features do not require the Vista system to be taken offline, and the clinicians like that part.

So, a “patch” in Vista could contain bug fixes. Or, it could contain some nifty new features your users would really like. Or, it could contain both. You will not know until you look at it.

bean-soup.jpg

It’s important not to skip a step.

It’s a Process

Vista patches are distributed fairly often. It is very important that your system remain patched and up-to-date. Why? Because catching up is very difficult.

Patching Vista is not like installing updates for other software. Each Vista patch triggers changes that ripple through the software. Each patch must be installed, one at a time, with no skipping.

When making soup from scratch, a chef adds each ingredient in a specified order and allows it to simmer for a certain amount of time at each step. This is important, so that the meat, vegetables, and other ingredients are neither overcooked nor undercooked, and so the flavor of the spices can come out.

Like soup ingredients, Vista patches have to be added in the right order at the right time. You cannot expect to add a bunch all at once, any more than you can expect to dump all the ingredients into the soup pot at the last minute.

The eight essential points of the Vista lifecycle

On June 20, 2009, Frederick D. S. Marshall of the Vista Expertise Network gave a speech [here’s the transcript] on some essential points of the Vista software lifecycle. These were, in brief:

  • Vista Requires the Vista Lifecycle.

  • Vista Requires Many Code Repositories, Not One.

  • Managing Vista Requires Many Authorities, Not One.

  • Users must directly control Vista’s software lifecycle.

  • Users and programmers need a shared forum.

  • Vista’s software stream requires many tributaries.

  • We should restart the lifecycle with just File Manager and Forum.

  • We need to declare interdependence and form a confederation.