Vrii-team: Difference between revisions
Line 24: | Line 24: | ||
== | == Veebiteenuse analüüs == | ||
'''1. Sissejuhatus''' | |||
Keskne kommenteerimiskeskkond on mõeldud ettevõtetele ning blogi omanikele, kes soovivad hõlpsalt lisada kommentaaride tuge enda poolt hallatavasse interneti keskkonda. Et võimaldada kommentaare enda poolt valitud lehel tuleb registreerumisel luua vastav "property" kus määratakse keskkond ning lisada genereeritud javascript'i plugin enda leheküljele. | |||
“Property” lisamisel tuleb määrata kommentaariumit sisaldav HTML vormi elemendi tunnus ning kirjeldada administraatorite unikaalsed tunnused. Keskkonnal on piiratud hulk administraatoreid “property” kontekstis. | |||
Näiteks võime kujutleda art house filmihuviliste interneti keskkonda. Lehe omanikud on näinud kõvasti vaeva sellega, et tekitada 1960-ndate aastate prantsuse filmidest korralik andmebaas. Kuid et lehel puudub kasutajatevaheline suhtluslik dünaamika, siis otsustavad lehe omanikud lisada kommenteerimise võimaluse. Selle asemel, et hakata ise nullist tervet süsteemi välja mõtlema satuvad nad meie teenuse peale ning võtavad selle kasutusele. Registreerumisel määravad nad vastava “property” ning kopeerivad tekkinud javascript’i plugina oma lehele. | |||
Alljärgnevas analüüsis tutvustame põgusalt veebiteenuse eeldatavaid kasutajarolle, nõudmisi keskkonnale, päringute kirjeldusi, kasutajate tuvastamist ja päringu vastuskoode. | |||
'''1.1 Tehnilised nõuded teenusele''' | |||
Kuna soovime võimalikult lihtsat integratsiooni javascript abil, siis teenus on implementeeritud mikro web teenusena (REST-teenusena), sest SOAP sõnumite töötlemine ja edastamine on liiga tülikas javascript vahenditega. | |||
'''1.2 Kasutajarollid''' | |||
Alljärgnevalt tutvustame meie veebiteenuse kasutajarolle. Sellega mõeldavate kasutajarollide nimistu ei piirdu, kuid antud juhul peame just neid kõige kesksemateks rollideks, mis loodava rakenduse puhul vajaksid primaarselt implementeerimist. | |||
''Interneti keskkonnaga liidestujad'' (blogipidajad, Interneti poodide pidajad, uudiste keskkonnad jne). | |||
-Lisavad kommenteerimiskeskkonna scripti enda lehele. | |||
''Keskkonna käitja administraatorid'' | |||
-Kustutavad/muudavad/loevad kommentaare. | |||
''Keskkonnaga liidestuja administraatorid'' | |||
''Kommentaatorid'' | |||
-Kommentaatorid lisavad, uuendavad, kustutavad ja loevad kommentaare. | |||
'''2. Nõudmised keskkonnale''' | |||
'''2.1''' Keskkond teostab "property"-is assigneeritud tracking numbri põhist kasutusstatistikat. | |||
'''2.2''' Kasutusstatistika skoop on järgmine: | |||
*keskkonda lisatud kommentaaride hulk valitud perioodil | |||
*keskkonnast allalaetud kommentaaride hulk perioodil | |||
*kommentaaride uuendused perioodil | |||
*kommentaaride kustutamised / inaktiveerimised perioodil | |||
*üldine statistika üle kõigi registreeritud "property'te" (keskkonna haldajale) | |||
Uuritav periood kirjeldatakse algus- ja lõppkuupäevaga. | |||
'''2.3''' Keskkond selgitab välja, et kommentaaride vaatamise, muutmise, kustutamise või inaktiveerimise päring teostatakse "property" raames lubatud domeenilt ehk teisisõnu teenus on kasutatav ainult "property's" määratud domeenilt. | |||
'''2.4''' Keskkond peab kommentaare arhiveerima | |||
Kommentaari kustutamise/muutmise korral arhiveeritakse algne sõnum teatud ajavahemikuks. | |||
Soovituslikult arhiveeritakse kommentaarid uuendamise ja kustutamise puhul andmebaasi trigeritega. | |||
'''3. Päringute kirjeldused''' | |||
Järgnevalt kirjeldame detailsemalt kõiki päringuid, mida kavatseme implementeerida ehk vaatamist, lisamist, muutmist, kustutamist või inaktiveerimist. | |||
'''3.1 Vaatamine''' | |||
Kommentaare saab laadida alla kahel viisil: (i) kas kõik korraga või (ii) etteantud vahemiku kaupa sorteerituna (loomiskuupäeva või reitingu järgi). Sõnum peab sisaldama "property" tunnust . | |||
''Vaatamise näidissõnum:'' | |||
<get property="K-1"> | |||
<from num="1"/> | |||
<to num="10"> | |||
<order by="rating|date"/> | |||
</get> | |||
''Vastus:'' | |||
<response> | |||
<period start="" end=""/> | |||
<comment id="1" rating="3" userid="312" date="some date created/updated">text</comment> | |||
</response> | |||
'''3.2 Lisamine''' | |||
Lisamissõnumis peab kindlasti olema reiting, tekst, "property" tunnus, kommentaari lisanud kasutaja tunnus. | |||
''Lisamise näidissõnum:'' | |||
<add property="K-1"> | |||
<user id="1"> | |||
<text>kommentaari tekst</text> | |||
<rating>5</rasting> | |||
</add> | |||
''Näidisvastus:'' | |||
<response> | |||
<codee>200</codee> | |||
<message>success</message> | |||
</response> | |||
'''3.3 Muutmine''' | |||
Kommentaari saab muuta selle autor, liidestuja administraator või keskkonna administraator. | |||
''Näidissõnum:'' | |||
<add property="K-1"> | |||
<user id="1"> | |||
<text>kommentaari tekst</text> | |||
<rating>5</rating> | |||
<id>1231</id> <!-- eksisteeriva kommentaari Id --> | |||
</add> | |||
''Näidisvastus:'' | |||
<response> | |||
<codee>200</codee> | |||
<message>success</message> | |||
</response> | |||
'''3.4 Inaktiveermine / kustutamine''' | |||
Kommentaari saab kustutada kommentaari autor, liidestuja administraator või keskkonna administraator (teenuse pakkuja). | |||
''Näidissõnum:'' | |||
<delete property="K-1"> | |||
<type method="inactivate | delete" commentId="123123" userid="33"> | |||
</delete> | |||
''Näidisvastus:'' | |||
<response> | |||
<codee>200</codee> | |||
<message>success</message> | |||
</response> | |||
'''4. Kasutajate tuvastamine''' | |||
Järgnevalt kirjeldame mõningad reeglid, mille alusel toimub kasutaja tuvastamine. | |||
'''4.1''' Iga liidestuja peab tagama kommenteerimiskeskkonna kasutajate unikaalse tunnuse edastamise. | |||
'''4.2''' Kui on lubatud mistahes anonüümne kommenteerimine vms. siis edastatakse kasutaja vaiketunnus. | |||
'''4.3''' Liidestuja tuvastatakse "property" numbri järgi, mis peab sisalduma igas päringus. | |||
'''4.4''' “Property” number määrab domeeni, millelt päringuid võib teostada. | |||
'''5. Päringu vastuse koodid''' | |||
Hetkel näeme kolme peamist vastuskoodi võimalust: | |||
200 - päring õnnestus | |||
500 - serveri viga, veakirjeldus <message> tag'is | |||
404 - ei leitud andmeid / “message”'-it ei tagastata | |||
Kasutame ainult kolme vastuskoodi. Kuna tegu on avaliku teenusega, siis me ei soovi jagada detailset informatsiooni päringu ebaõnnestumise kohta. Seda vältimaks automatiseeritud Interneti robotite seiretegevust ning seeläbi võimalikku andmete autoriseerimata kasutust. | |||
== Logi == | == Logi == |
Revision as of 19:23, 15 April 2016
VRII meeskond
Team
Andres Mets
Toomas Juhkov
Tiit Kuuskmäe
Kaire Toom
Projekti kirjeldus
Tegemist on kommentaaride teenuse platvormiga. Ettevõtted registreerivad end teenusele ning seavad endi keskkonna suhtlema kommentaaride keskse süsteemiga.
XML
zip arhiiv XML ressurssidele asub: [1]
Retsensioonid
XML ülesandele:
Veebiteenuse analüüs
1. Sissejuhatus
Keskne kommenteerimiskeskkond on mõeldud ettevõtetele ning blogi omanikele, kes soovivad hõlpsalt lisada kommentaaride tuge enda poolt hallatavasse interneti keskkonda. Et võimaldada kommentaare enda poolt valitud lehel tuleb registreerumisel luua vastav "property" kus määratakse keskkond ning lisada genereeritud javascript'i plugin enda leheküljele.
“Property” lisamisel tuleb määrata kommentaariumit sisaldav HTML vormi elemendi tunnus ning kirjeldada administraatorite unikaalsed tunnused. Keskkonnal on piiratud hulk administraatoreid “property” kontekstis.
Näiteks võime kujutleda art house filmihuviliste interneti keskkonda. Lehe omanikud on näinud kõvasti vaeva sellega, et tekitada 1960-ndate aastate prantsuse filmidest korralik andmebaas. Kuid et lehel puudub kasutajatevaheline suhtluslik dünaamika, siis otsustavad lehe omanikud lisada kommenteerimise võimaluse. Selle asemel, et hakata ise nullist tervet süsteemi välja mõtlema satuvad nad meie teenuse peale ning võtavad selle kasutusele. Registreerumisel määravad nad vastava “property” ning kopeerivad tekkinud javascript’i plugina oma lehele.
Alljärgnevas analüüsis tutvustame põgusalt veebiteenuse eeldatavaid kasutajarolle, nõudmisi keskkonnale, päringute kirjeldusi, kasutajate tuvastamist ja päringu vastuskoode.
1.1 Tehnilised nõuded teenusele
Kuna soovime võimalikult lihtsat integratsiooni javascript abil, siis teenus on implementeeritud mikro web teenusena (REST-teenusena), sest SOAP sõnumite töötlemine ja edastamine on liiga tülikas javascript vahenditega.
1.2 Kasutajarollid
Alljärgnevalt tutvustame meie veebiteenuse kasutajarolle. Sellega mõeldavate kasutajarollide nimistu ei piirdu, kuid antud juhul peame just neid kõige kesksemateks rollideks, mis loodava rakenduse puhul vajaksid primaarselt implementeerimist.
Interneti keskkonnaga liidestujad (blogipidajad, Interneti poodide pidajad, uudiste keskkonnad jne). -Lisavad kommenteerimiskeskkonna scripti enda lehele.
Keskkonna käitja administraatorid -Kustutavad/muudavad/loevad kommentaare.
Keskkonnaga liidestuja administraatorid
Kommentaatorid -Kommentaatorid lisavad, uuendavad, kustutavad ja loevad kommentaare.
2. Nõudmised keskkonnale
2.1 Keskkond teostab "property"-is assigneeritud tracking numbri põhist kasutusstatistikat.
2.2 Kasutusstatistika skoop on järgmine:
- keskkonda lisatud kommentaaride hulk valitud perioodil
- keskkonnast allalaetud kommentaaride hulk perioodil
- kommentaaride uuendused perioodil
- kommentaaride kustutamised / inaktiveerimised perioodil
- üldine statistika üle kõigi registreeritud "property'te" (keskkonna haldajale)
Uuritav periood kirjeldatakse algus- ja lõppkuupäevaga.
2.3 Keskkond selgitab välja, et kommentaaride vaatamise, muutmise, kustutamise või inaktiveerimise päring teostatakse "property" raames lubatud domeenilt ehk teisisõnu teenus on kasutatav ainult "property's" määratud domeenilt.
2.4 Keskkond peab kommentaare arhiveerima
Kommentaari kustutamise/muutmise korral arhiveeritakse algne sõnum teatud ajavahemikuks. Soovituslikult arhiveeritakse kommentaarid uuendamise ja kustutamise puhul andmebaasi trigeritega.
3. Päringute kirjeldused
Järgnevalt kirjeldame detailsemalt kõiki päringuid, mida kavatseme implementeerida ehk vaatamist, lisamist, muutmist, kustutamist või inaktiveerimist.
3.1 Vaatamine
Kommentaare saab laadida alla kahel viisil: (i) kas kõik korraga või (ii) etteantud vahemiku kaupa sorteerituna (loomiskuupäeva või reitingu järgi). Sõnum peab sisaldama "property" tunnust .
Vaatamise näidissõnum:
<get property="K-1">
<from num="1"/>
<to num="10">
<order by="rating|date"/>
</get>
Vastus:
<response>
<period start="" end=""/>
<comment id="1" rating="3" userid="312" date="some date created/updated">text</comment>
</response>
3.2 Lisamine
Lisamissõnumis peab kindlasti olema reiting, tekst, "property" tunnus, kommentaari lisanud kasutaja tunnus.
Lisamise näidissõnum:
<add property="K-1">
<user id="1">
<text>kommentaari tekst</text>
<rating>5</rasting>
</add>
Näidisvastus:
<response>
<codee>200</codee>
<message>success</message>
</response>
3.3 Muutmine
Kommentaari saab muuta selle autor, liidestuja administraator või keskkonna administraator.
Näidissõnum:
<add property="K-1">
<user id="1">
<text>kommentaari tekst</text>
<rating>5</rating>
<id>1231</id>
</add>
Näidisvastus:
<response>
<codee>200</codee>
<message>success</message>
</response>
3.4 Inaktiveermine / kustutamine
Kommentaari saab kustutada kommentaari autor, liidestuja administraator või keskkonna administraator (teenuse pakkuja).
Näidissõnum:
<delete property="K-1">
<type method="inactivate | delete" commentId="123123" userid="33">
</delete>
Näidisvastus:
<response>
<codee>200</codee>
<message>success</message>
</response>
4. Kasutajate tuvastamine
Järgnevalt kirjeldame mõningad reeglid, mille alusel toimub kasutaja tuvastamine.
4.1 Iga liidestuja peab tagama kommenteerimiskeskkonna kasutajate unikaalse tunnuse edastamise.
4.2 Kui on lubatud mistahes anonüümne kommenteerimine vms. siis edastatakse kasutaja vaiketunnus.
4.3 Liidestuja tuvastatakse "property" numbri järgi, mis peab sisalduma igas päringus.
4.4 “Property” number määrab domeeni, millelt päringuid võib teostada.
5. Päringu vastuse koodid
Hetkel näeme kolme peamist vastuskoodi võimalust:
200 - päring õnnestus
500 - serveri viga, veakirjeldus <message> tag'is
404 - ei leitud andmeid / “message”'-it ei tagastata
Kasutame ainult kolme vastuskoodi. Kuna tegu on avaliku teenusega, siis me ei soovi jagada detailset informatsiooni päringu ebaõnnestumise kohta. Seda vältimaks automatiseeritud Interneti robotite seiretegevust ning seeläbi võimalikku andmete autoriseerimata kasutust.