/[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.11 by eax, Sun Mar 9 17:30:13 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 surfa %ä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    
290            \subsubsection{Instruera}
291    
292              b
293    
294            \subsubsection{Konversera}
295    
296              a
297    
298            \subsubsection{Manipulera och navigera}
299    
300              a
301    
302            \subsubsection{Utforska och surfa}
303    
304              a
305    
306            \subsection{Konceptuella modeller baserat på objekt}
307    
308              När man utgår från ett objekt så tar man ett objekt som
309              användaren kan relatera till, en bok, kaffe bryggare
310              eller dyl. Och sedan så gör man sin modell så att den
311              liknar det fysiska objektet. Det bör även gå att
312              manipulera objektet på ett vis som liknar det fysiska
313              objektet. Men man bör även tänka på vilka funktioner en
314              användare kan tänkas önska utöver dom som finns i det
315              verkliga objektet. Om man gör en ordebehandlare kan det
316              vara väldigt trevligt om denna klarar av att t.ex.
317              kompilera texten, rättstavning osv.
318    
319          \subsection{Interface metaforer}
320    
321            Denna metod går ut på att man tar och försöker efterlikna
322            en välkänd metod, eller något som användaren känner igen
323            för att manipulera systemet. Det handlar oftast om att man
324            försöker abstrahera bort hur datorn gör, och istället
325            likna det vi något som man känner igen. Dock så är boken
326            vi har väldigt kritisk mot denna metoden att utveckla
327            produkter, så vi tänker inte gå in på denna så djupt. Dock så
328            tror vi att det borde vara en bra metod att iallafall
329            fundera på, men man måste nog vara försiktig så att man
330            inte gör ``hål'' i designen då man använder metaforer.
331    
332        \section{Värdet av MDI}
333    
334          Hela ämnet kanske kan verka abstrakt, och som något som bara tar
335          upp tid att hålla på med, men faktum är att den tid (och de pengar)
336          man lägger ner på MDI tjänar man igen ganska så fort.
337          Dessutom så är det med hjälp av en mock-up lätt att tidigt
338          fånga design fel, eller till och med logik fel, och ju
339          tidigare man kan hitta fel, desto billigare blir dom att
340          avhjälpa.
341    
342          En annan viktig sak att tänka på med MDI är att man kan på
343          ett sätt använda det som en reklam tavla för sitt företag,
344          om man gör en extraordinär lösning på något så kommer
345          detta att sprida sig, men det kommer ännu mer att sprida
346          sig om man gör dåliga MDI lösningar. Ett företag som
347          tidigare har köpt en produkt som kanske är bra, bara det
348          att de inte kan nyttja den kommer inte att köpa en produkt
349          till av samma företag som den förra.
350    
351          Även om själva funtionaliteten i applikationen (eller vad
352          det nu är som skapats) kanske är helt banbrytande och
353          ruskigt innovativ så kanske inte produkten kan säljas
354          ändå, på grund av att användarna helt enkelt inte klarar
355          av att använda den för att gränssnittet är alldeles för
356          klumpigt, långsamt och förvirrande. \emph{``Jag fattar inte varför man år 2000 ska behöva
357          vänta ibland en sekund innan telefonen fattar att man
358          vill hoppa ett steg till vänster i menyerna.''}(Mats
359          Ekstrand, 2000-09-20 i en recension av Ericssons R310)
360          Man brukar säga att utseendet inte spelar någon roll,
361          men när det gäller MDI så spelar det stor roll. Det första
362          man möts av när man får/köper en produkt är gränssnittet,
363          må det så vara en knappsats, touchscreen eller ett flashigt GUI.
364    
365  \end{document}  \end{document}

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

root@recompile.se
ViewVC Help
Powered by ViewVC 1.1.26