[fria24] Tjat tjat tjat

Jakob Carlsson esrange at paranormal.se
Fre Nov 18 11:43:39 CET 2005


Det är väldigt många som tjatar om att "tänk inte på språket ännu, tänk på
design av systemet och .... istället", varför tjatar ni istället för att
komma med ett exempel på det ni tjatar om? Om ni istället för att tjata
kommer med ett exempel på det ni tjatar om så kommer ni skapa en
diskussion om eran lösning där annat folk kommer komma med förslag som dom
anser bättre och även berätta varför dom anser det vara bättre.

Många här inne känner att dom behöver något som håller samman det hela och
det enklaste då är att välja ett programmeringsspråk som hela alltet ska
utvecklas i _till att börja med_ det kommer ju utvecklas en del moduler i
andra språk sen också (det kan jag mer eller mindre garantera).

Mitt förslag på design av systemet (nämner även programmeringsspråk som
jag anser lämpliga för de olika lagren):

* Lagring: mysql/postgresql/oracle (den senare bara om kunden redan har det)
* Back-end som kan prata följande: SHS (för andra system som vi inte
skapat), TCP/IP (för kommunikation mot klienter av olika slag),
WebServices (kanske, vet inte riktigt, TCP/IP borde räcka), skrivet i:
Perl
* Front-end som presenterar data för användaren, kan vara en websida eller
en skrivbordsapplikation, pratar TCP/IP med back-end som gör allt centralt
jobb, skrivs lämpligtvis i: Perl, Python, PHP, Java, C++

Sen tycker jag att vi ska försöka att så snart som möjligt skapa en enkel
applikation för att ha som testmöjlighet för våra vidare funderingar, kan
vara att vi tar en mysql-databas och en rad PHP-sidor som fungerar som en
dagiskö, sen kan vi gå in och ändra i datamodeller och liknande i det här
systemet och se hur det förändrar ett fungerande system. Så om någon
skulle kunna ta fram en datamodell för en simpel dagiskö och någon annan
sen kan ta fram en simpel applikation som använder sig av datamodellen och
fungerar så kan vi ta och se om vi behöver ändra något i den här
datamodellen eller inte.

En fin sak med det hela är att SeLinux numera har en SVN-server vilket
leder till att vi kan utveckla systemet allihop och alla kan gå in och
göra sina ändringar.

Bara en sak till om en eventuell dagiskö, skriv inte en funktion som heter
addToDagiskö() som direkt accessar databasen utan ha en funktion
add2queue() som får reda på vilken kö det handlar om och all information
den ska lägga till, allt för att kunna återanvända funktioner senare.

Min datamodell för en dagiskö (ganska simpel och mer eller mindre SQL rakt
av eftersom jag inte har tid att fundera mer på detta just nu, men vill
starta en diskussion):

qEntry:
entryID - identifierar just den här platsen i kön
placeInQueue - plats i kön, kan ändras om folk kommer in i kön som har
förtur av något skäl
persnr - identifierar personen som har den här platsen
entryType - typ av köplats: dagiskö, bostadskö, ... (helt enkelt vilken kö
platsen tillhör)
queueTo - vilket objekt köar personen till?

person:
persnr - identifierar personen
firstname - personens förnamn
surname - personens efternamn
address - personens adress
... - övrig viktig information om personen

Det finns ett skäl till att jag har både entryID och placeInQueue, skälet
framgår ganska bra av min kommentar till placeInQueue men det är ungefär
såhär: platsen i kön kan alltid ändras, för att slippa tänka på detta och
behöva använda fler attribut för att identifiera den specifika köplatsen
vid ändringar. Finns även en entryType och en queueTo för att specifiera
vad det är för kö, entryType finns där för att underlätta sortering av
vilka som köar till dagisplats och vilka som ska ha bostad, i SQL går
entryType att slopa och köra JOIN mot tabellen som innehåller objekten som
folk köar för.

Hela meningen med det här mailet (abstract om man så vill):
* Sluta klaga på folk som diskuterar vilket språk som ska användas
* Kom med förslag på datamodeller för systemet, detta kommer skapa nya
diskussioner
* Kom med förslag på design av systemet, detta kommer också skapa nya
diskussioner

Läs igenom mailet och låt diskussionerna starta (gärna i en tråd för
datamodell och en för systemdesign så vi kan separera dessa två sakerna
från varandra).

-- 
Jakob Carlsson
esrange at paranormal.se
http://esrange.tk




More information about the selinux-fria24 mailing list