Package Management Blows Goats (use cases)

Richard Hughes hughsient at gmail.com
Tue Jul 31 08:51:33 UTC 2007


(from my blog, apologies to anyone that's read this once already)

Before ideal system requirements we should talk about use cases and
system interactions. I think this is where update systems have gone
wrong in the past, closely integrating with the existing package system
rather than studying the complete ideal user interactions.

Feel free to disagree and correct the interactions.

Boot Time Security Update

Toby logs into his desktop. A notification area icon with a critical
icon appears in the top right and a libnotify popup tells him there are
3 three critical security updates. The libnotify popup has three
buttons:
• Update now in the background
• Always do updates automatically
• Ignore for now
Toby clicks the first button and the update completes in the background.
When completed, after a few minutes, another libnotify popup appears
telling Toby that the update was completed and after a few seconds the
status icon disappears.

Downloading an Unknown Application

Suzanne wants to open a word file. She opens the software finder tool
and types "office file" into the search box. A list of software appears,
with OpenOffice being the top entry. She clicks the OpenOffice entry to
highlight it, and clicks "Install now". Suzanne is not an administrator,
but because she is locally logged in and the package is from the "fedora
GPG signed repository" the root password is not required. A notification
area icon appears with a downloading icon and the package manager is
closed. When OpenOffice is installed, a libnotify popup tells Suzanne
that the software has been downloaded and is now ready to use.

Installing files automatically

Simon wants to borrow the computer while Suzanne waits for OpenOffice to
download. He uses fast-user switching to switch to a new login. He
notices the same downloading icon in his session which indicates
Suzannes' download is still in progress. He starts Pidgin which then
crashes. The bug-buddy window appears which prompts him to install the
debuginfo so a valid backtrace can be detected. He clicks yes, and a
libnotify windows appears telling Simon that the request has been queued
and that he will be notified when the debuginfo has been installed. When
installed, the bug-buddy helper continues and submits a valid bug.

Installing new features

Suzanne switches back to her session and wants to add some clipart to
the word file she has just opened. She clicks "Insert" and then
"Clipart" and then a windows pops up telling her that clipart is not
installed. She clicks "Install" and a progress bar appears and moves
across as the clipart is downloaded and then installs. When finished,
the dialog disappears and she chooses a picture of a cat.

Comments?

Richard.





More information about the devel mailing list