Kasutajaliideste brauserirakendus: erinevus redaktsioonide vahel

Allikas: Lambda
Mine navigeerimisribale Mine otsikasti
Resümee puudub
 
(ei näidata sama kasutaja 12 vahepealset redaktsiooni)
1. rida: 1. rida:
Ülesande sisu on birdwatching saidi tegemine, kust saaks sisestada oma vaatlusi ja otsida enda ja teiste vaatlusi.
Ülesande sisu on [http://en.wikipedia.org/wiki/Birdwatching birdwatching] saidi tegemine, kust saaks sisestada oma vaatlusi ja otsida enda ja teiste vaatlusi. Vaata kindlasti [http://www.nomadjournals.com/bird_watchers.cfm#birds pabermärkmete näidet] ja näiteks seda [http://www.birdwatchersdigest.com/site/index.aspx birdwatchingu ajakirjasaiti], seda [http://billofthebirds.blogspot.com/ blogi] ning seda [http://www.birdforum.net/forum.php foorumit]


Praktikumi eesmärk on
* Kasutajaliidese disaini harjutamine.
* Css-i ja javascripti kasutamise harjutamine.


Kasutamine selline:


A) Logitud kasutaja
== Hindamine ==


* Kasutaja logib sisse
Hindamisel arvestatakse järgmisi aspekte, osa neist objektiivsed, osa subjektiivsed:
* Kasutaja saab sisestada uut vaatlust, kus on hulk vormivälju a la liik, koht, aeg jne: täpsustame lähiajal. Saab märkida, kas vaatlus on avalik/mitte
 
* Kasutaja saab otsida kõiki vaatlusi ja leiab kõik enda vaatlused ja teiste avalikud vaatlused
* Õigeaegselt esitatud või ei: hilinenud tööde eest saab ainult 50% punktidest, esitamine on ikkagi kohustuslik.
* Kasutaja saab muuta ehk parandada oma vaatlusi.
* Ñõutava funktsionaalsuse olemasolu: puuduste eest miinuspunkte, väga paljude puuduste korral tööd ei arvestata (st tuleb edasi teha, kuni on piisavalt OK).
* Kasutajaliidese lihtne arusaadavus ja mugavus.
* Kasutajaliidese hea väljanägemine.
* Täiendav omaleiutatud funktsionaalsus, huvitav tehnoloogia jne: annab lisapunkte.
 
== Funktsionaalsus, mis peab olema realiseeritud ==
 
Lehel oleva inimkeele valik on vaba: realiseeri leht üleni ühes enda valitud inimkeeles.
 
Kasutamine:


B) Mittelogitud kasutaja
A) Mittelogitud kasutaja


* Kasutaja saab kergesti aru, milleks sait ja mis seal teha saab
* Kasutaja saab otsida kõiki vaatlusi
* Kasutaja saab otsida kõiki vaatlusi
* Kasutaja saab mugavalt sisse logida (reaalset logimist pole vaja realiseerida, piisab nö dummy-lehtedest), arvestades, et süsteem peab võimaldama kasutamist kohe peale kasutajatunnuse (milleks olgu e-posti aadress) ja parooli valimist. Edaspidisteks sisselogimisteks tuleb kasutada süsteemi,  kus e-postile saadetakse kinnitus-mail, mis sisaldab linki, millele kasutaja peab kasutajatunnuse/parooli aktsepteerimiseks klikkima. Reaalset posti saatmist ja sisselogimise
kontrolli esimeses praksis teha ei tule: vaja on realiseerida ainult selle jaoks ettenähtud lehed/vormid.


Otsingutulemus peab olema võimalik kuvada kahel viisil:
Otsingutulemust peab olema võimalik kuvada kahel viisil:


* Sorteeritud loetelu (sorteeringu peab saama valida) ja kuvatava osa näitamine kaardil
* Sorteeritud loetelu (sorteeringu peab saama valida) ja kuvatava osa näitamine kaardil
* Kaardil valitud regioonis
* Kaardil valitud regioonis


B) Logitud kasutaja
Lisaks mittelogitud kasutaja funktsionaalsusele:
* Kasutaja saab sisestada uut vaatlust, kus on hulk vormivälju a la liik, koht, aeg jne: täpsustame lähiajal. Saab märkida, kas vaatlus on avalik/mitte
* Kasutaja saab otsida kõiki vaatlusi ja leiab kõik enda vaatlused ja teiste avalikud vaatlused
* Kasutaja saab muuta ehk parandada oma vaatlusi.
Täpsemalt vaatluste sisestamise ja muutmise kohta:
* Peavad olema vähemalt järgmised põhiväljad:
** Vaatluse number. Iga kord tuleb automaatselt uus, kasutaja saab muuta.
** Linnu liigi nimi valitud keeles. 
** Liigi nime keele valiku boks. Lehe põhikeel nr 1, ladina keel nr 2, muud edasi.
** Liigi soo valiku tickbox. Võib jääda täitmata.
** Vaadeldud lindude arv. Vabatekst.
** Vaadeldud lindude kaugus.
** Vaadeldud lindude kauguse ühik (meetrid, jalad).
** Looduslik keskkond: valikuboks (segamets, lehtmets, okasmets, aas, rand, põld, linn jne) pluss võimalus sisestada oma keskkonna-tekst.
** Vaatluse aeg: kuupäev, päev, kellaaeg. Kuupäev kalendrist valitav. Vaikimisi sisestamise hetk.
** Vaatluse riik valikuboksist.
** Vaatluse aadress vabatekstina.
** Vaatluse geokoordinaatide kaks välja
** Geokoordinaatide tüübi valikuboks
** Harilikkuse märge valikuboksist: väga harilik, vähem kohatav, haruldane
** Vabatekstina märkmed käitumise kohta.
** Temperatuur


C) Menyy peaks olema
* Peavad olema vähemalt järgmised lisaväljad:
** Temperatuur
** Pilvisus (valikuboks)
** Sademed (valikuboks)
** Tuul (valikuboks)
** Autotee
** Jalutuskäik
** Laagrikoht
** Restoranid
** Kaaslased
** Teel kohatud
** Kohalik info
** Muud märkmed


* Üldinfo ja otsingud jms vahel valik vbl
Väljad tuleb esitada mitmel eri tabil: põhiväljad ühel, lisaväljad teisel.


* Standardotsingud a la viimased vaatlused, viimase aja eksootililisemad vaatlused regioonis jne jne
Täiendavate väljade lisamine ei ole keelatud, ülaltoodud peavad aga olema
realiseeritud.


* Peale sisestamise peab olema võimalik:
** Olemasoleva info muutmine: avatakse sama täitmisvorm koos sisuga, saab muuta ja uuesti salvestada.
** Vaatluste kustutamine. Piisab ühekaupa kustutamisest.
** Vaatluste otsimine. Vaatluste otsingu tulemus tuleb kuvada kasutaja valiku järgi kas
*** Google maps kaardil: vaatluse märgi peale hiirega minnes peab kuvama kogu info
*** Sorteeritava loendina, mis on splititud lehekülgedeks




Muid funktsionaalseid nõudeid:


* Mõistlik valik sisestamisvälju tuleb meelde jätta ja järgmisel sisestamisel kohe avada samad, mäiteks
** Liigi nime keele valiku boks.
** Aeg
** Riik
** Vaatluse aadress
** Vaatluse geokoordinaatide kaks välja
** Geokoordinaatide tüübi valikuboks
* Linnu liigi nime, märkmete jms väljade puhul ei tohi välja nime uuesti ette kuvada ega välja mälust pakkuda


= Vana info 2009 aastast ==
* Lehel peab olema menüü, kus vähemalt:
** Üldinfo ja otsingud jms vahel valik
** Standardotsingud a la viimased vaatlused, viimase aja eksootililisemad vaatlused regioonis jne jne


Rakendusel on kaks erinevat osa:
== General requirements ==
* Admini osa: tema sisestab infot. Peamine: saaks ruttu sisestada. Vähe submitte.
* Turisti osa: tema otsib infot. Peamine: lihtne ja selge info otsimine.


UI mõttes tuleb rakendus realiseerida htmli, cssi ja javascriptiga.
You will have to create mock-up pages of the full application described in the general course page. No server apps, databases etc will be used or created in the first lab. However, the mock-up pages must be a proper UI, with forms, fields, functioning javascript checks, buttons
Flashi, javat vms ei tohi kasutada.
etc.
Kindlasti peab jälgima 
[[itv0030 2009 esimese praksi tehnilised nõuded |  esimese praksi üldisi tehnilisi nõudeid]].


Rakenduse täpne funktsionaalsus (mis vormid, väljad, tekstid, mida nad teevad jne)
The exact order, contents, etc etc of the application/web page is not specified. You will have to apply a good deal of creativity to come up with a good solution. Copying solutions by other students is prohibited.
ei ole täpselt ette spetsifitseeritud: mõistliku ja mugava funktsionaalsuse
väljamõtlemine on üks osa praksist.


Teatud minimaalne komplekt funktsionaalsust on siiski kohustuslik. Järgnevas kohustuslik
Your page must work ok and look clean and nice on both Firefox and IE as installed on the IT building computer classes. In case you have different versions on your computer, you will in any case have to demonstrate usage on both Firefox and IE.
funktsionaalsus.


== Admini funktsionaalsus ==


* Süsteem peab võimaldama kasutamist kohe peale kasutajatunnuse
== Tehnoloogilised nõuded ==
(milleks olgu e-posti aadress) ja parooli valimist.
Edaspidisteks sisselogimisteks tuleb kasutada süsteemi,
kus e-postile saadetakse kinnitus-mail,
mis sisaldab linki, millele kasutaja peab kasutajatunnuse/parooli
aktsepteerimiseks klikkima. Reaalset posti saatmist ja sisselogimise
kontrolli esimeses praksis teha ei tule: vaja on realiseerida ainult
selle jaoks ettenähtud lehed/vormid.


* Parool oleks ainult admini jaoks (info sisestaja). Parooli realisatsioon on teises
UI mõttes tuleb rakendus realiseerida puhtalt htmli, cssi ja javascriptiga.  
praksis.  
Flashi, javat vms ei tohi kasutada.  


* Sisestamine tühjale vormile.
=== Andmed ja nende formaat ===
** Kirjeldatava asja liik: kontsert, teater, restoran, muuseum, vaatamisväärsus
** Kirjeldatava asja alaliik, iga liigi jaoks erinev. Mitte väga pikk loend.
** Asja nimi (kontserdi nimi, teatri nimi, restorani nimi jne)
** veebilehe link
** aadress vabatekstina
** koordinaadid google mapsi jaoks (võib teha google mapsil klikkides, võib ka lihtsalt numbrid sisestada)
** toimumise aeg või lahtioleku aeg (näiteks vabatekst E-P 10-12, või kuupäev ja kellaaeg eraldi)
** hinnaklass restoranide jaoks, standardhind kontserdi puhul, muuseumi puhul jne
** pikem vabatekstiline kirjeldus
** huvitav lastele (kindlasti, võibolla, mitte väga) vms
** populaarsus (kohustuslik, tuntud, ebaharilik) vms


Täitmiseks kohustuslikud väljad on liik, alaliik, nimi, aadress
Data saab veebileht ainult javascriptiga json formaadis.


Täiendavate väljade lisamine ei ole keelatud, ülaltoodud peavad aga olema
Serverilt saab lugeda ainult staatilist htmli/cssi/pilte ja json formaadis datat.
realiseeritud.


* Olemasoleva info muutmine: avatakse sama täitmisvorm koos sisuga, saab muuta ja uuesti salvestada.
Vormiväljade omadused peavad olema antud html atribuutidena ja neid kontrollitakse/kasutatakse js abil, vaadates, mis atribuudid väljal on.


* Asjade kustutamine. Piisab ühekaupa kustutamisest.
Staatiline html ainult igal juhul muutumatute elementide jaoks: päis, üldmenüü jms.


* Asjade otsimine. Analoogiliselt turisti jaoks tehtud otsingule. Tulemus kuvatakse teisiti, kui turistile.
Iga otsingu tulemus on javascripti massiiv/struktuur, tulemus kuvatakse dünaamiliselt.


== Turisti funktsionaalsus ==
=== Html, css and javascript usage  ===


* Menüüdes brausimine a la Tallinna turismisait. Piirangud, näiteks kauges tulevikus kontserte ei näidata.
All the design must be done using very basic html. Titles, paragraphs, lists, anchors, images are allowed. Non-nested tables are allowed, if really helpful. Nested tables are strictly prohibited. All bold, italic, color, dimension, etc specifications in html are prohibited: you must use css instead. See the course page for a large catalogue of articles, tutorials and tips.


* Otsing vormiga.  
Search/enter forms must be fully dynamic in the sense that no submits are done until all the necessary information on search/enter forms are filled/selected. This includes dynamic selections, opening/closing tree branches, obligatory field checks etc.
** Saab valida liiki,alaliiki,nime osa,kontsertide puhul kuupäeva, lastele huvitav, populaarsus
** Võib täita ka ainult mõne neist kolmest väljast.
** Otsingutulemus on sorteeritud list, list on splititud alamlehtedeks.
** Otsitulemuse listis ei pea olema kogu asja info, piisab osast (liik,alaliik,nimi kohustuslik)


* Leitud asja detailinfo vaatamise leht, sealhulgas google mapsi kaart: alati detailinfo juures, kui koordinaadid antud.
Dynamic, floating help must be attached to all forms and non-elementary links. For example: http://web-graphics.com/mtarchive/001717.php
Note that this help should not disturb the user experience: it should not annoy.


== Realisatsiooni tehnoloogiast ==
Menus have to be created using lists with css/javascript (see http://css.maxdesign.com.au/listamatic/).


Data saab veebileht ainult javascriptiga json formaadis.  
It is strongly recommended (but not strictly obligatory) to use either the [http://www.prototypejs.org/ prototype] or [http://jquery.com/ jquery] javascript library. For the last one it is a good idea to additionally use [http://jqueryui.com/ jquery ui].


Serverilt saab lugeda ainult staatilist htmli/cssi/pilte ja json formaadis datat.
=== Style ===


=== Admini puhul ===
Use stylistic hints (your page must look clean and modern, with some touches of style!) from:


Liikide, alamliikide, vormiväljade, abitekstide jms kogu info kirjutada js massiivi
* [http://www.webdesignfromscratch.com/current-style.cfm#centered current web style]
ja kuvada sealt vorme dünaamiliselt.
* [http://mittermayr.wordpress.com/2006/02/03/20-culture/ 2.0 web style from 2006]


Staatiline html ainult igal juhul muutumatute elementide jaoks: päis, üldmenüü jms.
== Abiks esimese töö jaoks ==


=== Turisti puhul ===


Ei pea tegema dünaamilist vormi.
* Google maps: http://code.google.com/apis/maps/


Ei pea tegema dünaamilisi menüüsid.
Vormikontrolli näitefaile:


Iga otsingu tulemus on javascripti massiiv/struktuur, tulemus kuvatakse dünaamiliselt.
* [[html vorm sisuliste atribuutidega]]
* [[jupp sobivat javascripti atribuutide kasutuseks]]

Viimane redaktsioon: 9. veebruar 2010, kell 02:29

Ülesande sisu on birdwatching saidi tegemine, kust saaks sisestada oma vaatlusi ja otsida enda ja teiste vaatlusi. Vaata kindlasti pabermärkmete näidet ja näiteks seda birdwatchingu ajakirjasaiti, seda blogi ning seda foorumit

Praktikumi eesmärk on

  • Kasutajaliidese disaini harjutamine.
  • Css-i ja javascripti kasutamise harjutamine.


Hindamine

Hindamisel arvestatakse järgmisi aspekte, osa neist objektiivsed, osa subjektiivsed:

  • Õigeaegselt esitatud või ei: hilinenud tööde eest saab ainult 50% punktidest, esitamine on ikkagi kohustuslik.
  • Ñõutava funktsionaalsuse olemasolu: puuduste eest miinuspunkte, väga paljude puuduste korral tööd ei arvestata (st tuleb edasi teha, kuni on piisavalt OK).
  • Kasutajaliidese lihtne arusaadavus ja mugavus.
  • Kasutajaliidese hea väljanägemine.
  • Täiendav omaleiutatud funktsionaalsus, huvitav tehnoloogia jne: annab lisapunkte.

Funktsionaalsus, mis peab olema realiseeritud

Lehel oleva inimkeele valik on vaba: realiseeri leht üleni ühes enda valitud inimkeeles.

Kasutamine:

A) Mittelogitud kasutaja

  • Kasutaja saab kergesti aru, milleks sait ja mis seal teha saab
  • Kasutaja saab otsida kõiki vaatlusi
  • Kasutaja saab mugavalt sisse logida (reaalset logimist pole vaja realiseerida, piisab nö dummy-lehtedest), arvestades, et süsteem peab võimaldama kasutamist kohe peale kasutajatunnuse (milleks olgu e-posti aadress) ja parooli valimist. Edaspidisteks sisselogimisteks tuleb kasutada süsteemi, kus e-postile saadetakse kinnitus-mail, mis sisaldab linki, millele kasutaja peab kasutajatunnuse/parooli aktsepteerimiseks klikkima. Reaalset posti saatmist ja sisselogimise

kontrolli esimeses praksis teha ei tule: vaja on realiseerida ainult selle jaoks ettenähtud lehed/vormid.

Otsingutulemust peab olema võimalik kuvada kahel viisil:

  • Sorteeritud loetelu (sorteeringu peab saama valida) ja kuvatava osa näitamine kaardil
  • Kaardil valitud regioonis

B) Logitud kasutaja

Lisaks mittelogitud kasutaja funktsionaalsusele:

  • Kasutaja saab sisestada uut vaatlust, kus on hulk vormivälju a la liik, koht, aeg jne: täpsustame lähiajal. Saab märkida, kas vaatlus on avalik/mitte
  • Kasutaja saab otsida kõiki vaatlusi ja leiab kõik enda vaatlused ja teiste avalikud vaatlused
  • Kasutaja saab muuta ehk parandada oma vaatlusi.

Täpsemalt vaatluste sisestamise ja muutmise kohta:

  • Peavad olema vähemalt järgmised põhiväljad:
    • Vaatluse number. Iga kord tuleb automaatselt uus, kasutaja saab muuta.
    • Linnu liigi nimi valitud keeles.
    • Liigi nime keele valiku boks. Lehe põhikeel nr 1, ladina keel nr 2, muud edasi.
    • Liigi soo valiku tickbox. Võib jääda täitmata.
    • Vaadeldud lindude arv. Vabatekst.
    • Vaadeldud lindude kaugus.
    • Vaadeldud lindude kauguse ühik (meetrid, jalad).
    • Looduslik keskkond: valikuboks (segamets, lehtmets, okasmets, aas, rand, põld, linn jne) pluss võimalus sisestada oma keskkonna-tekst.
    • Vaatluse aeg: kuupäev, päev, kellaaeg. Kuupäev kalendrist valitav. Vaikimisi sisestamise hetk.
    • Vaatluse riik valikuboksist.
    • Vaatluse aadress vabatekstina.
    • Vaatluse geokoordinaatide kaks välja
    • Geokoordinaatide tüübi valikuboks
    • Harilikkuse märge valikuboksist: väga harilik, vähem kohatav, haruldane
    • Vabatekstina märkmed käitumise kohta.
    • Temperatuur
  • Peavad olema vähemalt järgmised lisaväljad:
    • Temperatuur
    • Pilvisus (valikuboks)
    • Sademed (valikuboks)
    • Tuul (valikuboks)
    • Autotee
    • Jalutuskäik
    • Laagrikoht
    • Restoranid
    • Kaaslased
    • Teel kohatud
    • Kohalik info
    • Muud märkmed

Väljad tuleb esitada mitmel eri tabil: põhiväljad ühel, lisaväljad teisel.

Täiendavate väljade lisamine ei ole keelatud, ülaltoodud peavad aga olema realiseeritud.

  • Peale sisestamise peab olema võimalik:
    • Olemasoleva info muutmine: avatakse sama täitmisvorm koos sisuga, saab muuta ja uuesti salvestada.
    • Vaatluste kustutamine. Piisab ühekaupa kustutamisest.
    • Vaatluste otsimine. Vaatluste otsingu tulemus tuleb kuvada kasutaja valiku järgi kas
      • Google maps kaardil: vaatluse märgi peale hiirega minnes peab kuvama kogu info
      • Sorteeritava loendina, mis on splititud lehekülgedeks


Muid funktsionaalseid nõudeid:

  • Mõistlik valik sisestamisvälju tuleb meelde jätta ja järgmisel sisestamisel kohe avada samad, mäiteks
    • Liigi nime keele valiku boks.
    • Aeg
    • Riik
    • Vaatluse aadress
    • Vaatluse geokoordinaatide kaks välja
    • Geokoordinaatide tüübi valikuboks
  • Linnu liigi nime, märkmete jms väljade puhul ei tohi välja nime uuesti ette kuvada ega välja mälust pakkuda
  • Lehel peab olema menüü, kus vähemalt:
    • Üldinfo ja otsingud jms vahel valik
    • Standardotsingud a la viimased vaatlused, viimase aja eksootililisemad vaatlused regioonis jne jne

General requirements

You will have to create mock-up pages of the full application described in the general course page. No server apps, databases etc will be used or created in the first lab. However, the mock-up pages must be a proper UI, with forms, fields, functioning javascript checks, buttons etc.

The exact order, contents, etc etc of the application/web page is not specified. You will have to apply a good deal of creativity to come up with a good solution. Copying solutions by other students is prohibited.

Your page must work ok and look clean and nice on both Firefox and IE as installed on the IT building computer classes. In case you have different versions on your computer, you will in any case have to demonstrate usage on both Firefox and IE.


Tehnoloogilised nõuded

UI mõttes tuleb rakendus realiseerida puhtalt htmli, cssi ja javascriptiga. Flashi, javat vms ei tohi kasutada.

Andmed ja nende formaat

Data saab veebileht ainult javascriptiga json formaadis.

Serverilt saab lugeda ainult staatilist htmli/cssi/pilte ja json formaadis datat.

Vormiväljade omadused peavad olema antud html atribuutidena ja neid kontrollitakse/kasutatakse js abil, vaadates, mis atribuudid väljal on.

Staatiline html ainult igal juhul muutumatute elementide jaoks: päis, üldmenüü jms.

Iga otsingu tulemus on javascripti massiiv/struktuur, tulemus kuvatakse dünaamiliselt.

Html, css and javascript usage

All the design must be done using very basic html. Titles, paragraphs, lists, anchors, images are allowed. Non-nested tables are allowed, if really helpful. Nested tables are strictly prohibited. All bold, italic, color, dimension, etc specifications in html are prohibited: you must use css instead. See the course page for a large catalogue of articles, tutorials and tips.

Search/enter forms must be fully dynamic in the sense that no submits are done until all the necessary information on search/enter forms are filled/selected. This includes dynamic selections, opening/closing tree branches, obligatory field checks etc.

Dynamic, floating help must be attached to all forms and non-elementary links. For example: http://web-graphics.com/mtarchive/001717.php Note that this help should not disturb the user experience: it should not annoy.

Menus have to be created using lists with css/javascript (see http://css.maxdesign.com.au/listamatic/).

It is strongly recommended (but not strictly obligatory) to use either the prototype or jquery javascript library. For the last one it is a good idea to additionally use jquery ui.

Style

Use stylistic hints (your page must look clean and modern, with some touches of style!) from:

Abiks esimese töö jaoks

Vormikontrolli näitefaile: