Eindpresentatie

From AardRock Wiki
Jump to navigation Jump to search

Ik ben van plan de timeline net zoals 20/6 weer te gebruiken in de presentatie. Daarnaast als template de AardRock imitatie van Durk.

Héél globale presentatie opbouw:

  • 4 fases:
    • maart - april: Tools
      • Problemen
    • april - mei: Algemene functionaliteit
      • Problemen
      • Verhaal Chris Platonos / Updater
    • mei - 23 juni: Kenmerkende functionaliteit
      • Problemen
      • Verhaal Durk Adviesgedeelte
    • 23 juni - 4 juli: Ready 4 launch
      • Problemen
  • Samenvatting
  • Vragen?

Fase 1: maart - april: Tools

Keuzes moesten gemaakt worden: Voorkeurstaal was JAVA. Ervaring was hiervoor al aanwezig. Eclipse als ontwikkelomgeving gekozen. Subversion als versioning systeem aangesteld. Aan het begin gebruik gemaakt van de mogelijkheden van de Uni. Duidelijk was dat we onze eigen server nodig hadden. Op zoek gegaan naar VPS en daar alles op geïnstalleerd. Zowel tools als website / blog / wiki. Buildtool Maven was een probleem wat een stuk langer heeft geduurd. Daar zo meer over. WiredReach al bestaand iets wat qua netwerk- en databasevlak op ons beoogde programma leek. Platonos plug-in engine na een tijd rommelen gekozen om. Bleek de elegantste oplossing.

Problemen

  • WiredReach: bood goede dingen als P2P functionaliteit & RDF DB, echter zaten we qua keuzes dan gelijk vast aan Eclipse (voor het bouwen van de GUI) en JXTA (als dragend protocol). Omdat we dit niet wilden zijn we op zoek gegaan naar alternatieven. Na ong. 1 á 2 weken kwam WR zonder Eclipse. JXTA bleek na onderzoek ook beste protocol. Alle problemen waren in 1 x verdwenen. Hierbij hebben we ong. 2 weken verloren.
  • VPS staat in Amerika. Het installeren werkte niet altijd even goed en server heeft al aantal keer tekort aan geheugen gehad tijdens acties. VPS is nodig voor site, maar met name voor Subversion depot.
  • Maven als buildtool is het hele project het probleem geweest. Er is veel tijd in gestoken, maar op den duur kwamen we op een punt waarop we die tijd beter konden besteden aan het programma.

Fase 2: april - mei: Algemene Functionaliteit

Gebruikelijke dingen zoals:

  • core
  • registreren
  • inloggen
  • uitloggen
  • accounts
  • updaten
  • afsluiten

Problemen

Eerste stories waren te groot. Hierdoor hadden we de tijd veel te kort ingeschat. Uiteindelijk duur was ongeveer 5 x langer. Dit heeft ons aan het begin zeker 2 weken gekost.

Platonos

Wat willen we?

  • Klant
    • Klik op Cheetah > Check for updates
    • Update Now!
    • Geen centrale server
  • Onze vertaling
    • 3d-party libraries
    • Hot-swapping van .jars
    • Eenvoudig voor de gebruiker
    • Support voor versienummers
    • Alle functionaliteit als plugin
    • Mirrors

Hoe hebben we het opgelost?

  • Launcher-project
    • 1 class: Launcher.java
    • 80 regels code
    • Zo klein mogelijk
    • Herstarten / Afsluiten
    • Platonos
  • plugin.xml
   <plugin>
       <uid>aardrock.cheetah</uid>
       <name>Cheetah</name>
       <lifecycleclass>aardrock.cheetah.lifecycle.CheetahPluginLifecycle</lifecycleclass>
       <dependencies>
           <dependency uid="com.hp.hpl.jena" />
           <dependency uid="aardrock.cheetah.wiredreach.rdf" />
           <dependency uid="edu.stanford.ejalbert" />
           <dependency uid="org.apache.xerces" />
       </dependencies>
       <version>0.0.19</version>
  </plugin>

Problemen?

  • Lange laadtijden van plugins
  • Dependencies
  • Automatisch bouwen van juiste directory-structuur


Fase 3: mei - 23 juni: Kenmerkende functionaliteit

Dingen als:

  • Insuline data
  • Voedsel data
  • Logboek voor diabetes patient
  • User preferences
  • Het advies gedeelte

Problemen

Nogal laat aan het adviesgedeelte begonnen. Daarnaast maar 2 personen op deze speerpunt van het programma, waarvan 1 persoon uit het project gestapt is. Feitelijk hebben we maar 1 persoon op de case gehad een aantal weken lang. De rest was nog bezig met eigen dingen en deze werden eerst afgemaakt. Het adviesgedeelte is op het moment nog niet helemaal geïmplementeerd, maar dit wordt in één van de eerstvolgende nieuwe versies van Cheetah geïntroduceerd. Meer over het adviesgedeelte laat ik over aan Durk..

Verhaal Durk Adviesgedeelte

Fase 4: 23 juni - 4 juli: Ready 4 Launch

Deze fase worden de puntjes op de i gezet, net dat labeltje rechts laten uitlijnen, layout een klein beetje veranderen. Dat soort werk. Er zijn geen nieuwe stories meer. Het programma is qua functionaliteit klaar voor de lancering op 4 juli.

Problemen

Doordat we (te) laat begonnen zijn met het advies gedeelte wordt in deze periode nog hard geschroefd aan dit gedeelte om een goede en positieve (in de zin van snel beschikbaar) indicatie te kunnen geven wanneer deze functionaliteit beschikbaar komt.

Samenvatting

We moesten even op gang komen en verloren ongeveer een maand in de eerste twee fases (Tooling & Algemene functionaliteit). We hadden niet verwacht dit in deze fases te verliezen. Als we deze maand niet hadden verloren, dan hadden we het complete advies gedeelte zeker af gehad. Al met al hebben we de tijdsplanning niet helemaal gehaald, maar hebben we naar ons idee wel een product met potentie neergezet.

Vragen?

U bent ook van harte welkom tijdens de lancering van Cheetah Summer 2006. Geef u op via http://www.cheetah.aardrock.com