| .DS_Store | ||
| data.sql | ||
| database.sql | ||
| ER.png | ||
| LICENSE | ||
| README.md | ||
Databaskonstruktion-Assignment-1-Startup
Kravspecifikation
Overview
A few lines on general features of content.
Most importantly the given variant
ER model
Image of the chosen diagram in svg or png. When the model is constrained or we add features, update this consistently.
AdminAgent (namn,nr , unamn, lön, kommentar, uidtoken, rum)
Operation (kodnmnt,startdatum,inamn,inr , stdatum, sr, kommentar, anamn, anr)
Incident (nr,namn , plats)
Observation (id , säkerhet, datum, grad, namn, nr)
Person (id , namn, kodnamn)
ObsPer (oid,pid)
Requirements
A few lines containing general description of requirements
AdminAgent
-
Varje agent identifieras unikt med hjälp av dess namn (namnet är endast en bokstav exempelvis K), tillsammans med en siffra exempelvis J 2.
-
Agentens levnadsfilosofi lagras som en kommentar för att kunna gå tillbaka och utvärdera hur pass bra agenten lever upp till sin levnadsfilosofi vid ett senare tillfälle
-
Vissa personer får av olika orsaker inte bli agenter. Det gäller personer som heter Leif Loket Olsson, Greger Puckowitz och Greve Dracula.
-
ingen agent oavsett typ får käna mindre än 12000. Om ingen lön tilldelas så skall lönen automatiskt sättas till 13000.
-
Ingen agent får ha nummer som är mindre än noll. Talet 13 är av naturliga skäl inte tillåtet som agentnamn. Agentnummer över 99 är inte heller tillåtna
-
En sorterad lista med agenter som är sorterad på namn och nummer skall visas på skärmen. Det skall vara möjligt att för varje agent se agentens namn, nummer, procent av lyckade operationer
-
För att kunna administrera all data i databasen krävs även ett antal administrativa funktioner i databas-systemet som sköts av myndighetens systemadministratörer.
-
Administratörerna har endast rättigheter att ta bort eller modifiera data i tabeller om den rättigheten tilldelats i detta dokument
-
Administratören skall ha rättigheter att skapa tuppler i tabellerna gällande agenter
-
Om en användare gör någon form av förbjuden åtgärd (exempelvis försöker uppdatera en tabell med restriktioner fler gånger än tillåtet) skall den automatiskt hamna i en lista med förbjudna åtgärder
-
De härledda värden som skall beräkna ett antal, exempelvis antalet genomgångna operationer för en viss agent, skall värdet “Inga operationer“ visas i applikationen. -
Det användargränssnitt som används av databasadministratören behöver inte vara lika lättanvänt som de användargränssnitt som skall användas av agenterna, då databasadministratören förstår bland annat felkoder från SQL. Applikationen får dock inte vara svåranvänd eftersom detta gör att administratörens viktiga arbete kan gå för långsamt. Administratören skall ha möjligheter att med ett grafiskt gränssnitt lagra nya tuppler enligt i tidigare delar av kravspecifikationen fastställda normer samt ha en möjlighet att skapa och underhålla de andra användarnas rättigheter.
Person
-
För varje person som rapporterat en observation lagras information om personen
-
En person kan ha rapporterat flera observationer och en observation kan ha rapporterats av flera personer
-
Varje person identifieras unikt utifrån dess personnummer eller om personen i fråga vill vara anonym ett automatgenererat nummer.
-
Personens namn eller alias (om han vill vara anonym) lagras som en textsträng
-
Dessutom skall personens eventuella kodnamn lagras
-
För en person skall det gå att beräkna dess trovärdighet genom att undersöka på om personens rapporterade observationer varit säkra, och om operationer startats initierats utifrån personens vittnesmål (lyckad operation kan ge högre trovärdighet). Personer som inte har kodnamn eller lämnat falska namn (inget namn) tros vara mindre trovärdiga än kända uppgiftslämnare.
jag förstår ej det kravet eftersom härledda attributet är inte kopplat för att funka -
Eftersom det är viktigt att veta en viss källas trovärdighet så skall en viss incidents alla observationer och personer som gjort observationens trovärdighetsvärden visas
Observation
-
För databasadministratörerna skall det vara möjligt att ta bort observationer om det är nödvändigt med total intern mörkläggning av observationerna
-
När en observation tas bort skall motsvarande kopplingar till personer tas bort
-
De borttagna observationerna skall dock lagras i en loggtabell eller flera loggtabeller som tillåter att datan återskapas när hemligstämpeln släppts. För denna typen av uppdatering skall därför datumet för uppdateringen samt administratörens användarnamn lagras i loggtabellen eller loggtabellerna
-
För observationerna så skall en procentsats anges för observationens säkerhet, säkerheten får inte vara mindre än en procent och inte högre än hundrafjorton procent
Incident
-
En incidient kan identifieras antingen av dess unika namn eller dess unika nummer.
-
Dessutom skall det gå att beräkna ett medelvärde på incidentens alla observationers grad
-
En incident kan dessutom ha en eller flera operationer kopplade till sig
-
Om flera observationer hör till samma incident skall inte någon ny incident skapas utan de skall kopplas direkt till incidenten.
Operation
-
Varje operation identifieras av dess kodnamntyp samt operationens startdatum tillsammans med incidenten som genererade operationen.
-
Kodnamntypen anger både operationens kodnamn samt dess typ, exempelvis uppstädningsoperation: Gregers Bodega eller Insamlingsoperation: lämmeltåg
-
Operationen har även en frivillig kommentar som bör fyllas i där agenterna specificerar viktiga detaljer om operationen som är utöver den information som lagras i operationens förbestämda fält
-
För varje avslutad operation lagras dessutom operationens slutdatum samt operationens success rate
-
För att bokning av olika agenter skall fungera så är det nödvändigt att operationens slutdatum anges, slutdatumet kan senare ändras för att passa det verkliga slutdatumet
-
För operationer så måste alltid slutdatumet för operationen eller vara senare än startdatumet
-
En operation eller en får inte vara kortare än en dag
-
Om skillnaden mellan en operations eller startdatum och slutdatum är större än fem veckor så antas slutdatumet vara felinmatat, längden till operationen skall då automatiskt sättas till fem veckor
-
De attibut som anges som “success rate” skall lagras i form av ett heltal som är ett om operationen eller lyckades och noll om operationen eller kampanjen misslyckades. Inga andra värden är tillåtna.
-
Operationens namn, datum och plats skall visas tydligt i gränssnittet.
-
En varning skall visas om en enskilld operation tilldelats mer än fem personer
-
Det bör finnas en lista över pågående över pågående operationer och det skall vara möjligt att tilldela mera resurser, eller ta bort tilldelade resurser samt att ändra slutdatumet för operationen
