Sille: Difference between revisions

From ICO wiki
Jump to navigationJump to search
Antrei (talk | contribs)
Antrei (talk | contribs)
Line 512: Line 512:


==Veebiteenus==
==Veebiteenus==
'''Rakendus asub [http://enos.itcollege.ee/~antrei/VRII/Sille_13.12.7z SIIN].'''
===Veebiteenuse retsensioon===
===Veebiteenuse retsensioon===



Revision as of 15:19, 16 December 2016

Kodutöö aines "Võrgurakendused II: hajussüsteemide ehitamine"

Meeskond

  • Andres Trei
  • (Lasse Kolkanen)

Idee

XML/XSD/XSLT

XML

XML fail hoiab endas riigimaanteedel olevaid sildasid.

<?xml version="1.0" encoding="utf-8" ?>
<Sillad>
  <Sild Id="1" Ehitusaasta="2012">
    <Nimi Nr="799">Sauga</Nimi>
    <Takistus>Sauga jõgi</Takistus>
    <Asukoht KoordX="527056" KoordY="6473072">
      <TeeNimetus Nr="60">Pärnu-Lihula</TeeNimetus>
      <Algusest Ühik="m">2386</Algusest>
      <Maakond>Pärnu</Maakond>
    </Asukoht>
    <Ylevaatused>
      <Järgmine>2016</Järgmine>
      <Viimane></Viimane>
    </Ylevaatused>
    <Kandevõime Ühik="t" Väärtus="800">N-30/NK-80</Kandevõime>
    <Sillaparameetrid>
      <Pikkus Ühik="m">70</Pikkus>
      <Laius Ühik="m">16.35</Laius>
      <TeeLaius Ühik="m">9.4</TeeLaius>
    </Sillaparameetrid>
    <Liiklusandmed>
      <Liiklussagedus Ühik="sõidukit/24h" Loendusaasta="2014">4444</Liiklussagedus>
      <Jaotus Ühik="%">
        <Sõidukid>85</Sõidukid>
        <Veokid>3</Veokid>
        <Autorongid>12</Autorongid>
      </Jaotus>
    </Liiklusandmed>
    <Indeksid>
      <SeisundiIndeks Hindamiseaasta="2012">99</SeisundiIndeks>
      <PontisIndeks Hindamiseaasta="2013">100</PontisIndeks>
    </Indeksid>
  </Sild>
  <Sild Id="2" Ehitusaasta="1939">
    <Nimi Nr="89">Kiviloo</Nimi>
    <Takistus>Jõelähtme jõgi</Takistus>
    <Asukoht KoordX="571748" KoordY="6572314">
      <TeeNimetus Nr="11125">Perila-Jäneda</TeeNimetus>
      <Algusest Ühik="m">5758</Algusest>
      <Maakond>Harju</Maakond>
    </Asukoht>
    <Ylevaatused>
      <Järgmine>2019</Järgmine>
      <Viimane>2015-10-09</Viimane>
    </Ylevaatused>
    <Kandevõime Ühik="t" Väärtus="600">N-13/NG-60</Kandevõime>
    <Sillaparameetrid>
      <Pikkus Ühik="m">17</Pikkus>
      <Laius Ühik="m">7.4</Laius>
      <TeeLaius Ühik="m">6</TeeLaius>
    </Sillaparameetrid>
    <Liiklusandmed>
      <Liiklussagedus Ühik="sõidukit/24h" Loendusaasta="2014">1214</Liiklussagedus>
      <Jaotus Ühik="%">
        <Sõidukid>95</Sõidukid>
        <Veokid>2</Veokid>
        <Autorongid>3</Autorongid>
      </Jaotus>
    </Liiklusandmed>
    <Indeksid>
      <SeisundiIndeks Hindamiseaasta="2010">55</SeisundiIndeks>
      <PontisIndeks Hindamiseaasta="2010">56</PontisIndeks>
    </Indeksid>
  </Sild>
  <Sild Id="3" Ehitusaasta="1952">
    <Nimi Nr="776">Majaka</Nimi>
    <Takistus>Majaka kanal</Takistus>
    <Asukoht KoordX="525662" KoordY="6428719">
      <TeeNimetus Nr="19331">Rannametsa-Ikla</TeeNimetus>
      <Algusest Ühik="m">15758</Algusest>
      <Maakond>Pärnu</Maakond>
    </Asukoht>
    <Ylevaatused>
      <Järgmine>2017</Järgmine>
      <Viimane></Viimane>
    </Ylevaatused>
    <Kandevõime Ühik="t" Väärtus="600">N-13/NG-60</Kandevõime>
    <Sillaparameetrid>
      <Pikkus Ühik="m">4.6</Pikkus>
      <Laius Ühik="m">8.9</Laius>
      <TeeLaius Ühik="m">7</TeeLaius>
    </Sillaparameetrid>
    <Liiklusandmed>
      <Liiklussagedus Ühik="sõidukit/24h" Loendusaasta="2014">479</Liiklussagedus>
      <Jaotus Ühik="%">
        <Sõidukid>95</Sõidukid>
        <Veokid>4</Veokid>
        <Autorongid>1</Autorongid>
      </Jaotus>
    </Liiklusandmed>
    <Indeksid>
      <SeisundiIndeks Hindamiseaasta="2006">65.7</SeisundiIndeks>
      <PontisIndeks Hindamiseaasta="2011">62</PontisIndeks>
    </Indeksid>
  </Sild>
  <Sild Id="4" Ehitusaasta="2015">
    <Nimi Nr="1500">Jõhvi I</Nimi>
    <Takistus>Tapa-Narva raudtee</Takistus>
    <Asukoht KoordX="694100" KoordY="6584697">
      <TeeNimetus Nr="3">Jõhvi-Tartu-Valga</TeeNimetus>
      <Algusest Ühik="m">2169</Algusest>
      <Maakond>Ida-Viru</Maakond>
    </Asukoht>
    <Ylevaatused>
      <Järgmine>2017</Järgmine>
      <Viimane></Viimane>
    </Ylevaatused>
    <Kandevõime Ühik="ts" Väärtus="2400">2400/200</Kandevõime>
    <Sillaparameetrid>
      <Pikkus Ühik="m">255.72</Pikkus>
      <Laius Ühik="m">9.4</Laius>
      <TeeLaius Ühik="m">7.5</TeeLaius>
    </Sillaparameetrid>
    <Liiklusandmed>
      <Liiklussagedus Ühik="sõidukit/24h" Loendusaasta="2014">16450</Liiklussagedus>
      <Jaotus Ühik="%">
        <Sõidukid>98</Sõidukid>
        <Veokid>2</Veokid>
        <Autorongid>0</Autorongid>
      </Jaotus>
    </Liiklusandmed>
    <Indeksid>
      <SeisundiIndeks Hindamiseaasta="2013">100</SeisundiIndeks>
      <PontisIndeks Hindamiseaasta=""></PontisIndeks>
    </Indeksid>
  </Sild>
</Sillad>

XSD

<?xml version="1.0" encoding="utf-8"?>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:simpleType name="pikkusühik">
    <xs:restriction base="xs:string">
      <xs:enumeration value="m"/>
      <xs:enumeration value="km"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="massiühik">
    <xs:restriction base="xs:string">
      <xs:enumeration value="kg"/>
      <xs:enumeration value="t"/>
      <xs:enumeration value="ts"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="sagedusühik">
    <xs:restriction base="xs:string">
      <xs:enumeration value="sõidukit/24h"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="protsent">
    <xs:restriction base="xs:string">
      <xs:enumeration value="%"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="maakond">
    <xs:restriction base="xs:string">
      <xs:enumeration value="Harju"/>
      <xs:enumeration value="Pärnu"/>
      <xs:enumeration value="Rapla"/>
      <xs:enumeration value="Valga"/>
      <xs:enumeration value="Ida-Viru"/>
      <!--jne-->
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="kandevõime">
    <xs:restriction base="xs:string">
      <xs:enumeration value="N-13/NG-60"/>
      <xs:enumeration value="N-30/NK-80"/>
      <xs:enumeration value="N-10/NG-30"/>
      <xs:enumeration value="N-8/NG-60"/>
      <xs:enumeration value="3600/240kN"/>
      <xs:enumeration value="260 kN/3x210 kN"/>
      <xs:enumeration value="2400/200"/>
      <xs:enumeration value="N-18/NG-60"/>
      <!--jne-->
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="aastad">
    <xs:restriction base="xs:unsignedShort">
      <xs:minInclusive value="1900"/>
      <xs:maxInclusive value="2100"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="Sillad">
    <xs:complexType>
      <xs:sequence>
        <xs:element maxOccurs="unbounded" name="Sild">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="Nimi">
                <xs:complexType>
                  <xs:simpleContent>
                    <xs:extension base="xs:string">
                      <xs:attribute name="Nr" type="xs:unsignedShort" use="required" />
                    </xs:extension>
                  </xs:simpleContent>
                </xs:complexType>
              </xs:element>
              <xs:element name="Takistus">
                <xs:simpleType>
                  <xs:restriction base="xs:string">
                    <xs:maxLength value="60"/>
                  </xs:restriction>
                </xs:simpleType>
              </xs:element>
              <xs:element name="Asukoht">
                <xs:complexType>
                  <xs:sequence>
                    <xs:element name="TeeNimetus">
                      <xs:complexType>
                        <xs:simpleContent>
                          <xs:extension base="xs:string">
                            <xs:attribute name="Nr" type="xs:unsignedShort" use="required" />
                          </xs:extension>
                        </xs:simpleContent>
                      </xs:complexType>
                    </xs:element>
                    <xs:element name="Algusest">
                      <xs:complexType>
                        <xs:simpleContent>
                          <xs:extension base="xs:unsignedInt">
                            <xs:attribute name="Ühik" type="pikkusühik" use="required" />
                          </xs:extension>
                        </xs:simpleContent>
                      </xs:complexType>
                    </xs:element>
                    <xs:element name="Maakond" type="maakond" />
                  </xs:sequence>
                  <xs:attribute name="KoordX" type="xs:unsignedInt" use="required" />
                  <xs:attribute name="KoordY" type="xs:unsignedInt" use="required" />
                </xs:complexType>
              </xs:element>
              <xs:element name="Ylevaatused">
                <xs:complexType>
                  <xs:sequence>
                    <xs:element name="Järgmine" type="xs:unsignedShort" />
                    <xs:element name="Viimane" type="xs:date" nillable="true"/>
                  </xs:sequence>
                </xs:complexType>
              </xs:element>
              <xs:element name="Kandevõime">
                <xs:complexType>
                  <xs:simpleContent>
                    <xs:extension base="kandevõime">
                      <xs:attribute name="Ühik" type="massiühik" use="required" />
                      <xs:attribute name="Väärtus" type="xs:unsignedShort" use="optional" />
                    </xs:extension>
                  </xs:simpleContent>
                </xs:complexType>
              </xs:element>
              <xs:element name="Sillaparameetrid">
                <xs:complexType>
                  <xs:sequence>
                    <xs:element name="Pikkus">
                      <xs:complexType>
                        <xs:simpleContent>
                          <xs:extension base="xs:decimal">
                            <xs:attribute name="Ühik" type="pikkusühik" use="required" />
                          </xs:extension>
                        </xs:simpleContent>
                      </xs:complexType>
                    </xs:element>
                    <xs:element name="Laius">
                      <xs:complexType>
                        <xs:simpleContent>
                          <xs:extension base="xs:decimal">
                            <xs:attribute name="Ühik" type="pikkusühik" use="required" />
                          </xs:extension>
                        </xs:simpleContent>
                      </xs:complexType>
                    </xs:element>
                    <xs:element name="TeeLaius">
                      <xs:complexType>
                        <xs:simpleContent>
                          <xs:extension base="xs:decimal">
                            <xs:attribute name="Ühik" type="pikkusühik" use="required" />
                          </xs:extension>
                        </xs:simpleContent>
                      </xs:complexType>
                    </xs:element>
                  </xs:sequence>
                </xs:complexType>
              </xs:element>
              <xs:element name="Liiklusandmed">
                <xs:complexType>
                  <xs:sequence>
                    <xs:element name="Liiklussagedus">
                      <xs:complexType>
                        <xs:simpleContent>
                          <xs:extension base="xs:unsignedShort">
                            <xs:attribute name="Ühik" type="sagedusühik" use="required" />
                            <xs:attribute name="Loendusaasta" type="xs:unsignedShort" use="required" />
                          </xs:extension>
                        </xs:simpleContent>
                      </xs:complexType>
                    </xs:element>
                    <xs:element name="Jaotus">
                      <xs:complexType>
                        <xs:sequence>
                          <xs:element name="Sõidukid" type="xs:unsignedByte" />
                          <xs:element name="Veokid" type="xs:unsignedByte" />
                          <xs:element name="Autorongid" type="xs:unsignedByte" />
                        </xs:sequence>
                        <xs:attribute name="Ühik" type="protsent" use="required" />
                      </xs:complexType>
                    </xs:element>
                  </xs:sequence>
                </xs:complexType>
              </xs:element>
              <xs:element name="Indeksid">
                <xs:complexType>
                  <xs:sequence>
                    <xs:element name="SeisundiIndeks" nillable="true">
                      <xs:complexType>
                        <xs:simpleContent>
                          <xs:extension base="xs:decimal">
                            <xs:attribute name="Hindamiseaasta" type="aastad" use="optional" />
                          </xs:extension>
                        </xs:simpleContent>
                      </xs:complexType>
                    </xs:element>
                    <xs:element name="PontisIndeks" nillable="true">
                      <xs:complexType>
                        <xs:simpleContent>
                          <xs:extension base="xs:decimal">
                            <xs:attribute name="Hindamiseaasta" type="aastad" use="optional" />
                          </xs:extension>
                        </xs:simpleContent>
                      </xs:complexType>
                    </xs:element>
                  </xs:sequence>
                </xs:complexType>
              </xs:element>
            </xs:sequence>
            <xs:attribute name="Id" type="xs:unsignedInt" use="required" />
            <xs:attribute name="Ehitusaasta" type="aastad" use="required" />
          </xs:complexType>
        </xs:element>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
</xs:schema>

XSLT

XSLT 1

<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
    xmlns:msxsl="urn:schemas-microsoft-com:xslt" exclude-result-prefixes="msxsl"
>
    <xsl:output method="html" indent="yes"/>

    <xsl:template match="/">
      <html>
        <head>
          <title>Sille transformatsioon 1</title>
        </head>
        <body>
            <xsl:variable name="maakond" select="'Pärnu'"/>
            <p>Sillad mis asuvad <xsl:value-of select="$maakond"/> maakonnas</p>
            <xsl:for-each select="/Sillad/Sild">
              
              <xsl:variable select="Nimi" name="Sillanimi"/>
              <!--<xsl:value-of select="$Sillanimi"/>-->
              <ul>
                
                <xsl:if test="Asukoht/Maakond = $maakond">
                  <li>
                    <xsl:value-of select="$Sillanimi"/>
                    <xsl:text> </xsl:text>
                  </li>
                </xsl:if>
              </ul>
            </xsl:for-each>
          <xsl:variable name="sagedus" select="'500'"/>
          <p>
            Sillad mis asuvad <xsl:value-of select="$maakond"/> maakonnas ja kus liiklussagedus on väiksem kui <xsl:value-of select="$sagedus"/> autot/24h
          </p>
          <xsl:for-each select="/Sillad/Sild">

            <xsl:variable select="Nimi" name="Sillanimi"/>
            <xsl:variable select="Liiklusandmed/Liiklussagedus" name="liiklussagedus"/>
            <ul>

              <xsl:if test="Asukoht/Maakond = $maakond and Liiklusandmed/Liiklussagedus < $sagedus">
                <li>
                  <xsl:value-of select="$Sillanimi"/>
                  <xsl:text> - </xsl:text>
                  <xsl:value-of select="$liiklussagedus"/>
                  <xsl:text> autot 24/h </xsl:text>
                </li>
              </xsl:if>
            </ul>
          </xsl:for-each>
        </body>
      </html>
    </xsl:template>
</xsl:stylesheet>

XSLT 2

<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
    xmlns:msxsl="urn:schemas-microsoft-com:xslt" exclude-result-prefixes="msxsl"
>
    <xsl:output method="html" indent="yes"/>

    <xsl:template match="/">
      <html>
        <head>
          <title>Sille transformatsioon 2</title>
        </head>
        <body>
          <xsl:variable name="kandevõime" select="'1000'"/>
          <xsl:variable name="osakaal" select="'10'"/>
          <p>
            Sillad mille kandevõime on rohkem kui <xsl:value-of select="$kandevõime"/> t või kus kandevõime on väiksem/võrdne <xsl:value-of select="$kandevõime"/> t ja autorongide osakaal on üle <xsl:value-of select="$osakaal"/>% 
          </p>

          <xsl:for-each select="/Sillad/Sild">

            <xsl:variable select="Kandevõime/@Väärtus" name="Kandevõime"/>
            <xsl:variable select="Nimi" name="Nimi"/>
            <xsl:variable select="Liiklusandmed/Jaotus/Autorongid" name="autorongid"/>
            <ul>
              <xsl:choose>
                <xsl:when test="$Kandevõime > $kandevõime">
                  <li>
                    <xsl:value-of select="$Nimi"/>
                  </li>
                  
                </xsl:when>
                <xsl:when test="$Kandevõime <= $kandevõime and $autorongid > $osakaal">
                  <li>
                    <xsl:value-of select="$Nimi"/>
                  </li>
                </xsl:when>
              </xsl:choose>
            </ul>
          </xsl:for-each>
        </body>
      </html>
    </xsl:template>
</xsl:stylesheet>

XML retsensioon

Retsensioon meeskonna VRJ XML failile.

Meeskonna VRJ XML fail kirjeldab erinevaid automarke, jaotades autod mudelite järgi. Iga mudeli juures on välja toodud sõiduki tähtsamad parameetrid. XML fail vastab ülesandes esitatud nõuetele. Dimensioonid on jaotatud loogiliselt, dimensioonide arv (6) ületab ülesandepüstituses nõutud arvu (4). Lisaks tuleb kolmel dimensioonil kasutada atribuute, mis enam kui ID. Ka see nõue on korrektselt täidetud. XML fail valideerus ka online validaatori vastu. XSD faili puhul on suures osas piirdutud Visual Studio poolt automaatselt genereeritud variandiga. Näiteks <kaigukast> elemendi väärtused on defineeritud xs:string’ina, samas oleks need võinud olla defineeritud enum’ina, et saaks valida ainult kas automaat või manuaal. Praegusel vabatekstilisel kujul saab sisestada ka automanuaal, fsdf jne. Sama kehtib ka võimsuse ühiku kohta. Võimalikud väärtused võiksid olla näiteks kw ja hj. Auto ehitusaasta väärtused saaks tõkestada, kuna pole kuigi realistlik, et keegi omaks autot ehitusaastaga 1468 või 2301. Esimeses XSLT transformatsioonis on välja kirjutatud iga automark koos mudelitega ning mudeli parameetritega. Selleks on kasutatud kolme for tsüklit koos vastavate elementide või atribuutide väärtuste välja kutsumisega. Esineb üks näpuviga, võimsust on prinditud kaks korda kuigi võib arvata, et teisel korral on mõeldud käigukasti tüüpi. Teise transformatsioonifaili puhul on demonstreeritud erinevaid XSL funktsioone nagu, concat(), position() ja when tingimus, mis on väga tervitatav. Välja on prinditud kõik margid ja mudelid, kusjuures kavalalt on väljatrükis iga mudeli teksti värviks seatud style atribuuti kasutades reaalselt xml andmetes olev vastava mudeli värvi atribuut.

Analüüs

Sillad on olulised transpordi elemendid ja etendavad väga tähtsat rolli tänapäeva ühiskonna sotsiaal-majanduslikus arengus ning nende hea tervise säilitamiseks on vaja teostada pidevat seiret. Normaalse kasutuse juures mõjuvad sildadele eri laadi pinged ja koormused. Lisaks tekivad mõjud keskkonnast ja erinevast inimtegevusest. Kuigi sildadega esineb vanuse tõttu rikkeid või kahjustusi harva, on nende tagajärjed rasked. Selletõttu peab silla operaator silla struktuuride seisukorda seirama pidevalt ja omama väga head ülevaadet hetkeolukorrast. Eestis vasutsab riigimaanteedel olevate sildae seire eest Maanteeamet kelle haldusalas on ligi 1000 sellist objekti. Sildade põgus ülevaatus tehakse iga-aastaselt, kuid põhjalik ülevaatus toimub iga 4 aasta järel. Lisaks toimub ülevaatus rutiinse teehoolde käigus, et avastada ja remontida väiksemaid defekte.

Sildade seisundi efektiivsemaks analüüsimiseks on vaadeldava projekti raames loodud prototüüp-rakendus, mis kasutab satelliit kaugseire andmestikku, et visualiseerida kasutajale sillaga ja selle lähiümbruses toimuvate punktidega toimuvaid deformatsiooni ajalisi muutusi. IS-i aluseks on Euroopa Kosmose Agentuuri (ESA) poolt orbiidile saadetud Sentinel-1 radarsatelliidi andmed ja nende põhjal tehtud deformatsiooni interferomeetriline analüüs. Rakenduse peamiseks eesmärgiks on võimaldada süsteemi peakasutajal hallata kaugseire vahenditega kaetavate sildade andmeid. Tähtsaimaks haruks on seejuures sildadele töödeldud kaugseire andmete lisamine ja visualiseerimine läbi kaardikonponendi. Kuna tegemist on algse prototüübiga siis andmete lisamine toimub läbi kasutajaliidese manuaalselt, lõpplahenduses peaks see info läbi andmetöötlusrakenduse jõudma andmebaasi automaatselt. Rakenduse kasutamiseks tuleb ennast registreerida kasutajaks. Hetkel on kõigil kasutajatel võrdsed õigused sisu osas, kuid arhitektuur võimaldab ka erinevate rollide määramist ning sellest lähtuvalt funktsionaalsuse piiramist lisaarenduste näol. Kasutaja saab teostada sildadega põhilisi CRUD operatsioone. Lisaks on võimalik lisada ja muuta silla geomeetria andmeid. Põhiharuna on võimalik lisada sillale *.csv formaadingus töödeldud deformatsiooni andmeid. Rakendus koosneb veebiteenusest ja teenust tarbivast klientrakendusest. Projekti veebiteenuse pool on realiseeritud kasutades ASP.NET Web API tehnoloogiat, klientrakendus realisatsioon on tehtud AngularJS 1.5.8-ga.


Must-have:

  • Kasutajaks registreerimine (eeldus rakenduse kasutamiseks)
  • Kasutaja peab saama sisse logida kasutades kasutajanime ja parooli
  • Korraga peab saama sisse logida mitu kasutajat
  • Paroolile peavad rakenduma keerukusnõuded
  • Rakendusest peab saama välja logida
  • Sisseloginud kasutajale kuvatakse kaart Eesti vaates koos andmebaasis olevate sildadega.
  • Kasutaja peab saama vaadata silla andmeid
  • Klikk kaardi sillamarkeril viib kasutaja detailandmete vormile
  • Silla andmeid peab saama muuta
  • Silda peab saama lisada
  • Silda peab saama kustutada
  • Sildasid peab saama otsidasillanimekirjast
  • Sillageomeetriat peab saama vaadata
  • Silla detailandmete vormil on kaart, kus kuvatakse sillamarker koos sillageomeetriaga
  • Sillageomeetriat peab saama lisada
  • Sillageomeetriat peab saama muuta
  • Sillageomeetriat peab saama kustutada
  • Sillale peab saama lisada *.csv kujul kaugseire andmeid deformatsioonipunktide aegridadest
  • Deformatsioonipunktid peavad olema kuvatud kaardikomponendil
  • Deformatsioonipunkti peal klikkides peab avanema hüpikaken punkti tähtsama infoga ning rakendus peab kuvama graafiku deformatsiooni aegrea kohta.
  • Rakendus peab võimaldama lisada andmeid käsitsi tehtavate geodeetiliste kõrgusmõõdistuste kohta
  • Rakendus võimaldab võrrelda kaugseire andmeid ja käsitsi mõõdetud andmeid.


Nice-to-have:

  • Kasutajatel peavad olema erinevad õiguste tasemed
  • Kasutaja peab saama oma andmeid muuta
  • Deformatsioonipunktide markerid peavad oma erinevat välimust(värvust) sõltuvalt deformatsiooni väärtusest
  • Deformatsioonipunkti aegreast arvutatakse deformatsiooni trend
  • Rakendus võimaldab vaadata/lisada/muuta/kustutada andmeid liikluskoormuse kohta
  • Rakendus võimaldab vaadata/lisada/muuta/kustutada andmeid meteoandmete kohta

Veebiteenus

Rakendus asub SIIN.

Veebiteenuse retsensioon

Klientrakendus

Klientrakenduse retsensioon

Arendusprotsess

  1. 17.03.16 - wiki lehe loomine, XML, XSD
  2. 19.03.16 - XSLT
  3. 22.03 - XML retsensioon