Group Project No.1:
Information Visualization
Sus Lundgren
1 24
Mål
• Alla: Att öva informationsvisualisering
• Alla: Att öva på det inledande arbetet
(systemeringen) med att sätta upp ett
komplext program/system/datastruktur
• För icke-programmerare: Att förstå vilka
möjligheter och begränsningar som finns i
programmeringen
• För programmerare: Att kommunicera
vilka möjligheter och begränsningar som
finns i programmeringen
2 24
Uppgift
• Att visualisera en ägandestruktur bestående
av företag och personer
• Ni skall också visa minst tre övriga
egenskaper hos varje företag
• Det skall gå att navigera/söka i strukturen
• Ni får tre ”kluster” att leka med
– Kluster 1: 15 företag, 5 personer. Enkel
struktur
– Kluster 2: 15 företag, 5 personer.Mer
komplex struktur, företag deläger varann
– Kluster 3: 30 företag, 11 personer. Mycket
komplex struktur; företag deläger varann
och kan äga sig själva i ”loopar”
3 24
Ni ska leverera…
• En projektrapport, ca 5000 ord, 29/9
– Den algoritm ni använder för att lägga ut
strukturen, skall beskrivas i rapporten
– Koddokumentation som bilaga (ingår alltså
inte i de 5000 orden)
• En muntlig redovisning 27/9
– 10 minuter + 5 minuter för frågor
– Alla måste inte presentera, men alla måste
vara med och vara redo att svara på frågor
• En prototyp
– Godtyckligt program
– Skall visa hur interaktionen med
gränssnittet går till
– Skall visa det största klustret (nr 3), utlagt i
4 24
enlighet med algoritmen
Bakgrund
• Penser-affären
5 24
Ett Företag…
ID: C04
name: Tainton-Rogu
ownership(s): C03 10%
Subsidiary(ies): C14
financial value (MSEK): 1444
turnover (MSEK): 414
solvency: 79,4%
operating margin:-16,8 %
profit margin: -16,1%
No. of employees: 120
Situated: Worldwide
6 24
En Person
ID:P01
first name: Peder
last name: Schnürer
ownership(s): C04 51%, C12 40%
CEO positions(s): C04
Chairman position(s): C01, C10,
C12
Town: Copenhagen
Country: Denmark
7 24
Uppgift: Disclaimer
• Starkt förenklad
• Alla data är påhittade, så det kanske finns
logiska fel någonstans i dem
• Alla klusterfiler är handknackade så det
kanske finns formateringsfel i dem
• Vi tar ingen hänsyn till A- och B-aktier;
51% av ägande = full kontroll
8 24
Att tänka på…
• Hur skall strukturen läggas ut på skärmen?
• Hur utnyttjar vi platsen på bästa sätt?
• Hur ”långt bort” i strukturen är ägande
intressant?
• Är maktstrukturen intressant?
• Hur ska man kunna navigera?
– ”Vanlig” navigering med scrollbars är inte
tillåten; hitta på ett annat sätt. ;)
• Hur visualiserar man…
– Procentandel ägande
– Övriga egenskaper som vinstmarginal,
Omsättning, Rörelsemarginal etc.
9 24
Tänk er att…
• Er visualisering är fronten till ett mycket
komplext program (som utvecklas av andra
utvecklarteam)
• Användarna är finansanalytiker och
långivare på en bank
– De kan antas få litet träning i ert gränssnitt
– De kommer att använda ert gränssnitt
dagligen
10 24
Om Algoritmen ™
• Ni måste ta fram en algoritm för att lägga
ut strukturen på skärmen. Detta är det
svåraste i hela uppgiften!
• Sedan måste ni följa algoritmen i era
visualiseringar och prototyper
– Ni får inte rita om strukturer så att säga
”för hand” för att de skall se snyggare ut!!!
• Låt oss ta ett släktträd som exempel…
11 24
Släktträd 1
• Leta reda på stamfadern (= den person som
inte har några föräldrar)
• Om personen har barn, rita ut det äldsta så
långt till vänster som möjligt på raden
under. Fortsätt med det tills du kommer till
en individ som inte har några barn.
12 24
Släktträd 1
1
2
3
4
13 24
Släktträd 2
• Leta reda på stamfadern (= den person som
inte har några föräldrar)
– if personen du ”står” på har barn, rita ut
det äldsta så långt till vänster som möjligt
på raden under, om du inte redan gjort det
– else if Om personen har ett yngre syskon,
rita ut det till höger om personen
– else if Om personen inte har något syskon,
gå upp en generation om du kan
– else Om du inte kan gå uppåt är du klar
14 24
Släktträd 2
1
2
3
4
15 24
5
Släktträd 2
1
16 24
2
6
9
3
5
7
8
4
11
12
13
10
Fast i en ideal värld…
1
2
3
4
6
5
7
9
8
11
10
12
• Och då har vi inte lagt till makar/makor och
färgkodning ännu…
17 24
13
Algoritmen ™ och koden
• Ingen kod behöver egentligen
implementeras om ni inte vill.
– Prototyper får som sagt göras i vilket
program som helst
• Men! Det skall finnas koddokumentation i
form av javadoc/UML
– Det räcker alltså med att ni har tänkt ut hur
det skall fungera!
• Denna koddokumentation behöver endast
omfatta hur objekten läggs ut på skärmen (i
enlighet med algoritmen) och hur de får rätt
utseende.
• Beteenden, navigation och sökning behöver
ni inte koddokumentera.
18 24
Algoritmen ska beskriva
• Hur komponenter i trädet läggs ut på
skärmen
19 24
Koddokumentationen
ska beskriva
Tengel den God
av Isfolkete
1642 - 1732
Tarjei
Lind av Isfolket
1672-1698
Mikael
Lind av Isfolket
1672-1698
Cornelia
Furestenberg
182 - 1743
Nette Nånting
1722 - 1789
Tengel III
Lind av Isfolket
1746-1812
Silje
Arngrimsdotter
1652 - 1732
Villemo
Kalebsdotter
1677 - 1768
Martina Lind
av Isfolket
1674 - 1723
Christer
Havgrim
1756 - 1805
Dominic
St Colombe
1677 - 1768
Tula I Backe
av Isfolket
1762 - 1845
Johanne
i Hagen
1744-1812
• Kod för att lägga ut trädet och ge
komponenterna rätt utseende och
”innehåll”
20 24
Heike
Sölvesson
1642-1735
Ulvhedin
Paladin
1746 - 1848
Vinga Grip
Paladin
1649 - 1723
Vendela
Heiked.Paladin
1680 – 17-56
Anna Maria
Gard
1799 -1834
André
Gard
1802 - 1889
Joakim Gard
1672 - 1745
Benedikte
Gard
1808 - 1900
Rapporten och prototypen skall beskriva
•
•
•
•
Hur GUI:t ser ut
Hur GUI:t fungerar
Tankar bakom informationsvisualiseringen
Designval, designbeslut, designutvärdering
21 24
Ni behöver inte…
• Implementera någon kod alls, om ni inte
vill. Det räcker med algoritmen och en
koddokumentation i Java/UML
• Bry er om att räkna ut/visa hur ett företags
värde påverkas av dess ägande av andra
företag. Det är redan uträknat åt er i
”värdet”
• Kunna beräkna hur många procent ett visst
företag äger av ett godtyckligt annat
företag.
22 24
Betygsättning
• “Programming”: 8
– description of layout algorithm, code
documentation
• Information visualization: 12
– Final design, design decisions made and
why, evaluation of final design
• Presentation: 2
– Clarity, consistency, professionalism,
ability to keep time limit
• Report: 3
– Language, structure, spelling, fluency,
“understandability”
23 24
Viktigast av allt!
• En fullständig uppdragsbeskrivning samt
filer finns på kursens webb!!! Titta där!
• Där finns också en zip-fil med klustren i
24 24