Slutrapport Get it going contracts

Relevanta dokument
Slutrapport för SquareShooter

SLUTRAPPORT RUNE TENNESMED WEBBSHOP

Tepz klon. - Projektrapport. Linnéuniversitetet, Individuellt mjukvaruutvecklingsprojekt Janina Bergström, WP12 Distans

SLUTRAPPORT: TEXAS HOLDEM 4 FRIENDS

Projekt Rapport. RaidPlanner. Jeanette Karlsson UD10

TUTORIAL: SAMLING & KONSOLL

[SLUTRAPPORT: DRAWPIXLZ (ANDROID-APP)] Slutrapport. Författare: Zlatko Ladan. Program: Utvecklare av Digitala Tjänster 180P

Mina listor. En Android-applikation. Rickard Karlsson Rickard Karlsson - rk222cu Linnéuniversitet rk222cu@student.lnu.

Individuellt Mjukvaruutvecklingsprojekt

Joakim Jonsson jj222kc. Minesweeper. Individuellt Mjukvaruprojekt Joakim Jonsson

VIDEODAGBOKEN. Individuellt Mjukvaruutvecklingsprojekt. En dagbok i videoform online. Robert Forsgren (rf222ce) UD

Slutrapport Thunderbug

Rune Tennesmed. Oskar Norling 1DV430. Individuellt Mjukvaruutvecklingsprojekt 1DV430 Webbprogrammerare H12 Oskar Norling

SLUTRAPPORT. Sebastianlund.com. Individuellt mjukvaruutveckingsprojekt, 1DV430. Författare: Sebastian Lund WP11 Datum:

Slutrapport. Super Mario klon. Tomas Wallin tw222bv WP

Mjukvaruprojekt Onlinebooks

Slutrapport YUNSIT.se Portfolio/blogg

Projektarbete myshop. Sandra Öigaard so222es WP12 Individuellt mjukvaruutvecklingsprojekt

Priskamp. En prisjämförelsesite Björn Larsson

Ett spel skapat av Albin Wahlstrand

Haris Kljajic Individuellt mjukvaruprojekt. Projekt Rapport. Insatsplutonen. Haris Kljajic UD11

Modul 8 Hantering av indata

Erik Lundgren GarageLoppisen.se. Projekt i kursen Individuellt Mjukvaruutvecklingsprojekt, 1dv430

Labrapport över Rumbokningssytemet Grupp:1

KAi SENSEMAKING SYSTEM

Slutrapport för JMDB.COM. Johan Wibjer

ToDo ios-applikation. Mikael Östman. Mikael Östman - mo22ez Linnéuniversitetet

Gissa det hemliga talet

Övningsuppgift. Repeterbara citat. Steg 2. Författare: Mats Loock Kurs: Inledande programmering med C# Kurskod:1DV402

hannalabom.se Alexandra Jonasson Aj222im

Erik Holmström Projektrapport- KalmarKendo Erik Holmström UD12 Individuellt mjukvaruutvecklingsprojekt

ID1004 Laboration 4, November 2012

Hi-Fi Prototyping + laborationsgenomgång & verktyg

1d, Individuellt Designkoncept, GPS-navigering för cykel i stadsmiljö

Universe Engine Rapport

Programmera Lego Mindstormsrobotar

LNU INDIVIDUELLT MJUKVARUUTVECKLINGSPROJEKT. Honey Hunter. Androidspel. Martin Karlsson 1/17/2014

Rapport Digitala Projekt EITF11 Grupp 4 Axel Sundberg, Jakob Wennerström Gille Handledare: Bertil Lindvall

Översikt. Installation av EasyPHP 1. Ladda ner från Jag använder Release Installera EasyPHP.

Statistik över heltal

Filhanterare med AngularJS

SEGLAISOLEN.SE En Wordpres Webbsajt

L04.1 Marodören. Inledning. Mål. Genomförande. Uppgift 1 Hello World. Moment I

Skissa och gissa. Individuellt Mjukvaruutvecklingsprojekt, 1DV430. Christian Nilsson, cn222gc, WP

Övningsuppgift. Bankkonton. Steg 2. Författare: Mats Loock Kurs: Inledande programmering med C# Kurskod:1DV402

Individuellt Mjukvaruutvecklingsprojekt. Slutrapport. Projekt: ASP.NET Applikation: Clustery Gaming Datum: Författare: Adam Gustafsson UD11

GYMKEEPER ANDREAS SÖDERSTRÖM

Agila Metoder. Nils Ehrenberg

Classes och Interfaces, Objects och References Objekt-orienterad programmering och design (DIT952) Niklas Broberg, 2016

Webbtjänster med API er

Slutrapport för Pacman

Dagbok Mikael Lyck

Classes och Interfaces, Objects och References, Initialization

Objekt-orienterad programmering och design. DIT953 Niklas Broberg, 2018

PlantPuppy Räddaren för den som inte kan hålla växterna vid liv

Projektuppgift - Biblioteket

F8 - Arv. ID1004 Objektorienterad programmering Fredrik Kilander

Slutrapport. APFy.me

Joppes djurfamilj v2. Planering. Genomförande. Utvärdering och dokumentation

Robotar i NXc. En laboration med Mindstormrobotar. Sammanfattning KUNGLIGA TEKNISKA HÖGSKOLAN

Objektorienterad Programkonstruktion. Föreläsning 6 23 nov 2015

The Intelligent Timer

STRÄNGAR DATATYPEN. Om du vill baka in variabler eller escape-tecken måste du använda dubbla citattecken. strängar

Tentamen ID1004 Objektorienterad programmering October 29, 2013

Projektuppgift - Gymmet

Programmering av en Lego robot

Krav: * Filen MpUpdate.exe får inte köras när du startar denna uppdatering.

PROGRAMMERING I NXC. Sammanfattning KUNGLIGA TEKNISKA HÖGSKOLAN

Alla datorprogram har en sak gemensam; alla processerar indata för att producera något slags resultat, utdata.

Programmering B PHP. Specialiseringen mot PHP medför att kursens kod i betygshanteringen heter PPHP1408.

Övningsuppgift. En array baklänges. Steg 1. Författare: Mats Loock Kurs: Inledande programmering med C# Kurskod:1DV402

Inkapsling (encapsulation)

PROJEKTRAPPORT EDA095 NÄTVERKSPROGRAMMERI

Linux som utvecklingsmiljö

11 STEGS CHECKLISTAN TILL DEN PERFEKTA LINKEDIN PROFILEN HUR DU MED 11 ENKLA STEG KAN OPTIMERA DIN LINKEDIN PROFIL

Kort om World Wide Web (webben)

Slutrapport. Interaktiv Mjukvaruutvecklingsprojekt. HIF-Spelet. Ett XNA-spel. Christian Ulf

1:5 SLUTRAPPORT - POST MORTEN LARS EHRMAN WP

Digital examination Pilotprojekt i kursen Hållbartfamiljeskosgbruk I, 1TS152, HT14, 50%

Projektanvisning. Webbsideprojekt. Författare: Johan Leitet Version: 2 Datum:

RemoteBud. Inlämnas: Patrik Johnsson, e01pjo Viktor Karlsson, e01vk

Att komma igång med FirstClass (FC)!

Objekt-orienterad Programmering och Design. TDA551 Alex Gerdes, HT-2016

Programmering B med Visual C

TUTORIAL: KLASSER & OBJEKT

Bakgrund och motivation. Definition av algoritmer Beskrivningssätt Algoritmanalys. Algoritmer. Lars Larsson VT Lars Larsson Algoritmer 1

Generell säkerhet. Loggning - Hur mycket ska man logga? Inloggningsrutinerna i Unix. Loggning fortsättning

Tentamen, EDAA10 Programmering i Java

Laboration i datateknik

Dagens program. Programmeringsteknik och Matlab. Objektorienterad programmering. Vad är vitsen med att ha både metoder och data i objekten?

Innehåll. Förändringar i v6.0

Laboration 1 Introduktion till Visual Basic 6.0

Arv. Fundamental objekt-orienterad teknik. arv i Java modifieraren protected Lägga till och modifiera metoder med hjälp av arv Klass hierarkier

Kevin Lane Kungliga Tekniska Högskolan Introduktionskurs i Datateknik (II1310) TIEDB0. [NXT Legorobot] [Programmering och felsökning]

Extramaterial till Matematik X

Objektorienterad programmering i Java I

Projektuppgift- Mashup- Applikation

Laborationsanvisning. Digital väckarklocka. Steg 2, laborationsuppgift 2. Författare: Mats Loock Kurs: Inledande programmering med C# Kurskod:1DV402

Felsökning av mjukvara

729G04 PYTHON 6 JODY FOO. Department of Computer and Information Science (IDA) Linköping University, Sweden

Transkript:

Slutrapport Get it going contracts Författare: Anthony Dry Datum: 2011-06-02 Program: Utvecklare av digitala tjänster Kurs: Individuellt mjukvaruutvecklingsprojekt 7.5p Linnéuniversitetet (Kalmar)

Abstrakt Min rapport handlar om det projekt jag har utvecklat i kursen individuellt mjukvaruutvecklingsprojekt samt de erfarenheter och motgångar jag har erhållit under projektets gång. Mitt projekt var att utveckla en lätt och användarvänlig applikation som skulle hjälpa musiker med bristande kunskaper inom kontraktutformningar när det gäller pengar, resor, mat och dylikt. För att göra detta använde jag mig av Windows Presentation Foundation eller som det också kallas WPF. Rapporten kommer innehålla de största problemen/motgångarna jag stöt på under detta projekt samt lösningar på de problemen/motgångarna. Detta involverar i stor utsträckning programmerings språket C#.

Förord Jag har under ett flertal års tid jobbat med musikfestivaler i Sverige och något som alltid förbryllat mig är varför svenska band är så otroligt dåliga på att skriva kontrakt mellan arrangör och band. Vill inte band vara säkra på att det som de har blivit lovade följs? Det var just här som idén slog mig att svenska band måste ha otroligt dålig koll på vad ett kontrakt skall innehålla och hur kontraktet skall förklaras som giltigt, så varför inte underlätta för dessa personer och göra ett kontrakt formulär som de själva kan editera utan att behöva oroa sig över att få kontraktet ogiltig.

Inledning/Bakgrund Projektet Get it going contracts Byggde på en WPF applikation vilket skulle fungera ungefär som ett formulär där användaren skriver in den information som behövs i det fältet som användaren önskar och på så sett få ut den informationen som behövs för att generera ut ett giltigt kontrakt mellan musiker och arrangör. Jag hade redan en glasklar idé över hur jag ville att applikationen skulle vara utformat så det första jag gjorde i projektet var att göra en low fidelity prototyp där jag ritade upp varje specifikt fönster och började testa indata och utdata. Jag skrev ner mina idéer för att lätt ha möjlighet att återkoppla dem när jag väl började implementera projektet VS 2010. Dock visade det sig att det jag tyckte var självklart i min prototyp inte var lika självklart när det väl gällde struktur för att skriva programmet. Detta berodde framför allt på mina bristande kunskaper i både C# och strukturen för WPF. Jag hade också större problem när det gällde hur själva kontraktet skulle presenteras för användaren, pdf var det optimala valet för just kontrakt eftersom förändrings möjligheten är begränsad och att det är ett smidigt format att skicka kontrakt vidare med. Detta visade sig vara riktigt komplicerat när det gällde WPF pågrund av att stödet för pdf inte fanns. Lösningen fick bli ett html dokument som oberoende av vad användaren hade installerat på sin dator skulle fungera. Projektet jobbade jag på i 7 interaktioner var av 5 finns dokumenterade. Positiva erfarenheter Det som har varit minst krångligt med själva projektet har varit designen både visuellt och kod mässigt, språket xaml kände jag igen från html vilket gjorde det lätt att implementera och förstå den funktionalitet som fanns tillgänglig. Jag har tidigare haft erfarenhet av vektorgrafik vilket också underlättade själva designarbetet. Jag ser framemot att breda mina kunskaper inom xaml för att uppnå en optimal och stilren design för projektet i en senare mer uppdaterad version av projektet. Validering med regex har också gått riktigt bra, det saknas fortfarande viktiga aspekter inom visa områden i projektet men jag är riktigt nöjd med de nya utryck jag lärt mig och hur mycket smidigare det blir att validera indata igenförelse med att använda en char array med där alla tänkbara tecken måste skrivas in separat vilket tar alldeles för lång tid för att vara lönsamt. Jag kommer nog med stor sannolikhet att fortsätta att implementera mer regex validering i projektet för att undvika bristande indata. Negativa erfarenheter Bristande planering har varit ett stort hinder för mig. Detta beror framför allt på att jag varit dålig på att skatta den tid som varit planerad för projektet. Allting tog längre tid än vad jag hade förväntat mig främst pågrund utav okunskap. Det jag tar med mig in i framtiden från denna erfarenhet är att verkligen reflektera över mina skattningar är de möjliga, har jag implementerat liknande kod tidigare och finns det relevant information om min task tillgänglig?

Allmän C# har också strulat till arbetet ofantligt det har varit allt från enkla loopar till att spara undan variabler en separat klass, med framför allt har det gällt att få ut rätt data från objekt i xaml. Jag hittade ett sätt att lösa detta problem men det var dock inte optimalt. Jag använde mig av ToString för att få ut indata ur objekten, vilket visade sig ge mig inte bara indata i objektet utan också själva objektets sökväg, vilket gav mig ytligare validerings jobb för få ut det jag ville. I framtiden skall jag nog läsa på lite om vad för funktioner som finns för de objekten jag använder för att slippa alla de extra raderna kod som inte bara är opraktisk utan också väldigt förvirrande. Dålig struktur på kod har också varit ett problem eftersom man lätt tapparbort sig i vad man nyss har skrivit och det blir ohyggligt mycket svårare att felsöka om ett fel inträffar. Kommer nog i fortsättningen att segregera min mycket mer istället för att trycka in all kod på samma ställe. Jag kommer också att jobba hårdare med att få en bra struktur på klasser med kod som skall återanvändas istället för att kopiera massa kod mellan de olika fönstren. Sammanfattning Projektet har varit stormigt från dag till dag men har varit mycket lärorikt på många sätt framför allt så har jag fått utökade kunskaper om hur C# är uppbyggt och hur enkelt man kan bygga en funktionell applikation på kort tid. Visserligen har det varit många problem som har uppstått dock ser jag det mer som något positivt eftersom man då blir tvingad att hitta en lösning på problemet, jag vågar till och med påstå att det är just detta som många ser som charmen med programmering att hela tiden vara tvungen att utmana sina kunskaper för att åstadkomma något unikt. Jag ser framemot att vidare utveckla mitt projekt och få tillgång till att släppa en riktig version av applikationen med ett större stöd till förändringar och fler val möjligheter. Något som skulle vara en dröm vore att få systemet att fungera online så att man kan skriva på kontraktet med en digital signatur som fortfarande är gillig. Jag ser framemot nästa års kurser då jag får möjlighet att visa mina kunskaper men också bygga på dem och förbättra det som går att förbättra.