t 121 5300 (2008) user interface design 2 cli
DESCRIPTION
Lecture slides from T-121.5300 (10-Nov-2008)TRANSCRIPT
CLI: The Return to Command Line Interfaces
T-121.5300 User Interface Design
Lecture 2.
Marko Nieminen
Marko Nieminen
> grep -v ^$ filea > fileb
> CP TAG DEV E VTSO LOCAL 2
OPTCD=J F=3871 X=GB12
The Mysterious Commands
Why? Are they required?
Who can learn them?
Do we need them at all nowadays?
Marko Nieminen
Contemporary CLI: ”Search Experience”
Marko Nieminen
Some Command Lines
1. ”5+3=”
2. “1 eur in isk”
� http://www.google.fi/intl/fi/help/features.html
� Towards more natural interaction
A 641 (���� 16353)
Marko Nieminen
CLI today
Marko Nieminen
Kertalippu kännykkään tekstiviestillä
� Voit tilata matkapuhelimeen tekstiviestinä kertalipun, joka on voimassa ratikassa, metrossa ja Suomenlinnan lautalla.
� Tilaa lippu lähettämällä tekstiviesti A 641 (suomenkielinen lippu) tai AS 641 (ruotsinkielinen lippu) numeroon 16353. Saat paluuviestinä kertalipun, joka on voimassa tunnin ostohetkestä lähtien.
� Viestissä näkyvät lipun voimassaoloaika ja -alue, tunnistenumero ja lähettäjänumero.Tarkista lipun saapuminen ennen raitiovaunuun tai lauttaan nousemista tai metron laiturialueelle astumista!
� Palvelu toimii Soneran, Radiolinjan, DNA:n ja Saunalahden liittymissä. Lipun hinta veloitetaan puhelinlaskun yhteydessä.
� http://www.hel.fi/HKL/suomi/ratikka/su/liput.html
Marko Nieminen
Characteristics of Command Languages
� Command languages, which originated with operating-systems commands, are distinguished by their immediacy and by their impact on devices or information.
� Users issue a command and watch what happens� If the result is correct, the next command is issued; if not, some other strategy is
adopted� The commands are brief and their existence is transitory� Command histories are sometimes kept and macros are created in some command
languages� The essence of command languages is that they have an ephemeral nature and that
they produce an immediate result on some object of interest
� Command languages are distinguished from menu-selection systems in that their users must recall notation and initiate action
� Menu selection users receive instructions and must recognize and choose among only a limited set of visible alternatives; they respond more than initiate
� Command-language users are often called on to accomplish remarkable feats of memorization and typing
Marko Nieminen
Command languages
� Users must recall notation and initiate action
� Typical form is a verb followed by a noun object with qualifiers or arguments for the verb or noun
� Abbreviations may be permitted
� Feedback may be generated for acceptable commands
� Error messages may result from unacceptable forms or typos
� Command-language systems may offer the user brief prompts, or may be close to menu-selection systems
� Natural-language interaction can be considered as a complex form of command language
Source: Shneiderman, B. Designing the User Interface
Marko Nieminen
Goals of Language Design
� Precision
� Compactness
� Ease in writing and reading
� Speed in learning
� Simplicity to reduce errors
� Ease of retention over time
� Close correspondence between reality and the notation
� Convenience in carrying out manipulations relevant to users' tasks
� Compatibility with existing notations
� Flexibility to accommodate novice and expert users
� Expressiveness to encourage creativity
� Visual appeal
Source: Shneiderman, B. Designing the User Interface
Marko Nieminen
Constraints on a Language
� The capacity for human beings to record the notation
� The match between the recording and the display media (for example, clay tablets, paper, printing presses)
� The convenience in speaking (vocalizing)
� Successful languages evolve to serve the goals within the constraints.
Source: Shneiderman, B. Designing the User Interface
Marko Nieminen
Command-Organization
� A unifying interface concept or metaphor aids� learning
� problem solving
� retention
� Designers often err by choosing a metaphor closer to machine domain than to the user's task domain
� Simple command set� Each command is chosen to carry out a single task. The number of
commands match the number of tasks
� For small number of tasks, this can produce a system easy to learn and use
Source: Shneiderman, B. Designing the User Interface
Marko Nieminen
Command-Organization Strategies
� Command plus arguments� COPY FILEA, FILEB
� DELETE FILEA
� PRINT FILEA, FILEB, FILEC
� Keyword labels for arguments are helpful for some users, e.g. COPY FROM=FILEA TO=FILEB
� Command plus options and arguments� PRINT/3,HQ FILEA
� PRINT (3, HQ) FILEA
� PRINT FILEA -3, HQ
� to produce 3 copies of FILEA on the printer in the headquarters building.
� Error rates and the need for extensive training increase with the number of possible options.
Source: Shneiderman, B. Designing the User Interface
Marko Nieminen
Consistent Argument Ordering
Inconsistent
� SEARCH file no, message id
� TRIM message id, segment size
� REPLACE message id, code no
� INVERT group size, message id
Consistent
� SEARCH message id, file no
� TRIM message id, segment size
� REPLACE message id, code no
� INVERT message id, group size
Source: Shneiderman, B. Designing the User Interface
Marko Nieminen
The Benefits of Structure
� Human learning, problem solving, and memory are greatly facilitated by meaningful structure.
� Beneficial for
� task concepts
� computer concepts
� syntactic details of command languages
Source: Shneiderman, B. Designing the User Interface
Marko Nieminen
Abbreviation Strategies
1. Simple truncation: The first, second, third, etc. letters of each command.
2. Vowel drop with simple truncation: Eliminate vowels and use some of what remains.
3. First and last letter: Since the first and last letters are highly visible, use them.
4. First letter of each word in a phrase: Use with a hierarchical design plan.
5. Standard abbreviations from other contexts: Use familiar abbreviations.
6. Phonics: Focus attention on the sound.
Source: Shneiderman, B. Designing the User Interface
LIPUT HELS TENN 2 1701 1830 ONNEN VARJOT
Marko Nieminen
Palveluja komentokielellä: tekstiviestit
� tilaukset (näyte, koeajo, kirja, lehti, esite jne)
� ilmainen/maksettavissa tekstiviestillä
� liittymiset jäseneksi, kanta-asiakkaaksi, postituslistalle yms
� asiakasrekistereiden kerääminen
� kilpailuihin vastaaminen, äänestykset, kyselyt
� myyntiliidien hankkiminen
� palautekanava lukijalle/kuluttajalle
� tiedottaminen, kutsu tilaisuuteen - ryhmätekstiviesti
� markkinointi – jalostetut paluuviestit asiakkaalle/kuluttajalle
Mobiililla on usein tukirooli - nopea ja helposti mitattava.
Lähde: Nieminen, H.
Marko Nieminen
TKK:n kirjaston mobiilipalvelut
� Omien lainojen selaaminen
� Lainojen uusiminen
� Maksujen maksaminen
� Eräpäivämuistutukset tekstiviestillä
� Saapumisilmoitukset varatuista teoksista tekstiviestillä
http://lib.tkk.fi/fi/palvelut/lainaus/mobiili/index.html
Marko Nieminen
TKK:n kirjaston mobiilipalvelut
� Rekisteröityminen palvelun käyttäjäksi
� TKKREK kirjastokortinnumero pin-koodi SUKUNIMI
� Lista lainassa olevista kirjoista� TKKLAINAT
� Kaikkien uusittavissa olevien lainojen uusiminen
� TKKUUSI
� Automaattisten eräpäiväilmoitusten tilanteen tarkistaminen
� TKKILMO
� PIN-koodin tarkistaminen� TKKPIN
� PIN-koodin vaihtaminen� TKKPIN vanhapin uusipin
� Maksujen maksaminen� TKKSAKKO
� Ohjeita palvelun käyttämiseksi� TKK
� Viestit lähetetään numeroon16579
� http://lib.tkk.fi/fi/ohjeet/oppaat/palvelut/mobiiliohje.html
Marko Nieminen
Luonnollisen kielen käyttöliittymä
� Lipunvaraukset voit tehdä myös puhelimitse:
� Finnkino Kinolippu
� 0600 007 007 (0,99€/puh + pvm)
� klo 8 – 20
� � Dialogi- ja komentokielisuunnittelun periaatteita tarvitaan kirjoitettujen komentokielien lisäksi myös puhepohjaisten palvelujen rakentamiseksi