SPU UML note. Systematisk Program- Udvikling med UML. Finn Overgaard Hansen

Størrelse: px
Starte visningen fra side:

Download "SPU UML note. Systematisk Program- Udvikling med UML. Finn Overgaard Hansen"

Transkript

1 SPU UML note Systematisk Program- Udvikling med UML Finn Overgaard Hansen Ingeniørhøjskolen i Århus Finn Overgaard Hansen, august 2005

2 Versionshistorie Versionsnr. Dato Initialer Versionen omfatter FOH Første version kapitel 5 er pt. foreløbigt, idet der her planlægges med mere info FOH Opdatering af nedenstående link FOH Opdatering af referenceliste Forord Denne opdatering af SPU håndbogen er alene udarbejdet af undertegnede medforfatter til håndbogen og er således min egen udgave og fortolkning af en opdatering af SPU håndbogen. Denne opdatering er udført med speciel fokus på relationen mellem SPU og UML. I forfatterkredsen har vi gennem tiden talt om en evt. opdatering, men da dette er et kæmpearbejde og da de øvrige medforfattere til SPU håndbogen i dag alle arbejder i forskellige firmaer og organisationer, har dette ikke været praktisk gennemførligt. Da SPU håndbogen anvendes i forbindelse med semesterprojekter på Ingeniørhøjskolen i Århus og man her anvender UML i undervisningen fra første semester er der her et behov for en sådan opdateringsnote. Denne note vil blive publiceret via min hjemmeside på Ingeniørhøjskolen i Århus til brug for studerende og lærere samt andre, der måtte have interesse i SPU og i denne UML relaterede opdatering ( ). I august 2005 vil denne note også blive tilgængelig via en opdateringsside til SPU håndbogen på Nyt Teknisk Forlag Århus, august Finn Overgaard Hansen, Ingeniørhøjskolen i Århus Ver , Ingeniørhøjskolen i Århus 1

3 Indholdsfortegnelse 1 Introduktion Formål Baggrund for SPU UML og objektorienteret udvikling Læsevejledning Opdatering af SPU vejledninger i relation til UML Vejledning i struktureret programudvikling (SPU) Vejledning i kravspecifikation Vejledning i design Vejledning i softwaretest Vejledning i review Vejledning i projektstyring Vejledning i programdokumentation Vejledning i konfigurationsstyring Vejledning i Systematisk Program-Udvikling opdateret mht. UML Hvad er systematisk programudvikling (SPU-UML)? Anvendelse af SPU-UML modellen i et produktudviklingsforløb SPU-UML udviklingsmodellen Spiralmodel (S-model) Udviklingsmodel (U-model) Testmodel (V-model) Leverancemodel (W-model) Udviklingsaktiviteter Kravspecifikation Systemanalyse Objektanalyse Arkitekturdesign Mekanistisk design Detaljeret design Kodning Unittest SW-integrationstest Systemintegrationstest Accepttest Vejledning i kravspecifikation opdateret mht. Use Cases Use Case teknikken Basal Use Case notation Udvidet Use Case notation Beskrivelse af en Use Case Indhold af kravspecifikation i relation til Use Cases Vejledning i design opdateret mht. UML Sammenhæng mellem SPU og SPU-UML terminologi Arkitekturdesign (design af et system eller produkt) Mekanistisk design (design af et program eller proces) Detaljeret design (design af en klasse) En letvægts SPU-UML designmetode Referencer...29 Ver , Ingeniørhøjskolen i Århus 1

4 1 Introduktion 1.1 Formål Formålet med denne note er at opdatere Håndbog i Struktureret ProgramUdvikling (SPU) [SPU88] specielt i relation til anvendelsen af UML (Unified Modeling Language) [UML2003] i forbindelse med objektorienteret softwareudvikling. 1.2 Baggrund for SPU SPU konceptet blev udviklet i 1985/86 i forbindelse med gennemførelse af et teknologirådsstøttet projekt. Formålet med projektet var at forbedre softwareudviklingen i danske virksomheder specielt indenfor teknisk programudvikling, der typisk omhandlede udvikling af software til apparater. Projektet bestod i at udvikle konceptet samt udvikling af et tilhørende kursusforløb, der på fem dage simulerede et udviklingsforløb, hvor der blev udviklet dele af et patientovervågningssystem. Efter afholdelse af utallige firmakurser og plankurser dels på Teknologisk Institut og dels på Delta (det daværende Elektronikcentralen) blev der i 1987/88 gennemført endnu et teknologirådsstøttet projekt, hvis resultat medførte en bearbejdning af konceptet og kursusmaterialet til i SPU håndbogen, der blev udgivet på Teknisk Forlag i Rationalet for udvikling af SPU konceptet var følgende: - det skulle være operationelt og dermed let at anvende - det skulle kunne anvendes på såvel mindre som større projekter - det var målrettet mod teknisk programudvikling - det omhandlede udelukkende softwareudviklingen - det skulle være metodeuafhængigt Eksemplerne fra den gennemgående case på det tilhørende kursus blev valgt til eksemplerne i håndbogen. Nogle af disse eksempler blev baseret på metoden struktureret analyse og design af realtidssystemer (Ward&Mellor), der var den mest udbredte metode til denne type systemer på det tidspunkt SPU håndbogen blev udarbejdet. Disse eksempler ville i dag typisk blive udarbejdet vha. objektorienterede metoder og dokumenteret med UML notationen. Da hovedparten af SPU håndbogen omhandler eviggyldige Software Engineering principper vil denne note forsøge at give en opdatering af håndbogen med specifik fokus på anvendelsen af UML i en objektorienteret udviklingsproces. Noten vil i øvrigt dels beskrive baggrunden og intentionen med SPU konceptet samt give svar på nogle af de spørgsmål og kommentarer jeg har fået i årenes løb. Vedrørende den oprindelige titel SPU Struktureret programudvikling så har det senere ærgret mig og de øvrige forfattere, at vi ikke fik kaldt bogen og konceptet for SPU Systematisk Program Udvikling da det var denne betydning af ordet struktureret vi oprindelig mente og ikke som det senere er blevet fortolket som værende synonym med de strukturerede metoder og dermed i modsætning til de senere objektorienterede metoder. Disse strukturerede metoder var fremhersekende i 80 erne og står i dag i skyggen af de nyere objektorienterede metoder, der blev udviklet i 90 erne (f.eks. OMT metoden fra 1993, der senere i 1997 blev en hovedbestanddel af UML notationen). Ver , Ingeniørhøjskolen i Århus 2

5 Jeg vil derfor i denne note redefinere forkortelsen SPU til at stå for Systematisk Program- Udvikling. 1.3 UML og objektorienteret udvikling UML står for Unified Modeling Language, der er navnet på en OMG standard (www.omg.org) for objektorienteret udvikling. OMG (Object Management Group) er en sammenslutning af ca. 800 virksomheder. UML blev udgivet version 1.1 i nov og er i 2003 udkommet i version 2.0 [UML2003]. UML anvendes i dag verden over som beskrivelsesværktøj i forbindelse med SW udviklingsprojekter. UML understøttes af et stort antal værktøjer, der kaldes for CASE værktøjer (Computer Aided Software Engineering). UML er et sæt af objektorienterede begreber med tilhørende grafiske notation, der indgår i et forskellige typer af diagrammer. UML er derimod ikke en udviklingsmetode eller en udviklingsproces. Indenfor objektorienteret udvikling skelner man mellem objektbaseret og objektorienteret udvikling. Objektbaseret udvikling er den delmængde af objektorienteret udvikling, der også kan implementeres vha. et ikke objektorienteret programmeringssprog som f.eks. C og assembler. Objekt baseret udvikling kan naturligvis også implementeres i objektorienterede programmeringssprog som f.eks. C++, Java og C#. Objektorienteret udvikling tilføjer begreber som generalisering/specialisering (nedarvning) og polymorfi. Det modulbegreb der præsenteres i SPU håndbogen svarer til klassebegrebet i den objektbaserede og objektorienterede udvikling. 1.4 Læsevejledning Kapitel 2 giver en kort overordnet beskrivelse af de ændringer og opdateringer til de 8 SPU vejledninger, der berøres af UML. I de efterfølgende tre kapitler behandles de tre vejledninger, der i væsentlig omfang påvirkes af UML. Det er hhv. vejledning i struktureret programudvikling, vejledning i kravspecifikation og vejledning i design. Informationen i denne note er udelukkende tænkt som et supplement til vejledningerne i SPU bogen og ikke som en erstatning af disse. Ønsker man en baggrundsbeskrivelse for SPU konceptet samt en perspektivering så findes denne i afsnit 1.2. Ver , Ingeniørhøjskolen i Århus 3

6 2 Opdatering af SPU vejledninger i relation til UML Dette kapitel vil kort opsummere ændringerne i de enkelte SPU vejledninger. For de første tre vejledningers vedkommende behandles opdateringerne i relation til UML i hvert sit kapitel. 2.1 Vejledning i struktureret programudvikling (SPU) Opdateringer til denne vejledning behandles i kapitel 3. Opdateringerne vedrører primært anvendelsen af en iterativ udviklingsmodel ved udvikling af systemer, hvori der indgår software. 2.2 Vejledning i kravspecifikation Opdateringer til denne vejledning behandles i kapitel 4. Opdateringerne vedrører primært anvendelsen af Use Case teknikken til at finde og beskrive de funktionelle krav med. Use Case notationen indgår som en del af UML. 2.3 Vejledning i design Opdateringer til denne vejledning behandles i kapitel 5. Opdateringerne vedrører anvendelse af en objektorienteret designmetode baseret på UML notationen ved designarbejdet og en redefinering af designaktiviteterne. 2.4 Vejledning i softwaretest SPU vejledningen i software test baserer sig på den anerkendte V-model for test, der fokuserer på tidlig testplanlægning før den egentlige testudførelse. Vejledningen omhandler fire testtyper: modultest, modulintegrationstest, procesintegration og accepttest. I forbindelse med objektorienteret udvikling kaldes modultesten ofte for unittest eller klassetest. Ved objektorienteret udvikling er unit- eller klassetesten, den mindste testenhed, hvor klassens operationer og attributter testes. Det giver ikke mening at teste de enkelte operationer alene, da de fungerer i klassens kontekst og er fælles om klassens attributter. Vejledningen omhandler primært testprocessen og testdokumentation og en generel introduktion til test. Ved test af objektorienterede systemer bør den derfor suppleres med teori, der omhandler test af objektorienterede systemer. I forbindelse med udviklingsprocessen XP (extreme Programming) lægges der meget vægt på unittesten, hvor man skriver testprogrammet til en klasse før man skriver koden for selve klassen. Dette er ud over parprogrammering (dvs. to sammen) et at hovedelementerne i XP. Ver , Ingeniørhøjskolen i Århus 4

7 2.5 Vejledning i review Denne vejledning indeholder en god og kort introduktion til review teknikken, der stadig er den ene teknik, der har de største kvalitetsforbedrende virkninger og den største effekt i forhold til indsatsen. Denne vejledning vil ikke på nogen måde være påvirket af UML, men det vil være UML baseret dokumentation man reviewer. Review teknikken er mindst ligeså vigtig i en iterativ udviklingsproces som i den mere traditionelle vandfaldbaserede og dokumentbaserede udviklingsmodel. 2.6 Vejledning i projektstyring Denne vejledning indeholder eviggyldige sandheder og den præsenterede teori er således ikke direkte påvirket af UML notationen. Derimod vil anvendelsen af en iterativ udviklingsproces baseret på Use Case teknikken have indvirkning på projektstyringen. Dette skyldes at Use Case teknikken ud over at være en væsentlig teknik til at udtrykke de funktionelle krav med også kan anvendes til at definere iterationerne ud fra. Projektet planlægges således at hver iteration afsluttes med et kørende delsystem, der kan være enten en intern leverance eller en ekstern leverance. Da Use Cases beskriver funktionalitet som systemet udfører for brugerne er de netop meget anvendelige til definere disse delleveringer med. Hvor SPU Håndbogen baserer sig på en dokumentstyret udviklingsproces vil SPU-UML i større udstrækning basere sig på en iterativ og risikostyret udviklingsproces, der baser sig på kørende delsystemer eller prototyper, der udvikler sig til det endelige produkt eller system. Stephen Biering-Sørensen, der er medforfatter til SPU Håndbogen, har i øvrigt en ny bog på vej om IT projektledelse, der supplerer og uddyber denne vejledning med den nyeste viden på området [Biering2004]. 2.7 Vejledning i programdokumentation Denne vejledning beskriver SPU reglen Dokumenter undervejs, der siger at dokumentation af softwaren er en løbende proces i en moderne udviklingsproces. Dette er endnu vigtigere i en udviklingsproces, der baserer sig på iterationer, hvor næste iteration anvender dokumentation fra den foregående iteration. Anvendelsen af UML som udviklingsnotation vil lette dokumentationsarbejde, da der nu eksisterer en standardnotation UML, der kan anvendes til at dokumentere softwaredesignet og med mulighed for også at vise den tilhørende hardware vha. UML deploymentdiagrammer. Det viste eksempel på en indholdsfortegnelse for en programdokumentation kan videreudvikles hen imod UML ved f.eks. at anvende ideerne fra 4+1 view modellen for dokumentation af softwarearkitektur [Krutchen85]. Ver , Ingeniørhøjskolen i Århus 5

8 2.8 Vejledning i konfigurationsstyring Denne vejleding giver en introduktion til konfigurations- og versionsstyring, der er en meget vigtig udviklingsaktivitet, specielt i de stadig større projekter der i dag igangsættes. Her vil anvendelsen af objektorienteret udvikling bevirke at de mindste kodeenheder man ønsker at dokumentere er klasser og ikke som tidligere enkeltfunktioner. UML har endvidere indført et pakkebegreb, der også vil lette administrationen af koden. Anvendelsen af UML vil derudover medføre et antal UML diagrammer og den tilhørende information. Denne dokumentation skal versions- og konfigurationsstyres. Her får man hjælp af CA- SE værktøjerne, der (næsten) alle har grænseflader til konfigurationsstyringsværktøjer. Ver , Ingeniørhøjskolen i Århus 6

9 3 Vejledning i Systematisk Program-Udvikling opdateret mht. UML Den største opdatering i håndbogens Vejledning i struktureret programudvikling vedrører en modifikation af SPU udviklingsmodellens således at den i SPU-UML udgaven beskriver en iterativ og Use Case baseret udviklingsmodel. 3.1 Hvad er systematisk programudvikling (SPU-UML)? SPU og SPU-UML konceptet består i al sin enkelhed i at anvende følgende 8 elementer i forbindelse med udvikling af systemer, hvori der indgår software: SPU-UML 1. Benyt en udviklingsmodel 2. Udarbejd en kravspecifikation 3. Design før kodning 4. Planlæg test 5. Anvend reviewteknikken 6. Foretag projektstyring 7. Dokumenter undervejs 8. Foretag konfigurationsstyring Figur 1. SPU-UML konceptets 8 elementer Disse otte punkter er udformet som eviggyldige sandheder, man ikke kommer uden om, hvis man vil gennemføre en succesfuld system- og softwareudvikling. Hvert af disse elementer er beskrevet i sin egen vejledning i SPU håndbogen. Dette var i øvrigt en af grundideerne bag udformning af SPU konceptet, at det skulle være et metodeuafhængigt koncept, dvs. en slags knagerække hvorpå, man efterfølgende kunne hænge konkrete metoder, teknikker og værktøjer til gennemførelse af de forskellige aktiviteter i konceptet. En sådan metode og teknik er objektorienteret udvikling med anvendelse af UML notationen. SPU-UML regel 1: Benyt en udviklingsmodel Her vil man typisk i forbindelse med objektorienteret udvikling i dag anvende en udviklingsmodel, der er baseret på gennemførelse af et antal iterationer, der planlægges og styres ud fra Use Cases, der er identificeret i forbindelse med kravspecifikationen. Man taler også her om en Use Case drevet udviklingsproces. SPU-UML regel 1 udtrykker, at man skal anvende en udviklingsmodel men ikke, hvordan den præcist skal se ud. Ver , Ingeniørhøjskolen i Århus 7

10 Udviklingsmodellen i SPU var begrænset til udelukkende at omhandle softwareudviklingen i et projekt, hvilket af mange senere er ønsket udvidet til at omhandle den totale udvikling af et produkt, der både omfatter hardware- og softwareudvikling. SPU modellen er også af mange blevet læst som en vandfaldsmodel, hvad den da også ligner meget, men den var oprindelig tænkt også at kunne indgå i en iterativ udvikling, hvilket dog ikke fremgår specifikt nok i håndbogen. Dette vil denne note derfor belyse mere detaljeret. SPU-UML noten præsenterer en modificeret udviklingsmodel SPU-UML. Denne modificerede udviklingsmodel er en iterativ udviklingsmodel, der omfatter udvikling af komplette apparatsystemer med både hardware- og softwareudvikling. SPU-UML modellen er en Use Case drevet udviklingsmodel, hvor Use Case teknikken anvendes ved flere forskellige aktiviteter. SPU-UML regel 2: Udarbejd en kravspecifikation Før man går i gang med et hvilket som helst projekt bør der forelægge en form for kravspecifikation. I en iterativudviklingsmodel kan man dog også i nogle tilfælde iterere over udarbejdelsen af kravspecifikationen. I SPU-UML foreslås det at kravspecifikation udarbejdes vha. Use Case teknikken. Dette har vist sig at give bedre specifikationer, hvor specifikationen tager udgangspunkt i opfyldelse af funktioner, der er til gavn for systemets aktører og interessenter. Use casene anvendes i udviklingsforløbet til at definere iterationerne ud fra og er dermed til at styre projektets leverancer ligesom Use Casene danner udgangspunkt for specifikation af accepttesten. SPU-UML regel 3: Design før kodning Denne regel er ved at være almindelig anerkendt blandt de fleste professionelle softwareudviklere. SPU vejledningen præsenterer her nogle generelle og metodeuafhængige regler for designarbejdet. I SPU-UML anvendes der en objektorienteret metode som designmetode og designet udarbejdes og dokumenteres vha. UML notationen. SPU-UML regel 4: Planlæg test Denne regel omhandler V-modellen for test, hvor det fremgår at test skal planlægges sammen med den aktivitet, der senere i forløbet testes. Reglen er samtidig med til at sætte fokus på softwaretest, der længe har været en overset og undervurderet disciplin. Anvendelsen af Use cases til kravspecifikation letter den tilhørende accepttestplanlægning, da Use Casene netop udtrykker selvstændig funktionalitet, der er nyttige for f.eks. kunden og brugerne af systemet og derfor egner sig til at blive anvendt ved accepttesten. Ver , Ingeniørhøjskolen i Århus 8

11 SPU-UML regel 5: Anvend reviewteknikken Denne regel fokuserer på anvendelsen af reviews som kvalitetsforbedrende aktivitet i et moderne udviklingsprojekt. Dette er en metodeuafhængig teknik, der kan anvendes på alt skriftligt materiale. SPU-UML regel 6: Foretag projektstyring Denne regel sætter fokus på styrings og ledelsesaspektet af et softwareudviklingsprojekt, der er en særdeles vigtig aktivitet for at opnå succes i et projekt. SPU-UML regel 7: Dokumenter undervejs Reglen her sætter fokus på udarbejdelse af softwaredokumentationen for et projekt og præsenterer denne som en løbende proces. Her vil anvendelsen af UML lette dette arbejde idet der nu er en verdensstandard for at beskrive et objektorienteret design. SPU-UML regel 8: Foretag konfigurationsstyring Denne regel omhandler det at have styr på sine dokumenter og software og de versioner og konfigurationer denne indgår i. Dette er også en metodeuafhængig og meget vigtig aktivitet. Ver , Ingeniørhøjskolen i Århus 9

12 3.2 Anvendelse af SPU-UML modellen i et produktudviklingsforløb Figur 2 viser et typisk produktudviklingsforløb for et apparat eller system. Udviklingsforløbet starter med et foranalyse projekt (engelsk: feasibility study), der har til formål at afklare vigtige usikkerheder vedrørende projektets gennemførlighed. Dette foranlyseprojekt afsluttes med udarbejdelsen af en foranalyserapport, der f.eks. kan indeholde en foreløbig produktkravspecifikation. Forananalyserapporten vil typisk også indeholde analyse- og foreløbig designdokumentation, der kan udarbejdes vha. UML. Et andet typisk resultat er en prototype af det ønskede apparat eller system. Foranalyseprojektet danner udgangspunkt for en ledelsesbeslutning vedrørende igangsætning af et egentligt produktudviklingsprojekt. Vælger man at stoppe her så vil man typisk gemme resultaterne af foranalyseprojektet sammen med begrundelsen for ikke at gå videre. Ledelsesbeslutning Foranalyse projekt go Produktudviklings projekt No go For- Analyse rapport Prototype Gem foranalyse dokumentationen Figur 2. Et typisk produktudviklingsforløb En vigtig pointe er, at SPU-UML udviklingsmodellen kan anvendes både under foranalyseprojektet og under selve produktudviklingsprojektet. Det er en af de store fordele ved den objektorienterede fremgangsmåde og UML notationen at man vha. Nodes og klassebegrebet kan modellere såvel software- som hardwaredelen af et projekt. Der vil være forskel på fokus mellem foranlyse- og produktudviklingsprojektet, hvor man i foranalyseprojektet vil fokusere på at opgaven kan løses (engelsk: proof of concept) så vil man i produktudviklingsprojektet lægge mere vægt på et stabilt design samt en udførlig test og dokumentation. Der findes også produktudviklingsprojekter, der igangsættes ud fra et kort produktoplæg eller produktbeskrivelse. Her vil første aktivitet være at udarbejde en kravspecifikation for det ønskede produkt. Ver , Ingeniørhøjskolen i Århus 10

13 3.3 SPU-UML udviklingsmodellen Den modificerede SPU-UML udviklingsmodel er først og fremmest baseret på en iterativ udviklingsmodel, der drives ud fra et sæt definerede Use Cases. Use Case teknikken er omtalt i afsnit 4.1 i forbindelse med opdatering af vejledningen i kravspecifikation. SPU-UML modellen indeholder den traditionelle vandfaldsmodel som et specialtilfælde af en iterativ model, hvor der kun udføres én iteration. Hvor SPU udelukkende dækkede softwareudviklingsdelen af et projekt så dækker SPU-UML udviklingsmodellen den totale udvikling af produkter eller systemer dvs. både software- og hardwareudvikling. Figur 3 viser SPU-UML udviklingsmodellen beskrevet vha. fire perspektiver, der hver fokuserer på et bestemt aspekt af udviklingsmodellen. Disse fire perspektiver er bundet sammen af SPU- UML konceptets 8 elementer. For at lette referencen til disse perspektiver gives de hvert et kort modelnavn hhv. S-Model for spiralmodel, U-Model for udviklingsaktiviteter, W-model for leverancer og V-model for test. S-MODEL for styring U-MODEL for udviklingsaktiviteter Arkitekturdesign Analyse og kravspecifikation OO Analyse Krav- Specifikation Arkitektur design SW & HW implementering af X Use Case s System integrations test Accept test Use Case Model W-MODEL for leverancer 9 måneder SPU-UML konceptet L næste iteration V-MODEL for test Ekstern synlige leverancer Accepttest L L 4 måneder 3 måneder 2 måneder Kravspecifikation System integrationstest E E E E E SW & HW implementering af X Use Cases Figur 3. SPU-UML udviklingsmodellens perspektiver Ver , Ingeniørhøjskolen i Århus 11

14 3.3.1 Spiralmodel (S-model) Iterative udviklingsmodeller anskueliggøres ofte vha. en spiral, hvilket stammer fra Barry Boehms berømte spiralmodel [Boehm88]. Dette gælder også for udviklingsmodellen ROPES Rapid Object-oriented Process for Embedded Systems [Douglass99], der er en OO udgave af en spiralmodel, der er specielt beregnet til udvikling af indlejrede systemer. Spiral model Accepttest Start Use Cases ROPES Figur 4. S-model for styring (ROPES) Anvendelsen af en iterativ udviklingsmodel er vigtig af flere årsager. For det første kan en sådan model være med til at nedsætte risikoen, idet de mest risikobetonede dele af projektet udvikles tidligt, hvor der er tid til at ændre på kritiske faktorer og evt. stoppe projektet i tide, hvis det ikke kan realiseres. For det andet vil det synliggøre udviklingsforløbet, idet hvert iteration er baseret på et kørende delsystem, hvor alle aktiviteter i princippet er gennemført fra kravspecifikation over design til kodning og test. For det tredje vil anvendelsen af en sådan model operere med mange og korte lærercykler, der er specielt vigtige når man tager ny teknologi som f.eks. objektorienteret udvikling i anvendelse. Ver , Ingeniørhøjskolen i Århus 12

15 3.3.2 Udviklingsmodel (U-model) Figur 5 viser hvorledes de traditionelle udviklingsaktiviteter arbejder sammen med en Use Case model, der specificerer de Use Cases systemet er opdelt i. Figuren viser også hvorledes man i en næste iteration kan vende tilbage til en vilkårlig af de tidligere gennemførte aktiviteter inklusiv kravspecifikationen. Analyse og kravspecifikation OO Analyse Krav- Specifikation Arkitektur design SW & HW implementering af X Use Case s System integrations test Accept test Use Case Model næste iteration Figur 5. U-model for udviklingsaktiviteter Figur 6 viser hvorledes software- og hardwareudviklingen af den valgte iteration forløber parallelt efter gennemførelse af arkitekturdesignaktiviteten, hvorefter SW og HW integreres i systemintegrationstest aktiviteten. SW aktiviteterne er her benævnt som i ROPES modellen. SW implementering af X Use Cases Mekanistisk design Detaljeret design Kodning Unit test SW Integrations test HW implementering af X Use Cases Figur 6. Oversigt over SW & HW implementeringsaktiviteterne Ver , Ingeniørhøjskolen i Århus 13

16 3.3.3 Testmodel (V-model) I SPU-UML modellen er det vigtigt at bibeholde V-modellen for test, der giver en god illustration af forholdet mellem tidlig testforberedelse og de senere testudførelse. Figur 7 viser hvorledes denne model også kan anvendes i forbindelse med iterativ udvikling her gentages V et blot flere gange. næste iteration Accept-testspecifikation Udførelse af accepttest Kravspecifikation Accepttest Arkitektur-testspecifikation Test af arkitektur Arkitekturdesign System integrationstest SW & HW implementering af X Use Cases Figur 7. V-model for test Ver , Ingeniørhøjskolen i Århus 14

17 3.3.4 Leverancemodel (W-model) Figur 8 viser W-modellen for leverancer, der er en model over de interne evalueringer samt de interne og eksterne leverancer, der kan forekomme i en iterativ udviklingsmodel. Modellen er beskrevet af Alistair Cockburn [Cockburn-W]. Den mindste iteration består i gennemførelse af en V-model, der resulterer i en intern evaluering af et kørende delsystem. Efter et antal af disse kan man have en mere formel og synlig ekstern leverance, der f.eks. kan anvendes til pilottest og pilotforsøg med de rigtige brugere af systemet. Et antal af disse kan så kombineres til en officiel release af et produkt. 9 måneder L Ekstern synlige leverancer L L 4 måneder 3 måneder 2 måneder E E E E E Interne udviklings-iterationer og leverancer Kilde: A.Cockburn E Evaluering L Leverance Figur 8. W-model for leverancer I eksemplet på Figur 8 er der således 8 udviklingsiterationer, hvoraf de tre er ekstern synlige og hvoraf den af sidste af disse fører til en frigivelse af produktet. I dette ni måneders projekt er der således 8 vigtige milepæle at styre efter og vel at mærke milepæle, der demonstrer fremdrift både overfor ledelsen, kunderne og overfor udviklerne selv via kørende systemer eller delsystemer. Ver , Ingeniørhøjskolen i Århus 15

18 3.4 Udviklingsaktiviteter Figur 9 viser øverst udviklingsaktiviteterne i SPU-UML og nederst som de fremgår af SPU håndbogen. SPU-UML aktiviteterne er benævnt efter ROPES modellen. Som det fremgår af figuren er der i SPU-UML (ROPES) tilføjet OO analyse aktiviteter systemanalyse og objektanalyse. De viste SPU-UML aktiviteter beskrives kort i de følgende afsnit. OO Analyse System Objekt Analyse Analyse SPU-UML (ROPES) Arkitektur Design Mekanistisk Design Detaljeret Design Kodning Unit test System Kravspecifikation SW Integrationstest System Integrationstest Accept test SPU Programdesign SW Kravspecifikation Procesdesign Moduldesign Modulkodning Modultest Modulintegration Procesintegration Accept test Figur 9. Sammenhæng mellem SPU-UML og SPU aktiviteter Kravspecifikation I SPU-UML kan kravspecifikationen dække komplette systemer eller produkter dvs. både software og hardwaredelen af et system. Hvorimod SPU alene omhandlede en SW kravspecifikation. I begge tilfælde vil kan have glæde af at udarbejde en Use Case baseret kravspecifikation. Der er mange forskellige typer af udviklingsprojekter og udviklingssituationer, hvorfor den udviklingsmodel man anvender til det konkrete projekt, bør tage udgangspunkt i den aktuelle situation. Figur 10 viser f.eks. en udviklingssituation hvor der udarbejdes en komplet Use Case baseret kravspecifikation og evt. en domænemodel før der påbegyndes et iterativt udviklingsforløb, der defineres ud fra de specificerede Use Cases. Ver , Ingeniørhøjskolen i Århus 16

19 Domænemodellering Kravspecifikation med Use Cases Komplet kravspecifikation = aftale/kontraktgrundlag Iterativ og inkrementel udvikling og aflevering af et antal Use Cases næste iteration Kørende delsystem eller delprodukt Figur 10. Iterativ udvikling ud fra en komplet kravspecifikation Denne situation kan f.eks. være nyttig i forbindelse med anvendelse af underleverandører til et projekt, hvor kravspecifikationen vil være det formelle aftalegrundlag for definering af priser og tidsplaner. En anden situation, hvor denne model kan anvendes er de tilfælde, hvor kravene er forholdsvis velkendte, f.eks. fordi man tidligere har udviklet tilsvarende produkter eller systemer. Er der derimod tale om en komplet egenudvikling af et nyt og ukendt produkt så vil der være brug for at anvende en iterativ udviklingsmodel, der også itererer over kravspecifikationen, som vist på Figur 11. Domænemodellering Kravspecifikation med Use Cases Iterativ og inkrementel specifikation, udvikling og aflevering af et antal Use Cases næste iteration Kørende delsystem eller delprodukt Figur 11. Iterativ udvikling også over kravspecifikationen Det optimale vil være at projektgruppen sammen med ledelsen ved opstart af et projekt, fastlægger den konkrete udviklingsmodel og dermed definerer hvilke aktiviteter, der skal udføres i det konkrete projekt. Derved opnår man en situationsbestemt udviklingsmodel, der tager højde for projektets specifikke egenskaber. Ver , Ingeniørhøjskolen i Århus 17

Projekthåndbog E- og IKT projekter

Projekthåndbog E- og IKT projekter Projekthåndbog E- og IKT projekter Ingeniørhøjskolen i Århus Michael Alrøe Versionshistorie Ver. Dato Initialer Beskrivelse 1.0 12.01.2009 MA Første version beregnet for IHA semesterprojekter 1.1 20.01.2009

Læs mere

UML-Light (Note: UML-Light T133, ver. 2004) Finn Overgaard Hansen, IHA

UML-Light (Note: UML-Light T133, ver. 2004) Finn Overgaard Hansen, IHA UML-Light (Note: UML-Light T33, ver. 2004) Finn Overgaard Hansen, IHA Programmering PRG + Semesterprojekter PRJ+PRJ2 Version: 20--2004 Indhold Første del: Introduktion til UML-Light og UML Klasser og objekter

Læs mere

Model og metode til programudvikling. Om undertegnede... Struktureret Systemudvikling. Dagens menu... Tankevækkende erfaringer med systemudvikling...

Model og metode til programudvikling. Om undertegnede... Struktureret Systemudvikling. Dagens menu... Tankevækkende erfaringer med systemudvikling... Model og metode til programudvikling 2004 minimodul 11: Struktureret/Systematisk System Udvikling Kursusholder: Ove Andersen Om undertegnede... Ove Andersen, civ. ing., 1989, ph.d. 2003 arbejdet på diverse

Læs mere

Idékatalog Planlægning og brug af test i statslige it-projekter

Idékatalog Planlægning og brug af test i statslige it-projekter Idékatalog Planlægning og brug af test i statslige it-projekter Januar 2014 INDHOLD 1. INDLEDNING...1 2. TYPER AF TEST...2 3. PLANLÆGNING AF TEST I FASERNE...6 3.1 IDÉFASEN...6 3.2 ANALYSEFASEN...7 3.3

Læs mere

Velkommen til. Kravspecifikation i Softwareudvikling Workshop hos Brüel & Kjær. 14. september 2012, 9.30 12.30

Velkommen til. Kravspecifikation i Softwareudvikling Workshop hos Brüel & Kjær. 14. september 2012, 9.30 12.30 Velkommen til Kravspecifikation i Softwareudvikling Workshop hos 14. september 2012, 9.30 12.30 Flemming Hansen, IT innovation e-mail: flemming.hansen@it-innovation.dk Kravspecifikation i softwareudvikling,

Læs mere

Objektorienteret Analyse & Design

Objektorienteret Analyse & Design Objektorienteret Analyse & Design Lars Mathiassen, Andreas Munk-Madsen, Peter Axel Nielsen og Jan Stage ISBN: 87-7751-153-0 Udgave: 3. udgave Udgivelsesår: 2001 Antal sider: 452 Pris: Kr. 410,00 På de

Læs mere

Studieordning del 4-2014

Studieordning del 4-2014 Studieordning del 4-2014 Fagbeskrivelser Datamatiker AP Graduate in Computer Science Version 1.1 Revideret august 2014 Side 0 af 8 Indhold del 4 Fagbeskrivelser 1. Faget Programmering (PRO)...2 2. Faget

Læs mere

Hos Lasse Ahm Consult vurderer vi at følgende supplerende krav i de enkelte kravelementer er væsentlige at bemærke:

Hos Lasse Ahm Consult vurderer vi at følgende supplerende krav i de enkelte kravelementer er væsentlige at bemærke: ISO 9001:2015 (Draft) Side 1 af 9 Så ligger udkastet klar til den kommende version af ISO 9001. Der er sket en række strukturelle ændringer i form af standardens opbygning ligesom kravene er blevet yderligere

Læs mere

2. Metode. 2.1 Interessentanalyse Interessenterne i projektet er vist i nedenstående figur: Aftalekalenderprojektet. Indledning

2. Metode. 2.1 Interessentanalyse Interessenterne i projektet er vist i nedenstående figur: Aftalekalenderprojektet. Indledning 2. Metode Indledning Projektet er udført med flg. faser: Foranalyse (uden iterationer) Analyse (udarbejdelse af kravspecifikation afsnit 9.1, herunder use case beskrivelser afsnit 9.2) Design af skærmbilleder

Læs mere

1 Ordliste 2. 2 Indledning 3 2.1 Problemstillinger... 3 2.2 Problemformulering... 4 2.3 Problemafgrænsning... 4 2.4 Mål med projektet...

1 Ordliste 2. 2 Indledning 3 2.1 Problemstillinger... 3 2.2 Problemformulering... 4 2.3 Problemafgrænsning... 4 2.4 Mål med projektet... Indhold 1 Ordliste 2 2 Indledning 3 2.1 Problemstillinger.................................. 3 2.2 Problemformulering................................ 4 2.3 Problemafgrænsning................................

Læs mere

CURRICULUM VITAE. Personlige oplysninger. Michael Alrøe. Uddannelse. Kurser og efteruddannelse. Michael Alrøe. Navn Fødselsår 1964 LinkedIn

CURRICULUM VITAE. Personlige oplysninger. Michael Alrøe. Uddannelse. Kurser og efteruddannelse. Michael Alrøe. Navn Fødselsår 1964 LinkedIn CURRICULUM VITAE Personlige oplysninger Navn Fødselsår 1964 LinkedIn Michael Alrøe http://www.linkedin.com/in/alroe Uddannelse 1988 Dataingeniør, Ingeniørhøjskolen Århus Teknikum 1985 Student (Matematik/Fysik),

Læs mere

Miniprojekt2011. Formålet er at lære og indlære god objektorienteret programudvikling og programmering med Java, samt undervejs at opfylde studiekrav.

Miniprojekt2011. Formålet er at lære og indlære god objektorienteret programudvikling og programmering med Java, samt undervejs at opfylde studiekrav. Miniprojekt2011 Projektbeskrivelse Der skal fremstilles en lille java application på PC, hvor brugeren kan foretage interaktioner med en simpel database på disken via et grafisk brugerinterface. Formålet

Læs mere

Dm071 / Dm072 - Obligatorisk projekt 3: Design af model

Dm071 / Dm072 - Obligatorisk projekt 3: Design af model Dm071 / Dm072 - Obligatorisk projekt 3: Design af model Fag: Projektet omhandler emner fra fagene Software Design og Software Konstruktion. Formål: Formålet med projektet er at give dig mulighed for sammen

Læs mere

Lilleby Kommunebibliotek

Lilleby Kommunebibliotek Lilleby Kommunebibliotek Første projekt i Systemudvikling Arne Jørgensen, Christian Skovgaard, Lotte Simonsen og Sonny Petersen 3. november 2003 Indledning... Problemformulering... Problemanalyse... Projektafgrænsning...

Læs mere

Sikkerhedsanbefaling. Forholdsregler ved ophør af serviceopdateringer til Windows XP Embedded

Sikkerhedsanbefaling. Forholdsregler ved ophør af serviceopdateringer til Windows XP Embedded Sikkerhedsanbefaling Forholdsregler ved ophør af serviceopdateringer til Windows XP Embedded Juli 2014 Indledning Microsoft har annonceret, at selskabet den 31. december 2016 frigiver den sidste serviceopdatering

Læs mere

Objektorienteret design med arv og polymorfi:

Objektorienteret design med arv og polymorfi: Note til Programmeringsteknologi Akademiuddannelsen i Informationsteknologi Objektorienteret design med arv og polymorfi: Substitutionsprincippet Composite Design Pattern Finn Nordbjerg Side 1 Objektorienteret

Læs mere

Dygtig.NET / C# udvikler med stor erfaring fra både offentlige organisationer og private virksomheder.

Dygtig.NET / C# udvikler med stor erfaring fra både offentlige organisationer og private virksomheder. .NET UDVIKLER NATIONALITET: DANSK PROFIL Dygtig.NET / C# udvikler med stor erfaring fra både offentlige organisationer og private virksomheder. Stor erfaring omkring databasedesign, datahåndtering og MS

Læs mere

Det vigtigste først! Dette er måske den vigtigste bog der nogensinde er skrevet om agile vs. vandfald. Muligvis fordi det vel stadig er den eneste

Det vigtigste først! Dette er måske den vigtigste bog der nogensinde er skrevet om agile vs. vandfald. Muligvis fordi det vel stadig er den eneste WTF? Thomas Schou-Moldt, Miracle A/S (siden 2008) Arkitekt, udvikler, teknisk projektleder, mv. Indtil videre afsonet lidt over 20 år i branchen, ingen udsigt til prøveløsladelse tsm@miracleas.dk, 5374

Læs mere

Om forretningsmæssige kompetencer

Om forretningsmæssige kompetencer Om forretningsmæssige kompetencer Uddanner universiteterne kun i det de forsker i? DI, Industriens Hus - 22. september 2009 Jørn Johansen JoJ@delta.dk www.deltaaxiom.com www.delta.dk Tlf.: 72194421 1 Delta

Læs mere

CV Jakob Niemann. Resumé: Nøglekvalifikationer. Personlighed. Født: 24/02 1976

CV Jakob Niemann. Resumé: Nøglekvalifikationer. Personlighed. Født: 24/02 1976 Jakob Niemann IT Konsulent Født: 24/02 1976 Rosendalsgade 11, 2. TV. 2100 København Ø Tlf: +45 2859 9808 JakobNiemann@gmail.com Resumé: Test og Quality Manager med mere end 15 års IT erfaring. Har stor

Læs mere

Model og Metode til Programudvikling. Jens Dalsgaard Nielsen

Model og Metode til Programudvikling. Jens Dalsgaard Nielsen Model og Metode til Programudvikling v/ Jens Dalsgaard Nielsen 1 Hvem er vi? Jens Dalsgaard Nielsen, Afd for Proceskontrol, I8 Distribuerede RT-Systems group Realtid, kerner, operativsystemer, netværk,..

Læs mere

http://erfadownload.teknologisk.dk/erfaswudv/-moder/prog9802.htm

http://erfadownload.teknologisk.dk/erfaswudv/-moder/prog9802.htm Side 1 af 7 Forside.NET ERFA C++ ERFA It-projektleder ERFA SoftWareudvikling-på-tværs Seneste nyt for udviklere, projektledere og metodefolk: Softwareudvikling på tværs 2 dage om trends, teknologi, metoder

Læs mere

Indholdsfortegnelse for kapitel 1

Indholdsfortegnelse for kapitel 1 Indholdsfortegnelse for kapitel 1 Forord.................................................................... 2 Kapitel 1.................................................................. 3 Formål............................................................

Læs mere

Supermarkedsmodellen for design af brugergrænseflade

Supermarkedsmodellen for design af brugergrænseflade Supermarkedsmodellen for design af brugergrænseflade Denne note er skrevet frit efter Peter Huber, som på et kursus i Efteruddannelsescenteret fortalte om supermarkedsmodellen til design af brugergrænseflader.

Læs mere

Studieordning del 4-2014

Studieordning del 4-2014 Studieordning del 4-2014 Fagbeskrivelser Datamatiker AP Graduate in Computer Science Version 1.2 Revideret januar 2015 Side 0 af 10 Indhold del 4 Fagbeskrivelser 1. Faget Programmering (PRO)...2 2. Faget

Læs mere

VEJLEDNING TIL LÆSNING AF PRINCE2 MANUAL

VEJLEDNING TIL LÆSNING AF PRINCE2 MANUAL Om denne vejledning EPM Groups undervisere har gennemført kurset for mange tusinde PRINCE2-kursister. Flere af vores undervisere har undervist på de første PRINCE2- kurser i Danmark fra 2002. EPM Groups

Læs mere

Ud af krisen. Software på tværs, 15. juni 2009

Ud af krisen. Software på tværs, 15. juni 2009 Ud af krisen Software på tværs, 15. juni 2009 Om Ative Agile udvikling og rådgivning Klassisk udviklingsmodel Krav Design Ændrer sig Implementering Tager for lang tid Springes over Mareridt Test Deployment

Læs mere

Fra Computer til Virkelighed. TPE-kursus Elektroniske Systemer P1

Fra Computer til Virkelighed. TPE-kursus Elektroniske Systemer P1 Fra Computer til Virkelighed TPE-kursus Elektroniske Systemer P1 Fra Computer til Virkelighed En kort introduktion til kurset Systems Engineering Projektfaser Opsamling og opgave Om kurset Mål: at I lærer

Læs mere

Løsningsforslag til Camp Let. Case Beskrivelse: Camp Let

Løsningsforslag til Camp Let. Case Beskrivelse: Camp Let Løsningsforslag til Camp Let Case Beskrivelse: Camp Let Firmaet Camp Let har til formål at udleje forskellige typer transportable ferieboliger. Det drejer sig i øjeblikket om campingbusser, campingvogne,

Læs mere

Svendeprøve Projekt Tyveri alarm

Svendeprøve Projekt Tyveri alarm Svendeprøve Projekt Tyveri alarm Påbegyndt.: 8/2-1999 Afleveret.: 4/3-1999 Projektet er lavet af.: Kasper Kirkeby Brian Andersen Thomas Bojer Nielsen Søren Vang Jørgensen Indholds fortegnelse 1. INDLEDNING...3

Læs mere

Udfordringer og problemstillinger. En liste over de udfordringer og problemstillinger, der er ved Java og JEE udvikling

Udfordringer og problemstillinger. En liste over de udfordringer og problemstillinger, der er ved Java og JEE udvikling Java og JEE 1 2 Udfordringer og problemstillinger En liste over de udfordringer og problemstillinger, der er ved Java og JEE udvikling 3 Generelt om Java og JEE 4 Generelt, I Man undervurderer hvor mange

Læs mere

Vejledningen til proces for design af fremtidsmodellen

Vejledningen til proces for design af fremtidsmodellen Vejledningen til proces for design af fremtidsmodellen Januar 2014 Indhold 1. FORMÅL... 3 FORMÅLET MED DENNE PROCESVEJLEDNING... 3 2. FREMTIDSMODELLENS OMRÅDER... 3 2.1. AKTIVITETER... 4 DEFINER OVERORDNEDE

Læs mere

Program for Softwareudvikling-på-tværs

Program for Softwareudvikling-på-tværs Side 1 af 7 Forside.NET ERFA C++ ERFA It-projektleder ERFA SoftWareudvikling-på-tværs Udviklere, projektledere, kvalitetsfolk og metodefolk: Softwareudvikling-på-tværs Systemudvikling-på-tværs 2 dage om

Læs mere

Programmering 2. dprog2 E2012. http://www.cs.au.dk/dprog2/

Programmering 2. dprog2 E2012. http://www.cs.au.dk/dprog2/ Programmering 2 dprog2 E2012 http://www.cs.au.dk/dprog2/ Læringsmål Deltagerne skal ved afslutningen af kurset kunne: forklare og anvende både basale og videregående elementer af et moderne programmeringssprog,

Læs mere

DE BEAR TECHNOLOGY. o Processer, metoder & værktøjer. e-mail: info@dbtechnology.dk WWW.DBTECHNOLOGY.DK

DE BEAR TECHNOLOGY. o Processer, metoder & værktøjer. e-mail: info@dbtechnology.dk WWW.DBTECHNOLOGY.DK Mission Critical o Projekt Information management o Processer, metoder & værktøjer. Side 1 of 11 Projekt information Projekt information management inkluderer alle de processer, som er nødvendige for at

Læs mere

Lavet af Danni jensen og David Olsen

Lavet af Danni jensen og David Olsen Projekt Delfin Lavet af Danni jensen og David Olsen 19/5-2008 Indholdsfortegnelse. Side 1: Indholdsfortegnelse og forord. Side 2: Kravsliste. Side 3: Use Case Model. Side 4: Formandens aktørbeskrivelse

Læs mere

Undervisningsbeskrivelse

Undervisningsbeskrivelse Undervisningsbeskrivelse Stamoplysninger til brug ved prøver til gymnasiale uddannelser Termin Institution Uddannelse Fag og niveau Lærer(e) Hold Termin hvori undervisningen afsluttes: maj-juni 2013 HTX

Læs mere

Håndbog til projektledelse

Håndbog til projektledelse Mere info kontakt Julie Kirstine Olsen Udviklingskonsulent juols@ikast-brande.dk Tlf.: 9960 4153 Mads Ballegaard Konsulent mabal@ikast-brande.dk Tlf.: 9960 4021 Produceret af Håndbog til projektledelse

Læs mere

Fra Assembler, Basic, Comal, Pascal, C til Object Orienteret software udvikling

Fra Assembler, Basic, Comal, Pascal, C til Object Orienteret software udvikling 1 Fra Assembler, Basic, Comal, Pascal, C til Object Orienteret software udvikling v. Ib Havn Min første computer 2 Sådan startede det 3 Kort om DSE A/S Start 1981 som Dansk System Elektronik A/S Integration

Læs mere

IT-Basecamp 2013. Real World Java EE Patterns Adam Bien. Real World Java EE Patterns, Adam Bien Copyright Lund&Bendsen A/S

IT-Basecamp 2013. Real World Java EE Patterns Adam Bien. Real World Java EE Patterns, Adam Bien Copyright Lund&Bendsen A/S IT-Basecamp 2013 Real World Java EE Patterns Adam Bien 1 Indhold Lidt om mig Baggrund for valg af emnet Bogens opbygning Fra J2EE til JEE 5/6 Overflødiggjorte patterns Fremhæve et par patterns 2 Kenneth

Læs mere

Object-Relational Mapping

Object-Relational Mapping Databaser for udviklere () Datamatiker TietgenSkolen Underviser: Allan Helboe 06-06-2010 Problemformulering Denne opgave er et forsøg på at beskrive problemerne der opstår ved anvendelsen af en relationel

Læs mere

Uge 5.3: (Search,) Select & implement and development methods

Uge 5.3: (Search,) Select & implement and development methods Innovationsprocesser Uge 5.3: (Search,) Select & implement and development methods A A R H U S U N I V E R S I T E T Department of Computer Science 1 Innovation & ICT development *** Innovation *** * ***

Læs mere

PRINCE2 PRACTITIONER EKSAMEN VEJLEDNING TIL EKSAMINANDER

PRINCE2 PRACTITIONER EKSAMEN VEJLEDNING TIL EKSAMINANDER PRINCE2 PRACTITIONER EKSAMEN VEJLEDNING TIL EKSAMINANDER 1 INTRODUKTION 1.1 Formålet med Practitioner-eksamen er at give eksaminanden mulighed for at demonstrere forståelse af PRINCE2. Samtidig skal eksaminanden

Læs mere

BACHELOR (BSc) I TEKNISK VIDENSKAB (SOFTWARE ENGINEERING)

BACHELOR (BSc) I TEKNISK VIDENSKAB (SOFTWARE ENGINEERING) Kapitel 9 Den uddannelsesspecifikke del af studieordningen for uddannelsen BACHELOR (BSc) I TEKNISK VIDENSKAB (SOFTWARE ENGINEERING) Bachelor of Science (BSc) in Engineering (Software Engineering) Gældende

Læs mere

Datamatiker & Pba i Softwareudvikling i praktik

Datamatiker & Pba i Softwareudvikling i praktik Information til virksomheder om Datamatiker & Pba i Softwareudvikling i praktik Business Unit Erhvervsakademiet Lillebælt hse@vejlehs.dk tlf: 7216 2898 Hvorfor er det en god ide at have en IT-studerende

Læs mere

Rollebeskrivelser i den fællesstatslige programmodel. - Vejledning

Rollebeskrivelser i den fællesstatslige programmodel. - Vejledning Rollebeskrivelser i den fællesstatslige programmodel - Vejledning August 2013 Indhold 1. LÆSEVEJLEDNING... 1 2. FORMAND FOR PROGRAMBESTYRELSEN (PROGRAMEJER)... 2 3. PROGRAMLEDER... 3 4. FORANDRINGSEJER...

Læs mere

Region Midtjylland Proces for Change Management

Region Midtjylland Proces for Change Management Region Midtjylland Proces for Change Management Version 1.1 Forord Dette dokument beskriver RMIT s Change Management proces. Processen beskriver minimumskravene (need to have) for at få processen til at

Læs mere

IT-UNIVERSITETET I KØBENHAVN

IT-UNIVERSITETET I KØBENHAVN IT-UNIVERSITETET I KØBENHAVN MASTER I SOFTWARE ENGINEERING itu.dk/master/software MASTER I SOFTWARE ENGINEERING Master i Software Engineering er til dig, som allerede er en erfaren software- og systemudvikler,

Læs mere

Software Design (SWD) Spørgsmål 1

Software Design (SWD) Spørgsmål 1 Spørgsmål 1 Unified Process Du skal give en beskrivelse af Unified Process. Beskrivelsen skal indeholde forklaring på følgende begreber: Phase Iteration Discipline Activity Milestone Artifact Spørgsmål

Læs mere

Curriculum vitae. Personlige oplysninger. Præsentation. Projekterfaring

Curriculum vitae. Personlige oplysninger. Præsentation. Projekterfaring Curriculum vitae Personlige oplysninger Navn: Michael Sig Adresse: Hesseløgade 4, 3.th. 2100 København Ø Telefonnr.: 40 97 50 49 www: www.sig-logik.dk Email: michael@sig-post.dk Alder: 32 år (født d. 21.9.1974)

Læs mere

Guide til kravspecifikation

Guide til kravspecifikation Side 1 af 10 10. november 2008 Guide til kravspecifikation Version 1.0. Denne guide indeholder en række råd til brug i kravspecifikationer for IT systemer, der skal anvende NemLog-in løsningen. Hensigten

Læs mere

Vejledning - Udarbejdelse af gevinstdiagram

Vejledning - Udarbejdelse af gevinstdiagram Vejledning - Udarbejdelse af gevinstdiagram Maj 2015 INDHOLD 1. INDLEDNING... 1 1.1 FORMÅL... 1 1.2 VEJLEDNINGENS SAMMENHÆNG MED DEN FÆLLESSTATSLIGE IT-PROJEKTMODEL... 1 1.3 GEVINSTDIAGRAMMET... 2 1.4

Læs mere

Objektorienterede metoder

Objektorienterede metoder Objektorienterede metoder Gang 13. Adrætte processer Ekstremprogrammering (XP) Dette materiale er under Åben Dokumentlicens, se http://www.sslug.dk/linuxbog/licens.html projektopgaven i OOM Projektvejledning

Læs mere

Projekt: I4PRJ4 Dato: 18/12 2009. Titel: Kravspecifikation for Danish Rox

Projekt: I4PRJ4 Dato: 18/12 2009. Titel: Kravspecifikation for Danish Rox Projekt: I4PRJ4 Dato: 18/12 2009 Titel: for Danish Rox Dansk Beton Versionshistorie Ver. Dato Initialer Beskrivelse 1.00 12.09.09 Gr. 2 Use Cases beskrivelse 1.1 15.10.09 Gr. 2 Beskrivelse af hardware

Læs mere

Objektorienterede metoder

Objektorienterede metoder Objektorienterede metoder Gang 12. Kvalitet i større systemer Evt.: Ekstremprogrammering (XP) Dette materiale er under Åben Dokumentlicens, se http://www.sslug.dk/linuxbog/licens.html projektopgaven i

Læs mere

DD110 - Detaljeret projektplan

DD110 - Detaljeret projektplan Version: 1.3 Status: Godkendt Godkender: Dokumenthistorik Version Dato Navn Status Bemærkninger 1.0 9-11-2007 Endelig Initiel version 1.1 22-11-2007 Godkendt 1.2 28-11-2007

Læs mere

Version Dato Beskrivelse 1.0.0 26/11/2012 Initial version 1.2.0 05/03/2013 Tilføjet eksempel med Template Agent, generelt udvidet dokumentet.

Version Dato Beskrivelse 1.0.0 26/11/2012 Initial version 1.2.0 05/03/2013 Tilføjet eksempel med Template Agent, generelt udvidet dokumentet. MOX og APOS2 Forord Dette dokument er en del af APOS version 2 manualerne. APOS version 2 (APOS2 herefter) er et organisation, klassifikation og personale system baseret på Sag & Dokument standarderne.

Læs mere

Scope Management ITU 11-09-2013 @janhmadsen #ituscpmgt

Scope Management ITU 11-09-2013 @janhmadsen #ituscpmgt Scope Management ITU 11-09-2013 @janhmadsen Dagsorden Oplægsholder Projektstyring Scope Management i en fælles kontekst Definitioner Scope Management - styring af omfang ved projektets start under projektets

Læs mere

Rollebeskrivelser i den fællesstatslige programmodel. - Vejledning

Rollebeskrivelser i den fællesstatslige programmodel. - Vejledning Rollebeskrivelser i den fællesstatslige programmodel - Vejledning Januar 2014 Indhold 1. LÆSEVEJLEDNING... 1 2. FORMAND FOR PROGRAMBESTYRELSEN (PROGRAMEJER)... 2 3. PROGRAMLEDER... 3 4. FORANDRINGSEJER...

Læs mere

SmartFraming Et vindue til nationale sundhedssystemer. Version 3.0

SmartFraming Et vindue til nationale sundhedssystemer. Version 3.0 SmartFraming Et vindue til nationale sundhedssystemer Version 3.0 Infrastruktur i dagens sundheds IT Det sundhedsfaglige personale benytter sig i dag af en række forskellige systemer i forbindelse med

Læs mere

Grundlæggende OOA - OOD

Grundlæggende OOA - OOD Grundlæggende OOA - OOD Dette kursus henvender sig til personer, der har lille eller ingen erfaring med softwareudvikling. Med udgangspunkt i UML opbygges et solidt kendskab til softwareudviklingens kunst

Læs mere

Studieordning Datamatiker uddannelsen Fælles del

Studieordning Datamatiker uddannelsen Fælles del Studieordning Datamatiker uddannelsen Fælles del 1. Indholdsfortegnelse 1. Indholdsfortegnelse... 0 2. Uddannelsens struktur... 1 3. Uddannelsens kerneområder og ECTS omfang... 1 3.1 Kerneområdet Programmering...

Læs mere

Rollebeskrivelser. Programroller ift. den fællesstatslige programmodel

Rollebeskrivelser. Programroller ift. den fællesstatslige programmodel Rollebeskrivelser Programroller ift. den fællesstatslige programmodel Indholdsfortegnelse Rollebeskrivelser... 1 1. Programprofiler... 3 1.1. Formand for programbestyrelse/programejer... 3 1.2. Programleder...

Læs mere

Mønstre en indføring i analyse-, design- og arkitekturmønstre

Mønstre en indføring i analyse-, design- og arkitekturmønstre Mønstre en indføring i analyse-, design- og arkitekturmønstre COT/4-07-V2.2 C * O T Center for Revisionshistorie: 12.01.99 v.0 Første udgave 9.02.99 v.1.0 Anden udgave 27.04.99 v.2 Endelig version 10.05.99

Læs mere

FESD-standardiseringsgruppen Att: Palle Aagaard IT- og Telestyrelsen IT-strategisk kontor Holsteinsgade 63 2100 København Ø

FESD-standardiseringsgruppen Att: Palle Aagaard IT- og Telestyrelsen IT-strategisk kontor Holsteinsgade 63 2100 København Ø FESD-standardiseringsgruppen Att: Palle Aagaard IT- og Telestyrelsen IT-strategisk kontor Holsteinsgade 63 2100 København Ø Høringssvar vedr. FESD GIS-integrationsmodel version 2.0 Geodata Danmark har

Læs mere

Undervisningsbeskrivelse

Undervisningsbeskrivelse Undervisningsbeskrivelse Stamoplysninger til brug ved prøver til gymnasiale uddannelser Termin August 2009 - juni 2010 Institution HTX Sukkertoppen/Københavns Tekniske Skole Uddannelse Fag og niveau Lærer(e)

Læs mere

Bilag 1 Tidsplan Version 0.9 05-05-2014 0

Bilag 1 Tidsplan Version 0.9 05-05-2014 0 Bilag 1 Tidsplan Version 0.9 05-05-2014 0 Indhold 1 VEJLEDNING TIL TILBUDSGIVER... 2 2 INDLEDNING... 3 2.1 ETAPER I UDVIKLINGSPROJEKTET... 3 2.1.1 ETAPE I - AFKLARING... 3 2.1.2 ETAPE II ANALYSE, DESIGN,

Læs mere

Secure O matic. Gruppe 5 2. SEMESTERPROJEKT. Udgave. Projektstyring

Secure O matic. Gruppe 5 2. SEMESTERPROJEKT. Udgave. Projektstyring Udgave 1 2. SEMESTERPROJEKT Gruppe 5 Secure O matic Projektstyring Benjamin Sørensen, 02284 Tomas Stæhr Hansen, 03539 Stefan Nielsen, 02829 Mubeen Ashraf, 9279 Hussein Kleit, 9281 SECURE O MATIC Projektstyring

Læs mere

Vejledning - Udarbejdelse af gevinstdiagram

Vejledning - Udarbejdelse af gevinstdiagram Vejledning - Udarbejdelse af gevinstdiagram Januar 2014 INDHOLD 1. INDLEDNING... 1 1.1 FORMÅL... 1 1.2 VEJLEDNINGENS SAMMENHÆNG MED DEN FÆLLESSTATSLIGE IT-PROJEKTMODEL... 1 1.3 GEVINSTDIAGRAMMET... 2 1.4

Læs mere

Arbejdsformer i datalogiske forundersøgelser

Arbejdsformer i datalogiske forundersøgelser Arbejdsformer i datalogiske forundersøgelser Keld Bødker, Finn Kensing og Jesper Simonsen, RUC/datalogi Projektet foregår i et samarbejde mellem Danmarks Radio, H:S Informatik, WMdata Consulting A/S og

Læs mere

Knas med udviklingsprojekterne? Iterativ udvikling kan være løsningen!

Knas med udviklingsprojekterne? Iterativ udvikling kan være løsningen! Knas med udviklingsprojekterne? terativ udvikling kan være løsningen! f Cap Gemini: Direktør Carsten Sennov, carsten.sennov@capgemini.dk Chefkonsulent Lennart Klamer, lennart.klamer@capgemini.dk Chefkonsulent

Læs mere

Brugervenlighed på internettet

Brugervenlighed på internettet Brugervenlighed på internettet TIMME BISGAARD MUNK og KRISTIAN MØRK Brugervenlighed på internettet - en introduktion Samfundslitteratur Timme Bisgaard Munk og Kristian Mørk Brugervenlighed på internettet

Læs mere

Software test i Socialstyrelsen. af: Jan Kristensen. Nov 2013

Software test i Socialstyrelsen. af: Jan Kristensen. Nov 2013 Software test i Socialstyrelsen af: Jan Kristensen Nov 2013 Agenda Lidt om Socialstyrelsen IT i Socialstyrelsen Software test QA Udviklingsmetode Agurkemetoden Test cases Test automatisering Afslutning

Læs mere

Professionel Udvælgelse i byggeriet Skabeloner

Professionel Udvælgelse i byggeriet Skabeloner Professionel Udvælgelse i byggeriet Skabeloner Vejledning i anvendelsen af skabeloner til brug for udvælgelse, herunder prækvalifikation i byggeriet Marts 2013 Byggeriets Evaluerings Center SOLIDARISK

Læs mere

Anvendelse af dobbelthistorik i GD2

Anvendelse af dobbelthistorik i GD2 Grunddataprogrammet under den Fællesoffentlige Digitaliseringsstrategi GD2 - Adresseprogrammet Anvendelse af dobbelthistorik i GD2 Implementerings regler og eksempler på dobbelthistorik MBBL- REF: Version:

Læs mere

Nye testteknikker fra ISTQB - direkte fra hylderne. Ole Chr. Hansen

Nye testteknikker fra ISTQB - direkte fra hylderne. Ole Chr. Hansen Nye testteknikker fra ISTQB - direkte fra hylderne Ole Chr. Hansen TestExpo 29. Januar 2015 Præsentation Ole Chr. Hansen Managing Consultant Fellow SogetiLabs Global Innovation Team Blog - http://ochansen.blogspot.com

Læs mere

Vejledning til Teknisk opsætning

Vejledning til Teknisk opsætning Vejledning til Teknisk opsætning v. 1.0 Adm4you, 2010. Indhold Kort om denne vejledning... 3 Generelt om easyourtime... 3 Installation af databasen... 3 Sikkerhed og rettigheder... 4 SQL Login... 4 Rettigheder

Læs mere

Component based software enginering Diku 2005 Kritikopgave

Component based software enginering Diku 2005 Kritikopgave Component based software enginering Diku 2005 Kritikopgave Nicolas Møller Henschel 17. april 2005 1 Indhold 1 Indledning 3 2 Indhold 3 2.1 Introduktionen.......................... 3 2.1.1 Mangler..........................

Læs mere

PRODUKTIONSSTYRING OG -PLANLÆGNING

PRODUKTIONSSTYRING OG -PLANLÆGNING PRODUKTIONSSTYRING OG -PLANLÆGNING Introduktion Er det egentlig præcist at tale om produktion når temaet er spiludvikling? For produktion dufter jo af faste procedurer, kendte milepæle, og definerede krav

Læs mere

FØR DU TESTER TILGÆNGELIGHED PÅ HJEMMESIDER

FØR DU TESTER TILGÆNGELIGHED PÅ HJEMMESIDER FØR DU TESTER TILGÆNGELIGHED PÅ HJEMMESIDER VEJLEDNING Vejledning til tilgængelighedstest Digitaliseringsstyrelsen 2012 Design: www.kopilot.dk 1 Før du tester tilgængelighed på hjemmesider Det er ofte

Læs mere

Systemudviklings projekt. Nikolaj Boel Jensen Rasmus Thorslund Jensen Bo Mortensen Daniel Munch Lasse Abelsen

Systemudviklings projekt. Nikolaj Boel Jensen Rasmus Thorslund Jensen Bo Mortensen Daniel Munch Lasse Abelsen Systemudviklings projekt Nikolaj Boel Jensen Rasmus Thorslund Jensen Bo Mortensen Daniel Munch Lasse Abelsen 8. Juni 2009 Forord Denne rapport er skrevet på 4. semester på datamatiker uddannelsen. Rapporten

Læs mere

It-håndbogen. Uddrag af artikel trykt i It-håndbogen. Gengivelse af denne artikel eller dele heraf er ikke tilladt ifølge dansk lov om ophavsret.

It-håndbogen. Uddrag af artikel trykt i It-håndbogen. Gengivelse af denne artikel eller dele heraf er ikke tilladt ifølge dansk lov om ophavsret. It-håndbogen Uddrag af artikel trykt i It-håndbogen. Gengivelse af denne artikel eller dele heraf er ikke tilladt ifølge dansk lov om ophavsret. Børsen Ledelseshåndbøger er Danmarks største og stærkeste

Læs mere

7. Referencer til andre værktøjer. 8. Sammenhæng med internationale standarder. 9. Referencer til Projektledelse Teori og praksis. 10.

7. Referencer til andre værktøjer. 8. Sammenhæng med internationale standarder. 9. Referencer til Projektledelse Teori og praksis. 10. Projektlederens værktøj 7. Referencer til andre værktøjer Nr. Navn Sammenhæng med Kritisk sti (CPM) 4.3.3 Tidsplan Udarbejdelse af tidsplan er forudsætningen for at kritisk sti kan findes 4.4.2 Successiv

Læs mere

Vejledning til. Sikkerhedskvalitetsstyringssystem for driftsledelse

Vejledning til. Sikkerhedskvalitetsstyringssystem for driftsledelse Vejledning til Sikkerhedskvalitetsstyringssystem for driftsledelse 1 Forord Sikkerhedskvalitetsstyringssystem for drift af elforsyningsanlæg (SKS-driftsledelse) indeholder anvisninger på kvalitetsstyringsaktiviteter

Læs mere

kollegiekokkenet.tmpdesign.dk Side 1

kollegiekokkenet.tmpdesign.dk Side 1 kollegiekokkenet.tmpdesign.dk Side 1 Indholdsfortegnelse Forord 3 Problemformulering 4 Udviklingsmetode 5 Tidsplan 6 Målgruppe 7 Design brief 8 Logo 10 Typografi og farve 11 Navigationsdiagram 12 Usecase

Læs mere

CIVILINGENIØR, CAND. POLYT. I ROBOTTEKNOLOGI Master of Science in Robot System Engineering

CIVILINGENIØR, CAND. POLYT. I ROBOTTEKNOLOGI Master of Science in Robot System Engineering Kapitel 9 Den uddannelsesspecifikke del af studieordningen for uddannelsen til: CIVILINGENIØR, CAND. POLYT. I ROBOTTEKNOLOGI Master of Science in Robot System Engineering Studiestart september 2009, Version

Læs mere

INDHOLDSFORTEGNELSE. En ny og moderne Project... 7 Jørgen Koch. KAPITEL ET... Kom godt i gang. KAPITEL TO... 27 Oprettelse af et nyt projekt

INDHOLDSFORTEGNELSE. En ny og moderne Project... 7 Jørgen Koch. KAPITEL ET... Kom godt i gang. KAPITEL TO... 27 Oprettelse af et nyt projekt INDHOLDSFORTEGNELSE En ny og moderne Project... 7 Jørgen Koch KAPITEL ET... Kom godt i gang Det nye look... 10 Startskærmen... 11 Programvinduet... 12 Visninger... 13 Kolonneoverskrifter... 14 Rækkeoverskrifter...

Læs mere

it-undervisning Se mere på hjemmesiden www.it-formidler.dk

it-undervisning Se mere på hjemmesiden www.it-formidler.dk Vejledning i planlægning af it-undervisning Se mere på hjemmesiden www.it-formidler.dk Om vejledningen Vejledningen beskriver kort, hvordan man som underviser, trin for trin, kan planlægge it-kurser efter

Læs mere

Automatisk Vandingssystem

Automatisk Vandingssystem Automatisk Vandingssystem Projektdokumentation Aarhus Universitet Gruppe 6-3. Semester - F15 vejleder: Michael Alrøe dato: 28-05-2015 Lærke Isabella Nørregård Hansen - 201205713 - IKT Kasper Sejer Kristensen

Læs mere

Iterativ og Agil udvikling

Iterativ og Agil udvikling Iterativ og Agil udvikling 1 2 Udfordringer i hverdagen En liste over de udfordringer man står overfor ved implementering af iterativ og agil udvikling. 3 Udfordringer med Iterationer 4 Iterationer, I

Læs mere

Obligatorisk opgave i objektorienteret analyse og design

Obligatorisk opgave i objektorienteret analyse og design Obligatorisk SD-opgave s. Obligatorisk opgave i objektorienteret analyse og design Løs følgende, som en indviduel opgave. I må gerne samarbejde i grupper, men alle har ansvar for at udfærdige sin egen

Læs mere

Øvelse 6. Modeller 81 6.1 Oprettelse af og arbejde med modeller 82 6.2 Videre øvelser 87 6.3 Øvelser i eget projekt 87

Øvelse 6. Modeller 81 6.1 Oprettelse af og arbejde med modeller 82 6.2 Videre øvelser 87 6.3 Øvelser i eget projekt 87 Indhold Indledning 7 Øvelse 1. Introduktion til NVivo 11 1.1 NVivos skærmbillede og funktioner 12 1.2 Sources 13 1.3 Nodes 15 1.4 Classifications 17 1.5 Queries 18 1.6 Models 19 1.7 Videre øvelser 19 Øvelse

Læs mere

Mandag: HVAD ER ET PROJEKT?

Mandag: HVAD ER ET PROJEKT? Mandag: HVAD ER ET PROJEKT? Hvorforhar vi projekter? Resultater! Fokus på en opgave der ikke er mulig i linjeorganisationen Arbejde på tværs af en organisation Afgrænsning af styringsområde Bedre styring

Læs mere

2 Abstrakte datatyper.

2 Abstrakte datatyper. 2 Abstrakte datatyper. Motivere eksempel: top-down udvikling af program 'mini-bank' Strukturering af et program: efter data eller funktion? Definition af en abstrakt datatype og tilknyttede begreber. Fænomener,

Læs mere

Jacob Nordfalk. Ingeniørhøjskolen i København. Nykøbing F itvisioncenter 24. februar 2004

Jacob Nordfalk. Ingeniørhøjskolen i København. Nykøbing F itvisioncenter 24. februar 2004 Genbrugelige komponenter og designmønstre i Java Jacob Nordfalk Ingeniørhøjskolen i København Nykøbing F itvisioncenter 24. februar 2004 Program Om Jacob Nordfalk introduktion (ikke-teknisk del) Komponentbaseret

Læs mere

Synkron Via CMS er en ny generation Content Management System

Synkron Via CMS er en ny generation Content Management System Synkron Via CMS er en ny generation Content Management System De sidste par år er internettet gået fra at være endnu en marketingaktivitet for de fleste organisationer til at blive et strategisk og forretningskritisk

Læs mere

Dynamisk Webdesign F2010

Dynamisk Webdesign F2010 Dynamisk Webdesign F2010 Præsentationer Læringsmål Emnet: teknologi, koncept, design og process Projekt Semesterplan Jeres underviser: Tess Gaston Cand.it, software udvikling (ITU) og ba. pædagogik (KU)

Læs mere

PRojects IN Controlled Environments En introduktion

PRojects IN Controlled Environments En introduktion PRojects IN Controlled Environments En introduktion Indhold Indledning... 2 Principper... 3 Fortsat forretningsbegrundelse... 3 Tag ved lære af erfaringer... 3 Fastlagte roller og ansvar... 4 Faseopdeling...

Læs mere

REEFTlink Et banebrydende produkt til on-line overvågning af jeres produktionsapparat

REEFTlink Et banebrydende produkt til on-line overvågning af jeres produktionsapparat Rikard Karlsson, produktionschef hos Elektrolux, Ljungby, Sverige: REEFTlink er en komplet, dynamisk og fremtidssikret løsning, der dækker hele vores behov for Lean og Takt-baseret produktionsstyring.

Læs mere

Udviklingsprojekter i Hjertecentret

Udviklingsprojekter i Hjertecentret Udviklingsprojekter i Hjertecentret En fremgangsmåde og skabelon til projektbeskrivelse og gennemførelse og implementering af kliniske udviklingsprojekter i sygeplejen Projektmetoden er en velbeskrevet

Læs mere