/[cvs]/Kamel/HCI_text.tex
ViewVC logotype

Diff of /Kamel/HCI_text.tex

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.1 by jontas, Sun Mar 9 12:35:03 2003 UTC revision 1.13 by eax, Sun Mar 9 18:21:20 2003 UTC
# Line 11  Line 11 
11      \large{av}\\      \large{av}\\
12      \LARGE{Jonas Petersson \& Mathias Börjesson}\\\vspace{.4in}      \LARGE{Jonas Petersson \& Mathias Börjesson}\\\vspace{.4in}
13      \large{Institutionen för programvaruteknik och datavetenskap\\      \large{Institutionen för programvaruteknik och datavetenskap\\
14      Blekinge Tekniska Högskola\\\vspace{.03in}      Blekinge Tekniska Högskola\\\vspace{.03in}}
15      \texttt{e-mail:}\\      \texttt{e-mail:}\\
16      \emph{jopd01@student.bth.se}}\\      \emph{jopd01@student.bth.se}\\
17      \emph{tb00mbo@student.bth.se}\\      \emph{tb00mbo@student.bth.se}\\
18    \end{centering}    \end{centering}
19    \newpage    \newpage
# Line 67  Line 67 
67            snabbt att skriva ner de kommandon som ser till att            snabbt att skriva ner de kommandon som ser till att
68            källfilerna ligger i en katalog, de kompilerade            källfilerna ligger i en katalog, de kompilerade
69            programmet i en, och hjälp filerna i en tredje (om            programmet i en, och hjälp filerna i en tredje (om
70            programmeringsspråket stödjer detta (t.ex. java API).\\            programmeringsspråket stödjer detta (t.ex. Java API).\\
71    
72            %Eller är det svaret vi skall skjuta in?            %Eller är det svaret vi skall skjuta in?
73            Men hur är detta något som är intressant ur en MDI            Men hur är detta något som är intressant ur en MDI
# Line 119  Line 119 
119            den. När man har kommit förbi detta stadiet så kan man            den. När man har kommit förbi detta stadiet så kan man
120            bygga en lite mera avancerad prototyp för att vidare            bygga en lite mera avancerad prototyp för att vidare
121            utveckla produkten. En mock-up är vanligtvis (eller            utveckla produkten. En mock-up är vanligtvis (eller
122            i alla fall dom vi har gjort) ''dynamiskt statiska``            i alla fall dom vi har gjort) ``dynamiskt statiska''
123            vilket kan låta som en motsägelse, men vad vi menar med            vilket kan låta som en motsägelse, men vad vi menar med
124            det är att den görs dynamisk är att det går att byta            det är att den görs dynamisk är att det går att byta
125            detaljer i mock-upen för att symbolisera interaktion. En            detaljer i mock-upen för att symbolisera interaktion. En
# Line 156  Line 156 
156          har sett programmet tidigare, eller ens ett program som          har sett programmet tidigare, eller ens ett program som
157          liknar detta (till funktionalitet sett).          liknar detta (till funktionalitet sett).
158    
159          \emph{Ett väl-designat GUI låter användaren göra fel}          \emph{``Ett väl-designat GUI låter användaren göra fel''}
160          (Grand, M. 1999)\\          (Grand, M. 1999)\\
161          Detta är viktigt därför att om det inte går att göra fel,          Detta är viktigt därför att om det inte går att göra fel,
162          eller viktigare att återhämta sig från ett fel utan en          eller viktigare att återhämta sig från ett fel utan en
# Line 173  Line 173 
173          \subsection{Vikten av att känna igen sig i ett program}          \subsection{Vikten av att känna igen sig i ett program}
174    
175            En viktig sak med att få användaren att känna igen sig            En viktig sak med att få användaren att känna igen sig
176            är att detta ger en ''säkerhets känsla`` i programmet,            är att detta ger en ``säkerhets känsla'' i programmet,
177            användaren känner att han vet (i viss mån) hur han skall            användaren känner att han vet (i viss mån) hur han skall
178            bära sig åt för att göra olika saker. Nästan alla            bära sig åt för att göra olika saker. Nästan alla
179            program där man kan spara sitt arbete, öppna en fil med            program där man kan spara sitt arbete, öppna en fil med
180            gammalt arbete osv har detta i en meny märk ''Arkiv`` på            gammalt arbete osv har detta i en meny märk ``Arkiv'' på
181            svenska, kommandon som kopiera, klistra in, gör om osv.            svenska, kommandon som kopiera, klistra in, gör om osv.
182            ligger under en meny ''redigera´´. Detta gör att en            ligger under en meny ``redigera''. Detta gör att en
183            användare kan känna igen sig även om han aldrig har            användare kan känna igen sig även om han aldrig har
184            nyttjat programmet tidigare.            nyttjat programmet tidigare.
185    
# Line 190  Line 190 
190          inte så mycket bryr sig om tekniken bakom.          inte så mycket bryr sig om tekniken bakom.
191    
192          Detta innebär dock att för att kunna designa något så          Detta innebär dock att för att kunna designa något så
193          måste vi känna målgruppen och dess behov. Att jobba med          måste vi känna till målgruppen och dess behov. Att jobba med
194          interaktions design är väldigt snarlikt till att jobba med          interaktions design är väldigt snarlikt till att jobba med
195          en användarcentrerad lösning. Det går antingen att jobba          en användarcentrerad lösning. Det går antingen att jobba
196          med interaktions design om man har en färdig målgrupp som          med interaktions design om man har en färdig målgrupp som
# Line 198  Line 198 
198          målgrupp, och skapar produkten därefter.          målgrupp, och skapar produkten därefter.
199    
200          Om man har en färdig målgrupp som har behov av en produkt          Om man har en färdig målgrupp som har behov av en produkt
201          så är det ''enkelt`` att skapa denna då man hela tiden kan          så är det ``enkelt'' att skapa denna då man hela tiden kan
202          rådfråga målgruppen, skapa mock-uper, prototyper osv, och          rådfråga målgruppen, skapa mock-uper, prototyper osv, och
203          få direkt feedback på det man har gjort.          få direkt feedback på det man har gjort. Det finns undantag
204            då man inte kan skapa mock-uper och det är när själva slut
205            produkten är hemligstämplad och det finns andra aktörer på
206            marknaden som jobbar med samma område. Att då låta vanliga
207            användare komma i kontakt med sin design innebär att hemlig
208            information kan spridas till konkurrenterna om de nu råkas
209            få tag på samma testpersoner.
210    
211          En annan sak som är viktig, mycket viktig med Interaktions          En annan sak som är viktig, mycket viktig med Interaktions
212          design är att den sker iterativt.          design är att den sker iterativt.
213    
214          \subsection{Konceptuella modeller}        \section{Konceptuella modeller}
   
           \emph{Det viktigaste är att designa användarens  
           konceptuella modell. Allt annat skall ses som  
           underordnat för att göra modellen klar, tydlig och  
           konkret. Detta är nästan tvärt emot hur den mesta  
           mjukvaran utvecklas.}(Liddle, David. 1996)\\  
           Preece, Rogers and Sharp 2002 definierar en konceptuell  
           modell som \emph{en beskrivning av det föreslagna  
           systemet i termer av integrerade idéer och koncept om  
           vad det skall göra, bete sig samt se ut som, som skall  
           förstås av användaren på rätt sätt}\\  
   
           När man skapar en konceptuell modell så är det viktigt  
           att man funderar över hur den slutliga produkten skall  
           se ut, baserat på användarnas behov och krav. För att  
           försäkra sig om att användaren kommer att förstå  
           modellen så som den är tänkt är det viktigt att  
   
           \subsubsection{Konceptuella modeller baserat på  
           aktiviteter}  
   
           \subsubsection{Konceptuella modeller baserat på objekt}  
   
       \section{Värdet av MDI}  
   
         Det kanske kan verka abstrakt, och som något som bara tar  
         tid att hålla på med MDI, och allt man kan göra inom detta  
         (mock-ups osv), men faktum är att den tid (och de pengar)  
         man lägger ner på MDI tjänar man igen ganska så fort.  
         Dessutom så är det med hjälp av en mock-up lätt att tidigt  
         fånga design fel, eller till och med logik fel, och ju  
         tidigare man kan hitta fel, desto billigare blir dom att  
         avhjälpa.  
   
         En annan viktig sak att tänka på med MDI är att man kan på  
         ett sätt använda det som en reklam tavla för sitt företag,  
         om man gör en extraordinär lösning på något så kommer  
         detta att sprida sig, men det kommer ännu mer att sprida  
         sig om man gör dåliga MDI lösningar. Ett företag som  
         tidigare har köpt en produkt som kanske är bra, bara det  
         att de inte kan nyttja den kommer inte att köpa en produkt  
         till av samma företag som den förra.  
215    
216            \emph{``Det viktigaste är att designa användarens
217            konceptuella modell. Allt annat skall ses som
218            underordnat för att göra modellen klar, tydlig och
219            konkret. Detta är nästan tvärt emot hur den mesta
220            mjukvaran utvecklas.''}(Liddle, David. 1996)\\
221            Preece, Rogers and Sharp 2002 definierar en konceptuell
222            modell som \emph{``en beskrivning av det föreslagna
223            systemet i termer av integrerade idéer och koncept om
224            vad det skall göra, bete sig samt se ut som, som skall
225            förstås av användaren på rätt sätt''}\\
226    
227            När man skapar en konceptuell modell så är det viktigt
228            att man funderar över hur den slutliga produkten skall
229            se ut, baserat på användarnas behov och krav. För att
230            försäkra sig om att användaren kommer att förstå
231            modellen så som den är tänkt är det viktigt att
232            genomföra noggranna och iterativa tester.
233    
234            En viktig del av den konceptuella modellen är att
235            besluta vad användaren skall göra när han använder
236            produkten. Detta kan även kallas interaktions sätt
237            dvs hur en användare skall få utföra jobbet. När man
238            väljer interaktions sätt så får man även tänka över hur
239            man skall interagera med produkten (programvaran), skall
240            det vara med knappar, menyer, röstkommandon osv.
241    
242            När man har kommit så här långt med sin modell så är det
243            dags att börja fundera över hur GUI't skall se ut, olika
244            mönster, dess fördelar och nackdelar osv. Ju fler man
245            provar med, och funderar över, ju större är chansen att
246            produkten blir bra, och det är viktigt att man jobbar
247            iterativt, och att man använder lite olika metoder, och
248            data (gärna även utvecklare om det går) i dom olika
249            iterationerna för att täcka in så mycket som möjligt.
250    
251            Basen i att konstruera en bra konceptuell modell är
252            användaren, och det användaren skall kunna göra.
253    
254            Det finns ett otal olika konceptuella modeller, men vi
255            kommer bara att ta upp dom två vanligaste.
256    
257            \subsection{Konceptuella modeller baserat på
258            aktiviteter}
259    
260              De fyra vanligaste aktiviteterna användarna kommer att
261              göra (sett ur MDI synpunkt) är:
262              \begin{itemize}
263                \item Instruera
264                \item Konversera
265                \item Manipulera och navigera
266                \item Utforska och ögna igenom %är surfa en bra översättning av browsing?
267              \end{itemize}
268              När man instruerar så förklarar man vad man vill att
269              systemet skall göra, man ger order. Detta kan ske t.ex.
270              med knappar, menyer osv.\\
271              När man konverserar så gör man det som man gör med en
272              människa, antingen talar man till systemet med rösten,
273              eller så skriver man, men man håller sig till ett
274              normalt språk.\\
275              När man manipulerar och navigerar så har man en
276              representation (av något) som man kan manipulera för att
277              uppnå önskat resultat. Det är en klar fördel om
278              representationen delar vissa egenskaper som användaren
279              kan förstå av den fysiska världen.\\ %analoga lät fel, men fysiska låter heller inte riktigt bra... Jag höll på att skriv riktiga, men kom att tänka på vad det skulle innebära
280              När man utforskar och surfar så är systemet utformat på
281              ett sådant vis att användaren kan få information utan
282              att behöva formulera frågor.
283    
284              Det är viktigt att förstå att man måste inte välja en av
285              dessa, utan man kan välja flera om man känner för det,
286              ofta kan man få ett resultat som blir närmare det
287              användaren efterfrågar om man väljer att blanda flera
288              aktiviteter.
289            \subsubsection{Instruera}
290    
291              Detta är en relativt enkel modell att bygga upp, även om
292              det kan vara krångligt att bygga upp den på ett bra
293              sätt. Antingen kan man använda knappar, menyer osv för
294              att ge instruktioner, eller så kan man använda
295              textsträngar. En klar nackdel med denna modellen är att
296              om kommandona är långa (eller krångliga) kommer
297              användaren att glömma bort det, och behöva extra hjälp
298              när han skall nyttja denna. Detta är ett vanligt
299              mönster, och återfinns i flera produkter på ett sätt
300              eller ett annat.
301    
302            \subsubsection{Konversera}
303    
304              Denna metoden är vanligast om det handlar om någon form
305              av expert system, eller sökfunktioner. En klar fördel
306              med att nyttja detta mönster är att även en människa med
307              små kunskaper inom både data, och ämnet som experten kan
308              kan ställa frågor, och få hjälp. En nackdel med detta
309              mönstret är att om användaren ställer frågor på ett sätt
310              som man inte har tänkt sig, eller som inte finns med i
311              informations basen så kan svaren till användaren bli
312              helt uppåt väggarna om man inte är noga med hur man
313              behandlar indatan.
314    
315          \subsubsection{Manipulera och navigera}
316    
317            Visualisering måste innehålla mycket mer än att bara tillåta folk att ``se''
318            information. Dom måste också kunna manipulera och fokusera sig på vad som är relevant
319            och känna igen det för att skapa ny information. Funktioner som hypertext (t.ex. HTML)
320            har blivit en dominant metod för att länka samman dokument, vilket tillåter användaren
321            att navigera sig genom dokument på ett väldigt dynamiskt och personligt sätt.
322    
323          \subsubsection{Utforska och ögna igenom}
324    
325              a
326    
327          \subsection{Konceptuella modeller baserat på objekt}
328    
329            När man utgår från ett objekt så tar man ett objekt som
330            användaren kan relatera till, en bok, kaffe bryggare
331            eller dyl. Och sedan så gör man sin modell så att den
332            liknar det fysiska objektet. Det bör även gå att
333            manipulera objektet på ett vis som liknar det fysiska
334            objektet. Men man bör även tänka på vilka funktioner en
335            användare kan tänkas önska utöver dom som finns i det
336            verkliga objektet. Om man gör en ordebehandlare kan det
337            vara väldigt trevligt om denna klarar av att t.ex.
338            kompilera texten, rättstavning osv.
339    
340          \subsection{Interface metaforer}
341    
342            Denna metod går ut på att man tar och försöker efterlikna
343            en välkänd metod, eller något som användaren känner igen
344            för att manipulera systemet. Det handlar oftast om att man
345            försöker abstrahera bort hur datorn gör, och istället
346            likna det vi något som man känner igen. Dock så är boken
347            vi har väldigt kritisk mot denna metoden att utveckla
348            produkter, så vi tänker inte gå in på denna så djupt. Dock så
349            tror vi att det borde vara en bra metod att iallafall
350            fundera på, men man måste nog vara försiktig så att man
351            inte gör ``hål'' i designen då man använder metaforer.
352    
353        \section{Värdet av MDI}
354    
355          Hela ämnet kanske kan verka abstrakt, och som något som bara tar
356          upp tid att hålla på med, men faktum är att den tid (och de pengar)
357          man lägger ner på MDI tjänar man igen ganska så fort.
358          Dessutom så är det med hjälp av en mock-up lätt att tidigt
359          fånga design fel, eller till och med logik fel, och ju
360          tidigare man kan hitta fel, desto billigare blir dom att
361          avhjälpa.
362    
363          En annan viktig sak att tänka på med MDI är att man kan på
364          ett sätt använda det som en reklam tavla för sitt företag,
365          om man gör en extraordinär lösning på något så kommer
366          detta att sprida sig, men det kommer ännu mer att sprida
367          sig om man gör dåliga MDI lösningar. Ett företag som
368          tidigare har köpt en produkt som kanske är bra, bara det
369          att de inte kan nyttja den kommer inte att köpa en produkt
370          till av samma företag som den förra.
371    
372          Även om själva funtionaliteten i applikationen (eller vad
373          det nu är som skapats) kanske är helt banbrytande och
374          ruskigt innovativ så kanske inte produkten kan säljas
375          ändå, på grund av att användarna helt enkelt inte klarar
376          av att använda den för att gränssnittet är alldeles för
377          klumpigt, långsamt och förvirrande. \emph{``Jag fattar inte varför man år 2000 ska behöva
378          vänta ibland en sekund innan telefonen fattar att man
379          vill hoppa ett steg till vänster i menyerna.''}(Mats
380          Ekstrand, 2000-09-20 i en recension av Ericssons R310)
381          Man brukar säga att utseendet inte spelar någon roll,
382          men när det gäller MDI så spelar det stor roll. Det första
383          man möts av när man får/köper en produkt är gränssnittet,
384          må det så vara en knappsats, touchscreen eller ett flashigt GUI.
385    
386  \end{document}  \end{document}

Legend:
Removed from v.1.1  
changed lines
  Added in v.1.13

root@recompile.se
ViewVC Help
Powered by ViewVC 1.1.26