Roadmap 2007-2009 versie 2007 / 2 Inhoudsopgave Inleiding..................................................................................................................................... 3 Abstract.................................................................................................................................................................3 Nieuws sinds vorige versie................................................................................................................................3 Subprojecten....................................................................................................................................................... 3 Subprojecten (vervolg)......................................................................................................................................4 Planning en release-momenten.....................................................................................................................4 Versienummering in Edukitty..........................................................................................................................4 Even of oneven..................................................................................................................................................4 Het formaat.......................................................................................................................................................... 5 Overzicht releases 2007-2009......................................................................................................................... 6 Wanneer komt 2.0?............................................................................................................................................7 Contact................................................................................................................................................................. 7 Kwartaaloverzicht 2007........................................................................................................... 8 Afgelopen kwartalen.........................................................................................................................................8 Kwartaal 1............................................................................................................................................................. 8 Packitty............................................................................................................................................................8 Edukitty.nl....................................................................................................................................................... 9 Komende kwartalen.......................................................................................................................................... 9 Kwartaal 2............................................................................................................................................................. 9 Packitty............................................................................................................................................................9 Windows Port.............................................................................................................................................10 Namespace rewrite..................................................................................................................................10 GUI (Communikitty).................................................................................................................................11 Setupprogramma's..................................................................................................................................11 Release 1.2.0................................................................................................................................................12 Voorstel Edukitty Programming Guide............................................................................................12 Kwartaal 3..........................................................................................................................................................12 Communikitty............................................................................................................................................12 Netkitty.......................................................................................................................................................... 13 Whitepaper voor Edukitty XML Network Protocol 1.2-final....................................................14 Edukitty API-docs 1.2.1...........................................................................................................................14 Release versie 1.2.1...................................................................................................................................15 Kwartaal 4..........................................................................................................................................................15 Netkitty.......................................................................................................................................................... 15 Communikitty............................................................................................................................................15 Interface artwork en Educity................................................................................................................15 Release Edukitty 1.2.2..............................................................................................................................16 Publikitty SDK.............................................................................................................................................17 Edukitty API-docs 1.2.2...........................................................................................................................17 © 2007 Edukitty
pagina 1
Roadmap 2007-2009 versie 2007 / 2 Begin Edukitty Programming Guide.................................................................................................17 Kwartaal overzicht 2008........................................................................................................ 18 Kwartaal 1..........................................................................................................................................................18 Release Edukitty 1.2.3..............................................................................................................................18 Edukitty Programming Guide..............................................................................................................18 Release Edukitty 1.2.4..............................................................................................................................18 Kwartaal 2..........................................................................................................................................................18 Communikitty Translator.......................................................................................................................19 Publikitty SDK.............................................................................................................................................19 Edukitty Programming Guide en API-docs....................................................................................19 Onderzoek Graphitty...............................................................................................................................20 Release Edukitty 1.2.5..............................................................................................................................21 Kwartaal 3..........................................................................................................................................................21 Eindgebruiker documentatie...............................................................................................................21 Ontwerp en implementatie Graphitty.............................................................................................21 Communikitty Translator ......................................................................................................................22 Publikitty SDK en nieuwe Edukitty Make........................................................................................22 Release Edukitty 1.2.6..............................................................................................................................23 Kwartaal 4..........................................................................................................................................................23 Graphitty....................................................................................................................................................... 24 Release Edukitty 1.2.7..............................................................................................................................25 Edukitty Programming Guide en API-docs 1.27...........................................................................25 Edukitty handboek voor eindgebruikers........................................................................................25 Edukitty in 2009...................................................................................................................... 25 Blik in de toekomst........................................................................................................................................25 Kwartaal 1..........................................................................................................................................................27 Release 1.2.8................................................................................................................................................27 Release 1.3.0................................................................................................................................................27 Authentikitty...............................................................................................................................................27 En verder............................................................................................................................................................28 Maandplanning...................................................................................................................... 28 Voor kwartaal 2 2007....................................................................................................................................28 April................................................................................................................................................................28 Mei................................................................................................................................................................... 28 Juni.................................................................................................................................................................. 29
© 2007 Edukitty
pagina 2
Roadmap 2007-2009 versie 2007 / 2
Inleiding Abstract Met dit document probeer ik een zo helder mogelijk beeld te verschaffen van de huidige staat van ontwikkeling van Edukitty, en geef ik een overzicht van de taken en projecten die nog op stapel staan. De beschreven planning is puur indicatief en is aan allerlei factoren onderhevig – het schrijven van software is een intensieve en langdurige aangelegenheid waarbij er altijd in de loop van de tijd veranderingen in de plannen kunnen onstaan, hetzij vanwege nieuwe inzichten, hetzij vanwege onverwacht opgelopen vertragingen. Dit document is in de eerste plaats bedoeld voor donateurs/subsidie gevers/enz. en vrijwilligers die bij het project betrokken zijn. Later zal dit document ook voor gemeenschap worden gepubliceerd op de website Edukitty.nl. – Als je alle uitleg en dergelijke over wil slaan en direct de taken voor aankomende maand wil bekijken, zie pag. 28 – dat scheelt een hoop leeswerk.
Nieuws sinds vorige versie Dit is de eerste versie van dit document. Voor vragen kun je contact op nemen met mij via
[email protected]
Subprojecten Edukitty is opgesplitst in een aantal kleinere subprojecten die herhaaldelijk in de document genoemd worden. Even een lijst van subprojecten waar op dit moment aan gewerkt wordt, of die in toekomst geïntroduceerd zullen worden: •
Toolkitty
Het onderliggende framework van Edukitty (voorheen Libedukitty)
•
Netkitty
Netwerk software voor het leerlingvolgsysteem (pagina 13)
•
Graphitty
De grafische engine en daaraan gerelateerde zaken (pagina 20)
•
Communikitty
De user interface (pagina 12)
© 2007 Edukitty
pagina 3
Roadmap 2007-2009 versie 2007 / 2 Subprojecten (vervolg) •
Authentikitty
Wachtwoord- en veiligdheidsbeheer (pagina 27)
•
Packitty
Pakketbeheerder, module bestandssysteem, distributie
programma (pagina 9) •
Edukitty Make
Compilertools en projectbeheerder (pagina 22)
•
Communikitty Translator
Vertaalsysteem voor de meertalige interface
(pagina 19) •
Educity
'Virtueel Edukitty-dorp', onderdeel interface-artwork (pagina 15)
•
Publikitty/SDK
'Starters kit' voor ontwikkelaars (pagina 17)
Planning en release-momenten Om aan de Open-Source gedachte 'release early and release often' te voldoen is er besloten één versie per kwartaal vrij te geven. Een maandelijkse release is te frequent (er zijn dan simpelweg te weinig veranderingen) en over een halfjaar is het minder makkelijk plannen. De planning voor het project is dan ook gebaseerd op doelstellingen die gesteld worden per kwartaal, om zo een overzichtelijk beeld te geven van welke veranderingen er te verwachten zijn voor elke nieuwe versie. Naast de globale kwartaalplanning, die alleen uit doelstellingen bestaat, vind je aan het eind van dit document ook een maandplanning. Deze maandplanning beschrijft zo goed mogelijk welke taken er gedaan moeten worden voor doelstellingen van dat kwartaal. Het is uiteraard moeilijker zo'n specifieke opgave te maken, vandaar dat er maximaal één kwartaal vooruit wordt gepland. Aan het einde van elk kwartaal verschijnt er een nieuwe versie van dit document met een bijgewerkte planning.
Versienummering in Edukitty
Even of oneven De gebruikte versienummering voor Edukitty lijkt aanvankelijk erg ondoorzichtig, maar
© 2007 Edukitty
pagina 4
Roadmap 2007-2009 versie 2007 / 2 in feite verschilt het niet met de methode die voor andere open-source proejcten wordt gehanteerd. Het komt er op neer dat de onstabiele ontwikkel-tak continu gescheiden wordt onderhouden van de stabiele enduser-tak. Verder is het versienummer opgebouwd uit vier velden, waarvan het tweede veld in het geval van een oneven getal een ontwikkelversie aanduidt en in het geval van een even getal een enduser-versie. Het komt er uiteindelijk op neer dat er ook aan twee takken tegelijk gewerkt wordt: één tak voor de bug fixes, één tak voor nieuwe functies die nog niet getest zijn. Op de website zullen de verschillende takken dan ook op een aparte pagina worden aangeboden.
Het formaat Het formaat voor de versienummering is alsvolgt: major.minor.release[.build] Major (1-99)
Een nieuwe major versie wordt gebruikt om een grote verandering aan te geven die compatibiliteit breekt met voorgaande versies. Versies met hetzelfde major-nummer zijn backward-compatible met elkaar: wat op versie 1.2.0 werkt, werkt ook op 1.5.1 etc. Versie 2.0.0 is echter niet meer compatible met alle voorgaande versies.
Minor (0-99)
Het minor-nummer in de versie wordt gebruikt om grote veranderingen aan te geven die de compatibiliteit niet breken, maar mogelijk wel wijzigingen aan de interne API maken. Het verschil met een nieuwe major-versie is, dat deze incompatibiliteit wordt ondervangen door alleen code toe te voegen en de oude functies te verhuizen naar de 'compat-library', waardoor ze nog wel beschikbaar blijven. Als het minor-nummer een oneven getal of een 0 is, is er sprake van een niet-stabiele versie, bij een even getal is er sprake van een stabiele versie.
© 2007 Edukitty
pagina 5
Roadmap 2007-2009 versie 2007 / 2 Release (0-99)
Het release of revision nummer geeft een wijziging, een toevoeging of een bugfix aan die geen compatibiliteit breekt met voorgaande versies. Versies met eindigend op een nul zijn onstabiel.
Build (a-z)
De build-letter is optioneel. Wanneer er vlak na een release een significant mankement wordt vastgesteld dat bovendien makkelijk te repareren is (zgn. 'domme fouten'), wordt er direct daarna een nieuwe release gedaan met een nieuwe build-letter. Bijvoorbeeld 1.2.0a. Releases met een build-letter zijn niet in de planning opgenomen.
Bijvoorbeeld: 1.2.1 is een stabiele versie, die compatible is met alle voorgaande versies in de 1.x serie. 1.3.0 is een onstabiele versie, maar is net zo goed compatible met alle voorgaande 1.x versies. De daarop volgende 1.4.0 behoort weer tot de stabiele tak.
Overzicht releases 2007-2009 Versie
Jaar
Kwartaal
Stabiel/onstabiel
1.2.0
2007
Q2
Bèta
1.2.1
2007
Q3
stabiel
1.2.2
2007
Q4
stabiel
1.2.3
2008
Q1
stabiel
1.2.4
2008
Q1
stabiel
1.2.5
2008
Q2
stabiel
1.2.6
2008
Q3
stabiel
1.2.7
2008
Q4
stabiel
1.2.8
2009
Q1
stabiel
1.3.0
2009
Q1
onstabiel
1.2.9
2009
Q2
stabiel
1.3.1
2009
Q2
onstabiel
1.2.10
2009
Q3
stabiel
© 2007 Edukitty
pagina 6
Roadmap 2007-2009 versie 2007 / 2 1.3.2
2009
1.2.11 1.3.3
Q3
onstabiel
2009
Q4
stabiel
2009
Q4
onstabiel
Wanneer komt 2.0? Wie goed naar het voorgaande overzicht kijkt, zal waarschijnlijk ook zien dat met de huidige versienummering, een versie 2.x pas na 2020 bereikt zal worden. Volgens de gebruikte nummerings methodologie zal er een versie 2.0 komen als er zeer grote vernieuwingen plaatsvinden. Waarschijnlijk worden er tegen die tijd gewoon een paar nummers overgeslagen.
Contact Voor vragen opmerkingen kan je uiteraard contact met mij op nemen via
[email protected] of per post naar: Barry Faas Jacob van Offwegenlaan 21 2282HN Rijswijk ZH
© 2007 Edukitty
pagina 7
Roadmap 2007-2009 versie 2007 / 2
Kwartaaloverzicht 2007 Afgelopen kwartalen
Kwartaal 1 In kwartaal 1 2007 zijn de volgende werkzaamheden verricht: Packitty Er is onderzoek verricht naar het gebruik van een archiveringsformaat voor het project Packitty. Packitty is een standaard binnen Edukitty die in de toekomst moet gaan dienen voor het bundelen en distribueren van onderdelen van Edukitty. Packitty bestanden kunnen bijvoorbeeld worden gebruikt om een bepaalde module te installeren. Daarbij bevatten de Packitty bestanden direct binairies voor alle platformen waarop Edukitty draait: er is dus één Packitty bestand voor Linux en Windows computers. Dit laatste wordt verwezenlijkt dmv. zgn. Packitty Binairies die in de bestanden zijn opgeslagen. Ontwikkelaars kunnen Packitty's naar hun gebruikers distribueren dmv. Packitty Script. Deze taal zal in de Publikitty SDK kunnen worden gebruikt om projecten te definiëren en automatisch compiler-scripts en Packitty betanden te laten genereren voor projecten. Uiteindelijk is besloten om Packitty bestanden te schrijven volgens de GNU Tar standaard, evt. in combinatie met zlib of gzip compressie (tar.gz). Dit formaat is makkelijk te gebruiken en overal bekend waardoor het mogelijk is ook buiten Edukitty deze bestanden in- of uit te pakken. Edukitty krijgt hiervoor een eigen implementatie van GNU Tar standaard met enkele aanpassingen om ook onder Windows te werken. Voor Packitty Script is besloten XML te gebruiken. De voornaamste reden hiervoor is dat XML al heel veel wordt gebruikt in Edukitty. De 'headers' in de bestanden worden waarschijnlijk in Edukitty's eigen formaat geschreven, dat compatible is met Windows INI bestanden en sommige Unix config files zoals samba.conf. Het gebruik van XML is op dit gebied niet lonend en waarschijnlijk trager.
© 2007 Edukitty
pagina 8
Roadmap 2007-2009 versie 2007 / 2 Edukitty.nl Er is het afgelopen kwartaal veel tijd gaan zitten in het bouwen van een nieuwe website. Het plan is een grotere website te maken die meer potentiële vrijwilligers aantrekt. Er is voor de gekozen de site in drie delen te splitsen: Edukitty.org, Edukitty.nl en wiki.edukitty.org. Edukitty.org zal de Engelstalige site worden waar voornamelijk zaken op zullen staan voor ontwikkelaars. Edukitty.nl wordt uiteraard een Nederlandse site, met onderwerpen die interessant zijn voor mensen uit het Nederlandse basisonderwijs. De wiki spreekt voor zich. Op het moment is Edukitty.org slecht onderhouden, Edukitty.nl is nog niet af en de wiki is beschadigd geraakt vanwege een servercrash bij NedLinux. Er is dus nog bijzonder veel werk te verrichten op dat gebied. Op het moment wordt er hard gewerkt aan Edukitty.nl en het in gebruik nemen van een nieuw CMS, typo3. Een nieuw CMS is nodig aangezien vanwege de slechte beveiliging van Mambo de server al een keer gehackt werd.
Komende kwartalen
Kwartaal 2 In kwartaal 2 zal de nadruk komen te liggen op het klaarstomen van versie 1.2.0. Dit is één van de belangrijkste releases voor Edukitty sinds lange tijd en stond eigenlijk al gepland voor halverwege 2006. 1.2.0 zal de eerste versie van Edukitty worden die draait op Linux én Windows tegelijk en die als binairy te downloaden is van website. Ook zal deze versie voor het eerst helemaal gebruik maken van Qt4. Voordat 1.2 gereleased kan worden moeten er nog massa's werk verzet worden, vandaar dat het waarschijnlijk niet haalbaar is deze versie al in het tweede kwartaal af te hebben. Verder zal de website dit kwartaal ook af moeten komen (althans, Edukitty.nl) en dat is op het moment ook erg belangrijk. Even een overzicht van wat er nog gedaan moet worden voor 1.2.0: Packitty Op dit moment is de Tar implementatie die zal worden gebruikt door Packitty bijna voltooid. Ander werk dat moet worden verricht is o.a: het schrijven van een parser voor de headers, een object model voor Packitty Script en Packitty Binairy. De plannen hiervoor © 2007 Edukitty
pagina 9
Roadmap 2007-2009 versie 2007 / 2 zijn concreet genoeg om zonder grote aanpassingen geïmplementeerd te kunnen worden. Verder moet de module-loader gewijzigd worden om overweg te kunnen met Packitty Binairy's. Windows Port Versie 1.2.0 is de eerste versie die ook op Windows kan draaien. De aanpassingen hiervoor aan de code (hoofdzakelijk in de module-loader) zijn al drie jaar geleden gemaakt. Op dat moment werd gewerkt met Microsoft Visual C++ 6 (MSVC++) en Qt3 Non-Commercial. Inmiddels is het mogelijk gebruik te maken van Open-Source software op dit gebied. Met behulp van de nieuwe Open-Source versie van Qt4, is het mogelijk over te stappen op MinGW en QMake onder Windows. MinGW is de Windows port van Linux compiler GCC. Uiteindelijk zal QMake worden vervangen door Edukitty Make, maar nog niet voor deze release. Voor de compilatie op Windows zal de huidige Windows implementatie aangepast moeten worden om te werken met MinGW. Aangezien er onder Linux al GCC werd gebruikt, zal dit naar verwachting geen problemen opleveren. Namespace rewrite Op het moment worden alle public classes in Toolkitty geëxporteerd in namespace Edukitty en gecompileerd als één shared library (libedukitty.so onder Linux, edukitty.dll onder Windows). In versie 1.2 zaal dit worden vervangen door drie aparte namespaces, die ook weer worden ondergebracht in drie losse bestanden, te weten: •
namespace EdukittyCore in libedukitty_core.so, resp. edukitty_core.dll
•
namespace EdukittyGui in libedukitty_gui.so, resp. edukitty_gui.dll
•
namespace EdukittyEdu in libedukitty_edu.so, resp. edukitty_edu.dll
EdukittyCore, EdukittyGui en EdukittyEdu zullen respectievelijk kernel, grafische en educatieve onderdelen bevatten. Deze scheiding maakt het mogelijk Edukitty te compileren op servers zonder X11 grafische omgeving en maakt libedukitty bovendien overzichtelijker. © 2007 Edukitty
pagina 10
Roadmap 2007-2009 versie 2007 / 2 Voor versie 1.3 zullen daar in de toekomst nog eens drie namespace bijkomen: •
namespace EdukittyDevel
•
namespace EdukittyCompat
•
namespace EdukittyDebug
Er wordt nog onderzocht of het lonend is alle netwerk gerelateerde onderdelen in een namespace EdukittyNetwork te stoppen. Het werk aan deze library-split is in principe minimaal. GUI (Communikitty) Communikitty is de nieuwe interface van Edukitty en moet één van de voornaamste 'selling points' worden van Edukitty. Het uitgangspunt is een interactieve en dynamische interface waarbij communicatie in woord en beeld voorop staat. Bij de demo-interface van Edukitty 1.1.9 zijn heel wat dingen blijven liggen die absoluut beter moeten, vandaar dat ervoor gekozen is praktisch alles van de grond af aan op te bouwen. De twee mascottes van Edukitty, Kitty en Cathy, zullen een grote rol gaan spelen in de nieuwe interface, maar er zal voorlopig geen tijd worden gestoken in het animeren en renderen van de twee katten. De meeste plannen voor Communikitty zijn tot nu toe nog vrij vaag. Daarom is besloten dit in kwartaal 2 alleereerst wat concreter te overdenken en vermoedelijk pas in kwartaal 3 tot de implementatie over te gaan. Communikitty wordt één van de belangrijkste onderdelen van Edukitty en een goed plan is daarom enorm belangrijk. Setupprogramma's In versie 1.1.9 is begonnen aan een tweetal setup programma's voor Edukitty, die moeten worden afgemaakt voor 1.2.0 en er moet een beginnen worden gemaakt aan het installeerprogramma voor Packitty bestanden. De setup programma's bestaan uit de client-wizard en de remote setup. De eerste is een programma waarin stap voor stap basale installingen van Edukitty met de gebruiker worden doorgenomen, zoals het IP adres van de server en de netwerk modus. © 2007 Edukitty
pagina 11
Roadmap 2007-2009 versie 2007 / 2 De remote setup stelt de gebruiker in staat om op afstand de Edukitty Server voor de eerste keer in te stellen. De client-wizard is in principe bijna af, voor de remote setup moeten nog veel aanpassingen gemaakt worden in de code van de server. Met het Packitty installeerprogramma kan de gebruiker nieuwe Edukitty modules installeren of verwijderen en op den duur zal de installer ook worden gebruikt om Edukitty zelf te installeren. Er zal worden begonnen aan de installer voor 1.2.0, maar dat heeft (nog) geen prioriteit. Release 1.2.0 Einde kwartaal 2 zal Edukitty versie 1.2.0 worden vrijgegeven, ook als nog niet alle onderdelen af zijn (om aan de 'één release per kwartaal' te kunnen voldoen). De release zal vermoedelijk samenhangen met de presentatie van een nieuwe website. Voorstel Edukitty Programming Guide Eind kwartaal 2 zal ook worden begonnen aan een voorstel voor de inhoud van de Edukitty Programming Guide, de programmeurs handleiding bij Edukitty. Omdat een groot aantal zaken nog niet vastliggen, zal nog niet direct worden begonnen met het schrijven ervan. Pas eind 2007 / begin 2008 zal het voorstel worden uitgewerkt. (Dit onderdeel valt onder documentatie voor libedukitty)
Kwartaal 3 In kwartaal 3 zal Edukitty 1.2.1 worden vrijgegeven, met als grootste verandering de integratie van Communikitty en een uitgebreidere netwerk implementatie. Communikitty Kwartaal 3 2007 zal voornamelijk in teken staan van de implementatie van Communikitty. Meer over Commukitty is de lezen in het overzicht van Q2. Het doel is Communikitty en daarmee de interface van Edukitty voor de release van versie 1.2.1 in een bruikbaar stadium te brengen. Veel daarvoor zal van de grond af aan moeten worden ontwikkeld, aangezien er in kwartaal 2 vooral plannen zijn gemaakt. Verder wordt er gekeken of © 2007 Edukitty
pagina 12
Roadmap 2007-2009 versie 2007 / 2 Graphikitty – de grafische engine van Edukitty – mogelijk een rol kan spelen in de basis interface van Edukitty. Ook moet er worden nagedacht over een planning voor het animeren van Kitty & Cathy en de rest van het interface 'artwork'. Er staat al enige tijd de community site artwork.edukitty.org op het programma waarop het interface artwork onder een Creative Commons licentie met de community gedeeld moet worden. Omdat nog niet precies bekend is wat er moet gebeuren aan het Communikitty project, is het lastig een nauwkeurige planning te maken. Vermoedelijk zal het werk aan Communikitty tot aan kwartaal 1 2008 doorlopen, waarna het de bèta fase bereikt zou moeten hebben. In versie 2007 / 2 van dit document is het waarschijnlijk mogelijk een preciezere planning te geven. Netkitty Netkitty is het overkoepelende project dat buiten Edukitty ook wel leerlingvolgsysteem of leerlingregistratiesysteem wordt genoemd. Netkitty is een groot project dat rust op de bestaande netwerk code van Edukitty en Edukitty Server. Om de omvang van het project aan te geven, volgt hier een uitgebreide lijst van taken die al voltooid zijn en taken die nog moeten gebeuren. Reeds geïmplementeerd •
Edukitty XML Network Protocol, versie 1.1-draft
•
Edukitty pluggable SQL database
•
Edukitty user-management (client- en server-side)
•
Client-side OOP non-blockable network classes (deels gebaseerd op die van Qt4)
Nog te implementeren (voor Q3) •
Edukitty XML Network Protocol, versie 1.2-final + whitepaper
•
Client-side classes voor leerlingvolgsysteem
•
Client software voor het leerlingvolgsysteem en het user-management systeem (voor de buitenwereld bekend als Netkitty)
© 2007 Edukitty
pagina 13
Roadmap 2007-2009 versie 2007 / 2 •
Import/export filters voor Netkitty (bijv. EDEX)
•
Netkitty functies useradd en groupmigrate etc.
En voor de toekomst •
Ondersteuning voor P2P in client modules dmv. van uitgebreide classes hiervoor
•
Ontwikkeling van Edukitty XML Network Protocol versie 1.4 met o.a. broadcast modus, 'datagram', internet ondersteuning
Netwerk ondersteuning is een belangrijke feature van Edukitty en Netkitty is in 2007 de eerste verbinding van deze mogelijkheden naar de gebruiker toe. Met name het beheerprogramma van Netkitty, dat de gebruiker (leraar) in staat stelt leerlinggegevens en statistieken te raadplegen, is een punt waar vermoedelijk veel tijd in zal gaan zitten. Whitepaper voor Edukitty XML Network Protocol 1.2-final Dit whitepaper is een zeer belangrijk stuk documentatie waarin versie 1.2-final van het netwerk protocol wordt beschreven. Edukitty's netwerk protocol is een flexibel, XMLgebaseerd protocol waarmee de client met elkaar en met de server communiceren. Voor 2008 staat bovendien een nieuwe versie van protocol gepland (1.4), waarin communicatie via internet en tussen clients onderling mogelijk moet worden. Ook zal versie 1.4 ondersteuning voor Authentikitty bevatten, waarmee o.a. betere beveiliging en alternatieve wachtwoordverificatie geïntroduceerd zal worden. (Dit onderdeel valt onder 'server-documentatie') Edukitty API-docs 1.2.1 In kwartaal 3 en 4 zal het grootste deel van de API van Toolkitty gedocumenteerd worden, voorzover dat nu nog niet is gebeurd. De API documentatie dient referentie documentatie en niet als complete handleiding, die staat pas in 2008 gepland. De eerste versie van deze API documentatie zal in kwartaal 3 het levenslicht zien en zal in kwartaal 4 verder afgemaakt worden. Het grootste deel ervan zal gegenereerd worden door het programma Doxygen uit commentaren in de broncode. Deze uitgebreide beschrijvingen van classes en functies © 2007 Edukitty
pagina 14
Roadmap 2007-2009 versie 2007 / 2 kunnen voor ontwikkelaars dienen als ondersteunende referentie informatie. Release versie 1.2.1 Aan het einde van kwartaal 3 wordt Edukitty versie 1.2.1 vrijgegeven met zoveel mogelijk van de bovengenoemde veranderingen.
Kwartaal 4 Het vierde kwartaal van 2007 zal met name worden benut om het resterende werk aan de projecten Netkitty en Communikitty de voltooien. Het is ook de bedoeling een begin te maken met het klaarstomen van de Publikitty SDK. Netkitty Kwartaal 4 is het tweede deel in het halfjaar durende ontwikkelingstraject van Netkitty. In dit deel zal er met name tijd worden besteed aan de interface van het programma, wizards en filters. De achterliggende classes in het public namespace zouden eind kwartaal 3 al voor een groot deel af moeten zijn. Netkitty zou bij de voor eind 2007 geplande release van Edukitty 1.2.2 bruikbaar moeten zijn voor eindgebruikers. Communikitty Hetzelfde geldt ook voor Communikitty. Begin kwartaal 4 zal Communikitty de volledige interface van Edukitty moeten bepalen en eind 2007 moet de code bruikbaar zijn voor ontwikkelaars. Interface artwork en Educity Een belangrijk onderdeel van Communikitty is de verzameling grafisch materiaal voor de interface. Het is de bedoeling een groot aanbod aan afbeeldingen en animaties te maken die de interface aantrekkelijk maken voor kinderen en die bovendien her te gebruiken zijn door ontwikkelaars die voor hun eigen programma's een interface willen maken. Verder speelt het project Educity een belangrijke rol in de interface. Educity is een soort virtueel dorp waaromheen de interface zich als het ware afspeelt. Het interface artwork is een
© 2007 Edukitty
pagina 15
Roadmap 2007-2009 versie 2007 / 2 relatief groot project (hoewel er niet geprogrammeerd voor hoeft te worden) dat grotendeels gemaakt wordt met het Open-Source programma Blender. Zaken die o.a. deel uitmaken van het interface artwork: •
De mascottes Kitty en Cathy als afbeeldingen, 3d modellen en animaties
•
Fleurige systeem thema's
•
Grafisch materiaal voor Educity, zowel stills als 3d modellen die vrij aan te passen zijn door derden.
Ondanks dat het interface artwork geen onderdeel uitmaakt van de code, is het een zeer belangrijk project aangezien het voor een groot deel het gezicht van Edukitty bepaald. Cosmetische factoren spelen zeker een belangrijke rol bij het succes van een programma en daarom wordt zeker dit deel erg serieus genomen. Op de prioriteitenlijst staat het voorlopig echter niet, er zal vermoedelijk wel elk kwartaal wat werk aan worden verricht, maar daar wordt voorlopig niet apart melding van gemaakt in dit document. Het is de bedoeling dit project eind 2008 'bruikbaar' te verklaren en samen met Edukitty te distribueren. Release Edukitty 1.2.2 Buiten de voornaamste veranderingen in Netkitty en Communikitty, zal versie 1.2.2 een tal van kleine aanpassingen bevatten. Met name dingen die tot die tijd nog test-fase verkeren moeten worden afgemaakt en de code moet nog een keer van A tot Z worden doorlopen op fouten of ontbrekende onderdelen. Lijst van doelstelling voor de release van eind kwartaal 4: •
Netkitty is bèta stadium: bruikbaar voor leerlingregistratie, zowel voor eindgebruikers als ontwikkelaars
•
Communikitty bruikbaar voor ontwikkelaars
•
Packitty, Packitty Script en Packitty Installer gereed
•
Implementatie van Edukitty XML Network Protocol 1.2-final volledig gerealiseerd.
© 2007 Edukitty
pagina 16
Roadmap 2007-2009 versie 2007 / 2 •
Setup-wizards en remote assistant applicaties bruikbaar
Met de afronding van deze zaken kan worden voorbereid op enkele nieuwe projecten in 2008 zoals de grafische engine (Graphitty), het vertalingsprogramma en de SDK. Publikitty SDK De SDK (ookwel Software Development Kit(ty) is een optioneel pakket waarmee software ontwikkelaars nieuwe onderdelen voor Edukitty kunnen ontwikkelen. Het grootste deel van de SDK bestaat uit documentatie, verder zullen de volgende onderdelen zullen deel gaan uitmaken van de SDK: •
Toolkitty API documentatie (2007 / 4)
•
Edukitty Programming Guide (2008 / 2)
•
Toolkitty headers (2007 / 4)
•
Packitty pakket bouwer en compiler scripts (2008 / 3 )
Eind kwartaal 4 zal er worden begonnen met het bundelen van de onderdelen die reeds af zijn op dat moment. Edukitty API-docs 1.2.2 In kwartaal 4 zal ook het tweede deel van de Toolkitty API worden gedocumenteerd. Het vorige kwartaal werd hier al een begin mee gemaakt en het doel is eind 2007 van 90% van de broncode, referentie documentatie beschikbaar te hebben. Begin Edukitty Programming Guide De Edukitty Programming Guide (mogelijk nog onder een andere naam) is in tegenstelling tot de API-docs geen referentie documentatie, maar een complete handleiding waarin het programmeren met Edukitty stap voor stap wordt uitgelegd. De bedoeling is om Edukitty vooral óók voor beginnende programmeurs toegankelijk te maken en de Programming Guide is daarin een belangrijk onderdeel. Eind 2007 zal verder worden gewerkt met de voorgestelde inhoud uit kwartaal 2 / 2007.
© 2007 Edukitty
pagina 17
Roadmap 2007-2009 versie 2007 / 2
Kwartaal overzicht 2008 Naarmate de planning verder van nu verwijderd is, zal ook de nauwkeurigheid afnemen. Deze planning voor 2008 is onder voorbehoud!
Kwartaal 1 Het begin van 2008 zal met name worden gebruikt om een groot deel van de Programming Guide te schrijven, de rest van kwartaal 1 is gereserveerd als 'uitloop' voor taken uit 2007 waarvan mogelijk de deadline niet gehaald is. Release Edukitty 1.2.3 Dit kwartaal bevat twee nieuwe releases. Versie 1.2.3 zal bijna gelijk zijn aan 1.2.2, met de als enige verandering, de aanpassingen die eind 2007 zijn gemaakt voor de SDK. Edukitty Programming Guide In kwartaal 1 2008 zal er voor het eerst een versie van de Programming Guide op de website worden aangeboden. Het is de bedoeling direct een redelijk bruikbaar resultaat te kunnen laten zien. Enkele onderdelen zullen in elk geval nog ontbreken: •
Documentatie voor de vertalingstools (die zijn nog niet af)
•
Complete documentatie voor Packitty (pakket beheer)
•
Verwijzingen naar Graphitty (grafische engine) (ook nog niet af)
Release Edukitty 1.2.4 Deze versie zal alle toevoegingen bevatten die in 2007 niet meer afgemaakt konden worden. Dit om voor te bereiden op nieuwe projecten in kwartaal 2 en 3.
Kwartaal 2 In kwartaal 2 zal worden begonnen aan een aantal nieuwe projecten en zal er onderzoek worden gedaan naar projecten die in de toekomst gerealiseerd zullen worden.
© 2007 Edukitty
pagina 18
Roadmap 2007-2009 versie 2007 / 2 Communikitty Translator Communikitty Translator is Edukitty's vertaal mechanisme, dat in andere programma's ook wel i18n (internationalisation) genoemd. Met Communikitty Translator is het bovendien mogelijk dat gebruikers zelf de interface van Edukitty vertalen uit het Engels naar een andere taal. In oudere versies was er al een dergelijk systeem aanwezig, maar door drastische wijzigingen in de architectuur, werd dit systeem uiteindelijk geschrapt. Communikitty Translator is een relatief eenvoudig project, dat bestaat uit de volgende onderdelen: •
Vertaling-architectuur in Toolkitty
•
Bestandssysteem voor woordenboeken
•
Vertaalprogramma
•
Standaard woordenboek voor Engels en Nederlands
•
Onderdeel in de SDK waarmee ontwikkelaars woordenboeken voor hun eigen programma's mee kunnen leveren.
Het uiteindelijke ontwerp voor Communikitty Translator ligt nog niet volledig vast, hoewel er opzich nauwelijks belangrijke technische beslissingen genomen hoeven te worden. Er wordt nog bekeken of het zinnig is om een eigen vertaalprogramma te maken of dat het wellicht voldoet een bestaand te gebruiken (bijv. Linguist van Qt). Publikitty SDK Het doel is om begin kwartaal 2 – 2008 een volledig functionele versie van de Publikitty SDK te presenteren, samen met een bruikbare versie van de Programming Guide. Enkele van de dingen die nu nog gedaan moeten worden zijn de laatste onderdelen van Packitty en de Packitty installeertool. Deze twee onderdelen zullen een belangrijke rol spelen in het distribueren van modules naar de eindgebruiker. Edukitty Programming Guide en API-docs In dit kwartaal zullen de API-docs en de Programming Guide worden bijgewerkt met toevoegingen over de laatste toevoegingen aan de SDK. Ook zal het grootste deel van de © 2007 Edukitty
pagina 19
Roadmap 2007-2009 versie 2007 / 2 vertaaltoolkit Communikitty Translator worden toegevoegd. Onderzoek Graphitty Eind 2005 werd er onderzoek gestart naar het ontwerp van een eigen grafische engine, Graphitty. Graphitty is een toolkit die voor een groot deel de visuele faciliteiten voor Edukitty moet gaan bepalen. Een dergelijke toolkit is nodig om Edukitty op den duur te kunnen voorzien van aantrekkelijke graphics die aan de eisen van tegenwoordig kunnen voldoen. Eén van de belangrijkste punten is, dat Graphitty de ontwikkelaar meer vrijheid moet geven en de interactiviteit van Edukitty sterk moet vergroten door een makkelijk, maar uitgebreid object-georiënteerd design te bieden. Enkele van de mogelijkheden die Graphitty zal bieden: •
Programmeren in zowel 2D als 3D
•
Off-screen canvas met objecten die traploos getransformeerd kunnen worden
•
Uitgebreid viewport- en camerasysteem
•
Platform onafhankelijke ondersteuning voor modulaire drivers voor input, viewportmanagement en audio
•
Animatiesysteem met frame-interpolatie en hoge precisie timers
Het onderzoek werd begin 2006 stilgelegd omdat andere onderdelen van Edukitty prioriteit hadden. Ook werd er tegen een aantal problemen aangelopen: •
Hardware ondersteuning was in die tijd problematisch onder Linux
•
Schoolcomputers zouden over te weinig capaciteit beschikken om gebruik te kunnen maken van Graphitty (met name de videokaart schoot te kort)
•
De ontwikkeltermijn van Graphitty zou mogelijk niet haalbaar zijn (meer dan 3 jaar)
Het huidige Graphitty ontwerp maakt gebruik van OpenGL. Dit is een techniek die het mogelijkmaakt 2D en 3D beeld te maken dmv. hardware ondersteuning in de videokaart. Het voordeel hiervan is dat de 'wiskunde', benodigd voor het tekenwerk, al in de
© 2007 Edukitty
pagina 20
Roadmap 2007-2009 versie 2007 / 2 videokaart ingebakken zit. Dit maakt niet dat Graphitty een eenvoudig project is, integendeel. Het niveau van programmeertaken is velen malen hoger dan dat van de rest van Edukitty. De ontwikkeltermijn, zo bleek uit het onderzoek uit 2005/2006, zal dan ook bijzonder lang zijn. Als wordt besloten halverwege 2008 te beginnen, zal de eerste bruikbare versie mogelijk niet voor begin 2010 verschijnen. In kwartaal 2 – 2008 zal het onderzoek naar het ontwerp hervat worden, om te kijken of het project nu wellicht onder gunstigere omstandigheden ontwikkeld kan worden. Ook zal er worden gekeken naar mogelijke alternatieven. Release Edukitty 1.2.5 Eind kwartaal 2 zal versie 1.2.5 van Edukitty worden gepubliceerd, met als grootste verandering de toevoeging van ondersteuning voor een meertalige interface.
Kwartaal 3 In kwartaal drie zal worden begonnen aan de eindgebruiker documentatie en mogelijk ook aan de eerste onderdelen van Graphitty. Verder wordt er gewerkt aan onderdelen als de SDK en Communikitty Translator. Eindgebruiker documentatie De eindgebruiker documentatie is met name op leraren en systeembeheerders gericht. (Uiteraard zullen er aparte hoofdstukken komen voor zowel leraren als systeembeheerders.) Behalve basale handelingen met de interface, zal dit handboek ook uitleg bevatten over bijvoorbeeld het opzetten van een netwerk met Edukitty en het beheren van de leerlinggegevens – in principe bevat dit handboek dus alles dat niet met programmeren te maken heeft. Een werkelijk deadline komt er voorlopig niet, aangezien nog niet alle te documenteren onderdelen volledig af zijn. Ontwerp en implementatie Graphitty Afhankelijk van de resultaten van het onderzoek in kwartaal 2, zal met het ontwerp van Graphitty worden begonnen. Als er tijd voor is, zal ook voorzichtig een begin gemaakt © 2007 Edukitty
pagina 21
Roadmap 2007-2009 versie 2007 / 2 worden met de implementatie ervan. Voorlopig valt er over de precieze invulling van de taken nog weinig te zeggen. Communikitty Translator In kwartaal 3 zal ook verder worden gewerkt aan Communikitty Translator, het overgebleven werk hieraan zou echter minimaal moeten zijn. Publikitty SDK en nieuwe Edukitty Make Begin 2006 werd er overgestapt van rommelige shell-scripts naar QMake, dat onderdeel is van Qt. Een compilertool is een programma waarmee op basis van een regelset de compiler1, assembler en linker worden aangestuurd. Het genereert compilercommando's voor elk los bronbestand en maakt daarvan complexe scripts die de compilatie van een programma automatiseren. Dit laatste is nodig aangezien Edukitty bijvoorbeeld uit enkele honderden losse bronbestanden bestaat, die allemaal apart gecompileerd dienen te worden! Op QMake werd overgestapt omdat de huidige scripts slecht waren en QMake eenvoudig, klein en cross-platform is. Bovendien is het ontwikkeld om samen te werken met Qt, Edukitty's basis-platform. Toch is er noodzaak voor een eigen systeem, met name omdat QMake beperkt is in de mogelijkheden die het biedt. Verder moet het systeem één geheel vormen met de SDK en dat is op dit moment een probleem (het is makkelijker voor de ontwikkelaar om gewoon met één programma alles te doen). Edukitty Make bevat o.a. de volgende features: •
Volledige integratie met de SDK
•
Geautomatiseerd cross-platform compileren
•
Automatisch projectbeheer voor programma's die met Edukitty worden ontwikkeld.
•
Packitty integratie
1 Bij het compileren wordt de broncode omgezet naar machinecode, wat op zich een erg processorintensief karwei is.
© 2007 Edukitty
pagina 22
Roadmap 2007-2009 versie 2007 / 2 Met name het cross-platform compileren is een belangrijk punt. Dit maakt het mogelijk om vanuit één platform, voor alle ondersteunde platform tegelijk te compileren. Zo kan bijvoorbeeld een Linux ontwikkelaar, in één keer zijn of haar programma voor elk platform compileren dat door Edukitty wordt ondersteund (op dit moment Linux en Windows). Dit maakt dat er een betere beschikbaarheid komt voor beide platformen aangezien het ontwikkelaars niets extra kost hun software te publiceren voor een ander platform dan dat ze zelf gebruiken (en Windows programmeur wil (of kan?) geen Linux gebruiken en vice versa). Met Edukitty Make (creatievere naam gezocht!) is de SDK in principe af en bruikbaar. In kwartaal 3 zou Edukitty Make zo goed als af moeten zijn, de deadline ligt in kwartaal 4. Release Edukitty 1.2.6 Versie 1.2.6 wordt voornamelijk een maintenance release, waarin bugs worden verbeterd. Bovendien zal er worden voorbereid op een nieuwe unstable branch, nl. versie 1.3.x. Voordat dat zover is, zal mogelijk eerst een deel van Graphitty worden geïntegreerd in Edukitty. Andere verbeteringen zullen plaatsvinden aan Communikitty Translator en de sources zullen worden geleverd met de nieuwe compilertools uit de SDK.
Kwartaal 4 Inmiddels is een groot deel van Edukitty bruikbaar voor zowel eindgebruikers als ontwikkelaars en bovendien is al een groot deel van de documentatie geschreven. Er zal vanaf nu veel werk worden besteed aan Graphitty. Ook moet er alvast worden voorbereid op nieuwe toevoegingen aan de architectuur die in 2009 plaats zullen vinden. Met 2008 zal ook de 1.2.x tak van Edukitty worden afgesloten als actieve development versie. In 2009 zullen er alleen nog bug-fix versies worden uitgegeven en zal er verder worden ontwikkeld aan de nieuwe 1.3.x tak, die als ontwikkel tak dient voor de uiteindelijke stabiele 1.4.x tak. Dit betekend dat er na dit kwartaal geen nieuwe features meer worden toegevoegd en alle zaken waarin de afgelopen twee jaar aan gewerkt is, ook
© 2007 Edukitty
pagina 23
Roadmap 2007-2009 versie 2007 / 2 daadwerkelijk af moet zijn. Een overzicht van projecten die af een stabiel moeten zijn eind 2008: •
Communikitty (interface)
•
Communikitty Translator (meertalige interface)
•
Packitty (installer, pakketbeheer, universele binaries)
•
Edukitty Make (compilertools voor ontwikkelaars)
•
Netkitty (leerlingvolgsysteem en administratiesysteem voor de leraar)
•
XML Network Protocol versie 1.2
•
Toolkitty 1.2 (framework Edukitty)
•
Publikitty SDK (packitty, documentatie, make, headers)
•
Enkele kleine projecten als de remote setup wizard etc.
En voor de documentatie: •
API-docs voor Toolkitty 1.2
•
Programming Guide
•
Eindgebruiker handboek
•
XML Network Protocol whitepaper 1.2
Ook het Interface Artwork zal grotendeels af moeten zijn, hoewel hier in 2009 sowieso meer aandacht aan zal worden besteed. Zie kwartaal 4 2007 voor meer uitleg. Dit alles zal tezamen worden gereleased als Edukitty 1.2.7 eind 2008. Edukitty is vanaf dat moment (maar waarschijnlijk ook al eerder) bruikbaar voor alle doelgroepen. Graphitty Wat de precieze taken mbt. Graphitty zijn in kwartaal 4 is afhankelijk van de vorderingen die al eerder zijn gemaakt. Het is de bedoeling eind 2008 al een aardig eind te zijn met de ontwikkelingen. In kwartaal 4 zal ook worden voorbereid op de integratie in Edukitty,
© 2007 Edukitty
pagina 24
Roadmap 2007-2009 versie 2007 / 2 begin 2009. Dit betekent dat Graphitty niet geïntegreerd zal worden in de 1.2.x, maar wel als een apart project beschikbaar zal zijn voor ontwikkelaars. Release Edukitty 1.2.7 Versie 1.2.7 is waarschijnlijk de meest complete en stabiele versie van Edukitty tot nu toe, en bovendien de laatste versie van de 1.2.x die significante wijzigingen bevat. Alle dingen die nu evt. nog zijn blijven liggen worden in versie 1.2.8 gestopt of in latere patch versies. Bugs worden uiteraard wel gewoon gerepareerd. Edukitty Programming Guide en API-docs 1.27 Bij een complete release hoort in dit geval ook een bijgewerkt handboek en APIdocumentatie. Het doel is tegen deze tijd alle facetten van Edukitty in de Programming Guide te hebben staan en 99% van de API gedocumenteerd te hebben (dit laatse zou reeds het geval moeten zijn). Edukitty handboek voor eindgebruikers Ook het handboek voor eindgebruikers krijgt dit kwartaal weer een nieuwe versie en bijgewerkt tot de laatste stand van zaken.
Edukitty in 2009 Blik in de toekomst 2009 zou je het beste als het 'content-jaar' kunnen beschrijven. Hoewel de planning uiteraard moeilijk te maken is voor 7 kwartalen vooruit, hierbij toch even een blik in de toekomst van Edukitty. Ook in 2009 is er weer volop plek voor nieuwe projecten. Zeker omdat er met de 1.2.x tak een solide basis staat, is dit het moment om te experimenteren met nieuwe features. De 1.3.x tak zal worden gestart en zal, net als de 1.1.x tak, niet direct beschikbaar zijn voor gebruikers. De zgn. development branch zal alleen voor ontwikkelaars zijn, en zal nieuwe, nog niet stabiele projecten en functies bevatten. Uiteindelijk als deze projecten allemaal af © 2007 Edukitty
pagina 25
Roadmap 2007-2009 versie 2007 / 2 zijn, zal dit overgaan in de stabiele 1.4.x tak, die vervolgens weer wel voor de eindgebruiker is. Met andere woorden: alle oneven versie nummers zijn ontwikkel-takken, zeg maar een 'werkplaats', die uiteindelijk als ze af zijn, over gaan in de even versienummers en bij de eindgebruiker terecht komen. Op het moment dat er aan een onstabiele versie gewerkt wordt, wordt de laatste stabiele versie natuurlijk wel onderhouden. Zie ook de inleiding aan het begin van dit document voor meer informatie over versienummering. De 1.3.x zal uiteindelijk een groot arsenaal aan nieuwe functies bevatten, zoals de integratie van Graphitty, een verbeterd netwerk protocol enz. Hier een lijstje van (mogelijke) projecten voor 1.3.x in 2009: •
Verdere ontwikkeling en integratie van Graphitty in Edukitty en de interface
•
Het interface artwork en Educity staan nu hoger op de prioriteitenlijst
•
Edukitty XML Network Protocol, versie 1.3 (en dus uiteindelijk 1.4), met o.a.: ○
Ondersteuning voor internet in complexe netwerken
○
Peer-to-peer met en zonder server
○
Ondersteuning voor Authentikitty (zie onder)
○
Uitgebreider leerlingvolg- en databasesysteem (meerdere backends)
•
Mogelijk begin aan de Met Woorden In De Weer applicaties
•
Begin aan andere Edukitty applicaties
•
Authentikitty (flexibel en kindvriendelijk wachtwoordbeheer)
•
Mogelijk nog andere projecten
Eén van de dingen die voornamelijk opvalt is de verschuiving van raamwerk naar content: tot nu toe ging de meeste tijd zitten in het opbouwen in het ontwikkelplatform, inmiddels zou dat 'af' genoeg moeten zijn om er ook echt applicaties mee te ontwikkelen (eindelijk!). In 2009 willen we ook eindelijke de tijd kunnen nemen om naar gebruikers te luisteren en te beantwoorden aan prangende vragen uit het Nederlandse basisonderwijs. Daarvoor © 2007 Edukitty
pagina 26
Roadmap 2007-2009 versie 2007 / 2 moeten er bijvoorbeeld test-trials worden uitgezet op basisscholen. Waarschijnlijk is handig hier ook al eerder in 2008 mee van start te gaan.
Kwartaal 1 Hoewel nog ver weg, zal kwartaal 1 2009 waarschijnlijk vooral worden benut om aan Graphitty te werken. De nieuwe code van Graphitty zal vanaf nu ook direct worden geïntegreerd in de 1.3.x tak en in Communikitty. Release 1.2.8 Dit is een maintenance- en bugfix release van de oude 1.2.x tak. De inhoud ervan hangt uiteraard af van de problemen en vragen die er op dat moment spelen. Release 1.3.0 Dit is de eerste release van de nieuwe 1.3.x ontwikkel-tak. Deze versie zal de nieuwe grafische engine Graphitty bevatten en mogelijk beginsels van enkele andere nieuwe projecten. Authentikitty Authentikitty is een project dat het huidige loginscherm van Edukitty moet gaan vervangen. Ook moet het een verbeterde beveiliging gaan bieden om Edukitty straks ook via het internet te kunnen laten communiceren. Op het moment worden de wachtwoorden met een simpele MD5-hash versleuteld, maar het in de toekomst is het de bedoeling gewoon de hele verbinding met bijv. SSL te beveiligen. Een ander onderdeel van Authentikitty, is de kindvriendelijke aanmeld procedure voor de jongste gebruikertjes van het programma. De aangepaste aanmeldprocedure zal waarschijnlijk bestaan uit het kiezen van een reeks van plaatjes ipv. een wachtwoord. Hoewel de implementatie hiervan erg eenvoudig is, moet het óók veilig genoeg zijn tegen aanvallen van buitenaf. Deze problemen moeten ook door Authentikitty worden ondervangen.
© 2007 Edukitty
pagina 27
Roadmap 2007-2009 versie 2007 / 2 En verder Naarmate de tijd vordert, zal ik de planning voor 2009 verder aan proberen te vullen. Voor voorlopig was dit even de vooruitblik voor de aankomende tijd.
Maandplanning Voor kwartaal 2 2007 Hierbij een globale planning voor april t/m juni 2007. De beschrijvingen zijn soms wat cryptisch, verdere uitleg is te vinden in de kwartaal planning voor 2007. In het blauw geef ik een tijdsindicatie, maar de taken kunnen elkaar overlappen. April 1ste prioriteit: •
Packitty – tijdsschema: anderhalve maand ○
TAR-implementatie afmaken
○
Classes voor Packitty ontwerpen en implementeren
○
Concept specificatie voor Packitty Script schrijven en implementeren
○
Proof-of-concept tooltje om Packitty bestanden te genereren
○
Eveneens tooltje op Packitty's uit te pakken: Packitty Expand
○
Integratie van Packitty Binairy in de module-loader
2de prioriteit •
Website van Edukitty.nl moet eindelijk online komen
Mei 1ste prioriteit: •
De setup-tooltjes (zie kwartaal planning) – tijdsschema: één maand ○
Client-side setup afmaken (is al aan begonnen)
© 2007 Edukitty
pagina 28
Roadmap 2007-2009 versie 2007 / 2 ○
○ •
Remote-setup beginnen ■
Basis interface en lijst met vereiste functionaliteit
■
Modificaties aan netwerk protocol en server
■
Implementatie
Beginnen met Packitty installer (hoeft niet af)
Beginnen aan het ontwerp voor Communikitty – tijdsschema: één week
2de prioriteit: •
Voorstel programming guide – tijdsschema: enkele dagen
Juni •
•
Namespace rewrite – tijdsschema: enkele dagen ○
namespaces hergroeperen
○
bestanden herindelen
○
dependencies aanpassen
Windows port – tijdsschema: twee weken ○
Werkende Qt+MinGW installatie opzetten
○
Code compileren en lijst van aanpassingen opstellen
○
Aanpassingen integreren in code-base en compatibiliteit checken met GCC/Linux
•
Release 1.2.0 – tijdsschema: enkele dagen
•
Mogelijk nog werkzaamheden aan het voorstel voor de Programming Guide
© 2007 Edukitty
pagina 29