(ˢᵒᶜⁱᵉᵗʸlog)
(ˢᵒᶜⁱᵉᵗʸserver)
(ˢᵒᶜⁱᵉᵗʸtask)
Chandler
REST
angular.js
coding-for-fun
cordova
css
hackerspace
installation
javascript
mockups
multi-language
nReduce
pike
publishing
retreat
sTeam
stylesheets
user-interface
virtual hosting
xiamen

user stories (part 1)
(ˢᵒᶜⁱᵉᵗʸtask) | nReduce

Stories of MeetET

(skip to the first story for fast reading)

Why “MeetET”? Because we will unlikely market our new product as “email-task-manager”, that's both too long and doesn't address its advantage. “Efficacy” perhaps is a better name, but before a final name is decided, mentioning MeetET gives a context of how a properly marked product blends into daily life. MeetET is short for “Meeting, Email-Task manager”.

Why stories? Because life is a story but we always want to patch it up with use case here and use case there. Instead of skipping use-cases, I did WORK on use cases, but I am still losing the picture of overall user experience: the change good software can do to make life better. Thus the stories. The validity of use cases are less mysterious given stories. Also, having user story helps the design integrity. Disneyland is not designed by only analyzing user need and use cases, the general experience delivered is their advantage, their design is highly integral.

What is a good story? A story doesn't describe the user interface, nor the use case in traditional sense. It depicts user's life and user's software, how she uses it, in such a narrative style that everyone can understand. It is both terse and content-rich. Its target audience is not only developers but also users, to let them validate these stories. Notes to software developers are separate.

First story: Back at your own backyard

Day 1.

After lived in Beijing for three years, Alice went back to her hometown YY. She doesn't know where in the end life is going to take her to, but at least she is staying for the year to give birth to her baby, perhaps out of the feeble wish of not letting the child start with a drifting life such as hers. In a sunny afternoon shortly after her arrival, she find herself having tea with her old friends in college: Bob, Coral and a few others.

The reunion brought a lot of memories. Alice is not particularly the sociable type, not as much as her “party animal” friends, but having the advantage of studying in the medical school of her hometown, not far away from her own house, she did host parties at her home backyard, from time to time, and thus developed some decent relationships. Her usual party guests are of the calm type: researchers, classmates, professors, and even doctors of the hospital where she had the internship. After graduation, she stayed teaching in the college and worked as a lab assistant, eventually her home party become the center of attention of local health-care and medical professionals. That is, of course, all before she left YY for better career opportunities.

“So where do these people meet now?” “Nowhere. Since you left, they don't meet. They live their own lives.” Dissatisfied with the situation, Alice encouraged Coral, former lab assistant trained by Alice, to take the lead and start connecting people again, for Alice herself is unlikely to be in town in the future, thus cannot keep doing parties. Coral likes the idea, but asked Alice to help organize the first a few parties. Alice notes down that she should “re-discover” her old contacts and invite them to the next party, which Coral will host.

Day 2

After the party, Alice started to discover her old contacts. Most of them gets to know Alice before “Linked-in” was invented, thus they are kept in Alice's private addressbook, which is in her old desktop computer. She had been using the Addressbook shipped with Windows 2000, actually, as a part of Outlook Express. There are a few categories, two of them Alice is interested in: “Professional Practitioners”, “College contacts”, “Classmates”. All college contacts should be invited, even the clerks may be interested to be in the party just to get connected to the professionals, and they may forward the invitation to others they know by work. The “Classmates”, are gradually turned into either “Professionals” or “College contacts”. “So, perhaps I should start by assigning new categories for each of the classmates.” Alice think, “but why bother? Since my job is not here, they don't make any difference to me now. But no, I still need a category for college contacts, because I may specifically batch mail to my old college contacts in the future: what if I decided to find a job in the college and settle down in YY?”

She is not using Outlook Express any more. A year ago she switched to MeetET. She knows she can save Outlook Express contacts to a file, and import it to MeetET. Alice thinks, instead of re-assign categories in Outlook Express, it would be easier to import all of them to the handy MeetET and update categories there.

But she failed. When she imported all the contacts, they are not with their category information. So the category information is lost. MeetET now has 150 new contacts waiting to be labeled. Noticing MeetET asked if the user wants to do any batch change during importing 1
1:Allowing discovery of new features, learning and re-doing in a better way, is perhaps a good approach.
, she decide she could save the contacts 3 times, one category per file, and import to MeetET 3 times, each time using a new label. But to do that, the 150 new contacts must be removed first. Luckily, MeetET offers to revoke the last import, so she did. 2
2:Isn't this too fantastic? Realistically perhaps user should get a guarantee that the system knows not to duplicate contacts, and let the future imports overwrite the previous ones.

So here is Alice at the beginning again. She imported “Professional Practitioners”, labeling them as “Medical & Health-care”. Why change the name? Since she left her home-town her contacts expanded. She now have all kinds of professionals, like lawyers, among her contacts. “Professional Practitioners” isn't as descriptive any more. Besides, she already has many labeled with “Medical & Health-care”. In order to tell locals from contacts of Beijing, who should not receive local event invitations, she made all imported contacts “Locality” to be “YY”: there is an option for that during importing.

Then, Alice imported all “College contacts”, again to “Medical & Health-care”, except she added that this import should all have the “Organization” name to be the medical college's name. She could have created a new label, but she think she already have too many labels, a “Organization” field is enough to tell the difference. MeetET has an option to retain the old organization name too 3
3:This is a case where allowing multiple value for a single field is helpful.
, but she think she doesn't need it, and let the old organization names be overwritten.

The trouble comes when Alice imports “Classmates”. Many of them are also in the category of “Professional Practitioners” and “College Contacts”, but that's not the real problem, since MeetET knows to identify and merge duplicates. The real problem is most of them are no longer living in YY. MeetET has this message to Alice:

Some of the 70 contacts have “Locality” information, they are YiYang, ShangHai, BeiJing, GuangZhou and a few others. 4
4:Is this smart or stupid?
The “a few others” words is a link, so Alice used that link to know there are also friends in Shengzhen, Xiamen and YiYing. Alice knows YiYing must be typo of YiYang, the mistake is probably a decades old. She corrected that one the spot. 5
5:If one needs to correct a typo by a whole lot of operation, and, at the cost of losing her work context, she might give up maintaining contact book in details.
Alice knows, of the contacts which doesn't have locality information, many left the town, later than she did. She tried to tell those who stayed from those who left, and after 5 minutes she thought: why bother? So she imported all of them under the old label “Medical & Health-care” and added a new label “Classmates”, filling YY in the locality field if there was none 6
6:Can user actually understand their use-case is this complicated? Perhaps we should default to a strategy.
. She thinks to herself: I will add a postscript message in the email invitations, saying “if you are not in YY anymore and prefer not to receive such invitation in the future, please write back to let me know”.

After all these, she add a todo list item: “When Coral arranged the party, I should send email invitation to my contacts to introduce Coral and her party. All my Medical & Health-care contacts in YY should be invited.” There is nothing more to do now. It's too early to write and send invitations. Alice needs to wait for Coral to fix the event. So Alice wrote an email to Coral:

Dear Coral

I checked and found 150 contacts to send the party invitation to. After these years, I don't know how many still remember me, not to mention showing up in the party. Perhaps less than 10 would come. I should let you know my contact list, but consider many email address will not be valid any more, I will send the invitation myself and receive lots of returned emails. When I refined my contact list after the event, I will send them to you. I'll certainly make the audience aware the next party invitation is likely to be from you instead of me.

Please, when you fixed the time, location, invitation text, send them to me so that I'll make my invitations. Great to know you intend to volunteer the event organizer!

I'll be inviting my contacts, but don't forget to invite your own contacts too -- I don't know everyone in town!

Then she dispatch the email, expecting a reply in 6 days. Right now there is nothing to do, so this email is not going to be in her INBOX, a queue of things she should process. By “telling” MeetET she is expecting a reply in 6 days, she knows MeetET is going to put this email back to INBOX 7
7:Or back to TODO queue?This is a bold guess of how the software will work. This part is not the best I guess, because it doesn't look nature. Alice todo management looks too refined. Real-life Alice's workflow perhaps is more disruptive.
if this discussion thread remain idle for 6 days so she could do something about it. That is, if Coral didn't reply the email in 6 days or if she didn't reply her reply in 6 days, until this discussion is marked over. 6 days is an expected “pace” of the communication.

Day 3

Alice received an email reply from Coral, proposing to meet in a cafe run by a friend of hers, to check if the cafe is a good option for the event. Alice marked the email as an event, which automatically make her mobile phone alarm her an hour ahead. 8
8:Better be done with as few clicks as possible. People don't want to invest too time in the trivial things they think they can probably remember themselves. And, if it is not by default connected to the most handy mobile device, they probably don't mark the event at all.

The cafe is nicely decorated. Alice raise the concern that the cafe is a bit too stylish, and perhaps a bit too noisy. “I would hesitate before going there if I received the invitation”, said Alice. Together they figured instead of hosting the event in someone's home backyard, or a cafe, the “right” home of it should be in the college. And, to add a reason for guests to come, they should organize it a public presentation / training followed by a free-talk dinner party, in the campus. Event starts at 16:00, a professor or doctor would give a speech, inviting colleagues, medical workers in town and students, or, once in a while, patients too, with a poster as a invitation. The topics  range from latest medical discovery, ways to work-around the buggy health insurance system, to how to sit properly in front of a computer.

This look more sustainable. After all, Coral is not sure if she has such charm of getting the people and making them enjoy their time. Coral need to borrow support from the speakers, the professors and doctors. Coral knows many who does good speeches, so do Alice, but Alice has better charisma. Alice realize suddenly she has a lot more burden. The simple idea is developing into a project. She took the following notes as project plan: 9
9:Is project in the scope of That Product? Perhaps true. Is the project budgeting, task dependency, timing, in the scope of That Product? Not sure.
  1. 1.Need to communicate with reputable speakers among her old friends about the idea of this speech/dinner event, get their support by having them host the speech the first a few rounds. 

  2. 2.This event needs a name. 

  3. 3.Find the school officials to let them agree and arrange conference rooms. This shouldn't be difficult, because the officials wants to look active to their superiors, thus needing events. 

  4. 4.Do we need a hit success to kickstart? Yes we do, without a decent group of people already sticking together, if the first a few events ain't populated and successful, it would be hard to slow-start. To be that successful, there should be posters, announcement from school intranet, etc, for the first a few events. 

  5. 5.Coral would need Alice's help in the first a few events, perhaps 3 of them, but Alice is likely to be giving birth in the next 3 months. Coral perhaps has to try to host the second and third event, or use other friend's help. 

The two, sitting in a cafe, decided that Alice is to invite speakers for the first event and to prepare a list of potential speakers for Coral. The rest are all Coral's tasks. Alice is to be watching over the event on the email.

They still have a bit of time in the Cafe, both Alice and Coral sat down to browse Alice's contact book, all “Medical & Health-care” contacts in YY, to select potential first batch of speakers. Alice isn't sure if she wants a new label “Potential Speakers”, because she is unlikely to be hosting the events in the future. Coral would need this list. MeetET has this convenient feature of marking a contact with a star mark, so when they browse the contacts, Alice put a star mark on whoever might be willing to speak in the first a few events and be successful with his/her speech. A star mark is not a label, but a way to collect a few people to do batch operation, e.g. putting them all to email recipient list, or change the locality for all of them. 10
10:I was with HBF employee once, to explain how to label email in Thunderbird. People ask: how to put a star mark on emails? I ask, why do you need a star mark when you can label? But they say they need star marks when they don't have a system of labeling. I think it perhaps allows progressive learning, but now I found even experienced users who have a labeling system need star marks from time to time. Here is one such case.

They went through all contacts, and find 16 people they should talk to about speaking. During this, Coral reminds a few people, who are also contact of Alice, but wasn't there on Alice's contact book. Alice entered these contacts with her phone, with label and “locality” too. MeetET allows returning to the previous context after the new contacts added.

Then, Alice use the email icon to start a draft email with the 16 star-marked people in recipients. She is not sure what to write there, so she wrote “need to discuss the event and invite first speakers”, and saved the draft as a task. The task, is, of course, to actually write the email, which she doesn't want to do in the cafe without her keyboard. She is not sure if she would address these people together or one by one, since there are senior professionals who better be addressed individually. But that's to be decided later.

So they say good bye to each other. Coral asks, if she can get a copy of the list of these “star” contacts, so that to review and think of new ones. Alice said yes. She first thought of to convert the 15 contacts from email recipients to email attachments and send to Coral, but MeetET doesn't have this feature 11
11:It doesn't seems right to put such a feature to the software, but I could be wrong. The system needs integrity to make user's mind mapping of the system match how it really works, thus it should not be just a collection of features here and there.
. Luckily MeetET still have these contacts with star-mark, so she exported these contacts. There are 3 options: 1) get a spreadsheet, which she could attach to an email later; 2) get a table, which can be in the email itself but requires HTML email, and finally get a definition list, which is okay with text-only email, which usually perform better on mobile phones:

Joshua Gram

073-8837268, jushua@mail-on.us, Sales Representative, of Dongfen medical equipments.

David Jones

073-8726384,david@johnes.com, Freelance

….

Coral is in the lab most of the day, rely less on mobile device. Alice foresees Coral will be working with a computer, thus choose to send with HTML table in the email. “Coral can copy and past the whole table to a spreadsheet if she wants to”, thinks Alice. 12
12:Can she, an experienced user, actually think that way? Am I being too geeky when writing this?
While the email is being sent, she decides to create a new folder for this unnamed event, to hold all communication related to this project so she can have an overview when she wants. 13
13:Martin: you can see this step is essential to having a project overview view as you made.
The folder name is simply 'YYevent”. She created the new folder upon sending of an email, thus the email just sent is in that folder.

When the email is gone, her mobile phone then entered a view where the recent activities are listed there. Of them, the most recent, is the draft email with 16 recipients. She put that to the new folder too.

Having observed all these, Coral asks if she could use the powerful new tool, and soon she got one, too.

(the story is not over, I have plots for the coming days. Perhaps these stories look complicated, but having been a groupware service provider for 8 years I guarantee I observed or experienced things in real life can be complicated like that, and we are not going to design a solution only to solve the simple issues, there are already tons there, and they don't offer enough capacity for busy managers or even normal users who are stuck with efficiency problem.)

Open questions to the ETs (the developer of this product):

  1. 1.What do you suppose user do with their notes above? It is not Alice'svv to do list (e.g. the last bullet point is only informative), nor others todo list on which Alice has to keep an eye. Would user write the notes in paper? Would user write them in mobile phone? I suppose paper or tablet is faster than a phone, so she would use a piece of paper if she is not with her tablet. In both case, what should user do with it? One guess, they process them into their project folder: one as a todo item; many as a watchlist item; the last one as a memo (or simply discard it). In this case, this note is an INBOX queue. The other guess is the user will never look at this note again, it fades away slowly, which is what happens now without a good MeetET software – Sould MeetET change that, or just cope with the facts? 

  2. 2.Should user use a label or a folder on email-tasks? The mailbox folder, as a tree UI widget, is not a good idea on the small mobile phone screen, but its concept as a collection or queue still have its merits. A folder is naturally a collection, an exclusive container, a method to address efficiency (Getting Things Done carefully reviewed the necessity of containers), while a label is naturally informative. You can imagine all messages in a project forms a folder, while the label could be “To Do”, “Useful for later reference”, “I love it, it's a good idea, one day may fruit.” For an easy-to-use product, label is probably enough. For efficiency, perhaps we need Folders. I am still thinking and rethinking these concepts. 

Day 4

Alice added the following items to the newly created YYevent folder:

  1. 1.She already have a draft email to the 16 potential speakers. It's a todo item. 

  2. 2.She wrote an email to suggest a name of the event, to Coral. 

  3. 3.She has a watchlist item: Coral should send her the draft of first event's invitation. 

  4. 4.She has a watchlist item: school official arrangement,, meaningCoral should forward her communication with the school official or the result of it. 

  5. 5.She has a watchlist item: She should expect Coral to send her the poster design. 

Now, she discard yesterday's project note, because everything on that note is now in her work-flow. She didn't set any alarm on these watchlist items, because Coral should set the pace. If she did, she will get related items back to her INBOX queue when things she expect did not take place.

Day 5

Alice received an email from Coral, saying the school official is happy with the idea, and arranged location. When Alice file this email under YYevent folder, together with a terse “it's great” reply, she was offered if this new email is expected, along with her watchlist items. She choose to close the expectation “” with it.

 

Author : mbaehr   |   size : 29305Bytes   |   Publish Date : Jul/17/12/06:33   |   to Top