I added them.
Bob

________________________________

From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Kyle
Nitzsche
Sent: Friday, October 26, 2007 12:58 PM
To: Robison, Clayne B
Cc: [email protected]
Subject: Re: Criteria for App "Mobilization"


That's great.  

Can you add them to the wiki page:

https://wiki.ubuntu.com/MobileAndEmbedded/UserApplicationCriteria

That way they won't get lost in email list archives.

Kyle

On Oct 26, 2007, at 3:51 PM, Robison, Clayne B wrote:


        I agree with everything that Steve said below. A few more
things:

        

        1)     Network connectivity: Applications should be network
connection aware, allowing the user to be connection agnostic. I.e.
internet/network based apps should function as well as possible
regardless of whether or not there is a connection to their backend
data, performing automatic synchronization when network connection is
available. This may mean some amount of caching and prefetch to
anticipate non-connected states. For example, an e-mail app allows
someone to work perfectly well offline-composing, reading and managing
mail-and then automatically synching once a connection to the server is
available. Users should NEVER have to press some button that says "Sync
Now", "Go Offline" or "Go Online." 

        2)     Storage space awareness: Because many of the devices we
are targeting are going to have limited storage space, all applications
that store data on the device should be aware of this limitation and be
prepared to handle the inevitable. I recognize that this criteria
juxtaposes #1, which requires networked apps to prefetch and cache, and
assumes limitless local persistent storage. 

        3)     System CPU and Memory resources: Many of our target
devices will also have limited CPU and Memory resources, and much of the
software that is currently installed by default (e.g. the System
Monitor) are currently VERY resource intensive. Applications that know
they need lots of CPU and/or memory (e.g. video playback) should sniff
out the current playing field and warn the user if CPU/memory usage is
already so high that performance may be hampered. Ideally, we wouldn't
have this hardware restraint, or OS would do this for apps, but I don't
think we're to that point yet.

        4)     Power: Mobilized applications should recognize that
battery life is a major goal for these platforms, and that they have a
responsibility to play nicely. At a minimum, calls that prevent the
system from sleeping, or the screen from blanking should be used
judiciously. Applications should also handle the backup and sleep/exit
events generated by OSSO/D-bus to prevent their own data loss. Those
applications that are beginning a process that may need some time to
complete (e.g. file download) should calculate whether there is enough
power to complete the operation. All applications should handle the
battery-low event to allow the user to take appropriate action (e.g.
notify your chat buddy that you might disappear).

        5)     Screen: While it is true that all dialogs must fit on
800x480 resolution, they should also not be so small that they cannot be
read on devices with native 1024x600 resolutions. 

        

        

        More criteria:

        

        * Applications load + save data automatically - user doesn't
have to remember to save data

        

        * Filesystem is hidden from the user. Users should never need to
know a filename, they should only interact with data + metadata
(thumbnails for the image viewer, song/artist name for music, from/to/
subject headers in email, etc).

           - This means no traditional open/save dialogs

           - "Attach file" dialogs need to present a friendly list of
objects to attach (thumbnails or metadata)

           - If the user has to be presented a list of files, the list
must only include relevant files. Things like /usr and .xyz files must
always be excluded.

        

        * # of configuration options is minimized. Applications should
come preconfigured with intelligent defaults. Options should only be
included if they're easily understood by the computer-phobic or if
they're likely to be useful to a large minority of users.

        

        * # Featureset should be minimized. Applications like Claws have
dozens of menu items, most of which aren't useful to our target market.

        

        * # of dialogs is minimized

        

        * All screens and dialogs must fit onscreen (800x480)

        

        * All screens and dialogs must render properly (no overlapping
widgets, no text spilling out of buttons, no text offscreen, no popup
menus that aren't wide enough to read the content of the menu, etc).

        

        * Dialogs must be positioned centered and fully onscreen. The
user should never have to move a dialog to see its contents

        

        * Applications with multiple screens (such as a tabbed browser)
must present an easy + obvious way to navigate between screens.

        

        * Applications run as a singleton (can't have multiple copies of
the app running)

        

        * Instant feedback - Any interaction with the UI results in
visual/ audio feedback within 200ms, which is the upper limit of what's
necessary for the appearance of 'instant'. For a tactile device like a
MID, it's important that widgets act like physical objects. Delayed
reactions remind the user that they're on a computer.

        

        * Applications shouldn't require a mouse cursor for
functionality.  

        This means hovering + tooltips are out.

        

        * Applications shouldn't require right-clicking for any
significant functionality - right-clicking is awkward if the user is
holding the device in one hand and using their other hand to navigate
(I'd like to see right-click abolished entirely).

        

        * Error messages should suggest a course of action to the user.

        

        

        Steve

        

        

        Thanks.

        

        Clayne Robison

        Application Engineer

        Intel Corporation

        Salt Lake, UT

        801.445.0297

        

        "Perhaps travel cannot prevent bigotry, but by demonstrating
that all peoples cry, laugh, eat, worry, and die, it can introduce the
idea that if we try and understand each other, we may even become
friends."    Maya Angelou

        -- 
        Ubuntu-mobile mailing list
        [email protected]
        Modify settings or unsubscribe at:
https://lists.ubuntu.com/mailman/listinfo/ubuntu-mobile


-- 
Ubuntu-mobile mailing list
[email protected]
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-mobile

Reply via email to