Beskrivning av systemet

Systemet som skall implementeras är ett enkelt verktyg för elektronisk kommunikation över ett nätverk. Systemet skall innehålla följande komponenter:

Systemet skall också integreras med en redan existerande ikoneditor för bilder på kontakter i adressboken. Dessa bilder skall visas i inkomna meddelanden, i listor över vilka som är uppkopplade etc.

Funktionella krav

Här presenteras de funktionella kraven på systemet utifrån komponentlistan ovan.

Meddelandeklienten

Meddelandeklienten är till mångt och mycket en epostklient. Den stora skillnaden ligger i att den inte använde epostprotokollet utan går mot en specifik IV1300-server, samt att man bara kan skicka meddelanden till någon som är uppkopplad. Om man försöker skicka ett meddelande till någon som inte är uppkopplad kommer detta att studsa tillbaka -- meddelandeklienten måste själv hålla med en utkorg där mail skickas så fort mottagaren kopplar upp sig. Följaktligen måste klienten hålla reda på vilka som är uppkopplade.

Det finns två typer av meddelanden -- formaterade och oformaterade meddelanden. Ett oformaterat meddelande använder vanlig asciitext medan formaterade meddelanden representeras med taggar och kan innehålla kursiveringar, fetstilt text, rubriker etc. Taggspråket som används för formaterade meddelanden heter PVTML och beskrivs här (annan kurs).

Meddelandeklienten skall ha stöd för visning av formaterade och oformaterade meddelanden. Det är inte ett krav att implementera en editor för formaterade meddelanden -- det räcker med att kunna skriva taggarna i ett oformaterat meddelande och skicka det som formaterat. Det skall givetvis finnas stöd för flera foldrar (alltså, träd av foldrar som innehåller meddelanden) och regler som automatiskt sorterar in meddelanden i rätt foldrar. Man skall kunna skapa, byta namn på, flytta och ta bort foldrar litet hur som helst, brev skall kunna flyttas från en folder till en annan, vidarebefordras och svaras på; precis som i en vanlig epostklient. Man skall också kunna spara ett brev som en textfil, så att det går att ändra i t.ex. Emacs. Skickade brev skall sparas och man skall även kunna spara ett brev (som inte nödvändigtvis skall vara färdigt) för att kunna skicka det senare. Givetvis skall ett brev presenteras med ämnesrad, datum och avsändare.

Signaturer

Användaren skall kunna ha signaturer, d.v.s. text som automatiskt bifogas i alla mail som går iväg (kan synas redan i editorn). Man skall kunna ha flera signaturer och dessutom kunna ställa in så att brev till en viss mottagare alltid får en viss signatur.

Filter

En användare skall kunna skapa filter som tittar på avsändare eller ord i ämnesraden och flyttar brev som matchar filtret till en vald folder. Inkomna brev skall kontrolleras mot filtren i en viss ordning.

Adressbok

Adressboken skall kunna köras som en fristående applikation. Det skall alltså vara möjligt att distribuera adressboksprogrammet separat och köra det utan att meddelandeklienten finns installerad. Se det som att adressboken egentligen utvecklas i ett separat projekt. Meddelandesystemet får vara beroende av adressboken men adressboken inte tvärtom.

Adressboken hanterar kontakter. En kontakt är ett namn (på en person, ett företag, etc.) med vidhäftade kontaktuppgifter som fysisk adress, telefonnummer, epostadress, hemsideadress etc. En person skall kunna ha flera av samma uppgift; flera telefonnummer, t.ex. ett hemnummer och ett mobilnummer, eller flera mobilnummer etc., även flera epostadresser, fysiska adresser, etc. Varje person skall också kunna ha en bild så att man kan hålla reda på vem som är vem, samt ett anteckningsfält för godtyckliga anteckningar som t.ex. födelsedag och annat.

För varje kontakt skall man också kunna lagra ett användarnamn och smeknamn. Användarnamnen motsvarar unika epostadresser i meddelandesystemet och smeknamnen är enkla alias.

Utöver kontakter skall adressboken kunna hantera ett antal grupper. En grupp är ett samlingsnamn på ett antal kontakter. Samma kontakt skall kunna finnas med i flera olika grupper samtidigt. Man skall kunna skapa en grupp från andra grupper.

Alla uppgifter i adressboken skall naturligtvis sparas på disk och vara kvar nästa gång programmet körs. Alla uppgifter skall dessutom enkelt kunna editeras. På samma sätt måste man kunna lägga och ta bort kontakter i en grupp utan att personen skall försvinna helt. Man skall naturligtvis även kunna ta bort en person helt ur databasen. Med enkelt kunna editeras avses att man t.ex. inte skall behöva ta bort en kontakt ur alla grupper för att ta bort personen helt och att en ändring i ett telefonnummer för en kontakt bara skall behöva göras en gång för att bli synligt i alla grupper som kontakten tillhör. Givetvis skall man kunna ändra namnet på en grupp efter att den har skapats etc.

Integration meddelandeklient--adressbok

När ett brev visas i meddelandeklienten skall den bild som givits avsändaren i adressboken visas.

Meddelandeklienten skall använda sig av kopplingen mellan smeknamn och användarnamn som finns i adressboken; man skall också kunna skicka ett meddelande till alla kontakter i en grupp.

Filter skall kunna använda sig av grupper och kontakter i adressboken.

Man skall kunna knyta signaturer till kontakter och grupper i adressboken.

Tjattklient

Tjattklienten implementerar en vanlig tjatt. En klient skickar en begäran om tjatt till en annan klient som accepterar eller avslår begäran. Denna upphandling går via DSV2:PVT-servern, men själva tjattandet sköter klienterna själva. Det finns inget fastslaget protokoll för detta, men alla gruppers klienter måste kunna chatta med varandra. Följaktligen måste ni själva standardisera protokollet och bestämma om man t.ex. skickar tecken för tecken eller rad för rad, etc. Tjattklienten skall vara integrerad med adressboken på samma sätt som meddelandeklienten, d.v.s., med stöd för smeknamn, visa bild etc. Möjliga utökningar av tjattklienten är t.ex. överföra en fil eller spara en utskrift av tjatten på fil.

Ikoneditor

Ikoneditorn är ett gammalt legacy-system som måste integreras med adressboken på grund av krav från kund. Ikoneditorn är ett simpelt ritprogram som ritar de bilder som används i adressboken. Man skall via adressboken kunna editera någons ikon, etc. Observera att ikoneditorn inte alltid beter sig som man skulle vilja och man måste därför ta till vissa OO-knep för att integrera den framgångsrikt.

Övrigt

Det skall vara möjligt för en användare att kontrollera vilka andra användare som är uppkopplade. Det finns stöd för detta i IV1300-servern.

 

(First Page)