Meeskond "ASP-tastic"

From ICO wiki
Revision as of 15:29, 6 June 2011 by Ikoue (talk | contribs) (→‎Lõpparuanne)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigationJump to search

Meeskond

  • Indrek Kõue - Teenus ja teenuse testimine, API võtme genereerimine, teenuse statistika, kasutajate audentimine + salasõna SHA hash, Wiki täiendamine, codeplex seadistamine, veebiklient, teenuse kaitsmine, andmebaasi andmemudel, XML koostamine & idee
  • Taivo Türnpu - andmebaasi andmemudel, XML koostamine & idee
  • Jarko Kaskmaa - XML koostamine & idee

Punktidejaotus

  • Indrek Kõue - 30p
  • Jarko Kaskmaa - 30p


Arvustuste kirjutajatele

koodi link: http://vr2.codeplex.com NB! ülevaadet on võimalik teha AINULT koolis, kuna teistelt IP aadressidelt pole andmebaasi ühenduse loomine lubatud! (MySQL)

Idee

Kui olete kokku puutunud natuke tihedama jõusaalitreeninguga on teil kindlasti tihti tulnud endalt küsida küsimusi stiilis "Mis harjutus mul järgmisena kavas oli?", "Mis harjutust nüüd võiks teha?" jne. Variant on muidugi ka minna jõusaali paberilehega, kus on siin prinditud kujul või lausa ise joonistatud kena tabel, kus on teie harjutused peal.

Aga kumma te enne koju unustate, oma nutitelefoni(mis tänapäeval on üha enam ühe kaasaaegse inimese standardvarustus) või selle paberilehe. Pigem viimase, eks? Aga miks üldse vedada kaasas mingi lehte, kui taskus on nagunii nutifon, mis teeb 101 imet? Sellepärast, et keegi polnud viitsinud kergesti portaali ja mobiili appi ühedada. Meie nimelt üritame seda teha.

Välja peaks lõpuks tulema treeningpäevik internetis, mis ühildub vastava Androidi või WP7 (ka iPhonega mõnel ilusal päeval ehk võib olla kunagi) jooksutava nutifoniga :)


Arendajatele

XML

<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xml" href="xml.xsl"?>

<schedule>
  <day>
    <date>1299011724</date>
    <item>
      <positionInList>1</positionInList>
      <excercise>Kükk</excercise>
      <series>3</series>
      <reps>6-8</reps>
      <time></time>
      <weigth>90</weigth>
      <description>Korralik täiskükk</description>
      <comment></comment>
      <category>
        <muscleGroup>Reied</muscleGroup>
	<muscleGroup>Sääred</muscleGroup>
	<muscleGroup>Alaselg</muscleGroup>
      </category>
    </item>
    <item>
      <positionInList>2</positionInList>
      <excercise>Jõutõmme</excercise>
      <series>4</series>
      <reps>5</reps>
      <time></time>
      <weigth>120</weigth>
      <description></description>
      <comment>See nädal on kerge jõutõmme</comment>
      <category>
        <muscleGroup>Alaselg</muscleGroup>
	<muscleGroup>Kõik jalg</muscleGroup>
	<muscleGroup>Trapetslihas</muscleGroup>
      </category>
    </item>
  </day>
</schedule>

XML Schema

<?xml version="1.0" encoding="utf-8"?>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name="schedule">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="day">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="date" type="xs:unsignedInt" />
              <xs:element maxOccurs="unbounded" name="item">
                <xs:complexType>
                  <xs:sequence>
                    <xs:element name="positionInList" type="xs:unsignedByte" />
                    <xs:element name="excercise" type="xs:string" />
                    <xs:element name="series" type="xs:string" />
                    <xs:element name="reps" type="xs:string" />
                    <xs:element name="time" type="xs:string" />
                    <xs:element name="weigth" type="xs:unsignedByte" />
                    <xs:element name="description" type="xs:string" />
                    <xs:element name="comment" type="xs:string" />
                    <xs:element name="category">
                      <xs:complexType>
                        <xs:sequence>
                          <xs:element maxOccurs="unbounded" name="muscleGroup" type="xs:string" />
                        </xs:sequence>
                      </xs:complexType>
                    </xs:element>
                  </xs:sequence>
                </xs:complexType>
              </xs:element>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
</xs:schema>

XSLT

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
	<html>
		<body>
		<h2>
		Tänane kava
		</h2>
		<h3>
		Kava kuupäev (Unix timestamp): 
		<xsl:value-of select="schedule/day/date"/>
		</h3>
		<table border="1">
			<tr bgcolor="#9acd32">
				<th>
				Jrk nr
				</th>
				<th>
				Harjutus
				</th>
				<th>
				Seeriaid
				</th>
				<th>
				Korduseid
				</th>
				<th>
				Aeg
				</th>
				<th>
				Raskus
				</th>
				<th>
				Kirjeldus
				</th>
				<th>
				Kommentaar
				</th>
				<th>
				Lihasgrupid
				</th>
			</tr>
			<xsl:for-each select="schedule/day/item">
			<tr>
				<td>
					<xsl:value-of select="positionInList"/>
				</td>
				<td>
					<xsl:value-of select="excercise"/>
				</td>
				<td>
					<xsl:value-of select="series"/>
				</td>
				<td>
					<xsl:value-of select="reps"/>
				</td>
				<td>
					<xsl:value-of select="time"/>
				</td>
				<td>
					<xsl:value-of select="weigth"/>
				</td>
				<td>
					<xsl:value-of select="description"/>
				</td>
				<td>
					<xsl:value-of select="comment"/>
				</td>
				<td>
					<ul>
					<xsl:for-each select="category/muscleGroup">
					<li>
					<xsl:value-of select="."/>
					</li>
					</xsl:for-each>
					</ul>
				</td>
			</tr>
			</xsl:for-each>
			</table>
		</body>
	</html>
</xsl:template>
</xsl:stylesheet>


ERD


Teenus



Logi

28.02.2011

XML jms loomine

24.02.2011

Ühendan MySql andmebaasi .Net raamistikuga. Väga vaevaline ja närvesööv.

24.02.2011

Otsustasin kasutada ODBC teeke (vaja paigaldada igasse masinasse kus rakendust käitatakse)

30.02.2011

Töötan teenuse kirjutamise ja testimise kallal

10.03.2011

API võtme genereerimine ning statistika implementeeritud

25.04.2011

Täiendasin wikit

01.05.2011

Teenus läbis uuenduskuuri, palju uusi võimalusi

09.05.2011

Teenus kaitstud

31.05.2011

Uurisime millist teenust kasutada

01.06.2011

Esialgu otsustsime, et valime Flickri, kuid teiseks valikuks jäi YouTube

02.06.2011

Valisime siiski YouTube

Mõtlesime, mida rakendus peaks sisaldama. Tegime valmis lehed

03.06.2011

Taivo tegi dummy lehe, kus testida lemmikute lisamist, laikimist ja dislaikimist.

Ei saanud tööle, mingil põhjusel tuleb bad request


Valmis sai tehtud videote vaatamise leht. (video vaatamine, lisatud seotud videod, video kirjeldus).

Nüüd lisatud ka kommentaarid

04.06.2011

Tegime valmis ülejäänud lehtede funktsionaalsuse ja kujundasime lehe ümber.

05.06.2011

Taivo proovis veel valmis saada laikimist, kuid ei õnnestunud


Lõpparuanne

Idee oli selline, et välja peaks lõpuks tulema treeningpäevik internetis, mis ühildub vastava Androidi või WP7 (ka iPhonega mõnel ilusal päeval ehk võib olla kunagi) jooksutava nutifoniga :). Kuid paraku ei edenenud asjad sellises tempos, et saaks kõik määratud eesmärgid täidetud.

Alustades oli motivatsioon küllaltki kõrge, kuid mida rohkem aeg edasi läks, seda see väiksemaks see muutus. Huvi vähesus tulenes sellest, et aeg oli väga piiratud (palju muid asju vaja teha, nagu üliõpilastel ikka), ning tegelesime igapäevaselt tööl huvitavamate projektidega.

Teenuse saime valmis õigeks ajaks, kuid Youtube klient valmis viimasel hetkel.

Teenus võimaldab kasutajate audentimist, registreerimist, API võtme genereerimist ja API võtme järgi teenuse kasutamise statistika genereerimist. Lisaks on võimalik lisada kavasse harjutusi ning muuta ja kustutada neid. Sama on võimalik teha ka raskustega.

YouTube kliendi puhul on võimalik videosid otsida ja vaadata. Vaadata on võimalik erinevate kategooriate järgi nagu enim hinnatud, enim vaadatud. Videode puhul näeb vaatamiste arvu, kommentaaride arvu ning kõiki kommentaare. Meie kliendi eeliseks on see, et näeb ka peidetud kommentaare (videod mille puhul on kommentaarid kinni keeratud).

Teenuse puhul tekkis probleeme MySql andmebaasiga ühendamisel, kuid koodi versioonimisega mingeid probleeme polnud.