Roadmap 2007-2009. versie 2007 / 2. Inhoudsopgave



Vergelijkbare documenten
icafe Project Joeri Verdeyen Stefaan De Spiegeleer Ben Naim Tanfous

Zelftest Java concepten

Van dvd naar webserver. Marcel Nijenhof 18 Juli

Snel op weg met de PepperPlayer.

De voordelen van Drupal

Prijzen RIVOS. RIVOS Prijzen Pagina 1

Toelichting op SDK. Versie 2.0. Datum 11 november 2010 Status definitief

Meehelpen met de ontwikkeling van nieuwe of verbetering van bestaande spellen. Pag. 1

Kennis na het volgen van de training. Na het volgen van deze training bent u in staat:

Technologie en Interactie 3.2: software architectuur

Inrichting Systeem: Locaties & Toegang

Opdrachtformulering (pagina 3 van 7)

HEEMKUNDE RIPS. Project Initiatie Document. Datum voltooid: Versie: 1.0. Document ID: 1 Bestandsnaam: Project initiatie document

Toelichting release notes. 23 oktober 2014

OpenChange. Jelmer Vernooij. LinuxWorld 2009, Utrecht 4 november OpenChange. MAPI MAPI/RPC OpenChange Huidige status Toekomst.

Factuur2King Multi User release notes

Projectplan. Elektronica-ICT Artesis. Auteur: Coopman Tom Interne Promotor: Peeters Tom Externe Promotor: Delepierre Bruno, Adforce

Installatie SQL: Server 2008R2

Calligra. Algemene inleiding. Raphael Langerhorst Jost Schenck Vertaler/Nalezer: Natalie Koning

Upgrade naar People Inc 3.5.0

Connect Social Business. Plan van Aanpak voor mijn stage bij ConnectSB

Inhoud Inhoud. Over dit boek 7. 1 Eclipse IDE (Integrated Development Environment) 9. 2 Functionele specificatie 13

Connect Social Business. Plan van Aanpak voor mijn stage bij ConnectSB

Landelijk Indicatie Protocol (LIP)

Voor de database wordt een Access 2000 bestand gebruikt, met voorlopig 1 tabel:

Roadmap. RIE Manager

ProjectHeatmap. Onderzoeksrapport v Dennis Wagenaar

Technisch Ontwerp W e b s i t e W O S I

Testomgevingen beheer

Technische implementatie De infrastructuur rondom Transit kent de volgende rollen:

Singularity. Uit de wereld van de rekenclusters. Handleiding van Helpmij.nl. Auteur: Erik98

De handboek van Desktop Sharing. Brad Hards Vertaler/Nalezer: Freek de Kruijf

Indoor Navigation System

Wireless Leiden. Project Brief x

Installatiehandleiding TiC Narrow Casting Manager

Logging voor Support

CEL. Bouwstenen voor een elektronische leeromgeving

1 INTRODUCTIE SYSTEEMVEREISTEN Minimum Vereisten Aanbevolen Vereisten...7

MULTIFUNCTIONELE DIGITALE SYSTEMEN. Printerstuurprogramma installeren

Handleiding voor het installeren van VBA scripts in Outlook

De Kleine WordPress Handleiding

Projectdocument Minecraft Mod Builder

Microsoft Excel. It s all about Excel - VBA

Feature checklist NeMO 5 Android

Software Test Plan. Yannick Verschueren

ExpressionEngine CMS. Content Management Systeem/Publicatieplatform NOAH DESIGN CREATIE & WEBDEVELOPMENT

Software Test Plan. Yannick Verschueren

Vakinhoudelijke uitwerking Keuzevak Applicatieontwikkeling van het profiel MVI vmbo beroepsgericht

Installatie SQL Server 2008R2

Aanmelden Na installatie wordt de service automatisch gestart en kunt u meteen aanmelden van op afstand:

Updateprocedure in vogelvlucht Stap 1: Updatebestanden downloaden Stap 2: Controle vooraf... 4

Belangrijk: Voordat u een VPN tunnel creëert dient u ervoor te zorgen dat de datum en tijd instellingen van de router juist staan ingesteld.

Webdesign voor ondernemers

Analyse Programmeertalen

Howto Subversion. 1. Subversion structuur en uitleg

Installatie van sqlserver

WORDPRESS. De Volgende Stap. 2015, Roy Sahupala

Software Factories. Toepassing van Domain Specific Languages. achtergrond

Installatie handleiding Reinder.NET.Optac

Easy Business Tools - Multi-user module

Inhoudsopgave. Hoofdstuk 1: Ant...4

PictoWorks Netwerk infrastructuur

Informatica Pagina 1 van 13. Versiedatum 16/06//2014. Te herzien op

T-MOBILE CLOUD Windows Installatiehandleiding. Private Planet, Ltd.

Wijzigingen volledig onder controle en geborgd

Virtueel of Fysiek. Uitdagingen bij migratie naar Windows 7

Orbis Software. Portal4U. Installatie Handleiding. Dit document bevat de Installatie Handleiding voor Portal4U

Handleiding Migratie. Bronboek Professional

Beveiligingsaspecten van webapplicatie ontwikkeling met PHP

INSTALLATIE-INSTRUCTIES VIDA VIDA ON WEB

JIRA Handleiding. Techtwo Internetdiensten Reduitlaan DC Breda

DataFlex 19.0 SQL Server

1 Inleiding. 3 Handmatig... invoeren zaken basis 4 Verwerken... zaken 5 Afhandelen... van zaken. 7 Uitgebreidere... zaak opties

VPN Remote Dial In User. Windows VPN Client

Handleiding installatie Rental Dynamics

Revisie geschiedenis. [XXTER & KNX via IP]

Inhoud. Endnote X7 Handleiding Mediacentrum maart 2015 Page 2

INSTALLATIE EXCHANGE CONNECTOR

Fuel. Handleiding voor installatie en gebruik

eid middleware v2.6 voor GNU/Linux

Wireless Leiden. Plan van Aanpak x

OpenChange. Jelmer Vernooij. NLLGG-bijeenkomst 13 december OpenChange. MAPI MAPI/RPC OpenChange Huidige status Toekomst.

Table of contents 2 / 15

Vraag 1. Vraag 1a TERUGKOPPELING PROEFTENTAMEN. Software architecture

Software Test Document

Planbord installatie instructies

Assignment 3 Arjan Dekker ( )

Programmeren in C ++ met wxwidgets les 5

NIS Notarieel Informatie Systeem

Breureka 2. Een oefenprogramma dat het inzicht in breuken stap voor stap opbouwt. Leeftijd: jaar. Auteur: Walter de Winter

Nieuw in Mamut Business Software en Mamut Online

De handboek van Desktop Sharing. Brad Hards Vertaler/Nalezer: Freek de Kruijf

Connect Social Business

Handleiding Reinder.NET.Tasks.SQL versie 2

Installeren update KLA

TYPO3 redacteuren cursus

Applicaties voor de consument

De handboek van Remote Desktop Connection. Brad Hards Urs Wolfer Vertaler/Nalezer: Freek de Kruijf

Transcriptie:

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

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

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 b.faas@edukitty.org 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

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

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

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. Bijvoorbeeld: Releases met een build-letter zijn niet in de planning opgenomen. 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

1.3.2 2009 Q3 onstabiel 1.2.11 2009 Q4 stabiel 1.3.3 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 b.faas@edukitty.org of per post naar: Barry Faas Jacob van Offwegenlaan 21 2282HN Rijswijk ZH 2007 Edukitty pagina 7

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

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

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

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

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

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 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

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

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

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

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

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

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

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