Bachelor Prosjekt [ Elkem Research ProssessIT ]

Størrelse: px
Begynne med side:

Download "Bachelor Prosjekt [ Elkem Research ProssessIT ]"

Transkript

1 1. Forord Bachelor Prosjekt [ Elkem Research ProssessIT ] Av : Elkem Bacon Terje Hognestad, Arvid Ranestad, Nawar George Wisam, Ronny Eldor Karlsen og Maria Kuznetsova-Tønnessen. En Batchelor-Prosjekt utført på UIA, Universitetet i Agder Applikasjon : Ressurs Planlegging 8. mai 2009

2

3 Innhold: 1. Forord Sammendrag Introduksjon...2 Kontrakt...2 Ord og uttrykk...3 Elkem Prosjektvalg...6 Alternativer til prosjekt...6 Vår oppgave...7 Eksisterende system Kravspesifikasjon Planlegging...10 Metoder og metodevalg...11 Valg av metode...11 Andre metoder...12 Scrum...13 Forberedelse til Scrum...14 Prosjektstyring Opplæring i Asp.Net med C# Kvalitetssikring...21 Kvalitets-plan...23 Kvalitetsplanlegging Teknisk Plattform...27 Oppsett av utviklingsmiljø...27 Andre Verktøy...34 Kommunikasjonsmidler...35 Tekniske Utfordringer...37 Mangler Software Testing / Test-Plan Prosjektets livsløp...43 Oversikt...43 Planlegging av iterasjonene Oppsummering...60

4 Personlige refleksjoner...61 Gruppens samhold Kilder...68 Bøker...68 Linker Vedlegg...70 Gruppekontrakt:...70 Veileder Masterstudent...74 Mocups...75 Kodesnutter...77 Produkt Backlog...86 Kurs...87 Burndown charts...96 Databaserelasjoner (Forslag fra kunde)...97 ER-Diagram Versjon 1 :...98 ER-Diagram Versjon 3:...99 Agendaer for styringsmøter Møtereferat Styringsmøte Sprint Plan : Tilbakemelding fra styringsgruppemøtene Prosjektvurdering fra Veileder

5 1. Forord 1 1. Forord I S-304 er bachelorprogrammet til IT og Informasjonssystemer, hvor ferdigheter innen prosjektarbeid og kvalitetssikring av systemutvikling skal utvikles. Faget har en avsluttende bacheloroppgave, med undervisning og et praksisprosjekt for ekstern oppdragsgiver. Prosjektet vårt er utført i samarbeid med Elkem Research med Thelma og Frank M. Olsen som kontaktpersoner. Oppgaven er utført av en gruppe på 5 bachelor studenter som foregikk på vårsemesteret i Med Hallgeir Nilsen som faglærer ved Universitetet i Agder. Rapporten beskriver det meste av detaljer. Alt fra valg, planlegging og utførelse av prosjektet. Muligheter, avgjørelser, konsekvenser og relevante erfaringer trekkes inn under hele rapporten. Fire av oss har holdt på hver dag, tilsvarende fulle arbeidsdager. Hoveddelen av opplæringskurset har blitt gjennomgått stort sett på kveldstid i tillegg til dette. En stor takk til Elkem og Hallgeir som har medvirket til at dette prosjektet har blitt mulig. 2. Sammendrag Denne rapporten gjennomgår prosjektet hos Elkem til gruppen Elkem Bacon, bestående av fem personer. Fagbetegnelsen er IS-304, og er utført vårsemesteret 2009 på Universitetet i Agder, Kristiansand. Gruppen har jobbet med et webbasert verktøy for Ressurs planlegging i Asp.Net med C#. En eksisterende versjon i et noe simplere format, regnearket Excel er i bruk i dag. Prosjektet har pågått fra februar til mai, og innbefatter hovedsakelig utvikling av nytt ressurs planleggings system til Elkem. Gruppens planlegging, utførelse, erfaringer og ettertanke beskrives fra prosjekttiden. Læringsfasen, testing, praktisk bruk, metodikk og styremøter, er også tatt med.

6 2 Elkem 3. Introduksjon E lkem Bacon, består av 5 personer. Terje Hognestad, Nawar Wisam, Maria Kuznetsova, Arvid Ranestad og Ronny Karlsen. En gruppe med alderspenn fra 20 til 40, hvor to av oss omskoleres og to er fremmedspråklige. Ingen av oss har noen som helst it-bakgrunn i fra før av. Alt i fra vanlig skole til sjømannskole, og selvstendig næringsdrivende innenfor salg/butikk kan nevnes. De fleste av oss har jobbet sammen i gruppe på tidligere prosjekt. Ettersom to av oss holder til i Vågsbygd, så har fokuset på Elkem Solars utbygging av ny fabrikk blitt nevnt flere ganger i bachelor-øyemed. Samme uke som vi hadde tenkt å besøke Elkem for og høre om de var interessert i en oppg. så fikk vi faktisk mail fra Hallgeir som nettopp hadde fått en forespørsel fra Thelma hos Elkem. Utrolig - midt i blinken for oss. Vi fikk det prosjektet som vi ville ha hos Elkem og ble veldig fornøyd med valget vårt som blir bedre forklart senere i rapporten. Gruppenavn Elkem Bacon, kanskje ikke verdens mest kreative navn, men her er forklaringen på hvorfor dette ble valgt som gruppenavn: Vårt valg av metodikk for kvalitetsutførelse av prosjektet havnet på Scrum-metoden. Og med pigs-rollene kom jo derfor bacon raskt inn i bildet. Kontrakt Gruppekontrakt ble satt opp slik som vi pleier. Selv om de fleste av oss har jobbet sammen tidligere så kan uforutsette ting skje. Vi ønsker heller ingen free-riders og bør prøve å fordele arbeidet mest mulig likt og rettferdig. Kontrakten ligger under vedlegg.

7 4. Prosjektvalg 3 Ord og uttrykk Her står alle forkortelser som vi bruker i rapporten vår. Årsaken til det at ikke alle vet hva betyr en eller annet ord og/eller uttrykk. Årsaken til det at ikke alle vet hva betyr en eller annet ord og/eller uttrykk. GUI - Grafisk Brukergrensesnitt ASP.NET er arvtageren til Microsoft Active Server Pages (ASP) plattform. C# - er et programmeringsspråk for objekt-orientert programmering, utviklet av Microsoft som en del av deres satsing på.net. Microsoft valgte å basere C# på programmeringsspråkene C++ og Java. C# ble designet for å balansere styrke (C++) og rask utvikling (Java). Oracle - Oracle Database Scrum - er en prosjektmetodikk som i hovedsak benyttes innenfor programvareutvikling. Active Directory - Er Microsoft katalogtjeneste for håndtering av brukere, brukerrettigheter, og ressurskontroll. Visual Studio - Er et integrert utviklingsmiljø (IDE) for Microsoft.NET plattform. Programmet hjelper utviklere å utvikle programmer for Windows, såkalte Windows Forms, websider og mobil programvare for Microsofts mobile operativsystemer SQL - Structured Query Language er et språk som benyttes til å formulere og kjøre operasjoner mot relasjonsdatabaser. ER diagram -En Entity-Relationship Model (ERM) i software engineering er en abstrakt og konseptuelle representasjon av data. ER modellering er en relasjonsdatabase skjemanavn databasen modellering metoden, som brukes til å produsere en type konseptuelle skjema eller semantiske data modell av et system, ofte en relasjonsdatabase, og dens krav i en top-down moten. Relasjonsmodell-er en database som bygger på den såkalte relasjonsmodellen. Relasjonsdatabaser består av tabeller som er forbundet med henvisninger, eller nøkler, mellom seg, relasjoner. I moderne tid er relasjonsdatabaser den dominerende formen for databasesystemer. Excel - Microsoft Office Excel er et program produsert av Microsoft. Programmet er basert på regneark der man kan utføre beregninger, ofte i form av matematiske problemer, analysere informasjon, behandlelister og talldata i regneark eller websider. Programmet har avansert matematiske funksjoner, og har en hel del formler og funksjoner inkludert. Programmet brukes også til å produsere diagrammer og statistikk. CSS - Cascading Style Sheets er et språk som brukes til å definere utseende på filer skrevet i HTML eller XML. Prinsippet er at HTML- eller XML-dokumentet utelukkede skal beskrives struktur og semantikk, mens oppsett, farge og annen stil informasjon skal beskrives ved hjelp av CSS. SVN -subversjon er et versjonskontrollsystem som brukes til å holde rede på utviklingshistorien til en samling med filer og kataloger. Gaia - AJAX bibliotek som hjelper med å utvikle rike internettapplikasjoner.

8 4 Elkem Elkem Elkem er blant verdens ledende selskaper innenfor miljøvennlig produksjon av metaller og materialer. Hovedprodukter er aluminium, energi, silisiummetall, spesiallegeringer til støperiindustrien, samt karbon og microsilica. Elkem satser betydelig i solarindustien og innenfor forskning og utvikling av nye miljøvennlige produkter og utvikling av nye miljøvennlige produkter og energisparende prosesser. Selskaper har produksjonsanlegg i Europa, Nord-Amerika, Sør-Amerika og Asia og et omfattende nett av salgskontorer og agenter i de viktigste markedene. Omsetning i 2007 er 10,3 milliarder kroner. Elkem har 3000 ansatte. Elkem består av forretningsområder Elkem Solar, Elkem Energi, Elkem Silicon, Støperiprodukter, Elkem Aluminium, Elkem Materials, Elkem Carbon og Elkem Research. Elkem Research ProsessIT Elkem Research er Elkems sentrale forskningssenter lokalisert i Kristiansand. Forretningside er fra ide til ny industri og visjon er å være verdensledende innenfor utvikling av høytemperatur- teknologi for materialfremstilliing. Figur 1 : Elkem Research Org. kart

9 4. Prosjektvalg 5 Elkem og utvikling Elkem har egen it-avdeling, ProsessIT med ca. 20 mann. Hvor de utvikler det meste på.net plattformen til Microsoft. Det meste er ønskelig på nettapplikasjoner for størst mulig dynamikk. Og ikke minst for og styre hele applikasjonen fra kun en plass. Alt av oppdateringer, endringer kan dermed gjøres kun her på serveren. Da er det kun nettleser kompabilliteten som er viktig. Alle plattformer er tilgjengelig på denne måten.

10 6 Elkem 4. Prosjektvalg Vi fikk en liste med prosjekter der vi kunne fritt velge hva vi hadde lyst til og ta som bacheloproppgave. Alternativer til prosjekt For å finne ut hva som passet oss best tok vi en møte innad i gruppa hvor vi diskuterte de forskjellige prosjektene og hva utfordringene for hvert prosjekt ville være. Under kan en se noen av de prosjektene vi kunne velge mellom: 1. Elkem Research Ressursplanleggingsverktøy i Asp.Net(Kom senere) 2. Elkem Research SI-prosess program i Asp.Net 3. Elkem Research Oracle Database prosjekt 4. Barneverntjenesten Kristiansand. Nasjonal alarmsentral for barn og unge i Kristiansand. 5. Accenture 6. Me & Mine AS. Utvikling er tegneverktøy/modelleringsverktøy. 7. Me & Mine AS. Automatisk skalering av mediefiler til web-kjørbare filer. 8. Me & Mine AS. Utvikle et editerings- og visningsverktøy for 360 graders filmvisning basert på håndholdte digitale stillbilder. 9. Aker Solutions. Utvikling av hjemmeside. Vårt valg Når vi skulle velge hvilket prosjekt vi skulle ta var vi alle enig om at vi skulle velge av prosjektene hos Elkem. Først valgte vi database prosjektet hos Elkem, men det ble trukket tilbake siden Elkem hadde feilberegnet og mente at prosjektet ikke var egnet til et bachelor prosjekt. Eneste som gjenstod var på den tiden var SI-prosess prosjektet. Det prosjektet hørtes ikke like spennende ut, så vi vurderte andre prosjekter fra andre firmaer. Men etter noen dager fikk vi mail fra Elkem om Ressurs planleggings prosjektet i ASP.NET, og dette hørtes mye mer spennende ut. Men vi var veldig usikker siden vi skulle utvikle i ASP.NET og ingen hadde erfaring med dette. Vi tok kontakt med Elkem og spurte hvilken veiledning de slik at vi kunne bli produktive raskest mulig. Vi fikk svar at de hadde gode opplærings videoer som vi kunne låne, men det ble forventet at vi var selvgående på det programmeringstekniske. Etter en samtale med veilederen vår Hallgeir mente han det kunne bli et interessant prosjekt, men litt annerledes siden mye av prosjektet ble brukt til opplæring. Men da ble opplæringen en del av vurderingen av prosjektet og mindre på produktet. Vi tok utfordringen og valgte dette prosjektet. Det var flere grupper som ville ha denne oppgaven, men i følge Elkem valgte de oss siden vi var den mest ivrige gruppen.

11 4. Prosjektvalg 7 Vår oppgave V år oppgave er å lage løsning til ressursplan som skal gi muligheter til å planlegge hvilke prosjekt hver enkelt ressurs skal jobbe. Systemet skal også ha mange rapporterings funksjoner. Det skal være 4 forskjellige brukerroller med forskjellige rettigheter i programmet. Alt dette blir bedre forklart i kravspesifikasjonen.

12 8 Elkem Eksisterende system Som det vel faktisk er mye av fremdeles hos mange norske bedrifter, gamle, enkle og noen tungvinne løsninger. I dette tilfellet er det Microsoft Excel som brukes til Ressursplanleggings verktøy. Et bra verktøy vil vi si, men i dag har det noen begrensninger. Dette fikk vi allerede se i presentasjonen av prosjektoppgaven hvor Frank hos Elkem på forhånd hadde klargjort en tydelig foil som viste mangler. Det gamle systemet er upraktisk å bruke. Som en kan se på figuren over er det litt komplisert og uoversiktlig. Det har lav oppløsning, har begrensede muligheter for å registrere flere prosjekter/ansatte, knytte til verk og angi kompetanse, endre informasjon om ansatte/prosjekter/kompetanse, og ingen rapporterings mulighet. Mangler på dagens system. Figur 2 : Dagens Løsning På dagens system så har vi funnet noen flere mangler: Manglende dynamikk, ikke sentralt tilgjengelig, ikke web-applikasjon.

13 5. Kravspesifikasjon 9 5. Kravspesifikasjon Kundens ønsker og krav til det nye systemet : Registrering Registrere prosjekt. Knytte prosjekt til verk og angi kompetanse. NB! Det kan være flere kompetanse på et prosjekt. Registrere ansatt. Knytte ansatt til avdeling. Knytte person til prosjekt i avgrenset periode med prosentsats fra For eksempel ansatt1 jobber på PROSJEKT1 fra i 50%. Mulighet for at en person kan jobbe med flere prosjekt i parallell (på samme dag/uke). Regner med an ansatte og avdelinger finnes registrert, skal data brukes herfra, eller skal data importeres inn. Hva gjøres ved endringer, dersom det er duplikater av data (ansatte og avdelinger?) Rapportering Engasjement pr. person pr. uke i en avgrenset periode. Plan eller forbruk Engasjement pr. gruppe pr. uke i en avgrenset periode. Engasjement pr. avdeling pr. uke i en avgrenset periode. Engasjement pr. kompetanse i en avgrenset periode. Engasjement pr. divisjon i en avgrenset periode. Sikkerhet (dersom mulig) Elkem benytter Active Directory.

14 10 Elkem 6. Planlegging Planlegging er å få fram kunnskap om egen situasjon og omgivelser. Kunnskapene må bli erkjent slik at den blir lagt til grunn for handlingene. Utvikle mål om hvordan de ønsker den framtidige situasjonen. Man må planlegge hva som skal inn i hvilke versjoner av produktet, og hva produktet bli til slutt. Noe om hva hovedfunksjonene er, hvilket miljø programvare kan kjøre i, og hvilke varianter programvaren finnes i. Planlegging preges av tydelig framtids orientering og klare tidsperspektiv. Det vi vil. Det vi ikke vil. Planlegging basert på systematisk kunnskap. Relaterte kunnskapsbehovet til utfordringene. Vi hadde instrumentell planlegging i vår prosjekt, det vil si at vi har klare og entydige mål som er formulert, å finne alle alternativ som oppfyller målene og finner alle konsekvenser av alle alternativer og til slutt velger det alternativ som har konsekvenser som best oppfyller målene. Planlegging er fornuftig ut i fra flere forhold, blant annet for å: - Samordne mål og ressursinnsats for den enkelte - Forutsigbarhet for den enkelte - Få foranket ulike problemstillinger - Påvirke framtiden i ønsket retning gjennom langsiktig tenking - Styrke samarbeidet mellom ulike enkelte individer - Skape felles virkelighetsforståelse og størst mulig enighet om ulike saker - Gir muligheter til å skape debatt, engasjere og motivere

15 4. Prosjektvalg 11 Metoder og metodevalg Her vil vi vise prosessen vår til valg av metodikk, og hvordan gruppen diskuterte frem til valget vårt. Valg av metode Vårt prosjekt er tydelig definert fra Elkem sin side. De har et eksisterende system som vel tydelig kan sies som foreldet og med mange mangler. Dog enkelt og fungerende. Mange bedrifter som bruker Excel til denne type løsninger. Men vi skal lage et helt nytt system, på en helt annen plattform, og som derfor lages helt fra bunnen av. Ett helt nytt produkt. Livsløpsmetoden vi velger bør derfor egne seg akkurat til dette. På styringsmøtene med frank hos Elkem, så fikk vi raskt tilbakemeldinger på hvordan de jobbet nå, og hvilke metoder de benyttet. Det var ikke så lenge siden de hadde gått over til Scrum. Som de mente var den beste metoden til denne typen prosjekter i næringslivet. Fossefall har vi kjennskap til ifra før av. Disse to ble derfor vurdert i første omgang. Dypere refleksjoner og vurderinger kommer vi mer inn på videre. Her har vi satt opp de viktigste forskjellene på Fossefall og scrum-metodene. Fordeler Ulemper Fossefall Statisk Ikke mulig og endre underveis Raskere utvikling? Få iterasjoner En kan flytte til en fase bare når foregående fasen er 100% fullført og absolutt korrekt Høy risiko En kan finne feil på tidelig fase Det koster mindre penger og tar mindre ti Legger stor vekt på dokumentasjon Mindre testing(til slutt) Lite gode referanser Scrum Dynamisk, enklere og endre etter hvert Bra leverings beregning Høy kvalitet Fleksibelt Enkelt og lage prioritetslister Bra bruks referanser Ferdig program-løsning (Excel) Enklere og ta med forbedringer Mindre risiko Systemet kan taes i bruk tidlig (verdi) Oftere møter Oftere iterasjoner Tabell 1 Scrum vs/fossefall - Sammelingingstabell

16 12 Elkem Andre metoder Extreme Programming(XP), Crystal Clear, RAD mfl. er noen av de mulighetene som finnes der ute. Men iogmed at både Elkem, faglærer, og pragma s referanser anbefaler Scrum som metodikk vellykket, så har vi ikke sett det nødvendig og sette oss inn i andre metoder. Metodene som brukes i arbeidsmarkedet er det som vil gi oss mest nytte. Fossefall Fossefall lærte vi om første året i IS-100 og IS-104. Har fungert greit teoretisk i skolesituasjon, men ikke blitt testet i praksis. Ute hos en bedrift vil en jo praktisere det bedriften benytter. Det en kan se er at mange av de nyere metodene som Scrum bygger på deler av denne. Figur 3 - Fossefall Vurdering Etter litt vurderinger så talte mye for at Scrum skulle brukes som metodikk. Temmelig fort var alle enige i å se nærmere på denne metodikken. Planleggingsverktøyet Fossefall har vi jo praktisert tidligere og kunne raskt se at dynamikken var mye større innenfor Scrum. Vi vet også erfaringsmessig så oppdages det ofte behov for endringer etter hvert i prosjektet som det skrider fremover. Det er også mulighet for mer testing, og tidligere i fasene. Mange fordeler som vi mente var positive.

17 4. Prosjektvalg 13 Scrum Figur 4 - Scrum Iterasjon E r prosjektstyringsmetodikk, som kjører et prosjekt gjennom flere iterasjoner. Hver iterasjon er på en uke opp til en måned lengde kalt en sprint. Hver sprint skal være fra to til fire uker. Gruppen kan bestemme. Hver sprint startes med sprint planleggingsmøte. Sprint backloggen inneholder oppgavene som gruppa skal omgjøre fra krav til funksjonalitet i den aktuelle sprinten. Hver sprint avsluttes med et demonstrasjonsmøte der teamet viser hva som er ble bygd i løpet av sprinten. I hver sprint gruppa har daglige Scrum møter. Produktbacklogg-liste over produktkrav Scrum roller Produkteier er ansvarlig for å representere alle interessenter til prosjektet og det ferdige produktet. Teamet skal omgjøre kravene i produktbackloggen til funksjonalitet, i løpet

18 14 Elkem av sprintene. Teamene er selv ansvarlige for å organisere hverdag de vil nå målet. Scrum Master er ansvarlig for å sikre at Scrum prosessen går. Forberedelse til Scrum Vi startet prosjektet med et møte hos Elkem hvor vi lagde brukehistorier sammen med kunden Frank og vår lærer Hallgeir. Vi begynte med å definere brukerroller som skal være med i systemet. Vi kom frem til 4 roller som er: administrator, gruppeleder, prosjektleder og ansatte. Vi diskuterte da med Frank hva han ønsker at systemet skal ha av muligheter for de forskjellige rollene. Roller Rolle Forklaring 1. Gruppeleder Har mulighet til å endre/rapportere alle data, registrere/endre ansatte. 2. Prosjektleder Kan endre alle data, registrere/endre ansatte, liste ut prosjektplan over en periode, eksportere til Excel, rapportere engasjement pr person pr uke i en avgrenset periode 3. Administrator Kan endre/registrere prosjekter, endre en ansatt data, registrere nye ansatte, sette en ansatt/status på et prosjekt som inaktiv, liste ut prosjektplan over en periode. 4. Ansatt Har mulighet å eksportere til Excel, registrere prosjekt de jobber med, oppdatere prosjekt de har jobbet på og prosentandel, liste ut sin prosjektplan over en periode

19 4. Prosjektvalg 15 Da vi kommet fram til alle brukehistoriene som passet til systemet, begynte vi med planing poker. Planing Poker Planning Poker er basert på en liste over funksjoner skal leveres og en kortstokk. Funksjonen liste beskriver noe programvare som må utvikles. Kortstokken inneholder følgende kort: 0, ½, 1, 2, 3, 5, 8, 13, 20, 40, 100. Alle som skal estimer får en kortstokk hver. Møtet skal holdes slik: En moderator som ikke skal delta på planing poker skal lede møtet. Utvikleren som har mest kunnskaper om brukerhistorien skal gi en kort oversikt over oppgaven. Det kan da stille spørsmål og diskuter antagelser og risikoer. Hver av deltakerne på møtet legger et av kort med bilde siden ned. Størrelsen på disse kan variere fra dager til timer, men dette skal ikke nevnes under diskusjonen. For å unngå at det skal blir en forankring om tids forbruk før visning av kortene.

20 16 Elkem Alle snur kortene samtidig. De med laves og høyes estimering skal da gi en begrunne for estimeringen. Diskusjonen fortseter da med helle gruppen. Estimeringen gjentas fram til det blir en enighet. Den utvikleren som skal utføre oppgaven har en stor innflytelse på estimeringen, hele tiden kan moderator være med å forhandle om estimeringen. En timer kan brukes for å holde struktur på diskusjonen, prosjektleder kan sette på klokken på nytt. Når tiden er ute må diskusjonen stoppes og en runde med planing poker skal utføres. Vår bruk av planning poker Å estimere størrelsen på en brukerhistorie er det bra å ha et referansepunkt. Derfor valgte vi sammen en brukerhistorie som vi kunne ha referanse til med de andre brukerhistoriene. Referanse brukerhistorien som vi fant var middels stor slik at vi både kunne si om en annen brukerhistorie var større eller mindre enn referansepunktet. Gjennom estimeringen hadde vi flere ganger forskjellig estimering av størrelsen av brukerhistoriene. Da måtte de som hadde store avvik fra hverandre forklare hvorfor de hadde estimert brukerhistorien til den størrelsen. Vi kom alltid til enighet, men vi måtte noen ganger spille flere ganger før vi ble enig om størrelsen. Da vi ble ferdig med å spille planing poker gikk kunde igjennom alle historiene som han prioriterte fra 1 til 3. Som er en prosteringes metode som heter Moscow. Vi fikk da en oversikt på hva som måtte prioriteres først og de brukerhistoriene som var mindre viktig.

21 4. Prosjektvalg 17 MoSCoW Prioritetslisten (Moscow) som vist i figuren over, viser hvor viktig det er og sortere eller sette opp en prioritetsliste over funksjonene som ønskes med i applikasjonen. 60% av det totale prosjektet bør innholde ting en må ha med. 20% av hva en bør ha med, og de siste 20% på ting som ikke må være med, men som kan tas med. Dersom det er begrensninger i både tid og penger så bør could have fjernes. Det som gjenstod for oss i gruppen var å dele de forskjellige brukerhistoriene inn i sprinter. Hvilke brukerhistorier som skulle inn i hvilken sprint ble fordelt av prioritet og størrelse, men også over viktighet for utviklingen. Mange brukerhistorier er avhengig av hverandre og derfor er det viktig av rekkefølgen var korrekt.

22 18 Elkem Bruk av Scrum Vi har brukt Scrum som utviklingsmetoden gjennom hele prosjektet. Grunnen til at vi valgte å bruke Scrum metoden er at prosjektet egnet seg veldig godt som en agil metode. Den passet som en agil metode siden det var mye som var ukjent, som ASP.NET med C# og produktet som skulle utvikles er kun eksisterende fra før på et Excel ark. Valget av Scrum som den agile metode vi ville bruke er at: Elkem har brukt Scrum i et års tid og er i ferd med å gå over fra fossefall. Det var også metoden vi fikk kurs på skolen av Pragma, derfor ble dette et naturlig valg for oss. Forventninger var høyere når vi startet med Scrum. Metoden passet oss ganske bra. Vi hadde jevnlig møter med kunden, hvor vi presentert hvor langt vi var kommet og hva som hadde blitt utført. Vi fikk da tilbakemelding fra kunde på hva han mente om det vi hadde utført. Vi fikk ikke bare tilbakemeldinger på produktet, men også på møte strukturen. Dette var en god måte for oss å få en bedre innsikt i hvordan en holder et Scrum møte, side vi ikke hadde noen erfaringer med Scrum tideligere.. Tilpasninger Hver dag hadde vi gruppemøter der vi oppdaterte hverandre om hva vi holder på med, åssen det går, problemer som oppstår, hva vi planlegger vi å jobbe videre med. Hver dag jobbe minst i 6 timer.

23 4. Prosjektvalg 19 Prosjektstyring Administrering av prosjektet, eller fordeling av oppgavene har blitt foretatt etter hvor langt den enkelte har kommet i dot.net videoene mer eller mindre. Ettersom vi forsøkte å gjøre mest mulig av kurset på kveldstid, så har dette medført til at de som ikke har så mye muligheter på kveldstid ikke har fått gjort like mye her. Derfor fordelte vi oss i to grupper. Tre av oss startet med programmering og to av oss på prosjektrapporten. Iogmed at de fleste av oss sitter i samme rom hver dag så er kommunikasjonen enkel. Scrum-møtene har foregått i fellesskap. Kun en av oss som har andre fag-kombinasjoner, og som ikke kan stille hver dag. Ved spesielle oppmøter eller saker, så har sms blitt brukt. Til utfylling av rapporten så har vi alle opprettet hver vår egen arbeidslogg, hvor vi skriver ned hva som har blitt gjort og når vi har jobbet hver dag. Da blir det enklere og se på innsats, forbrukt tid og fordelinger. Ellers så brukes Google Docs til alt felles, da vi ikke har fått til office-live som har hatt begrensningen med at kun en person kan jobbe på fila enkeltvis. Kladden til prosjektrapporten har derfor blitt utført her slik at alle ser hva som er blitt gjort. Det endelige word-dokumentet har blitt utført lokalt. Dermed så har vi backup på alt som utføres også. Under kapittel for verktøy og teknologi, andre verktøy har vi samlet en oversikt over alle kommunikasjonsmidlene. Introduksjonsmøte Første møte med Elkem fikk vi en agenda, med presentasjon av Elkem, hva de drev med, hvilken rolle og avdeling de tilhørte (Prosess IT) mm. Og en presentasjon av oss, bakgrunn etc. Styringsmøter De fleste møtene har foregått hos Elkem i Vågsbygd. Disse har i hovedsak blitt uført i midten av scrum-iterasjonene som har passet best for Elkem og Faglærer. Vi har prøvd å fokusere på "hvor er vi" og "hvor skal vi". Målet med møtene har vært og presentere status-hvordan ligger vi an, verifisere arbeidet fra oppdragsgiver og diskutere videre fremgang i prosjektet. Eventuelle problemer som har dukket opp og mulige løsninger for dette. Dette er obligatorisk for alle medlemmene. Vi har vært nøye med å få tilbakemeldinger på alt vi har gjort. Kunde Frank har vært flink på dette. I slutten av styremøtene avtalte vi når neste møte skulle avholdes. Etter hver styringsmøte ble det sent ut et møtereferat med de punktene vi ble enige om på hvert styringsmøte slik at det ikke ble noen missforståelser. Statusmøter Første statusmøte ble plassert rett før eksamen og fikk nok derfor dårlig oppmøte. Men andre gangen hadde vi en presentasjon av hva de forskjellige gruppene holdt på med, hvilke utfordringer og eventuelle problemer. Hvor vi kunne få feedback fra hverandre, med spørsmål og diskusjoner. Interessant og se hva de andre holdt på med og hvordan de hadde valgt og løse noen av problemene. En del av gruppene fikk også en god del tilbakemeldinger. Iogmed at flertallet i gruppa vår ble enige om fokus på opplæring i dot.net asp.net og ikke hadde produsert noe særlig så fikk vi vel ikke like mye utbytte som en del av de andre. Noen hadde også taushetsplikt i fra oppdragsgiver som også gjorde at de ikke kunne si så mye.

24 20 Elkem 7. Opplæring i Asp.Net med C# Ettersom Elkem har klare retningslinjer for standarder og retningslinjer, kom det raskt frem hva som var deres systemkrav, operativsystem og programmer. Vi fikk vi muligheten til å låne to kurs i asp.net som de hadde hatt av Jan Blomquist (som er en MVP for Microsoft). Innlæringen under kurset gjorde det også mye enklere og velge samme plattform. Microsoft.NET KURS 2609 Dette kurset gir en innføring i hvordan man programmerer med C# i.net Rammeverket. Kurset gir grunnleggende ferdigheter i programmering med C#, og er beregnet for utviklere som ikke kjenner objektorientert programmering, eller som ikke har erfaring med visuelle utviklingsverktøy. Course 4995A: Programmering med Microsoft. NET Framework og Visual Studio Dette fem dagers instruktør-ledende kurset gir utviklere som går fra et annet utviklings språk, en tidligere versjon av Visual Basic. NET eller Visual C #, eller som har fullført oppføring nivå opplæring og erfaring med Microsoft Visual Studio Ettersom vi ikke har drevet med eller gjennomgått noe av dette på skolen fikk vi to videoer kurs i C# Programmering og ASP.NET 2.0. I tillegg fikk vi låne tre bøker, Professional ASP.NET 2.0 og kursboka til Microsoft Official Course 2609A, Introduction to C# Programming with.net. Bøkene har dessverre ikke blitt brukt så mye, da vi har hatt begrensninger tidsmessig, men vi har prøvd å bruke de når vi har hatt problemer. Til sammen var det ca. 30 timer vi skulle se på. Men det tok mye mer tid enn planlagt siden vi skulle gjøre alt som han gikk igjennom på våre egne pc-er. Hadde vi ikke praktisert det som han hadde gått igjennom videoene hadde vi lært veldig lite Noe gåes så kjapt igjennom at en må spole tilbake for og kunne få med seg noe av det som gjøres. Oppsett og muligens noen spesielle innstillinger i Visual Studio gjør også at ikke alt kommer like godt frem som kursveileder. For og si noe om kurset så må vi si at det var stort sett veldig bra. Hvis en skal peke på noe, så må det være at det går litt fort i svingene av og til. Ikke så enkelt og få med seg hva han egentlig gjør. Enda bedre hadde kanskje muligheten til og kunne ha vært med på kurset, da kunne en ha stilt spørsmål på direkten slik som kursdeltakerne kunne. Forutsetningen for kurset blir sagt i videoene er at du bør ha hatt 3mnds programmerings erfaring i fra arbeidslivet. Den største utfordringen har vært at kursene bruker Microsofts database, men Elkem bruke Oracle. Fordelene med en slik video er jo at du kan, som de sier på Elkem, spole tilbake og se på og hente det de trenger. Etter hvert som de trenger det. Men vi har hver for oss prøvd å komme igjennom alt i kursene. Hva som har blitt gjennomgått i kursene ligger som vedlegg.

25 8 Kvalitetssikring Kvalitetssikring Kvalitetssikring innen softwareutvikling er vel noe av det viktigste når en tenker på alle de storslåtte prosjektene som har gått feil. Vi har fått uttallige eksempler på dette. Hvor mye tid og penger som har blitt kastet bort til ingen nytte. Det er jo akkurat dette som er så farlig, eller så fort gjort når ikke disse tingene er planlagt på forhånd. For og si det litt enklere dårlig planlagt ville du ha sagt dersom en helt ny boligblokk ble bygget med Figur 5 - Pragma forelesning noen feil, eller mangler som medførte til at ingen ville ta den i bruk. Metodikk Først og fremst valgte vi Scrum som arbeidsmetode for og få en best mulig kvalitet, stor fleksibilitet, og muligheten til og gjøre hyppige endringer. Vi hadde også størst tilbakemeldinger på at Scrum, var en av de mest vellykkede metodene som er i bruk av erfarne brukere innen systemutvikling. En egen forelesning fra Pragma ble avholdt på Universitetet. Hvor de gikk gjennom de viktigste elementene for og få til et vellykket prosjekt. Gode referanser fra prosjekt i Norge ble også forevist (figur over). I tillegg fikk vi greie på at Elkem nettopp hadde tatt i bruk Scrum i sin praksis, og som også mente at dette var en av de beste metodene tilgjengelig. Med Scrum er det enkelt og prioritere, revurdere, og iterere. Scrum har flere iterasjoner, dette øker innflytelsen til kunde over prosjektet. Kunden blir med på jevnlige møter og kan gi tilbakemeldinger på produktet. Dette øker kvalitet, med at kunden hellet tiden kan gi informasjon til utviklerne om hva han synes om det som er utviklet og om det som utvikles. Det som også øker kvaliteten er morgenmøtene, som det står i hvordan vi har brukt Scrum får hele gruppen vite hva alle jobber med, og om noen sitter fast slik at gruppen kan hjelpe til. Sannsynligheten for at prosjektet blir ferdig innen tidsfristen er mye høyere med Scrum. Sannsynligheten for at prosjektet blir ferdig innen tidsfristen skal være høyere her. Finner vi ut at vi må ta en annen vei, bruke en annen løsning, så vil en snuoperasjon være mulig og foreta tidlig i prosjektet. For oss som er relativt ferske på dette området, så vil det nok kunne oppstå flere behov for endringer etter hvert som vi lærer, erfarer og får bedre drag på.net teknologien til Microsoft.

26 22 Elkem Styring/arbeidsfordeling Som Scrum master/prosjekt leder tok vi det litt på rundgang hvor alle fikk prøvd seg litt. For vår del så bestod det i at en av oss tok initiativ til møtet hver morgen. Hvor det meste ble diskutert og løst i fellesskap. Her gjennomgikk vi kort hva hver enkelt holdt på med, hvor langt han var kommet, hva som skal gjøres i dag, eventuelle problemer, mulige løsninger, eller tiltak som ble diskutert eller foretatt. Dersom problemer så skal scrummaster finne en løsning til problemet. Utvikling av kravspesifikasjon Kravspesifikasjonen er kanskje det viktigste dokumentet i en anskaffelsesprosess. Er kravspesifikasjonen feil, vil også leveransen feile. Med bruk av Scrum så mener vi at dette håndteres bra. Versjonskontroll Versjonskontroll er veldig viktig del av kvalitetssikringen, for hvis det kommer en feil som skaper et problem så er det bare å gå til bake til en tideligger versjon. Vi valgte tildelig i prosjektet å bruke Svn, men vi fikk en del problemer med den (kommer til det i tekniske utfordringer). Vi valgte da å bruke gmail for å sende prosjekt til hverandre da vi var ferdige med en modul. Siden dette ikke er et stort prosjekt funger dette også som en for versjon. Vi valget også å bruke Google.docs og Windows Office Live til dokumentene, disse har også versjons kontroll. Tilgjengelighet Som sagt brukte vi Google.docs og Windows Office Live, dette gjør at gruppen hele tiden har tilgang til dokumentene. Standarder Elkem hadde sin egen standard som vi fikk tilsendt, dette valgte vi følge siden det var et sterkt ønske fra kunde. Dette var en tre lags struktur som i seg selv skaper bedre kvalitet, det blir letter å endre på koden etter tid. Dette blir også mye letter for Elkem å sette programmet opp og tilpasse programmet f. eks når de skal bruke active directory. Inspeksjon: En av de viktigste kvalitetssikringen vi gjort igjennom prosjektet er å se på hverandres arbeid både når det gjelder dokumenter eller koder.

27 4. Prosjektvalg 23 Kvalitets-plan Kvalitetsplanlegging betyr kort fortalt å ha kvalitet som mål og planlegge veien slik at vi når målet. Resultatet av planleggingsprosessen beskriver vi i en kvalitetsplan.en kvalitetsplan er et dokument som viser hvordan kvalitetsstyringen skal foregå for en bestemt ordre eller for et bestemt prosjekt. Kvalitetsplanen beskriver hvordan vi tilpasser bedriftens kvalitetssystem til det konkrete prosjektet og den konkrete ordren. (Hansen & Hjertø, 2003). En plan for aktiviteter som forebygger risiko. Det er oftest periodiske aktiviteter som f.eks. bruk av sjekklister, vernerunder, brannøvelser, backup, medarbeidersamtaler osv. Planen dokumenterer nøye spesifikke fremgangsmåter, ressurser og rekkefølge av aktiviteter. Kvalitetsplan er et styringsdokument for leveransen som basert på kundens spesifikasjoner. Hvorfor er det viktig med en kvalitetsplan. Hvordan definerer vi kvalitet i softwareprosjekter? Hva er kvalitet? Hvilke krav bør taes med? Er kravene målbare? Noen av de viktigste elementene som bør taes med er : Kundens kravspec møtes Kundens tilfredsstillelse Har vi lagd det kunden ønsker Vet han hva han vil ha? Riktig Pris? Innenfor avtalt leveringstid? Brukerens tilfredsstillelse Lagd til riktig bruker? Planen dokumenterer nøye spesifikke fremgangsmåter, ressurser og rekkefølge av aktiviteter. Kvalitetsplan er et styringsdokument for leveransen som basert på kundens spesifikasjoner. Viktige prinsipper i kvalitetsplanen Time-Cost-Quality - god kvalitet er en mulighet for et produkt ivaretar brukerens behov, ofte sett på som samsvar med kravene. Kvaliteten er subjektivt og avhengig av tid. Forskjellige brukere har forskjellige behov og vil oppleve forskjellige kvalitet. Planning er viktig, hvis det ikke ble planlagt noe særlig da kvaliteten på produktet blir dårlig og alt må gjøres på nytt, det vil ta mer tid og penger. Hvis en har kompetranse som trengs og vet hva han skal gjøre vil det ta mye mindre tid, blir bedre kvalitet og derfor vil koste mindre. Total Cost Ownership- er et økonomisk overslag er utviklet for å hjelpe forbrukere og bedrifter og ledere vurdere direkte og indirekte kostnader, den brukes i mange bransjer. TCO er noen ganger referert til som "totale drift". Når innlemmet i noen økonomisk fordel analyse TCO gir en pris grunnlag for å bestemme den økonomiske verdien av investeringen.

28 24 Elkem Fast eller variabel pris Fixed Cost er som regel mest lønnsomt, da det som oftest kommer noe ekstra eller uforutsett i løpet av prosjektet. Kommunikasjon med kunde Noe av det viktigste er kommunikasjonen med klienten! Veldig viktig og involvere kunden tidlig. Skal en greie og lage det kunden ønsker, og vet han hva han egentlig trenger, hva som vil kunne fungere best for han. Leveringstid Hvordan beregne riktigst mulig total leveringstid. Her mener vi scrum-metodikken gjør dette enklere og beregne. Er veldig viktig i de fleste sammenhenger. Rigtig produkt til rett tid. ETC - Estimate to complete. Den forventede prisen som er nødvendig for å fullføre alle gjenstående arbeidet for en tidsplan aktivitet, arbeid sammenbrudd struktur komponent eller prosjektet. ETC for plan ledere til å planlegge, spore, analysere og forutsi det totale prosjektet når som helst før prosjektet er fullført. Dette bidrar til å holde på tid og innenfor budsjett. QA- Kvalitets-sikring Forhindre at feil skjer, aktiviteter som sikrer kvalitet. QA kan ikke absolutt garanti for produksjon av kvalitetsprodukter, dessverre, men gjør dette mer sannsynlig. To sentrale prinsipper preger QA: "passer til formålet" (det skal være egnet for formålet) og "riktig første gang" (feil bør fjernes). QA omfatter regulering av kvaliteten av råvarer, råd, produkter og komponenter, tjenester knyttet til produksjon og administrasjon, produksjon og inspeksjon prosesser.

29 4. Prosjektvalg 25 Kvalitetsplanlegging Kort fortalt å ha kvaliteten som mål og planlegge veien slik at vi når målet. 1. Produktbeskrivelse: Oppgave er å lage løsning til ressurs planleggings system som lages i Asp.Net med C#. Systemet gir muligheter til å planlegge hvilke prosjekt hver enkelt ressurs skal jobbe. Slik at Elkems it-avdeling kan styre hele applikasjonen fra kun en plass. Systemet skal liste ut ansatte, kompetanse, prosjekt de jobber med, andel med prosentsats, flere prosjekter i parallell på samme dag og uke de jobber med. Systemet vil bli brukt av Elkems ansatte/gruppeledere/prosjektledere og administrator. 2. Overordnet prosjektplan: Vi brukte Scrum utviklingsmetode ved hjelp av den vi har fått oversikt over høyere produktivitet og tilpasningsevne. Vi delte oppgaven i små deler som vi prioriterte. Gruppe ble enig om at alle jobber hvert med sin del av oppgave, noen jobber med programmering og andre skrev prosjektrapporten. Til slutt ble det at alle fikk jobbe med både programmering og skriving av rapport. 3. Beskrivelse av livsløpsprosessen og støtteprosessen som prosjektet skal følge: Under hele prosjektet hadde gruppen Scrum morgenmøter hvor vi oppdaterte hverandre om livsløpsprosessen. Vi bruker V-modellen til systemtesting og pleier å teste hver funksjon selv mens vi koder, men vi mener at noen som kan ikke så mye om koding skal teste systemet da får vi se alle feil som vi får. Vi lagde en backlog burndown produkt backlogg der delte alle oppgaver i seks sprinter som vi prioritert. Vi følget vårt backloggen under hele prosjektet. 4. Kvalitetsmål: Mål med prosjektet at ansatt/prosjektleder/gruppeleder/admin skal kunne liste ut prosjektplan over periode for å vise oversikt over arbeidsplan, at det kunne vært mulig å rapportere og registrere prosjektet/ansatt. Målet er å få alt til å virke som det skal og uten noen feil.

30 26 Elkem 5. Resultat av risikoanalyse: Rissikoanalysen har som mål å avdekke om det finnes noen trusler mot prosjektgjennomføringen, og hva vi kan gjøre for å beskytte oss mot disse. På nedenstående tabell har vi samlet en del rissikofaktorer som vi mener er aktuelle i prosjektet. Noen av disse er generelle, basert på ti på topp listen fra Boehm (1991). De mest aktuelle til vårt prosjekt har blitt vurdert og noen flere i tillegg. Risiko Konsekvens Risiko Sannsynlighet Tiltak Mangel på kvalifikasjoner Urealistiske tidsplaner Utvikling av feil system Mer avansert enn nødvendig Hyppige endringer av krav underveis Dårlig dokument kontroll Høy Høy Kompetanseheving (kurs/opplæring) Høy Middels Tidsboksing, Iterativ utvikling Middels Lav Analyse, kommunikasjon med kunden Middels Lav Prioritering av brukerkrav i bruker historie. Middels Middels Iterativ utvikling, god kommunikasjon, tidlig Høy Lav Svn, backup rutiner, ansvarsdeling Konflikter i gruppa Middels Lav God kommunikasjon, gruppekontrakt Feil i kode Høy Høy Lag testplan allerede før koden skrives, gjennomgåelse av kode Dårlig kontroll med oppbevaring og versjonskontroll av kode, dokumenter el. Problemer i kommunikasjon med oppdragsgiver Høy Høy SVN, backup, ansvardeling Høy Middels Valg av metode

31 9. Teknisk Plattform Teknisk Plattform E ttersom dette skal lages til Elkem så har det vært ønskelig og bruke samme standard og miljø som det de bruker i dag. I hovedsak bruker de Microsoft plattformen med Windows Server 2003 (Active Directory), Windows xp og Oracle Database. Egen kode-standard har vi mottatt. Visual Studio 2005 versjonen er det de bruker. I kurset brukes Windows Vista og XP som operativsystem. En av oss kjører Windows xp i bunn uten problemer. Og en, den tilkommende Windows 7 plattformen som ser ut til og fungere tilfredsstillende. Vi har tilgang til lisens på både 2005, og 2008 versjonen av Visual Studio gjennom MSDN for studentene på UiA, men valgte 2005 for å være nærmest opplæringsvideoen og det Elkem bruker. Slik at vi ikke trenger og kaste bort dyrebar tid på eventuelle kompabilitetsproblemer. Oppsett av utviklingsmiljø Microsoft.Net Framework 2.0 er det de bruker i dag, og ble også valgt for enklest mulig integrering med det eksisterende. Plattform Forklaring Microsoft Windows XP SP3 Microsoft Windows Vista Home/Pro Microsoft Windows 7 beta ( testet så vidt) Siste versjon av xp, som fremdeles er godt utbredt Arvtakeren til XP, som ikke slo så bra an. Men som har mye nytt og mange forbedringer. Kommende Windows plattform, fullstendig rekompilert kode, får nå også 100% xp kompabilitet Tabell 2 - Plattform

32 28 Elkem I tabellen under kan en se hvilke programmer vi har brukt: Software / Løsning Microsoft Visual Studio 2005 Visual Studio Plugins: Resharper Visual Svn Reflector Visual Studio Rammeverk/Tillegg Gaia - Ajax Microsoft.Net framework 2.0 Oracle Developer Tools Database : Oracle database 11g. (skoleserveren) Oracle Express 10g klient Sql Developer Repository Versjonskontroll: Svn Beskrivelse.Net og C# verktøy Ferdig rammeverk for impl. av kode Svn plugin til Visual Studio Kan vise og dekompilere internals av. NET assemblies Ferdig Ajax bibliotek til vs..net rammeverket, Elkems versjon Verktøy for database utvikling Alt av spørringer, prosedyrer etc. Versjonskontroll program. Tabell 3 Software Bruk og refleksjon av disse kommer vi nærmere inn på i de neste underpunktene.

33 4. Prosjektvalg 29 Svn Repository Subversjon er et versjonskontrollsystem som brukes til å holde rede på utviklingshistorien til en samling med filer og kataloger. Det distribueres under CollabNet/Tigris.org Apache-style license og er derfor fri programvare/åpen kildekode. Funksjonalitet Versjonskontroll av katalogstruktur i tillegg til enkle filer, flytting av filer og kataloger kan gjøres uten å ødelegge historikk. Atomisk innlegging- enten går hele innleggingen inn i depotet eller ingenting. Globale revisjonsnumre relaterte forandringer kan legges inn i en og samme revisjon. Lagring av metadata, informasjon som kan lagres i tillegg til innholdet i filen. Versjonskontroll av symbolske lenker. Oracle Database 10g Express Edition Oracle Database 10g Express Edition (Oracle Database XE) er en post-nivå, small-footprint database basert på Oracle Database 10g Release 2 kode base som er gratis å utvikle, bruke og distribuere; rask å laste ned, og enkel å administrere. Oracle Database XE er en stor database for: - Utviklere som arbeider på PHP, Java, NET, XML og Open Source-programmer. - DBAs som trenger en gratis startpakke database for trening og distribusjon - Uavhengige programvareleverandører (Kundestøtte) og hardware leverandører som ønsker et startbilde database å distribuere gratis. - Utdanningsinstitusjoner og elever som trenger en gratis database for undervisningen. Med Oracle Database XE, kan du nå utvikle og implementere programmer med en kraftig, påviste, bransjeledende infrastruktur, og deretter oppgradere når det er nødvendig, uten kostbare og kompliserte migreringer. Oracle Database XE kan installeres på alle størrelser vert maskinen med et ubegrenset antall CPUer (en database per maskin), men XE vil lagre opptil 4 GB brukerdata, bruke opptil 1 GB minne, og bruke en CPU på verts maskinen.

34 30 Elkem Microsoft Visual Studio 2005 Microsoft Visual Studio er et integrert utviklingsmiljø fra Microsoft. Det kan brukes til å utvikle konsoll og grafisk brukergrensesnitt-programmer sammen med Windows Formsprogrammer, nettsider, web-applikasjoner og web-tjenester. Både med egen kode og forvaltet kode, for alle plattformer som støttes av: Microsoft Windows Windows Mobile Windows CE. NET Framework. NET Compact Framework Microsoft Silverlight Visual Studio inneholder en kode-redaktør som støtter IntelliSense, samt koderefaktorering. Den integrerte feilsøkingsfunksjonen fungerer både som en kilde nivå feilsøkingsprogram og et maskin-nivå feilsøkingsprogram. Andre innebygde verktøy inkluderer et skjema designer for bygging av GUI applikasjoner, web designer, class designer og et databaseskjema designer. Den lar pluginmoduler utvide funksjonaliteten til nesten alle nivå, inkludert å legge til støtte for kilde-systemer (som Subversion og Visual SourceSafe) for å legge til nye toolsets som redaktører og visuell designere for domene-spesifikke språk, eller toolsets for andre aspekter av programvareutvikling livstidsservice (som Team Foundation Server klient: Team Explorer)

35 4. Prosjektvalg 31 Visual Studio støtter språk ved hjelp av språktjenester, som tillater at noen programmeringsspråk skal støttes (i varierende grad) av kode editor og feilsøkingsprogram, forutsatt et språk-spesifikke tjeneste er forfattet.

36 32 Elkem Innebygd språk inkluderer: C / C + + (via Visual C + +) VB.NET (via Visual Basic. NET) C # (via Visual C #) Støtte for andre språk som installeres separat: Chrome F # Python Ruby Den støtter også format som: XML / XSLT HTML / XHTML JavaScript CSS Versjoner: Figur 6 - Visual Studio Versjoner Foreløpig Visual Studio 2008 og 2005 Professional Edition, sammen med språk-versjoner (Visual Basic, C + +, C #, J #) for Visual Studio 2005 er gratis tilgjengelig for studenter som nedlasting via Microsofts DreamSpark-program. Visual Studio 2010 er for tiden i utvikling.

37 4. Prosjektvalg 33 Gaia Ajax Gaia Ajax Widgets er et produkt fra porsgrunns-bedriften Frost Innovation og er et AJAX bibliotek for programvarehus som hjelper med å utvikle rike internettapplikasjoner. Det er et høy nivå biblioteket, betyr det abstraherer bort JavaScript 100%, og utvikleren trenger ikke å skrive noe annet enn sitt favoritt Net språk som C #, VB.NET, IronPython eller Boo (mono). Det finnes utallige Ajax Rammeverk i dag som krever at du må skrive en hel drøss med JavaScript selv. Gaia er annerledes da det bruker et klientside API som er ferdig skrevet som du kan kommunisere mot ved hjelp av C#, VB.NET, IronPython, Boo osv. Men Gaia er det faktisk mulig å skrive en komplett Ajaxifisert applikasjon uten å måtte skrive en linje med custom JavaScript. En kan her enkelt lage en minimalistisk RIA applikasjon ved å bruke Mono, TextEditor og Gaia Ajax Widgets. En lisens fikk vi ordnet igjennom Frank hos Elkem hvor vi ringte direkte til Gaiaware. Siden vi var studenter så slapp vi og betale for denne. JQuery JQuery er et lett JavaScript biblioteket som vektlegger samspillet mellom JavaScript og HTML. Den ble lansert januar 2006 at BarCamp NYC av John Resig. Dobbel lisensiert under MIT-lisensen og GNU General Public License, JQuery er gratis, åpen kilde-programvare. Både Microsoft og Nokia har annonsert planer om å bundle JQuery på sine plattformer Microsoft vedtok det først på Visual Studio og brukt innen Microsofts ASP.NET AJAX rammeverk og ASP.NET MVC Framework mens Nokia vil integrere den i sine Web Run-Time-plattformer. Som CSS skiller "vise" egenskaper fra HTML-strukturen, JQuery skiller "atferd" egenskaper fra HTML strukturen. For eksempel, i stedet for direkte spesifiserer på klikk hendelseshåndterer i spesifikasjonen av en knapp element, vil JQuery først identifisere knapp element, og deretter å endre på klikk hendelseshåndterer. Dette skillet mellom atferd og strukturen kalles også prinsippet om ikke-påtrengende JavaScript. Vi har ikke brukt det så mange plasser men bla på pop-up boksene i kalenderen.

38 34 Elkem Andre Verktøy Type Program Forklaring Er-diagram/User Case Visio 2007 Har vi brukt tidligere til slikt fungerer bra. Backup Office Live, G-mail, Google Docs Manuelt, ellers med synctoy til minnepenn. Synkronisering SyncToy 2.0 Meget bra, enkelt program som du sette opp faste mapper til synkronisering Bacheloroppg. Word 2007 Bra, nå enda bedre på bildebehandling. Mange nye muligheter.. Ordbok Clue 7 Oversetting Oversetter translate.google.com Oversetting av tekst og internettsider Bildebehandling Snippet tool Vista/Win7 Paint Klipping av bilder Tabell 4 - Verktøy

39 4. Prosjektvalg 35 Kommunikasjonsmidler Skype Noen av oss bruker og har brukt skype regelmessig pga. voip-kvaliteten, mulighet for og sende store kodelinjer til hverandre offline som online. Pidgin En ny mulighet for og kommunisere med andre klienter. Den første som takler både Skype og Msn Google docs Det meste av felles dokumenter håndterer vi her, da dette fungerer stort sett stabilt. Har også vært på markedet en god stund. Grensesnittet og mulighetene er bra her. I tillegg med mulighet for offline editering (Google Gears). Har en fullgod versjonskontroll. Hvor en enkelt kan gå tilbake dersom noe synkronisering slår feil. Og det gjør det, med for mange brukere inne på en gang med samtidig innliming av stoff, av og til, til og med på samme plass. Men med litt erfaring fungerer dette helt topp. Kilder, kladd, oppretting av sql-tabeller, test-data, backlog, ressurser etc. Alt som alle trengte tilgang til brukte vi her. Det som heller slår litt feil ut er formatteringskodene, når en limer inn alt i Word f.eks. Da må alle disse fjernes og legges opp på nytt, da forskjellige koder benyttes. Sprint-backlogen som vi fikk via Elkem fungerte heller ikke i docs, så her ble vi faktisk tvungen til å bruke løsningen på det nye Windows Office live.

40 36 Elkem Windows Office Live Så ut til og funke litt dårligere enn google docs, men etter litt bruk så fikk vi til løsningen på dette området også. Microsoft Office Live-lagre dokumenter på Internett gratis. Åpne og lagre filer fra kjente programmer som Word, Excel og PowerPoint. Google calendar Beste felles-kalenderen, som vi kan oppdatere hverandre på alt som skjer, og når. Fullstendig møteoversikt og forelesninger har blitt lagt inn her. Sms For de som glemmer å se på Google kalender så har vi sendt melding i tillegg. Alt av viktige møter etc. E-post Kommunikasjonen med Oppdragsgiver har stort sett foregått på den gode gamle e-post systemet, slik at vi ikke forstyrrer mer enn vi trenger. Meldinger fra Universitetet og faglærer har blitt lagt ut i Fronter og sendt på . Gmail brukes mest og spesielt greit ved reinstallering av Operativsystemet pga. virus, spyware etc. Da slipper en og ta backup, legge inn igjen. Bare å logge seg inn. Alt tilgjengelig på web.

41 4. Prosjektvalg 37 Tekniske Utfordringer skriv noe generelt om vanlige utfordringer med bruk av forskjellige verktøy brukt over Forklar hvorfor vi ikke kunne bruke dette - hvordan vi har brukt dette annen plassering Google Docs Vi fikk problemer med Google docs da vi fikk en rapport større en 512kb, dette var maks grensen for dokumentene. Kompabilitetsproblemer : Svn Vi satt opp Visual svn tidelig i prosjektet og brukte en del tid på å få det opp, slik at alle kunne sjekk in og ut koden i en felles repository. Vi fikk problemer med at det var en del filer som var spesifikke til hver vår maskin. Vi måtte bare la denne være å bruke en manuell måtte med og rare prosjektet og sende det over e-post. For og integrer koden på en maskin. Vi kikket på en del andre løsninger som passet til Visual Studio, men de kostet alltid for mye for at vi som studenter kunne vurder å ta de i bruke på prosjektet. JQuery og Gaia Vi prøvde å bruke JQuery og Gaia, men fikk ikke noen JQuery funksjonene ville ikke fungere. Vi fant da på et forum at disse bibliotekene ikke kunne brukes samtidig. Men i slutt fasen av prosjektet fant vi en mulig løsning som ikke er testet enda. Gaia og ASP.NET Ajax Gaia og ASP.NET Ajax passet ikke sammen, vi fikk problemer med opprette nye Gaia etter at ASP.NET Ajax var opprette, løsningen ble reloade gui mappen uten ASP.NET Ajaxen og kopiere filene over for så å opprette Gaia funksjonene også kopier de tilbake for da å unloade gui mappen uten ASP.NET Ajax. Dette ble litt mer tidkrevende, men nødvendig siden Gaia kalendere hadde en del mangler og prosjektet var allerede en del Gaia på andre moduler i programmet. Mangler Gaia Gaia hadde en del mangler på kalenderen sin. De manglet en del funksjoner og var mye mer låst en asp kalenderen.

42 38 Elkem 10. Software Testing / Test-Plan Hva er det som gjør testing så viktig. En trenger vel ikke vite om Murphy s lov, for og skjønne at dersom noe kan gå galt så gjør det akkurat det. Testing koster tid, penger og ressurser. Hva er vitsen eller egentlig målet med testen? Elementer som en bør ta stilling til kan oppramses slik som under. Hvorfor Hva Hvordan Når Hvem Hvor Hvorfor skal vi teste? Hva skal testes, hva bør prioriteres? Hvilken modell skal vi bruke Når er det smart og teste Hvem bør utføre testen Hvor bør det testes? Hvorfor skal vi teste? I vårt prosjekt så har vi ikke fokusert så mye på alle elementene som er listet under i tabellen, men indirekte tenkt, og vært innom disse på flere områder. Ved koding av moduler så er det smart og luke ut feil så fort som mulig. Det har vi alle hatt i bakhodet, og blitt enda mer tydeliggjort ved testing etter hvert sprint. Hvorfor Oppdage feil Forebygge Feil Tidligst Mulig Redusere risiko Sertifisering av software Spare penger Feil kan være kritiske, stabilitet etc. Allerede før kodingen, kan unødvendige feil oppdages. Rettelser foretatt tidligst mulig, forflytter seg ikke utover og blir rimeligst og rette. Info om produktkvalitet Kvalitetssikring av produsert kode, sikker, lite feil, ryddig, gjenbrukbar Ved og rette og forebygge Dersom vi hadde vært lønnet hos Elkem, så ville en reduksjon av utviklingskostnadene fort blitt tydelig her. I figuren under kan en se hvor det lønner seg og ligge med investert innsats i forhold til pris.

43 4. Prosjektvalg 39 Ellers så er det vanlig og lage en test-plan med forventede feil input-verdier. Med f. eks negative verdier, leading 0, antall osv.. Testingen bør utføres av andre, og er gjerne destruktiv for og luke bort mest mulig feil. Feil som enda ikke er oppdaget er heller ikke rettet. Tap, rykte og Trust er også fremtredende og viktige elementer for et firma. Live or let die. Det er vanlig og bruke 1/3 av tiden til testing. Men en kan ikke teste alt. En bør prioritere det som er viktigst for kunden, eller påfører kunden størst kostnad og risiko. På neste side vil vi vise prioriteringer på vår risikobaserte testing. Hva skal testes, hva bør prioriteres? I vårt prosjekt har vi prioritert flg. kritiske grenseverdier. Dato verdier sier seg nesten selv da hele applikasjonen vår baserer seg på et kalender-gui. Prioritet Hva / Input-verdier Risiko 1. Dato-håndtering, grense-verdier Ressurser kan bli plassert på feil dato. 2. Negative verdier, leading 0, antall For mange eller for få ressurser til hvert prosjekt. 3. Ressurs-typer, Prosjekt-typer Prosjektverdier, krav? 4. Kompetansetyper, verdier Feil kompetanse på prosjekt

44 40 Elkem Hvilken modell skal vi bruke? Figuren over viser den vanlige modellen for testing. Helt i fra utviklingsstart med kundens ønsker, kravspesifikasjoner, design og til modul inplementasjon. Så stegene til de forskjellige testene. - Når hver funksjon er ferdig testes den.- Funksjonene blir testet når de integreres i master-page.- Avsluttes med en aksptansetesting med kunden. (følger scrum planen) Tabellen under beskriver de forskjellige testnivåer. Figur 7 - V-Modellen Testnivåer Modultesting Forklaring Finn detaljdesign og kodefeil. Modulintegrasjon Moduler på samme plattform eller i samme prosess. Finne grensesnitt-feil Høyere nivå Test av interaksjon mellom subsystemer. Moduler på integrasjon forskjellige plattformer eller i flere prosesser. For å finne grensesnittfeil. Vanligvis på målplattformen. Systemtest Test mot kravspecs. Funksjonell test: test av hver funksjon mot dens krav. For og finne høynivå-designfeil og misforståtte krav. Iterasjonstest: Test av funksjoner med en annen. For å finne konflikter mellom funksjoner. Ikke funksjonell test: Test spesielle ting og systemegenskaper. System integrasjon Interaksjon mellom system vs. Andre eksterne systemer - grensesnittsfeil Akseptanse Oppfyller systemet kravspec og forventninger Brukbart i praksis?

45 4. Prosjektvalg 41 Når bør en teste? Scrum metodikken har en klar oppskrift på dette. I slutten av hver Itererings-utvikling av prototype, så har vi testing med brukere, analysering av testresultater, endring av prototype basert på resultatene. Deretter å gjenta testing, analysere og revidere syklusene. Skal være den beste måten å lage et vellykket nettsted eller webprogram Hvem bør utføre testen? Tabellen under beskriver de kandidatene som deltar i utføring av testing på de forskjellige nivåer. Hvor Modultesting Modulintegrasjonstest Høyere nivå integrasjons test Systemtest Akseptansetest Hvem Programmerer/kollega Programmerer/kollega Testere/testspesialister Testgruppe og supportfolk, evt. Kunde egen org. Kunden og testspesialister. Tredjepart. Hvor bør det testes? Tabellen under beskriver viktige områder der systemet bør testes mot Viktige testkandidater: Miljø Brukere/Operatører Maskinvare Annen Software Forhold, naturlige fenomen, fysiske naturlover/egenskaper, forretningsregler, og hele system operativ området Status/forhold, korrekt prosesering av alle bruker inputs. Slik at ikke systemet kommer i en farlig eller ukontrollerbar tilstand Korrekt interaksjon med hvert hw-interface, kontrollert system respons for hardware feil. Systemet må fungere korrekt med annen software, isoler feil. Standarder Elkem hadde sin egen kodestruktur som vi fikk tilsendt. (Se Kvalitetssikring)

46 42 Elkem Brukervennelighets-testing I en brukervennlighetsanalyse-test, så skal representative brukere forsøker å gjøre vanlige oppgaver med produktet, mens observatører, inkludert utviklings personale, se, høre og ta notater. Produktet kan være et webområde, web-program, eller noe annet. Det trenger ikke være et ferdig produkt. Du bør teste prototyper fra tidlig papir-baserte stadier gjennom fullstendig funksjonell senere stadiet. Kompabilitet Webbrowserene støtter forskjellige ting og bør jo da også testes. Nettleser Kompabilitet Testet Firefox Explorer Opera Ja Ja ja.net skal være kompatibelt med de fleste Tabell 5 - Kompabilitet Gui Gui-et har vi ikke prioritert da Frank mente at funksjonaliteten var viktigst, heller at brukervennligheten var stor. Derfor er det meste produsert innenfor det standard kalender rammeverket. System-test System testing forgår under utviklings fasen og når modulene har blitt fullført. Akseptansetest Akseptansetesten er en test som utføres for å finne ut om et produkt oppfyller kundens behov, og om det stemmer overens med spesifikasjonen og annen dokumentasjon. Denne testen er den siste muligheten for en kunde å avvise et utilstrekkelig produkt, før det går i drift. En vel utført akseptansetest beskytter således kunden mot tap som skyldes dårlige produkter. Akseptansetesten vil aldri kunne oppdage alle feil. Ressursbruken til en slik test vil ikke kunne forsvares. Testen er dermed alltid bare en stikkprøve, som mer eller mindre grundig måler et produkts kvalitet. NUnit Hadde vi planlagt å bruke, men dessverre ikke funnet mulighet til og ta med. Dette ble også anbefalt av Frank å droppe, pga. tidsnød. Skal dog være et av de beste programmene til testing av kode. Finnes også som add-on til Visual Studio.

47 11. Prosjektets Livsløp Prosjektets livsløp I punktene nederst skal vi beskrive hvordan arbeidet foregått i forhold til iterasjonen, hva vi planlagt, forventa og hvilket resultat har vi fått til slutten. Oversikt For vårt prosjekt ble det slik at design vær ikke den viktigste delen. Vi fokuserte mest på funksjonaliteten av resursplanen slik at brukere kunne opprette/legge/endre data uten å få feilmeldinger. Vi har ikke fått noen konkret kommentar av hvordan bruker ønsker systemet skal se ut derfor har design delen vær ikke den viktigste for oss, men vi har fått bilde av hvilke funksjoner bør være med i systemet. Vi oppbygde systemet etter Elkem sin krav. Planlegging av iterasjonene Først så tok det tid med planlegging av iterasjoner på grunn av at vi hadde ikke mye kunnskap om Scrum og måtte lette etter informasjon om hvordan det er å planlegge Scrum møter, hvordan en skal lage produkt backlog og hva alt det som børe være med betyr. Det tok litt tid til å bli kjent med Scrum. Vi har lagt et produkt backlog og produkt backlog burndown chart for og følger etter planlagte arbeidsoppgaver som ble gjort. Hver gang vi ble ferdige med iterasjon merke vi det i vår tabellen. Sprint 1: Sprint1 bygger fundamentet til prosjektet, det er en viktig del av prosjektet som avgjører vanskelighets grad på oppgavene som kommer. Mål og planlegging Figur 8 - Sprint 1

48 44 Elkem Planen til første sprint så slik ut: - Analyse, design av database - Testdata av database - Etablere utviklingsmiljø - Rammeverk for kodestruktur Første iterasjonen tok litt mer tid enn planlagt. Grunnen til det at vi kunne ikke jobbe 100 % med prosjektet, alle hadde andre fag og eksamen som vi skulle jobbe med. For å bli kjent med ASP.NET og C# fikk vi video med opplæring samme som ansatte på Elkem hadde. Begge kurset tar ei uke til sammen men siden vi visste lite om C# og.net brukte vi mer tid enn planlagt, samtidig når vi så på video gjenta vi alt vi har sett for å huske å lære mer. Første iterasjonen innebærer i seg de viktigste punktene som var vanskelig å jobbe uten videre i prosjektet. Etablering av database Første iterasjonen ble basert på samtale med Elkem representanten og vi prioriterte alle punkter som vi tenkte er bra for oss. Vårt mål vært å bli ferdig på tiden med første iterasjonen men siden vi måtte bli kjent med programmer som vi skulle bruke i vårt prosjekt tok det litt mer tid. Sette opp utviklingsmiljø For at vi skal jobbe effektivt under hele prosjektet delte vi den slik at de som er flink med koding skal jobbe med det og de som ikke så flink skal jobbe med rapport delen. Tre av oss vær godt kjent med koding enn to andre. Etter de to som jobber med skriftlig delen av prosjektet blir ferdig med rapporten skulle de hjelpe resten av gruppa med koding. Under hele programmerings del jobba vi stadig med Oracle Database og Visual Studio som Elkem representanter anbefalte å bruke. Analyse og testing Analyse og testing har vi ikke foretatt da Elkem selv har satt opp tydelige definisjoner og kravspecs til systemet. Oppretting av database Oppretting av tabellene og opprette relasjoner mellom tabellene (pk, fk) i database. Etablering av testdata Etablere test data i de tabellene som er opprettet i database for og kunne teste modulene som vi utvikler. Rammeverk for kodestruktur Vi fikk tilsendt kodestruktur av Elkem. Resultat Analyse og design av databasen: Oppretting av ER-diagram og Relasjons modell Etablering av database: Oppretting av tabeller Sql script og fikk kjørt i database. Testdata til databasen: Oppretting av testdata Sql script og fikk kjørt i database

49 4. Prosjektvalg 45 Etablerings av utviklingsmiljø: Installasjon av Visual studio 2005 o Add-on: Resharper, Oracle developer tools Installasjon av Oracle 10g Express database Installasjon av TortoiseSVN Rammeverk for Kodestruktur: Vi fikk tilsendt av elkem. Problemer Kapabilitet mellom svn og Visual studio 2005 det fungert ikke så bra, hvis en legger ut endring på Svn så kommer ekstra Vs filer med som gjør at personen som henter siste oppdatering får ikke kjørt prosjektet. Oppnådde mål: Oppretting av ER-diagram. Installasjon av Oracle 10 g Express. Oppretting av tabeller. Oppretting av testdata. Installasjon av vs2005. Installasjon av tilegg programmene til vs2005. Installasjon av TortoiseSVN. Tidsbruk: Kalendertid og forbrukstid: Vi har brukt mye tid på opplæring(c# og asp.net kursene) og i tilegg hadde vi et annet fag som krevd litt tid. Derfor tok det litt lengre tid enn antatt for å utføre de forskjellige oppgaver i denne sprint. Justering til neste sprint: Rammeverk for kodestruktur tatt i bruk i sprint2, den fikk vi tilsendt av Elkem og den var nokså klar til bruk. Urealistisk tidsestimat: Opplærings del tokk lengre tid enn beregnet og det påvirket selvfølgelig tidsestimatet på de forskjellige oppgavene i sprint 2.

50 46 Elkem Sprint 2: Sprint2 definerer vi bruker rollene, opprette brukerne i de forskjellige rollene og ansatte/prosjektledere/gruppeledere/admin skal kunne liste ut prosjekt plan over en viss periode. Mål og planlegging Figur 9 - Sprint 2 Løsning for autentisering av brukere Som ansatt/prosjektleder/grupeleder/admin skal kunne liste ut prosjektplan over en periode, for å vise oversikt over arbeidsplan. Løsning for autentisering av brukere Autentisering av brukere, kunne skille mellom de forskjellige brukerrollene. ASP.net har en ferdig brukerrolle autentiserings verktøy som vi har tatt i brukt for å autentisere de forskjellige brukerne rollene. Elkem bruker Windows AD(Active directory) for autentisering av brukerne, og vi fikk beskjed at det bruker autentisering er ikke høy prioritert i prosjektet. Liste ut prosjektplan over en periode(prosjektleder/gruppeleder/admin) Ansatte, prosjektleder, gruppeleder og admin skal kunne liste ut prosjekt plan i en periode. Det er et søk funksjon der en bruker skal kunne velge fra popup kalender eller skrive fra dato og til dato for og hente prosjektplanen i den perioden som er oppgitt. Liste ut prosjektplan over en periode(ansatte) En ansatt skal kunne liste ut sine registrerte prosjekter på kalenderen, og skal kunne bla frem og tilbake i kalenderen, skal kunne vise flere prosjekter på en dag i kalenderen og skal kunne trykke på prosjekt for og få detaljert informasjon av prosjektet.

51 4. Prosjektvalg 47 Resultat Asp.net autentisering av brukere (OracleMembershipProvider, OracleRoleProvider). Liste prosjektplan over en periode(prosjektleder/gruppeleder/admin): To gaia datetime picker, en gridview(visning av søk resultat), mulig å velge eller skrive fra dato og til dato. Liste prosjektplan over en periode(ansatte): en asp klander som viser prosjektene og klokkeslett på de dagene som er registrert i og de dagene er markert med grønt farge, dagene som har ingen registrerte prosjekter markert med rødt og helgene er markert med gult farge og som skal ikke kunne registrere prosjekter i. Problemer Bruker autentisering: Asp.net membershipprovider og roleprovider var satt til microsoft sql database som defulte og vi brukt oracle database, vi hadde problemer i begynnelsen med og få de to providere til og fungere med Oracle database men til slutt løste vi problemet ved og overstyre innstillinger i mashine.config ved og definere OracleMembershipProvider og roleprovider i web.config fila som ligger i prosjektets isteden for og bruke maschin.config sin innstillinger som var satt til sqlmembershipprovider og sqlroleprovider som default. Liste ut prosjektplan i en periode (ansatt/prosjektleder/gruppeleder/admin): Hadde problemer med binding av en arraylist med flere entitet klasser til en gridview(visning av søk resultatet), etter noen dager med mislykka forsøk for å få det til, tilslutt fikk vi et forslag fra asp forum, der vi enten gjøre om entitet klassen til en homogen klasse eller lage en super/sub klasse og vi tokk alternativ to som utgangspunktet. Liste ut prosjektplan i en periode (ansatt): Til og begynne med så hadde problemer med og putte en asp hyperlinkkontroller i kalender cellene, koden genererte hyperlinkkontrolleren kun en gang på hver celle selv om det var flere prosjekter på en dag, derfor brukte html <a> link i stringbuilder til og generere prosjektene som en link i kalender cellene.

52 48 Elkem Oppnådde mål: En logg-inn side, masterpage(hovedside), meny, tilgang til forskjellige resurser utefra bruker rolle. List prosjektplan over en periode(prosjektleder/gruppeleder/admin): søk fra dato til dato, vise resultat i en gridview. List prosjektplan over en periode(ansatt): En kalender som viser registrerte prosjekter, kunne trykke på prosjektene for og få detaljert info. Tidsbruk: Kalendertid og forbrukstid: Bruker autentisering: brukt litt lengre tid på den delen pågrunn av problemet vi har møtt med integrasjon av asp membershipprovider og roleprovider med Oracle databasen. Liste prosjektplan over en periode(prosjektleder/gruppeleder/admin): Den delen brukte vi en del tid på også pga av problemet vi har møtt med binding av arraylist med forskjellig entitet klasser til en gridview. Liste prosjektplan over en periode(ansatte): brukt litt tid og få tilpasse asp kalender etter kravspeken når det gjelder fargene, størrelsen på cellene, vise dagene, og kunne få Ajax på asp kalender og kunne vise de prosjektene som er registrert på kalenderen. Det tokk god tid og få alle elementene i boks men tilslutt klarte og få det til. Justering til neste sprint: Både på bruker autentisering og listing av prosjektplan har blitt justert til neste sprint på grunn av de problemene vi har møtt. Urealistisk tidsestimat: Problemene og opplæring har påvirket tidsestimat til oppgavene i den sprinten.

53 4. Prosjektvalg 49 Sprint 3: I sprint3 skal gruppeleder og prosjektleder rapportere engasjement pr person pr uke i en periode, en ansatt skal kunne registrere prosjektene han/hun jobber med, gruppeleder og prosjektleder skal ha mulighet til og registrere ansatte på prosjekt, gruppeleder og prosjektleder skal kunne endre ansatte på prosjekt og systemet skal kunne sende e-post til prosjektleder/gruppeleder/ansatt hvis prosjektandelen blir endret på en ansatt. Mål og planlegging Som gruppeleder/prosjektleder skal jeg kunne rapportere engasjement pr. person pr. uke i en avgrenset periode, slik at gruppeleder kan få oversikt. Som ansatt skal jeg kunne registrere hvilke prosjekt jeg skal jobbe på fremover for gi gruppeleder oversikt. Som gruppeleder/prosjektleder skal jeg kunne registrere ansatt på prosjekt, slik at vi får dataene riktig. Som gruppeleder/prosjektleder skal jeg kunne endre ansatte på prosjekt, slik at vi dataene riktig. Som system skal jeg sende e-post til prosjektleder/gruppleder/ansatt hvis en prosentandelen blir endret på en ansatt.

54 50 Elkem Gruppeleder/prosjektleder skal kunne rapportere engasjement pr person pr uke i en periode Denne brukerhistorien var veldig feilberegnet på størrelsen. Oppgaven er veldig omfattende siden det er veldig mange spørringer mot databasen som avhengig av hverandre. Her var det mange forskjellige mulige løsninger som ble laget, men hovedproblemet er sammenhengen med de forskjellige gridviewene og spørringen mot databasen. Problemet er at spørringen mot databasen ikke å returnere hvor det mangler verdi slik at utlisting av ressursbruk kommer på feil Figur 10 - Mocup av usercase medarbeider. Vi sendte til kunden om og de kanskje kunne hjelpe oss? Men forslaget de kom med var å bruke Union mellom tabellene, men dette fungerer ikke siden tabellene ikke har samme datatyper. På siste styringsmøtet ble dette problemet tatt opp. Elkem hadde ikke løsning på problemet på møtet, men de skulle se på problemet og gi oss tilbakemelding når de har en løsning. Møtet var bare noen få dager siden og vi venter fortsatt på Elkem. Hvis Elkem finner en løsning vil denne brukerhistorien bli løst før avslutning av prosjektet. Figur 11 - Påbegynt løsning i ASP.NET.

55 4. Prosjektvalg 51 En ansatt skal kunne registrere et prosjekt En ansatt skal kunne registrere et prosjekt ved hjelp kalenderen, der ansatten velger startdato/ sluttdato og hvis det er kun en dag så krysse på checkboksen også velge den dagen prosjektet skal registreres i, så velge de prosjekter som er tilgjenglig fra dropdownmeny og den lista blir oppdatert hver 50 sek, så velge klokkeslett fraklokka/tilklokka og den er satt på en default verdi fra kl 8 til 16 og en knapp på slutten av skjema som fører til en godkjennings vindu hvis ansatt trykke ja så blir prosjektet registrert og kalenderen blir oppdatert hvis ansatt trykker nei så blir registrering avlyst. Som gruppeleder/prosjektleder skal kunne registrere en ansatt på et prosjekt Den delen er under utvikling og vi forsøker å fullføre den oppgaven før eksamen. Som gruppeleder/prosjektleder skal kunne endre en ansatt på et prosjekt Den delen er under utvikling og vi forsøker å fullføre den oppgaven før eksamen. Som system skal kunne sende e-post til prosjektleder/gruppeleder/ansatt når prosentandel blir endret Den delen er under utvikling og vi forsøker å fullføre den oppgaven før eksamen. Resultat En ansatt kunne registrere et til flere prosjekter gjennom kalenderen. Problemer En ansatt som kunne registrere et til flere prosjekter, den oppgaven ble løst uten noen problemer.

56 52 Elkem Oppnådde mål: En ansatt som kunne registrere et prosjekt: En registrerings boks som kunne plukke fradato/tildato fra kalenderen, liste med prosjekter som holdes oppdatert, velge frakl/tilkl, reset knapp, en registrerings knapp og en godkjennings vindu med to knapper ja og nei. Tidsbruk: Kalendertid og forbrukstid: En ansatt skal kunne registrere prosjekt: Begynt litt seint med oppgaven pågrunn av oppgaven som gjensto fra forrige sprint. Justering til neste sprint: En ansatt skal kunne registrere prosjekt: begynt seint med oppgaven derfor ble oppgaven justert til neste sprint. Urealistisk tidsestimat: Oppgaver som gjensto fra forrige sprint og opplærings del har påvirket tidsestimatet til oppgavene i denne sprint.

57 4. Prosjektvalg 53 Sprint 4: I sprint4 skal brukeren kunne eksportere data til Excel, en gruppeleder skal kunne rapportere pr gruppe pr uke i en periode, kunne rapportere pr gruppe pr uke i en periode, kunne rapportere pr avdeling pr uke i en periode, kunne rapportere pr kompetanse i en periode, kunne rapportere pr divisjon in en periode, som gruppeleder/prosjektleder skal kunne få forslag på tilgjengelig ressurser med nødvendig kompetanse. Mål og planlegging Som bruker ønsker jeg og eksportere til Excel slik at den kan behandles i Excel. Som gruppeleder skal jeg kunne rapportere pr. gruppe pr. uke i en avgrenset periode, slik at gruppeleder kan få oversikt Som gruppeleder skal jeg kunne rapportere pr. avdeling pr. uke i en avgrenset periode, slik at gruppeleder kan få oversikt Som gruppeleder skal jeg kunne rapportere pr. kompetanse i en avgrenset periode, slik at gruppeleder kan få oversikt Som gruppeleder/prosjektleder skal jeg få forslag på tilgjengelig ressurser med nødvendig kompetanse, slik at jeg enklere kan få riktig folk på riktig prosjekt

58 54 Elkem En bruker skal kunne eksportere data til Excel for behandling. Alle brukerne skal kunne eksportere de data de henter fra databasen til Excel for behandling om de ønsker det. Som gruppeleder skal han kunne rapportere pr gruppe pr uke i en periode. Den delen er under utvikling og vi forsøker å fullføre den oppgaven før eksamen. Som gruppeleder skal han kunne rapportere pr avdeling pr uke i en periode. Den delen er under utvikling og vi forsøker å fullføre den oppgaven før eksamen. Som gruppeleder skal han kunne rapportere pr kompetanse i en periode. Den delen er under utvikling og vi forsøker å fullføre den oppgaven før eksamen. Som gruppeleder/prosjektleder skal kunne få forslag på tilgjenglig ressurser med nødvendig kompetanse. Den delen er under utvikling og vi forsøker å fullføre den oppgaven før eksamen. Resultat En bruker skal kunne eksportere data til Excel for behandling: Brukeren fikk mulighet til og eksportere data som er hentet fra databasen til Problemer Oppnådde mål: En bruker kunne eksportere data til Excel ved å klikke på en knapp der brukeren får to alternativer enten lagrer data med Excel format på harddisken eller åpne det på Excel uten lagring. Tidsbruk: Kalendertid og forbrukstid: Vi har brukt lengre tid på oppgavene som gjensto fra forrige sprint og på opplærings del, det har påvirket tidsforbruket på oppgavene i denne sprint.

59 4. Prosjektvalg 55 Justering til neste sprint: Flere oppgaver gjenstår i den sprinten så det vil bli en god del justering til neste sprint. Urealistisk tidsestimat: Oppgaver som gjensto fra forrige sprint og opplærings del har påvirket tidsestimatet til oppgavene i denne sprint.

60 56 Elkem Sprint 5: I sprint5 en ansatt skal kunne oppdatere hvilken prosjekt han jobber på. En administrator skal kunne registrere prosjekt, kunne endre status på et prosjekt, kunne endre prosjektdata og kunne registrere nye ansatte. Mål og planlegging Som ansatt skal jeg kunne oppdatere hvilket prosjekt jeg har jobbet på og prosentandel, slik at gruppeleder blir oppdatert Som administrator skal ønsker jeg å kunne registrer prosjekt, for å få en oppdatert prosjektliste Som administrator skal jeg kunne endre status på et prosjekt som inaktivt, slik at vi får en oppdatert prosjektliste og kunne ta vare på historikken Som administrator skal jeg kunne endre prosjektdata, for å få riktig prosjektdata Som administrator skal jeg kunne registrere nye ansatte, slik at ansatt listen blir riktig

61 4. Prosjektvalg 57 En ansatt skal kunne oppdatere prosjektplan. Den delen er under utvikling og vi forsøker å fullføre den oppgaven før eksamen. En administrator skal han kunne registrere prosjekt. Den delen er under utvikling og vi forsøker å fullføre den oppgaven før eksamen. En administrator skal han kunne endre status på prosjekt. Den delen er under utvikling og vi forsøker å fullføre den oppgaven før eksamen. En administrator skal han kunne endre prosjektdata. Den delen er under utvikling og vi forsøker å fullføre den oppgaven før eksamen. En administrator skal han kunne registrere nye ansatte. En administrator skal fylle de nødvendige data for og registrere en ansatt. Resultat En administrator kunne registrere nye ansatte på en enkel måte. Problemer: Oppnådde mål: En administrator skal han kunne registrere nye ansatte: En administrator skal fylle ut de nødvendige feltene også trykke på registrerings knapp, så får han opp en godkjennings vindu for og godkjenne registrering. Tidsbruk: Kalendertid og forbrukstid: Vi har brukt lengre tid på oppgavene som gjensto fra forrige sprint og på opplærings del, det har påvirket tidsforbruket på oppgavene i denne sprint. Justering til neste sprint: Flere oppgaver gjenstår i den sprinten så det vil bli en god del justering til neste sprint. Urealistisk tidsestimat: Oppgaver som gjensto fra forrige sprint og opplærings del har påvirket tidsestimatet til oppgavene i denne sprint.

62 58 Elkem Sprint 6: I sprint6 en administrator skal kunne endre status på ansatte, kunne endre ansatt data. En prosjektleder skal kunne rapportere engasjement i prosjektet mitt. Mål og planlegging Som administrator skal jeg kunne sette en ansatt inaktiv, slik at ansattlisten blir riktig. Som administrator skal jeg kunne endre en ansatt data, slik at dataene blir riktig. Som prosjektleder skal jeg kunne rapportere engasjement i prosjektet mitt, slik at for oversikt over planlagt ressursforbruk. En administrator skal kunne sette ansatt som inaktiv. Den delen er under utvikling og vi forsøker å fullføre den oppgaven før eksamen. En administrator skal kunne endre ansatt data. En administrator skal kunne endre ansatt data ved og liste ut de registrerte ansatte og kunne editere på ansatt data. En prosjektleder skal kunne rapportere engasjement i prosjektet mitt. Den delen er under utvikling og vi forsøker å fullføre den oppgaven før eksamen.

63 4. Prosjektvalg 59 Resultat En administrator skal kunne endre ansatt data. Problemer: Oppnådde mål: En administrator skal kunne endre ansatt data: Hente alle ansette eller søke på en ansatt, velg den ansatt som skal redigeres på, redigere de feltene og oppdatere. Tidsbruk: Kalendertid og forbrukstid: Mye som gjenstår fra forrige sprint og fra den sprint derfor har vi litt dårlig tid og vi forsøker og gjør ferdig flest mulig oppgaver. Justering til neste sprint: Blir ikke noe justering til neste sprint fordi den er siste sprint og siste dag på sprint6 er , vi har litt tid igjen frem til eksamen ( ) derfor prøver vi og gjør mest mulig frem til den datoen.

64 60 Elkem 12. Oppsummering Det hele begynte med at vi var heldig og fikk prosjektet hos Elkem. Et prosjekt som har vært utfordrende og lærerikt. Gjennom mye opplæring har vi fått mye ny kunnskap, som vi har brukt til utviklingen av prosjektet. Planlegging og styring har vært en stor del av prosjektet hvor vi har brukt Scrum som prosjektmetodikk. Scrum har fungert veldig godt til vår oppgave og vi mener det er den beste metodikken vi har prøvd. Vi kommet til å forsette videre utvikling frem til den og satser på at vi har løst det meste på backloggen.

65 Personlige Refleksjoner 61 Personlige refleksjoner Gruppearbeid krever samspill. Noe som ikke alltid går av seg selv. Samspillet mellom forskjellige personer med forskjellige bakgrunner, tenkemåter og kommunikasjon kan nok av og til føre til noen utfordringer. Kommunikasjon med kunde, møter, dialoger etc er også relevant for og kunne imøtekomme ønsker og behov. Under vil hver og en av oss komme med de erfaringer, refleksjoner, utfordringer og eventuelle problemer som vi har møtt i prosjekt-oppgaven. Evt. om noe kunne ha vært gjort annerledes.

66 62 Elkem Terje Hognestad Dette prosjektet har vært en stor utfordring. Aldri før har jeg vært med på et så stort og komplekst prosjekt. Det som har gjort det ekstra spennende er at vi jobber for en skikkelig kunde. Jeg er veldig fornøyd med vårt gruppearbeid. At en gruppe skal fungere bra og prestere godt sammen krever mye planlegging god administrasjon. Jeg mener vårt bra samarbeid kan skyldes mye til Scrum metodikken. Scrum er en fantastisk prosjektstyrings metode som har fungert bra på vår gruppe. Jeg har vært borti forskjellige typer prosjektstyrings metodikker tidligere, men mener at Scrum er helt klart den beste. Ingen andre metodikker har jeg følt en slik kontroll som vi har hatt på dette prosjektet. Vi har hatt god kontroll på fremgang, fordeling av arbeid, videre planlegging. Selv om vi har hatt god kontroll sier jeg ikke at alt har gått perfekt. Vi har blant annet ikke kommet så langt som vi hadde planlagt med selve utviklingen, og noen av brukerhistoriene var beregnet feil på tidsbruk. Men det mener jeg er helt naturlig siden vi bruker både Scrum og ny utviklings teknologi for første gang. Valg at bachelor oppgave er jeg veldig fornøyd med. Før vi begynte var jeg veldig skeptisk siden ingen av oss hadde noe erfaring med ASP.NET og C#. Opplæringsdelen av ASP.NET og C# tok mye lengre tid enn planlagt. Kurset er beregnet på folk som har minst 3 måneder praksis ute i arbeidslivet, og derfor var mye at opplæringen vanskelig og tidskrevende å lære. De største utfordringene med opplæringen var at veileder på videoen gikk ofte veldig raskt gjennom koden, og vi hadde ikke mulighet til å spørre om hjelp slik som de andre på kurset hadde. Men etter en hard opplærings prosess som jeg i gang med utviklingen. Starten på utviklingen var utfordrende og krevende. Det var mye som jeg hadde lært på kort tid, og nå skulle det settes i praksis. Jeg måtte ofte i begynnelsen av utviklingen slå opp opplærings videoene for veiledning, men etter de første ukene begynte utviklingen å gå mer automatisk og jeg ble mer og mer produktiv. Det mest krevende innen utviklingen har vært at vi bruker Oracle database og mister derfor mye av funksjonaliteten til ASP.NET for enkel kommunikasjon med database. Derfor måtte mye gjøres manuelt, og det var ofte frustrerende siden på opplærings videoene bruke Microsoft database. Kunden vår er jeg fornøyd med, Frank som har vært vår kontakt person i Elkem har gjort en god jobb. Vi har vært ganske så selvgående på prosjekter, men når vi har trengt hjelp eller tilbakemelding har vi alltid fått det. Frank er også lett å snakke med og mener vi som gruppe har kommet godt overens med noe som er viktig. Selve rapporten har jeg jobbet lite med siden vi fordelte oppgaver hvor vi var mest produktive, men den siste uken har jeg vært med på fullføringen av rapporten hvor vi har tatt det som måtte ta felles. Jeg syns dette prosjektet har vært en bra avslutning på bachelor graden. Det har vært veldig kjekt og utfordrende å kunne jobbe for en skikkelig kunde. og mener dette har vært en bra test før arbeidslivet. Nå som jeg har lært meg ASP.NET med C# synes jeg det er såpass spennende at det er det jeg vil prøve å jobbe med ute i arbeidslivet når jeg er ferdig med studiet.

67 4. Prosjektvalg 63 Nawar Wisam Det har vært et lærerikt prosjekt, jeg føler jeg har lært mye i den perioden. Det er mye nytt stoff som kommer på bilde bla SCRUM og Microsoft.net, det å lære seg nytt programmeringsspråk er en utfordring men det er veldig nyttig når man lærer seg det og kunne bruke det videre i fremtiden når man kommer seg ut i arbeidslivet og det er en stor fordel mener jeg. Når det gjelder prosjekt valget så var jeg litt skeptisk i begynnelsen, pågrunn av vi måtte både være produktive på den ene side og i tilegg så måtte vi sette oss inn i et nytt programmeringsspråk. Microsoft.net var nytt for oss alle, ingen hadde erfaring med Microsoft.net før, men tilslutt ble vi enig og tokk sjansen og valgte prosjektet fra Elkem, som er basert på C# og asp.net. Jeg er godt fornøyd med valget, grunnen er.net mye brukt i næringslivet og det er en fordel å sette seg inn i det før man komme seg ut i arbeidslivet. Jeg vil takke Elkem for god samarbeid. Vi fikk et detaljert prosjekt beskrivelse, det var enkelt å kommunisere med kontakt personen i Elkem og vi kunne lånt C# og asp.net kursene av Elkem. Jeg har lært mye av de kursene. SCRUM metodikk var nytt og nyttig for oss alle, SCRUM gjorde vårt arbeid med prosjektet my enklere, mer strukturert og oversiktlig. SCRUM er en utbredt prosjektmetodikk i næringslivet og det er en stor fordel å praktisere SCRUM før man komme seg ut i arbeidslivet.

68 64 Elkem Arvid Ranestad Da vi fikk oppgavene fra Elkem hadde vi tre oppgaver å velge mellom, jeg mente at database oppgaven passe oss best siden vi hatt flere fag i database. Den oppgaven ble trukket og da sto valget mellom to.net oppgaver, vi syntes det hørtes litt vanskelig å sette oss in i noe helt nytt, men etter at vi fikk høre at C# lignet en del på Java og at vi skulle bli vektlagt mer på opplæringen side dette også blir et opplarings prosjekt. Jeg stemte for at vi skulle velge resurs planleggings applikasjon, siden jeg ikke viste hva SIprosesser er ble det vanskelig å stemme for det. Jeg synes gruppen har jobbet bra sammen, vi fire gutter har jobbet som en gruppe i noen år nå og dette ble kanskje litt vanskelig for Maria som ny å komme in gruppen vår. Vi hare en streng gruppe kontrakt, men den har ikke vært brukt i praksis siden alle møter oppe og utfører det arbeidet er får tildelt. Jeg føler vi har vært flinke til og samarbeid i prosjektet og hjulpet hverandre når vi satt fast. Jeg mener at det største feilen vi gjorde var og ikke sette opplærings delen opp på Back loggen, for det ble litt feil vurdering av tids estimering av denne delen fra vår side. Når det gjelder estimeringen av de fleste andre historiene så har vi nok tatt litt for litt i der også. Både ASP.NET med C# og Scrum var ukjent for oss, jeg synes vi har fått en bra prototype selv om den ikke er helt ferdig. Når det kommer til Scrum metoden vi har brukt følte jeg at dette har vært veldig lærerikt selv om vi ikke følt den helt til punkt og prikk. Når det kommer til opplærings kursene til Elkem så synes jeg de har vært velig god. Jeg føler at jeg har lært mye av de spesielt hvordan man skal være litt mer effektiv i Visual Studio. Jeg føler at dette har vært et veldig lærerikt prosjekt både på programmering og prosjekt styring. Til slutt må jeg si at jeg er veldig fornøyd med hvordan vi ble tatt imot av Elkem og selv om vi har vært veldig selvstendige så de gangen vi har hatt problemer har vi fått gode tilbakemeldinger fra Frank. De Scrum møtene vi har hatt på Elkem har vært veldig nyttig siden og har lært den del om korrekt møte form.

69 4. Prosjektvalg 65 Ronny Karlsen Personlig så vil jeg først og fremst takke alle de andre på gruppa. Pålitelighet, oppmøte, tilbakemeldinger, humor og samhold har vært helt topp. Spesielt også denne gangen som jeg selv ikke har hatt muligheten til å jobbe noe særlig på kveldstid. Og ikke minst fordeling av arbeidsmengde, eller investert tid som jeg vil berømme Nawar, Terje og Arvid for. De har helt klart investert mer tid enn meg selv denne gangen. Bør kanskje også nevne at jeg har prøvd og være litt mer tilbakeholdende. Om jeg har greid det er en annen sak. Er den eldste på gruppa, og kanskje vært mest fremtredende både når det gjelder munn-diaré og ideer til prosjekt tidligere. Når det gjelder valg av oppgave så må jeg vel innrømme at jeg har pratet litt varmt for Elkem i Vågsbygd. Elkem Solar har fått en god del fokus med den nye fabrikken der ute. I tillegg så er jeg ikke minst opptatt av grønnere energi, spesielt i disse dager. Og større utbytte av solenergien er jeg vel ikke den eneste som har kunne tenkt meg. En jobb innenfor dette området hadde nok vært ideelt. Så jeg har nok medvirket litt denne gang også. Lykke til gutta! Av prosjektets største utfordringer, så har.net biten vært størst, hvor jeg dessverre ikke har hatt mulighet til å jobbe så mye med. Ikke minst når vi bestemte oss i fellesskap for og fordele oss, noen på koding og noen på prosj.oppg. Ettersom jeg ikke hadde så mye mulighet til og jobbe på kveldene så ble det prosjekt oppg. på meg. Rettferdig nok det. Programmering er utrolig fasinerende, har alltid vært det selv om jeg mener at et valg innen drifting kanskje er smartere for meg. En ting er iallefall sikkert innenfor dette området er det stort sett bare en ting som fungerer - jobbing, jobbing og atter jobbing. Praktisere mest mulig. Når det gjelder gruppens samspill, konflikter eller utfordringer så har vi ikke vært frie for diskusjoner. Men det meste har blitt håndtert bra vil jeg si. Folk er heldigvis forskjellige og det kommer tydelig frem i forskjellige situasjoner. Scrum metodikken har vært spennende og teste. Bra verktøy har vært brukt, og ikke minst de økte itterajsonene har forbedret arbeidet på prosjektet mener jeg. Noe som kunne ha vært annerledes. Pga. den økte bruken til data hos de fleste, så vil jeg si at tidstyvene har økt progressivt, og at det helt klart burde ha vært med i kontrakten (sjekk) og blitt opplyst allerede i starten som en meget høyt prioritert del. Ikke nødvendigvis militært strengt, men økt fokus på dette. Det eneste vi ikke har gjort med Scrum metodikken er og lage en veggtavle. Hos oss er Backlogen brukt. Synes jeg har vært bra, men hadde nok gitt enda bedre kontroll med en tavle.

70 66 Elkem Maria Kuznetsova Som en liten innledning vil jeg si at der vær veldig godt utfordring med denne oppgaven selv om jeg drev mest med rapport delen, synes jeg at det vær godt å lære C# og.net på video. Da jeg kom til gruppen de hadde allerede valgt prosjekt og hadde første møte med Elkems representanter. Først og fremst vil jeg si at gutter vært veldig flinke med å møte på tiden, jobbe veldig hard med oppgaven. Det jeg kan si om meg selv at jeg skulle ønske å jobbe mer effektivt og å komme på hvert møte som vi hadde. Men det blei ikke som jeg planlagt, jeg hadde to andre fag tillegg til IS-304 som jeg skulle jobbe med og det blei for mye føler jeg. Det ble mye gruppearbeid på en gang og alt krever tid spesielt når IS-304 er viktigste fag i dette semester og teller like mye som de to fagene til sammen. Har fått en liten konflikt med gruppa på grunn av at jeg kunne ikke jobbe fullt med oppgaven men det er slik gruppe fungerer. Alle har konflikter, alle har forskjellig synspunkt og bakgrunn, noen kan bedre programmering enn andre, og det er akseptabelt at noen ble missfornøyd med andre. Generelt så jeg er fornøyd med gruppearbeidet vårt, men tenker at det kunne vært bedre å jobbe med oppgave. Vi har fått to videoopplæringer fra Elkem om C# og ASP.NET. Begge videoer tok mer tid å se på enn det var planlagt fra starten. Disse programmene jeg hadde ikke vært så kjent med så det tok dobbelt så langt for min del. Jeg prøvde å gjøre det samme som foreleser i video gjør, men det var ikke lett. Selv føler jeg at det var bra at vi fikk en video opplæring fordi at hver gang jeg forstå ikke jeg kunne trykke på pause og spole tilbake for å se på nytt, eneste som jeg likte ikke at jeg kunne ikke spørre om noe som jeg lurer på fra video. Jeg mener at det var vanskelig for min del med C# og.net. Planlegging av iterasjonen i følge Scrum metoden foregått ganske organiser. Vi kunne stemme på hvor vanskelig synes vi en iterasjon er og etter diskuterte vi det. Noe som jeg gjort annerledes er at jeg kunne jobba 100%, at jeg kunne jobba mye bedre hvis hadde ikke to fag i tillegg. Skulle ønske å lære mer om programmering. Siden underveis hele prosjektet jeg jobba mest med rapporten føler jeg at jeg kan ikke huske helt det jeg lært under videoopplæring. Som konklusjon vil jeg si at det var interessant og nyttig å jobbe med denne oppgave. Lært masse nytt. Jeg vil takke alle gruppemedlemmer for innsats og tålmodighet. Bra jobba!

71 Etterord 67 Masterstudent Vår refleksjonen kommer i post project preview. Gruppens samhold Har vært som tidligere, stort sett upåklagelig. Vi har sittet sammen hver dag for det meste. Noen har måtte gå litt tidligere av og til, men gitt beskjed på forhånd. Ikke alle er kanskje like flinke til å holde seg til prosjektoppgaven

72 68 Elkem 13. Kilder Bøker Berg-Hansen & Hjertø(2003) : Kvalitet og programvareutvikling. Boehm, Barry W. (1991): Sotware risk managment :principles and practice. IEEE Software. Bill Evjen, Scott Hanselman, Farhan Muhammad, Srinivasa Sivakumar, Devin Rader (2006) : Professional ASP.NET 2.0 Microsoft Official Course 2609A : Introduction to C# Programming with Microsoft.NET Linker Scrum Her er mye nyttig, PDF dokumenter, video, ASP.NET Oracle ASP.NET forum ASP.NET Orcale forum: kode sjekker: TortoiseSVN versjon kontroll for VB 2005 (må ha TortoiseSVN i på maskinen)

73 4. Prosjektvalg 69 Resharper v4.1(vs2005 plugin) StyleCop for ReSharper(Vs2005 plugin) Oracle utviklings verktøy for vs2005, Build a.net Application on the Oracle Database with Visual Studio 2005 or OracleHelper spx?s=mdef%3adataset Software utvikling Brukervennlighets testing http//.

74 70 Elkem 14. Vedlegg Gruppekontrakt: Gruppekontrakt Bachelor Prosjekt : Elkem Research "Dynamisk Bacon" Tilstede: Terje Hognestad, Ronny Karlsen, Nawar Wisam, Arvid Ranestad, Maria Kuznetsova. 1.0 Gruppeformål 1.1 Gruppen i sin helhet skal jobbe godt sammen, ha en god arbeidsfordeling og kunne avdekke hverandres egenskaper og bruke disse egenskapene optimalt. 1.2 Gruppen verdsetter effektivitet som skal oppnås ved å være strukturerte. Dette vil si å ha en fast handlingsplan. Eventuelle forslag for effektivisering av gruppens arbeid vil voteres(stemmes) over og godkjennes med flertall. 1.3 Gruppen skal til enhver tid være handlingsdyktige, kunne ta avgjørelser som en enhet og sette disse til verks. 2.0 Gruppens forventninger 2.1 Gruppen har bestemt at et best mulig resultat skal oppnås. Ved best mulig menes en karakter over C. B vil være karakteren gruppen sikter seg inn på. Dette skal oppnås ved at 1.0 overholdes til enhver tid. 2.2 Gruppen vil forsøke å holde et godt miljø. Dette vil innebære at vi respekterer hverandre, kunne diskutere uten at det sklir ut, og ikke minst gjøre andre sosiale ting i lag for å skape et godt samhold. 2.3 Hver og enkelt av medlemmene på gruppen skal stille forberedt til forelesning i alle fag som gruppen har sammen. For at hvert enkelt medlem skal være forberedt foreventes det at de har sett igjennom foilen for morgendagens program. Dette er til for å få optimalt ut av fagtilbudet og for å skape gode rutiner.

75 4. Prosjektvalg Hvis et medlem ikke kan stille til forelesning skal det gis beskjed til gruppeleder så raskt som mulig. Gyldige grunner for fravær er sykdom og ferie. For ugyldig fravær, se punkt Avstemningsregler 3.1 Gruppen har valgt å ha en person som vil fungere som en slags gruppeleder og talsperson. Ved gruppeleder menes en person som vil ha dobbelt stemmegrunnlag og kan bruke dette ved behov For at gruppeleder skal kunne bruke dobbeltstemmer må gruppen ha en sak som det er blitt votert over flere ganger, uten å ha oppnådd de obligatoriske flertall. 3.2 Ved avstemning på en sak skal gruppen ha flertall. Hvert enkelt gruppemedlem har 1 stemme hver. Unntak for dette, se Hvis et gruppemedlem ikke kan stille til votering av gyldige grunner, må han/hun gi fra seg sin stemme til et gruppemedlem. Gyldig overdragning av stemme vil være en skrevet fullmakt via papir eller e-post eventuelt sms. Skulle derimot medlemmet ha en ugyldig grunn for å ikke møte, vil denne personen miste sin rett til å stemme over akkurat denne saken på gitt tidspunkt. 3.4 Hvis en sak som er avgjørende for gruppens fremgang (hvem definerer dette?) ikke faller igjennom, må de partene som sier seg enige/uenige med saken kunne lage et alternativt forslag. Dette skal da voteres over når det blir fremlagt. Blir derimot gruppen ikke enig og gruppeleder ser at 1.3 ikke overholdes, vil gruppeleder kunne bruke sin dobbeltstemme. 3.5 Gruppen ser for seg å ha et styresett som skal være tilnærmet demokratisk. Dette vil si at gruppeleder ikke kan misbruke sin rett til å stemme dobbelt i henhold til og Gruppeleder plikter til enhver tid å tenke på hva som er best for gruppen og handle deretter. I saker hvor gruppeleder får bruke sin dobbeltstemme, skal han tenke objektivt og kunne begrunne hvorfor han valgte slik han gjorde. 3.7 Hvert gruppemedlem plikter å følge 1.0 samt 2.0. Brudd eller avvik på disse vil føre til mindre eller større advarsler som kan, i verste fall, resultere i at gruppen avbryter den enkeltes medlem sin gruppekontrakt.

76 72 Elkem 4.0 Generelle regler 4.1 Hvis et medlem kommer for sent til et møte uten å ha gitt gyldig grunn, vil den enkelte måtte bøte med 1 krone i minuttet etter begynt møte. Dette vil fortsette i de første 50 minutt, det vil si opptil 50 kroner. Har et medlem gitt beskjed om hvorfor personen kommer for sent innen de første 50 minuttene og enda ikke møtt opp, vil dette medlemmet bli gitt en mindre advarsel. Har derimot medlemmet ikke gitt beskjed etter de første 50 minutt, vil det bli gitt en større advarsel. 4.2 Hvis et gruppemedlem unnlater å gjøre en oppgave som er gitt, vil dette medføre sanksjoner (straff). Sanksjonene som blir gitt vil stå i forhold til hvilken grad oppgaven hadde for gruppen. Høyeste sanksjon som kan bli gitt er en alvorlig advarsel. Gruppen vil i flertall bestemme hvilken advarsel de vil finne passende. 4.3 Målestokken på advarslene vil fungere slik: - 3 mindre advarsler blir omgjort til en mellom advarsel - 3 mellom advarsler blir omgjort til en alvorlig advarsel - 3 alvorlige advarsler medfører til at gruppekontrakten for det gitte medlem avbrytes og han/hun må forlate gruppen. 4.4 Midler som innhentes fra 4.1 skal brukes til å fremme gruppens sosiale miljø. Hva pengene skal brukes til skal voteres over. Det vil bli valgt en bankansvarlig som vil ha ansvar i å kreve inn og holde styr på pengene. 4.6 Revidering av gruppekontrakten kan skje etter gruppens ønske. For at et punkt skal kunne endres, legges til eller fjernes, må det være flertall for at dette skal kunne godkjennes. 5.0 Kommunikasjon 5.1 Gruppens medlemmer skal bruke de tilgjengelige kommunikasjonskanaler, e-post, SMS og ClassFronter med mer, for til enhver tid å kunne holde seg oppdatert på hva som skjer i gruppen når gruppen ikke er samlet. 5.2 Hvert enkelt gruppemedlem har plikt til å melde ifra om en oppgave blir for vanskelig for dem etter påbegynt arbeid. Dette er for å kunne omfordele arbeid og få en bedre flyt i arbeidet til enhver. Skulle dog et medlem ikke si ifra om dette og gi opp, vil dette sanksjoneres i henhold til 4.2, 5.3 Første møte i uken. På disse møtene vil gruppens medlemmer presentere hva som har blitt gjort forrige uke. Etter endt progresjons rapport, vil det også bli laget en handlingsplan for uken som kommer. Møtene vil også inneholde eventuelle saker som gruppens medlemmer ønsker å ta opp.

77 4. Prosjektvalg Hvis det blir utført et stykke arbeid som ikke samsvarer med gruppens mål i henhold til 2.1 vil gruppen ta dette opp med det enkelte medlem(mer). Gruppen vil da ta en avgjørelse om det fins en gyldig grunn til å sanksjonere medlemmet for dårlig innsats eller om det har vært en dårlig arbeidsfordeling i henhold til For at gruppen i høyeste grad skal kunne unngå tap av viktige filer. Skal arbeidet lastes opp til ClassFronter hver eneste uke. Utenom dette skal hvert enkelt medlem passe på å ta sikkerhetskopi filene sine. Ved å skrive under på denne kontrakten godtar jeg alle overnevnte punkter og plikter å følge disse. Navn: Sted: Dato: Arvid Ranestad Terje Hognestad Ronny Karlsen Nawar Wisam Maria Kuznetsova

78 74 Elkem Veileder Masterstudent Avtale Denne avtalen er mellom Rune Bråthen (masterstudent) og Bachelor gruppen Dynamisk Bacon i faget IS-304.Runes rolle i dette prosjektet er veileder og en ressurs. Dersom gruppen skulle ha spørsmål kan disse sendes til runebr04@student.uia.no og vil bli besvart så fort som mulig. Utover dette vil det være faste møter underveis i prosessen og Rune vil komme med tips til prosjektet. Disse tipsene kan variere avhengig av utfallet av prosjektet. Rune vil også komme med forslag som kan gjøre prosjektet lettere å gjennomføre for bachelorgruppen. Rune vil ikke hjelpe med selve rapporten til bachelor studentene ettersom dette er deres del av IS-304 studiet. Master student: Rune Bråthen runebr04@student.hia.no Bachelor studenter: Terje Hognestad Ronny Karlsen Arvid Ranestad Nawar Wisam Maria Kuznetsova hognestadterje@gmail.com Ronnyk06@student.uia.no Arvidra@gmail.com nawarw06@gmail.com alexmaria109@gmail.com

79 4. Prosjektvalg 75 Mocups Månedlig visning: Versjon 2: Endring endret etter styremøte 1, etter Frank s ønske Summering står nå i personform, ikke i prosentform.

80 76 Elkem Ukentlig Visning: Tilbakemelding fra Frankt på første styringsmøte: Ingen egen fargekode per prosjekt. Kun 3 farger som viser status: Gul = fri Rød = ingen registrerte prosjekt grønn = Registrert på prosjekt Ny versjon er ikke laget pga. det ikke var nødvendig siden et eksempel ble laget i Visual Studio..

81 4. Prosjektvalg 77 Kodesnutter Eksempel på Entitetsobjekt using System; using System.Collections.Generic; using System.Text; namespace Elkem.DbSolution.Entities { public class AnsattInfo { private int _AnsattId; private string _Fornavn; private string _Etternavn; private string _Stilling; private int _GruppeId; private string _FulltNavn; public AnsattInfo() { } public AnsattInfo(int _GruppeId, string _Stilling, string _Etternavn, string _Fornavn, int _AnsattId) { this._gruppeid = _GruppeId; this._stilling = _Stilling; this._etternavn = _Etternavn; this._fornavn = _Fornavn; this._ansattid = _AnsattId; _FulltNavn = Fornavn + " " + Etternavn; } public int AnsattId { get { return _AnsattId; } set { _AnsattId = value; } } public string Fornavn { get { return _Fornavn; } set { _Fornavn = value; _FulltNavn = Fornavn + " " + Etternavn; } } public string Etternavn { get { return _Etternavn; } set { _Etternavn = value; _FulltNavn = Fornavn + " " + Etternavn; }

82 78 Elkem } } } public string Stilling { get { return _Stilling; } set { _Stilling = value; } } public int GruppeId { get { return _GruppeId; } set { _GruppeId = value; } } public string FulltNavn { get { return _FulltNavn; } set { _FulltNavn = value; } }

83 4. Prosjektvalg 79 Eksempel på metoder i datalaget som kommuniserer med databasen

84 80 Elkem Eksempel på metoder i buisness laget som kommuniserer med datalag og entiteter //Henter ansattes prosjektplan public ArrayList HentAnsattProsjektplan() { IDataReader dr = DataProvider.instance().GetAnsattProsjektplan(); prosjektplaner = new ArrayList(); while (dr.read()) { ProsjektPlan ansproplan = new ProsjektPlan(); ansproplan.prosjektid = Convert.ToInt32(dr["prosjektId"].ToString()); ansproplan.prosjektnavn = dr["prosjektnavn"].tostring(); ansproplan.prosjektbeskrivelse = dr["beskrivelse"].tostring(); ansproplan.prosjektstartdato = Convert.ToDateTime(dr["startDato"].ToString()); ansproplan.prosjektsluttdato = Convert.ToDateTime(dr["sluttDato"].ToString()); ansproplan.prosjektstatus = Convert.ToInt32(dr["status"].ToString()); ansproplan.andel = Convert.ToInt32(dr["andel"].ToString()); ansproplan.fradato = Convert.ToDateTime(dr["fraDato"].ToString()); ansproplan.tildato = Convert.ToDateTime(dr["tildato"].ToString()); ansproplan.fraklokken = Convert.ToInt32(dr["fraklokken"].ToString()); ansproplan.tilklokkken = Convert.ToInt32(dr["tilklokken"].ToString()); } prosjektplaner.add(ansproplan); } return prosjektplaner; //Henter tilgjengelige prosjekter public ArrayList HentTilgjenligProsjekter() { IDataReader dr = DataProvider.instance().HentAktiveProsjekter(); ArrayList aktiveprosjekter = new ArrayList(); while (dr.read()) { ProsjektPlan plan = new ProsjektPlan(); plan.prosjektnavn = dr["prosjektnavn"].tostring(); plan.prosjektid = Convert.ToInt32(dr["prosjektId"].ToString()); aktiveprosjekter.add(plan); } } return aktiveprosjekter;

85 4. Prosjektvalg 81 Eksempel på Web Gui lag som kommuniseer med business og entiteter using System; using System.Collections; using System.Text; using System.Web.UI; using System.Web.UI.WebControls; using Elkem.DbSolution.Business; using Elkem.DbSolution.Entities; public partial class Calender_ansatte : Page { private AnsattController con; private StringBuilder temp; public static DateTime fra; public static DateTime til; protected void Page_Load(object sender, EventArgs e) { con = new AnsattController(); if (!IsPostBack) { con.prosjektplaner = con.hentansattprosjektplan(); TextBox1.ReadOnly = true; TextBox2.ReadOnly = true; } } Dropdown_prosjektNavn(); Dropdownlist2and3_Add(); #region Kalender protected void Calendar1_DayRender(object sender, DayRenderEventArgs e) { DateTime dayhold = Calendar1.TodaysDate.AddYears(-40); bool daytexthaschanged = false; temp = new StringBuilder(); if (e.day.isweekend) { e.cell.backcolor = System.Drawing.Color.Yellow; } foreach (ProsjektPlan Item in con.prosjektplaner) { if (dayhold.compareto(item.fradato) == 0) { if (daytexthaschanged) { break; } dayhold = Item.FraDato; } if (e.day.date >= Item.FraDato && e.day.date <= Item.TilDato) {

86 82 Elkem temp.append("<div style='height:5px; width:auto;'"); temp.append("<span style='font-family:arial; fontweight:bold; font-color: white;aligen-text:center;'>"); temp.append("<a title='" + Item.prosjektNavn + "' id=\"pros\" onclick='$(\"#box1\").show();' target='ifr'href="); temp.append("prosjektdetalje.aspx?id=" + Item.prosjektId); temp.append(">"); temp.append(item.prosjektnavn); temp.append("</a><br/><a class='kl'>kl </a><a class='kl'>"); temp.append(item.fraklokken + "-"); temp.append("</a><a>"); temp.append("<a class='kl'>"); temp.append(item.tilklokkken); temp.append("</a>"); } } e.cell.backcolor = System.Drawing.Color.Green; daytexthaschanged = true; if (daytexthaschanged) { temp.append("</span>"); temp.append("</div>"); e.cell.controls.add(new LiteralControl(temp.ToString())); } } #endregion #region DatoValg protected void Calendar1_SelectionChanged(object sender, EventArgs e) { VelgDato(); if (fra > til && TextBox2.Text.Length!= 0 &&!CheckBox1.Checked) { Label1.Visible = true; Label1.Text = "SluttDato er mindre enn startdato"; Label1.Attributes["style"] = "color:red"; } else if (fra <= til) { Label1.Visible = false; } } } protected void VelgDato() { bool verdi = false; if (TextBox1.Text.Length == 0) {

87 4. Prosjektvalg 83 } fra = Calendar1.SelectedDate; TextBox1.Text = fra.toshortdatestring(); verdi = true; } if (!verdi) { til = Calendar1.SelectedDate; TextBox2.Text = til.toshortdatestring(); } if (CheckBox1.Checked) { fra = Calendar1.SelectedDate; TextBox1.Text = fra.toshortdatestring(); TextBox2.Text = fra.toshortdatestring(); TextBox2.BackColor = System.Drawing.Color.LightGray; TextBox2.Enabled = false; } protected void CheckBox1_CheckedChanged(object sender, EventArgs e) { if (TextBox1.Text!= "" && CheckBox1.Checked) { TextBox2.BackColor = System.Drawing.Color.LightGray; TextBox2.Enabled = false; TextBox2.Text = fra.toshortdatestring(); Label1.Text = ""; Label1.Visible = false; } else if (!CheckBox1.Checked) { TextBox2.BackColor = System.Drawing.Color.Empty; TextBox2.Enabled = true; TextBox2.Text = ""; } } #endregion #region ProsjektValg

88 84 Elkem Eksempel på kildekode <gaia:panel ID="Panel2" runat="server" style="display: none; position:absolute; height: auto; Width: 50%; z-index:2; background-color: #ADDFFF; margin-top: -15%; margin-left: 1%;"> <gaia:button ID="Button1" runat="server" Text="Close" style="margin-right: 20%; margin-left: 80%" OnClick="Button1_Click" /> <asp:detailsview ID="DetailsView1" runat="server" AutoGenerateRows="False" CellPadding="4" ForeColor="#333333" GridLines="None" Height="50px" Style="width: 49%"> <AlternatingRowStyle BackColor="White" /> <CommandRowStyle BackColor="#D1DDF1" Font-Bold="True" /> <EditRowStyle BackColor="#2461BF" /> <FieldHeaderStyle BackColor="#DEE8F5" Font-Bold="True" /> <Fields> <asp:boundfield DataField="prosjektnavn" HeaderText="ProsjektNavn" /> <asp:boundfield DataField="prosjektbeskrivelse" HeaderText="ProsjektBeskrivelse" /> <asp:templatefield HeaderText="FraDato"> <EditItemTemplate> <asp:textbox ID="TextBox1" runat="server" Text='<%# Bind("prosjektStartDato", "{0: dd.mm.yyyy}") %>'></asp:textbox> </EditItemTemplate> <InsertItemTemplate> <asp:textbox ID="TextBox1" runat="server" Text='<%# Bind("prosjektStartDato", "{0: dd.mm.yyyy}") %>'></asp:textbox> </InsertItemTemplate> <ItemTemplate> <asp:label ID="Label1" runat="server" Text='<%# Bind("prosjektStartDato", "{0: dd.mm.yyyy}") %>'></asp:label> </ItemTemplate> </asp:templatefield> <asp:templatefield HeaderText="TilDato"> <EditItemTemplate> <asp:textbox ID="TextBox2" runat="server" Text='<%# Bind("prosjektSluttDato", "{0: dd.mm.yyyy}") %>'></asp:textbox> </InsertItemTemplate> <ItemTemplate> <asp:label ID="Label2" runat="server" Text='<%# HeaderText="Status" /> </Fields> <FooterStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" /> <HeaderStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" /> <PagerStyle BackColor="#2461BF" ForeColor="White" HorizontalAlign="Center" /> <RowStyle BackColor="#EFF3FB" /> </asp:detailsview> </gaia:panel> <br />

89 4. Prosjektvalg 85 Testdata Sql (forenklet) /* Divisjon */ insert into Divisjon values (1, 'Kristiansand', 'Beskrivelse1'); /* Verk */ insert into Verk values (1, 'Verk1', 'æverkbeskrivelse1', 1); /* Avdeling */ insert into Avdeling values (1, 'Prosess IT', 'avdkbeskrivelse1', 1); /* Gruppe */ insert into Gruppe values (1, 'gruppe1', 'gruppebeskrivelse1', 0, 1); /* Ansatte */ insert into Ansatte values(ansattid_seq.nextval, 'Andersen','Magne',1,'utvikler',1); /* Kompetanse */ insert into Kompetanse values(1, 'C#', 'programmerer innen C#'); /* Kompetanselinje */ insert into Kompetanselinje values(1,1) /* Prosjekt */ insert into Prosjekt values (1, 'prosjekt1', 'prosjektbeskrivelse1', to_date(' '), to_date(' '), 0, 50); /* Resurss plan */ Insert into RessursPlan values(1, to_date(' '), to_date(' '),'mai',8,16, 8,1, 17,17, 1); /* Resurss plan */ Insert into ProKomplinje values(1,1); /* ProsjektLinje */ Insert into ProsjektLinje values(1,2); commit;

90 86 Elkem Produkt Backlog

91 4. Prosjektvalg 87 Kurs Introduction to C# Programming with Microsoft.NET Course 2609 Five days Instructor-led Lessons Introduction to.net and the.net Framework Exploring Visual Studio.NET Creating a Windows Application Project After completing this module, students will be able to: Identify components of the.net platform and the.net Framework by their function. Explore the Visual Studio development environment. Create a basic application based on Microsoft Windows. Module 2: Understanding C# Language Fundamentals This module explains the syntax and structure of the C# programming language. These topics are essential for students to understand in order to be successful in the remainder of the course; however, it is likely that most students will come into the class with some experience applying these concepts in other languages. Lessons Understanding the Fundamentals of a C# Program Using C# Predefined Types Writing Expressions Creating Conditional Statements Creating Iteration Statements Module 3: Creating Objects in C# This module introduces the fundamentals of object-oriented programming, including the concepts of objects, classes, and methods. Lessons Defining a Class Declaring Methods Using Constructors Using Static Class Members

92 88 Elkem Module 4: Implementing Object-Oriented Programming Techniques in C# This module introduces the fundamentals of object-oriented programming, including the concepts of objects, classes, and methods. Lessons Designing Objects Using Inheritance Using Polymorphism Module 5: Programming with C# This module introduces various data structures, including arrays (the System.Array class) and collections (classes in the System.Collections namespace), and explains when to use each of these data structures in an application. The module also introduces interfaces, describes the concepts and syntax of exception handling, and explains delegates and their use in event handling. Lessons Using Arrays Using Collections Using Interfaces Using Exception Handling Using Delegates and Events Module 6: Building.NET-based Applications with C# This module presents the Microsoft.NET Framework class library, the Object Browser, and methods that are inherited from the System.Object class. This module also explains how to format strings and numbers and how to use streams and files. Lessons Examining the.net Framework Class Library Overriding Methods from System.Object Formatting Strings and Numbers Using Streams and Files Module 7: Using ADO.NET to Access Data This module explains how to use Microsoft ADO.NET and the objects in the System.Data namespace to access data in a database. It describes how to create an application based on Microsoft Windows that uses ADO.NET. This module also describes how to use that application to connect to a database, create a query, and use a DataSet object to manage the data, bind data to controls, and insert, update, and delete records in a database.

93 4. Prosjektvalg 89 Module 8: Creating Windows-based Applications This module describes how to create menus, common and custom dialog boxes, status bars, and toolbars to enhance the usability of an application based on Microsoft Windows. The purpose of this module is to allow the students to apply their newly acquired C# language skills and develop useful Windows-based applications. Lessons Creating the Main Menu Creating and Using Common Dialog Boxes Creating and Using Custom Dialog Boxes Creating and Using Toolbars Creating the Status Bar Creating and Using Combo Boxes Module 9: Using XML Web Services in a C# Program The module introduces the System.Web.Services namespace and the process of building and consuming XML Web services in a C# application. Lessons Consuming an XML Web Service Building an XML Web Service Module 10: Creating a Web Application with Web Forms In this module, students learn that in Microsoft Visual Studio.NET, you can use Web Forms to create programmable Web pages. This module introduces the System.Web.UI namespace and describes how to create a Web application with a Web Form. Students learn how to add controls to a Web Form and then use the Web Form to submit data and respond to events. The module also covers Microsoft ASP.NET state management, security, and configuration settings. Lessons Creating a Web Forms Application Accessing Data by Using a Web Forms Application Configuring ASP.NET Application Settings Module 11: Application Settings and Deployment This module introduces the procedures that are involved in deploying a C# application by using Microsoft Visual Studio.NET. It explains how to deploy both Web-based applications and applications that are based on Microsoft Windows. It also describes how to store user preferences and configure application settings. Lessons Working with Application Settings Deploying Applications

94 90 Elkem Course 4995A: Programming with the Microsoft.NET Framework using Microsoft Visual Studio About this Course This five-day instructor-led course enables developers who are migrating from a different development language, an earlier version of Visual Basic.NET or Visual C#, or who have completed entry-level training and experience using Microsoft Visual Studio 2005, to gain in-depth guidance on programming the Microsoft.NET Framework versions 2.0 and 3.0 with Visual Studio Audience Profile The target audience for this course is developers who already have professional programming experience in C, C++, earlier versions of Visual Basic.NET or Visual C#, Java, or another programming language, and who plan to use Visual Studio 2005 to develop enterprise business solutions. At Course Completion After completing this course, students will be able to: Describe the.net Framework. Create applications with Visual Studio Describe Visual Basic.NET and Visual C# language and syntax features. Use essential object-oriented programming features. Use advanced object-oriented programming features. Explain security in the.net Framework. Access data by using ADO.NET. Build Windows Presentation Foundation applications. Describe distributed applications, and create distributed applications with Windows Communication Foundation. Monitor.NET Framework applications by using instrumentation. Compile, test, and deploy.net Framework applications. Interoperate with unmanaged code (optional). Describe software design and development (optional). Course OutlineModule 1: Overview of the Microsoft.NET Framework This module introduces the key features and components of the Microsoft.NET Framework 2.0. The module also provides an overview of Microsoft.NET Framework 3.0 technologies, and describes how they relate to version 2.0 of the.net Framework. Lessons Introduction to the.net Framework.NET Framework 3.0 Technologies After completing this module, students will be able to: Describe the key features of the.net Framework. Describe the.net Framework 2.0 technologies. Module 2: Creating Applications with Visual Studio 2005 This module introduces the key features of the Visual Studio 2005 integrated development

95 4. Prosjektvalg 91 environment (IDE), and describes how to create and manage solutions, projects, and other resources. The module highlights many of the new features in Visual Studio 2005 that help to simplify and accelerate application development. Lessons Introduction to Visual Studio 2005 Managing Solutions and Projects Managing the Integrated Development Environment Writing Code with Visual Studio 2005 After completing this module, students will be able to: Describe the key features of Visual Studio Manage solutions and projects. Manage the integrated development environment. Write code with Visual Studio Module 3: Examining Language and Syntax Features This module introduces fundamental language features in C# and Visual Basic, including variable declarations, control flow constructs, and exception handling. The module also describes new language features introduced in Visual Studio Lessons Syntax Basics Language Enhancements After completing this module, students will be able to: Use fundamental language features in C# and Visual Basic, including variable declarations, conditional statements, loops, and exception handling. Use language enhancements introduced in Visual Studio 2005, including generics, partial types, and nullable types. Module 4: Essentials of Object-Oriented Programming This module introduces students to the essentials of object-oriented programming, defines important terminology, and shows the syntax for defining classes and creating instances. Lessons Object-Oriented Programming Concepts Defining a Class Creating a Class Instance After completing this module, students will be able to: Describe the key features of object-oriented programming. Define a class. Create a class instance. Module 5: Advanced Object-Oriented Programming

96 92 Elkem This module describes how to use inheritance and interfaces. The module also introduces delegates and events, and describes how to use them in.net Framework applications. Lessons Advanced Object-Oriented Programming Concepts Implementing Inheritance Defining and Implementing Interfaces Creating and Using Delegates and Events After completing this module, students will be able to: Describe advanced object-oriented programming concepts. Implement inheritance. Define and implement interfaces. Create and use delegates and events. Module 6: Security in the.net Framework This module introduces the concept of security, and describes how to use code access security and role-based security. The module also introduces the cryptographic services available in the.net Framework. Lessons Security Overview Implementing Code Access Security Implementing Role-Based Security Using Cryptographic Services After completing this module, students will be able to: Describe security in the.net Framework. Implement code access security. Implement role-based security. Use the cryptographic services in the.net Framework. Module 7: Accessing Data by Using ADO.NET This module describes how to access data programmatically in a relational database, by using ADO.NET. The module also describes how to read and write XML data, and introduces the classes in the XML Document Object Model (DOM). Lessons Overview of Data Access Reading and Writing Relational Data Reading and Writing XML Data Reading and Writing a DataSet as XML Data After completing this module, students will be able to: Describe the key features of data access in a.net Framework application. Read and write relational data by using ADO.NET.

97 4. Prosjektvalg 93 Read and write XML data. Module 8: Building Windows Presentation Foundation Applications This module describes the key features of Windows Presentation Foundation and introduces Extensible Application Markup Language (XAML), the declarative language that can be used to define user interfaces. The module also introduces the Application object model, and describes how to program a Windows Presentation Foundation application. Lessons Introduction to Windows Presentation Foundation Introduction to XAML Programming Windows Presentation Foundation Applications After completing this module, students will be able to: Describe the key features of Windows Presentation Foundation. Describe and use XAML. Program Windows Presentation Foundation Applications. Module 9: Creating Distributed Applications This module introduces the concept of distributed applications, and shows how to create and consume XML Web services by using the.net Framework and Visual Studio The module also covers the key features of Windows Communication Foundation, and explains how to build Windows Communication Foundation services and clients. Lessons Overview of Distributed Applications Creating and Consuming XML Web Services Building Windows Communication Foundation Services and Clients After completing this module, students will be able to: Describe the options for creating distributed.net Framework applications and the key features of Windows Communication Foundation. Create and consume XML Web services. Build Windows Communication Foundation services and clients. Module 10: Monitoring.NET Framework Applications by Using Instrumentation This module describes what instrumentation is, and shows how to perform instrumentation in.net Framework applications by using code tracing and debugging, performance counters, and event logs. Lessons Introduction to Instrumentation Code Tracing and Debugging Performance Counters Event Logs

98 94 Elkem After completing this module, students will be able to: Describe the key features of instrumentation in.net Framework applications. Explain code tracing and debugging. Describe performance counters and explain how to use them. Describe event logs and explain how to write to an application event log. Module 11: Compiling, Testing, and Deploying.NET Framework Applications This module describes activities that take place in the final stages of application development, when building, testing, and deploying an application. The module describes how to use Microsoft tools to perform each of these activities. Lessons Introduction to Assemblies Overview of the Microsoft Build Engine (MSBuild) Testing.NET Framework Applications Deploying.NET Framework Applications by Using ClickOnce Deploying.NET Framework Applications by Using Windows Installer After completing this module, students will be able to: Describe assemblies and explain features of assemblies that relate to deployment. Explain how to use MSBuild to build an application. Describe the key features of application testing. Deploy applications by using ClickOnce. Deploy applications by using Windows Installer. Module 12: Interoperating with Unmanaged Code (Optional) This module introduces the concept of interoperability with unmanaged code, and then describes how to access unmanaged functions and COM objects from managed code in a.net Framework application. Lessons Overview of Interoperability Calling Unmanaged Functions by Using Platform Invoke Calling COM Objects from Managed Code Lab : Interoperating with Unmanaged Code Calling a Windows API from Managed Code Calling a COM Object from Managed Code After completing this module, students will be able to: Describe the options for interoperating with unmanaged code from a.net Framework application. Call unmanaged functions by using Platform Invoke. Call COM objects from managed code. Module 13: Software Design and Development (Optional)

99 4. Prosjektvalg 95 This module introduces software design and development and explains some of the most commonly used models and tools. Lessons Introduction to the Software Development Life Cycle Introducing the Microsoft Solutions Framework Developing Applications with the Capability Maturity Model Integration Introducing Agile Software Development After completing this module, students will be able to: Describe the software development life cycle. Describe the key features of the Microsoft Solutions Framework. Describe the development of applications with the Capability Maturity Model. Describe the key features of Agile Software Development. Before attending this course, students must have: Professional experience with programming in C, C++, earlier versions of Visual Basic or C#, Java, or another programming language. Familiarity with the Microsoft.NET Framework strategy as described on the Microsoft.NET Homepage at Familiarity with the.net Framework versions 2.0 and 3.0 as described on the MSDN Developer Center site at

100 96 Elkem Burndown charts

101 4. Prosjektvalg 97 Databaserelasjoner (Forslag fra kunde)

102 98 Elkem ER-Diagram Versjon 1 :

103 4. Prosjektvalg 99 ER-Diagram Versjon 3:

104 100 Elkem Agendaer for styringsmøter Styringsmøte 1: From: Date: 2009/1/26 Subject: oppsummering møte 26. januar To: Terje Hognestad Hei. Bekrefter at jeg har satt av tid fredag 6. februar kl til gjennomgang av produktreserve. Vedlagt finner dere agendaen vi benyttet på vårt oppstartsmøte samt mal for produktreserve. Bestilling av kort gjør dere på: Ber om tilbakemelding dersom planlagt møte 6. februar utgår. Frank Agenda: Introduksjonsrunde Hva er Scrum Rammer og formål for møtet Forretningscase Brukerhistorier og egenskaper Prioritering Poengestimering Oppsummering / veien videre Styringsmøte 2: From: Terje Hognestad <hognestadterje@gmail.com> Date: 2009/3/23 Subject: Agenda for møtet To: frank-martin.olsen@elkem.no, hallgeir.nilsen@uia.no Hei. Sender deg agenda for møtet i morgen. Agenda: Status fremgang o Opplæring Microsoft sql database/oracle Gjennomgang av arbeid hittil o ER-diagram o OracleHelper o Rammeverk for kodestruktur o Løsning for autentisering av brukere(asp Oracle Membership Provider) Videre arbeid Mvh Terje Hognestad

105 4. Prosjektvalg 101 Styringsmøte 3: Hei. Her har du Agenda for styringsmøtet tirsdag : Agenda: Status Presentasjon av ferdige moduler Problemer Videre arbeid Mvh Terje Hognestad Arvid Ranestad Nawar Wisam Ronny Karlsen Maria Kutnetsova

106 102 Elkem Møtereferat Styringsmøte dato 20/ Hei. Vi ville bare skrive ned de punktene vi ble enige om på styringsmøte. ER-Diagram: Vi har laget et nytt oppdatert ER-diagram(se vedlegg v.1.3) med de endringene vi ble enige om. Vi har også lagt til beskrivelse på relasjonene. Den stillings/rolle atributten på ansatt har vi ikke endret på. Muligens det er best å lage en egen rolletabell? Endringer på Mockups: Ukentlig visning: Ingen egen fargekode per prosjekt. Kun 3 farger som viser status: Gul = fri Rød = ingen registrerte prosjekt grønn = Registert på prosjekt Det skal også vises totalt prosent registrert på en dag. Månedlig visning: Vis tilgjengelig resurser i person-form istedenfor prosent (1,4 ledige personer istedenfor 140%)

107 4. Prosjektvalg 103 Styringsmøte 2 From: Terje Hognestad <hognestadterje@gmail.com> Date: 2009/3/27 Subject: Oppsummering fra styringsmøte To: frank-martin.olsen@elkem.no, hallgeir.nilsen@uia.no Hei, takk for sist. Her har du oppsummering fra det siste styrings møte. - Vi fant ut at vi hadde gjort rett på 3-lags kodestrukturen. - Vi bruker OracleHelper som hjelp med kommunikasjon med Oracle databasen. - Bruke lite tid på autentiseringen - Utfordringer med web grensesnittet mulig løsning med Gaia, men vi har funnet ut at den er lisensiert. - Vi tar neste styringsmøte når vi mener vi har noe å vise. Mvh Terje Hognestad Arvid Ranestad Ronny Karlsen Nawar Wisan Maria Kuznetsova

108 104 Elkem Styringsmøte 3 dato : 5/5-09 Oppsumering av siste styremøte Endringer: - Vi kunne se bort fra Lørdag og Søndag på innlegging av prosjekt Ønskelig tillegg : - default verdier på registreringer for enklere registrering Fokus - Registrering av prosjekt (Viktigst for kunde) Problemer - Hjelp med databasespørring (Arnfinn ) Testing : - Prototype viktigst - Automatisering - Kravspec test utenfra/andre utfører - Nunit sløyfes - Regressjonstesting Akseptansetest : Fre Kl hos Elkem. Vurderingsrapport fra Elkem : - Del 1 : Foreløpig tilbakemelding før 15.mai - Del 2 : Endelig før 25.mai

109 4. Prosjektvalg 105 Use Case - Annsatt - Administraor

110 106 Elkem User Case Prosjektleder /Gruppeleder

111 4. Prosjektvalg 107 Sprint Plan :

Kandidatnummer: 2625, 2634, 2624, 2619, 2638. Emnekode: Emnenavn: Emneansvarlig: Innleveringsfrist: 15. mai 2009 kl 12.00

Kandidatnummer: 2625, 2634, 2624, 2619, 2638. Emnekode: Emnenavn: Emneansvarlig: Innleveringsfrist: 15. mai 2009 kl 12.00 Kandidatnummer: 2625, 2634, 2624, 2619, 2638 Emnekode: Emnenavn: Emneansvarlig: IS-304 Prosjektoppgave/Applikasjonsutvikling/Kvalitetssikring Hallgeir Nilsen Innleveringsfrist: 15. mai 2009 kl 12.00 Antall

Detaljer

Bachelorprosjekt 2015

Bachelorprosjekt 2015 Bachelorprosjekt 2015 Høgskolen i Oslo og Akershus Tam Ha (s171513) Arslan Yousaf (s189135) Gabriel Noraker Alfarrustad (s161910) Eivind Lund (s180381) Phillip Padiernos Næss (s162951) Forprosjekt Prosjektets

Detaljer

Hovedprosjekt. Høgskolen i Oslo data/informasjonsteknologi våren 2011 Forprosjektrapport. K-skjema og ferie kalender

Hovedprosjekt. Høgskolen i Oslo data/informasjonsteknologi våren 2011 Forprosjektrapport. K-skjema og ferie kalender Hovedprosjekt Høgskolen i Oslo data/informasjonsteknologi våren 2011 Forprosjektrapport Presentasjon Sted og dato Oslo, Jan 9, 2011 Prosjekt tittel Periode K-skjema og ferie kalender Utvikle et registreringssystem

Detaljer

Forprosjekt. Accenture Rune Waage, rune.waage@accenture.com, 91605634

Forprosjekt. Accenture Rune Waage, rune.waage@accenture.com, 91605634 Forprosjekt Presentasjon Gruppe 19: Event-planlegger Andreas Berglihn s169991 Harald R. Svendsen s127142 Gruppe Gruppe 19 Andreas Berglihn, s169991 Harald R. Svendsen s127142 Oppgave Eventplanlegger Utvikle

Detaljer

Testrapport Prosjekt nr. 2011-22 Det Norske Veritas

Testrapport Prosjekt nr. 2011-22 Det Norske Veritas Prosjekt nr. 2011 22 Testrapport Hovedprosjektets tittel Implementering av plugin og utvikling av wizard for Det Norske Veritas Prosjektdeltakere Magnus Strand Nekstad s156159 Jørgen Rønbeck s135779 Dato

Detaljer

Heggset Engineering er et kreativt og uavhengig kompetansemiljø med ti ingeniører/tekniske tegnere lokalisert i moderne lokaler i Dale Industripark i

Heggset Engineering er et kreativt og uavhengig kompetansemiljø med ti ingeniører/tekniske tegnere lokalisert i moderne lokaler i Dale Industripark i Heggset Engineering er et kreativt og uavhengig kompetansemiljø med ti ingeniører/tekniske tegnere lokalisert i moderne lokaler i Dale Industripark i Kristiansund. Bedriften tilbyr engineering og maskintekniske

Detaljer

Kravspesifikasjon. Leserveiledning Kravspesifikasjonen består av følgende deler: Presentasjon Om bedriften

Kravspesifikasjon. Leserveiledning Kravspesifikasjonen består av følgende deler: Presentasjon Om bedriften Kravspesifikasjon Presentasjon Hovedprosjektet gjennomføres ved Høgskolen i Oslo, avdelingen for ingeniørutdanning. Målet med oppgaven er å utvikle en online webshop for bestilling av postkasser. Dette

Detaljer

som blanker skjermen (clear screen). Du får en oversikt over alle kommandoene ved å skrive,

som blanker skjermen (clear screen). Du får en oversikt over alle kommandoene ved å skrive, 1. Last ned og installer XAMPP. 2. Sjekk at alt fungerer. 3. MySQL. Vi begynner med databaseserveren, MySQL. Gå til DOS klarmelding eller ledetekst (finnes under tilbehør på startmenyen om du ikke som

Detaljer

Læringsplattform for IT-fag basert på HTML5 utviklet i CakePhp

Læringsplattform for IT-fag basert på HTML5 utviklet i CakePhp Læringsplattform for IT-fag basert på HTML5 utviklet i CakePhp { En selvstendig plattform som kan brukes til å formidle kurs på nett med dagsaktuell teknologi. Oppgave 5, av Fredrik Johnsen Oppgavestiller

Detaljer

FORPROSJEKT RAPPORT PRESENTASJON

FORPROSJEKT RAPPORT PRESENTASJON FORPROSJEKT RAPPORT PRESENTASJON Tittel: Oppgave: Appenes App Utvikle en Windows 8.1 Applikasjon for Tablet, og en Windows 8 Phone App og en backend. Periode: 06.01.2013-27.05.2013 Gruppemedlemmer: Athavan

Detaljer

K-Nett. Krisehåndteringssystem for Norges vassdrags- og energidirektorat i en beredskaps- og krisesituasjon. av Erik Mathiessen

K-Nett. Krisehåndteringssystem for Norges vassdrags- og energidirektorat i en beredskaps- og krisesituasjon. av Erik Mathiessen K-Nett Krisehåndteringssystem for Norges vassdrags- og energidirektorat i en beredskaps- og krisesituasjon av Erik Mathiessen Om oppgavestiller NVE er et direktorat underlagt Olje- og energidepartementet

Detaljer

Artist webside. Gruppe medlemmer Joakim Kartveit. Oppdragsgiver Tetriz Event & Management. Frode Mathiesen. Gry Anita Nilsen.

Artist webside. Gruppe medlemmer Joakim Kartveit. Oppdragsgiver Tetriz Event & Management. Frode Mathiesen. Gry Anita Nilsen. Artist webside Innhold Artist webside...1 Gruppe medlemmer...1 Oppdragsgiver...1 Kontaktperson...2 Veileder...2 Oppgaven...2 Muligheter...2 Sammendrag...2 Dagens situasjon...2 Mål og rammebetingelser...3

Detaljer

InfoRed Publisering. - produktbeskrivelse. TalkPool WebServices Postboks Åneby

InfoRed Publisering. - produktbeskrivelse.  TalkPool WebServices Postboks Åneby InfoRed Publisering - produktbeskrivelse www.talkpool.no TalkPool WebServices Postboks 90 1484 Åneby InfoRed Produktbeskrivelse 2 Sammendrag InfoRed Publisering er produktet for å administrere en hel informasjonstjeneste,

Detaljer

Jon Hammeren Nilsson, Anders Emil Rønning, Lars Grini og Erling Fjelstad

Jon Hammeren Nilsson, Anders Emil Rønning, Lars Grini og Erling Fjelstad Forprosjektrapport Presentasjon Tittel: Oppgave: Infront SSO Utvikle en Single Sign-on løsning for Infront Periode: 8/1-2013 28/5-2013 Gruppemedlemmer: Jon Hammeren Nilsson, Anders Emil Rønning, Lars Grini

Detaljer

Altinns nye tjenesteverksted. Lars Vegard Bachmann, produkteier portal og tjenester, Altinn

Altinns nye tjenesteverksted. Lars Vegard Bachmann, produkteier portal og tjenester, Altinn Altinns nye tjenesteverksted Lars Vegard Bachmann, produkteier portal og tjenester, Altinn 01 Nytt tjenesteverksted? Hva mener du med det? Bakgrunn, mål, konsept og overordnet beskrivelse 02 Det høres

Detaljer

Forprosjekt. Oppgdragsgiver Unikia, Lille grensen 7, 0159 Oslo, Kontaktperson Anders Kose Nervold,

Forprosjekt. Oppgdragsgiver Unikia, Lille grensen 7, 0159 Oslo, Kontaktperson Anders Kose Nervold, Hovedprosjekt i data/informasjonsteknologi Høgskolen i Oslo og Akershus Forprosjekt Prosjekttittel Unikia Android applikasjon Gruppe 13 Markus Bugge-Hundere s188909 Morten Wold Aksel Wiig s236326 s232324

Detaljer

Hovedprosjekt i Informasjonsteknologi 2016 Høgskolen i Oslo og Akershus. Forprosjektrapport. Bravo Booking App

Hovedprosjekt i Informasjonsteknologi 2016 Høgskolen i Oslo og Akershus. Forprosjektrapport. Bravo Booking App Hovedprosjekt i Informasjonsteknologi 2016 Høgskolen i Oslo og Akershus Forprosjektrapport Bravo Booking App 1 Presentasjon 2 1.1 Gruppe 2 1.2 Oppdragsgiver 2 1.3 Kontaktpersoner 2 1.4 Oppgave 3 2 Dagens

Detaljer

Hovedprosjekt 2014, Høgskolen i Oslo og Akershus

Hovedprosjekt 2014, Høgskolen i Oslo og Akershus Forprosjektrapport Gruppe 2 Hovedprosjekt 2014, Høgskolen i Oslo og Akershus 1 INNHOLD 2 Presentasjon... 2 2.1 Gruppen medlemmer... 2 2.2 Oppgave... 2 2.3 Oppdragsgiver... 2 2.4 Veileder... 2 3 Sammendrag...

Detaljer

Forprosjektrapport. Presentasjon. Sammendrag. Tittel Informasjonsplatform for NorgesGruppen

Forprosjektrapport. Presentasjon. Sammendrag. Tittel Informasjonsplatform for NorgesGruppen Forprosjektrapport Presentasjon Tittel Informasjonsplatform for NorgesGruppen Oppgave Utvikle en informasjonsplatform for butikkene i NorgesGruppen Periode 3. Januar 14. Juni Gruppemedlemmer Joakim Sjögren

Detaljer

Gruppe 43. Hoved-Prosjekt Forprosjekt

Gruppe 43. Hoved-Prosjekt Forprosjekt Gruppe 43 Hoved-Prosjekt Forprosjekt Mobil Applikasjon Utvikling HiOA Bacheloroppgave forprosjekt våren 2017 Presentasjon Gruppen består av: Gebi Beshir Ole-Kristian Steiro Tasmia Faruque s182414 s189141

Detaljer

Studentdrevet innovasjon

Studentdrevet innovasjon Studentdrevet innovasjon Hovedprosjekt 2013 Høgskolen i Oslo og Akershus Forprosjektrapport av Gruppe 11 Karoline Sanderengen, Mona Isabelle Yari og Randi Ueland 25.01.2013 Studentdrevet innovasjon 9 Innhold

Detaljer

1. Introduksjon. Glis 13/02/2018

1. Introduksjon. Glis 13/02/2018 SDP GLIS Espen Buø Innholdsfortegnelse 1. Introduksjon... 2 2. Gruppebeskrivelse og ansvarsområder... 3 3. Risikoanalyse... 4 4. Hardware og softwarekrav for brukeren... 5 5. Behov for prosjektet... 6

Detaljer

Kravspesifikasjon. Aker Surveillance. Gruppe 26 Hovedprosjekt ved Høgskolen i Oslo og Akershus. Oslo,

Kravspesifikasjon. Aker Surveillance. Gruppe 26 Hovedprosjekt ved Høgskolen i Oslo og Akershus. Oslo, Kravspesifikasjon Aker Surveillance Gruppe 26 Hovedprosjekt ved Høgskolen i Oslo og Akershus Oslo, 12.01.2013 Public 2013 Aker Solutions Page 1 of 7 Table of Contents Forord... 3 Om bakgrunnen... 3 Presentasjon...

Detaljer

Installere JBuilder Foundation i Windows XP

Installere JBuilder Foundation i Windows XP Installere JBuilder Foundation i Windows XP Installasjon av JBuilder Foundation på Windows (dekker her spesifikt fremgangen ved bruk av Microsoft Windows XP Professional, men det vil mest trolig ikke være

Detaljer

Forprosjektrapport Gruppe 30

Forprosjektrapport Gruppe 30 Forprosjektrapport Gruppe 30 Gruppemedlemmer: Eyvind Nielsen s177748 Ullvar Brekke s236375 Kristoffer Pettersen s239404 Innhold Presentasjon... 3 Sammendrag... 3 Dagens situasjon... 3 Mål... 3 Rammebetingelser...

Detaljer

Forprosjektrapport. Bachelorprosjekt i informasjonsteknologi ved Høgskolen i Oslo og Akershus, våren 2016. Pillbox Punchline

Forprosjektrapport. Bachelorprosjekt i informasjonsteknologi ved Høgskolen i Oslo og Akershus, våren 2016. Pillbox Punchline Forprosjektrapport Bachelorprosjekt i informasjonsteknologi ved Høgskolen i Oslo og Akershus, våren 2016 Pillbox Punchline Gruppe 8 André Østhagen Bye, s198607 Annika Hammervoll, s198611 Hanne Rygge, s198613

Detaljer

Testrapport. Studentevalueringssystem

Testrapport. Studentevalueringssystem Testrapport Studentevalueringssystem 1 Forord 1.2 Forord Dette prosjektet er et hovedprosjekt i data ved Høgskolen i Oslo, avdeling for ingeniørutdanning, og gjennomføres i samarbeid med Ingeniøravdeling

Detaljer

Scan Secure GTS 5.1 + PAS

Scan Secure GTS 5.1 + PAS Scan Secure GTS 5.1 + PAS Installasjonsmanual For versjon 5.1.7 og nyere Denne installasjonsmanualen er konfidensiell Den er kun ment til bruk for system administrator Den skal ikke benyttes av brukere

Detaljer

GJENNOMGANG UKESOPPGAVER 2 PROSESSMODELLER OG SMIDIG PROGRAMVAREUTVIKLIG

GJENNOMGANG UKESOPPGAVER 2 PROSESSMODELLER OG SMIDIG PROGRAMVAREUTVIKLIG GJENNOMGANG UKESOPPGAVER 2 PROSESSMODELLER OG SMIDIG PROGRAMVAREUTVIKLIG INF1050 V16 HVA ER EN SYSTEMUTVIKLINGSPROSESS? De aktivitetene som utføres for å utvikle et IT-system Eksempler på aktiviteter:

Detaljer

Forprosjektrapport Bacheloroppgave 2017

Forprosjektrapport Bacheloroppgave 2017 Forprosjektrapport Bacheloroppgave 2017 Chat Modul for Webnodes Content Management System Gruppe 32 Adam Asskali, Anmer Seif, Sara Khan 20.01.2017 Veileder G. Anthony Giannoumis Innholdsfortegnelse 1.Presentasjon

Detaljer

Stikkord: Java EE, EJB, JSF, JPA, SWT, klient/tjener, Glassfish server, Application Client.

Stikkord: Java EE, EJB, JSF, JPA, SWT, klient/tjener, Glassfish server, Application Client. Stikkord: Java EE, EJB, JSF, JPA, SWT, klient/tjener, Glassfish server, Application Client. Studenter: Magnus Skomsøy Bae, Marius Eggen, Magnus Krane Klasse: 3ING, Systemutvikling Produserer redaksjonelle

Detaljer

Bachelorprosjekt i informasjonsteknologi, vår 2017

Bachelorprosjekt i informasjonsteknologi, vår 2017 Bachelorprosjekt i informasjonsteknologi, vår 2017 Gruppe 29: Marthe Janson Skogen, s236357, Ingeniørfag - data Odd Einar Hoel, s236313, Ingeniørfag - data Forprosjektrapport Rapporten inneholder presentasjon,

Detaljer

Produktrapport. Produktrapport. Hjelpemiddel portal for Parkinsonforbundet

Produktrapport. Produktrapport. Hjelpemiddel portal for Parkinsonforbundet Produktrapport Hjelpemiddel portal for Parkinsonforbundet 1 Innhold: Forord ------------------------------------------------------------------------------------------------------2 Planlegging og arbeidsmetode

Detaljer

Kravspesifikasjon. Forord

Kravspesifikasjon. Forord Kravspesifikasjon Forord Kravspesifikasjonen skal beskrive applikasjonens funksjonalitet og betingelsene som oppdragsgiver krever. Det skal også hjelpe utviklerne med å begrense applikasjonen slik at den

Detaljer

Kap 11 Planlegging og dokumentasjon s 310

Kap 11 Planlegging og dokumentasjon s 310 Kap 11 Planlegging og dokumentasjon s 310 11.1 Ulike arbeidsmetoder Systemutvikling Som systemutvikler er du i stand til å omsette din innsikt i brukerbehov til praktiske programbaserte løsninger. Samarbeid:

Detaljer

P L A N I A 8 S Y S T E M K R A V PLANIA 8 SYSTEM KRAV. Plania 8 Systemkrav.docx 27.04.2015 1 av 8

P L A N I A 8 S Y S T E M K R A V PLANIA 8 SYSTEM KRAV. Plania 8 Systemkrav.docx 27.04.2015 1 av 8 PLANIA 8 SYSTEM KRAV Plania 8 Systemkrav.docx 27.04.2015 1 av 8 INNHOLD 1 INNLEDNING... 1-3 1.1 Generell beskrivelse... 1-3 1.1.1 Plania DESKTOP og Plania WEB... 1-3 2 SYSTEMKRAV... 2-4 2.1 Krav til ulike

Detaljer

Kandidat nr. 1, 2 og 3

Kandidat nr. 1, 2 og 3 Kandidat nr. 1, 2 og 3 Rapport 1 IT202E Bacheloroppgave i Informatikk Vår 2011 Mobilapplikasjonsutvikling med Scrum 1 Innhold Innledning... 3 Overordnet Prosjektplan... 3 Produktbacklog... 5 Sprint planning

Detaljer

PROSESSDOKUMENTASJON

PROSESSDOKUMENTASJON PROSJEKT NR.: 10-30 Studieprogram: Anvendt Datateknologi Postadresse: Postboks 4 St. Olavs plass, 0130 Oslo Besøksadresse: Holbergs plass, Oslo TILGJENGELIGHET: Papir og elektronisk Telefon: 22 45 32 00

Detaljer

Samarbeidsløsning for FHS, Teknisk info

Samarbeidsløsning for FHS, Teknisk info Samarbeidsløsning for FHS, Teknisk info 1. Kontorstøtte Samarbeidsløsningen som FHS-kontorene har etterspurt må forholde seg til kontorstøttesystemer, e-post, kalender og kontakter. Dette har egentlig

Detaljer

Installasjonsveiledning Visma Avendo Lønn, versjon 7.60 Oktober 2011

Installasjonsveiledning Visma Avendo Lønn, versjon 7.60 Oktober 2011 Installasjonsveiledning Visma Avendo Lønn, versjon 7.60 Oktober 2011 Innhold 1. Innledning... 1 2. Nedlasting... 2 3. Installasjon / oppgradering... 5 3.1 Installasjon av nødvendige tilleggskomponenter...

Detaljer

Software Development Plan. Software Development Plan. Forum / Nettverkssamfunn Team 2

Software Development Plan. Software Development Plan. Forum / Nettverkssamfunn Team 2 Forum / Nettverkssamfunn Team 2 1 Innholdsfortegnelse 1 Introduksjon... 3 2 Team & Organisering... 3 3 Brainstorming, tanker og utførelse... 4 3.1 Bruker Registrering og metoder... 4 3.2 Generering av

Detaljer

Publiseringsløsning for internettsider

Publiseringsløsning for internettsider Publiseringsløsning for internettsider Hva er Edit? Edit er et verktøy for publisering og vedlikehold av nettsider. Tidligere har det å vedlikeholde en nettside vært en tungvinn prosess, men nå kan alle

Detaljer

1. Forord 2. Leserveiledning

1. Forord 2. Leserveiledning KRAVSPESIFIKASJON 1 1. Forord Hensikten med kravspesifikasjonen er at den skal fungere som et styringsdokument under prosessen og definere rammer og betingelser rundt hovedprosjektet. Den er utviklet etter

Detaljer

Forprosjekt Hovedprosjekt ved Høgskolen i Oslo Våren 2008

Forprosjekt Hovedprosjekt ved Høgskolen i Oslo Våren 2008 Forprosjekt Hovedprosjekt ved Høgskolen i Oslo Våren 2008 Skrevet av Ole Myrbakken, Fadima Mohamoud, Orji Okoroafor, Karen Arrendondo Side 1 PRESENTASJON Prosjekt tittel: Prosjektperiode: MetaGen 7.jan

Detaljer

Forprosjekt gruppe 13

Forprosjekt gruppe 13 Forprosjekt gruppe 13 Presentasjon Tittel: Oppgave: Periode: Gruppemedlemmer: Veileder: Oppdragsgiver: Kontaktperson: Mobilbillett i HTML5 Utvikle en mobil billettautomat innenfor kategorien dedikert web

Detaljer

Smidig metodikk, erfaringer fra NAV Fagportal

Smidig metodikk, erfaringer fra NAV Fagportal Smidig metodikk, erfaringer fra NAV Fagportal Gry Hilde Nilsen, NAV Morten Tveit, Fornebu Consulting NAV, 08.03.2011 Side 1 Smidig gjennomføring i NAV Fagportal Individer og samspill framfor prosesser

Detaljer

Dokument 1 - Sammendrag

Dokument 1 - Sammendrag Dokument 1 - Sammendrag Automatnett - Nytt CMS-verktøy for Uno-X Automat Fakultet for teknologi, kunst og design Høgskolen i Oslo og Akershus, 2013 Innholdsfortegnelse Sammendrag 1 1. Innledning 1 2. Om

Detaljer

UKEOPPGAVER 2: SYSTEMUTVIKLINGSPROSESSER OG PROSJEKTARBEID INNSPILL TIL SVAR

UKEOPPGAVER 2: SYSTEMUTVIKLINGSPROSESSER OG PROSJEKTARBEID INNSPILL TIL SVAR INF 1050 UKEOPPGAVER 2: SYSTEMUTVIKLINGSPROSESSER OG PROSJEKTARBEID INNSPILL TIL SVAR Oppgave 1 a) Foranalyse: Foranalysen kan med fordel gjøres i to trinn. Den første er å undersøke finansiering og øvrige

Detaljer

Oblig 5 Webutvikling. Av Thomas Gitlevaag

Oblig 5 Webutvikling. Av Thomas Gitlevaag Oblig 5 Webutvikling Av Thomas Gitlevaag For oppgave 1 og 2 skal dere levere en funksjonell webside på deres hjemmeområde. Dere skal også levere alle phps-filene slik at man for en hver side kan slenge

Detaljer

Installere JBuilder Foundation i Mandrake Linux 10.0

Installere JBuilder Foundation i Mandrake Linux 10.0 Installere JBuilder Foundation i Mandrake Linux 10.0 Installasjon av JBuilder Foundation på Linux (dekker her spesifikt fremgangen ved bruk av Mandrake Linux 10.0, men distribusjon vil gjøre liten eller

Detaljer

BRUKERMANUAL. Telsys Online Backup

BRUKERMANUAL. Telsys Online Backup BRUKERMANUAL Telsys Online Backup TELSYS AS - 06.08.2009 Innhold Generelt... 3 Kom i gang... 4 Installasjon av Telsys Online Backup Proff/Standard... 4 Start opp klienten for første gang!... 10 Logg inn...

Detaljer

Hurtigstartveiledning

Hurtigstartveiledning Hurtigstartveiledning Microsoft Project 2013 ser annerledes ut enn tidligere versjoner, så vi har laget denne veiledningen for å hjelpe deg med å redusere læringskurven. Verktøylinje for hurtigtilgang

Detaljer

En bedre måte å håndtere prosjekt, team, oppgaver og innhold

En bedre måte å håndtere prosjekt, team, oppgaver og innhold En bedre måte å håndtere prosjekt, team, oppgaver og innhold Bedre prosjekthå ndtering med metådåtå M-Files går langt utover bare enkel dokumenthåndtering. Den unike arkitekturen drevet av metadata lar

Detaljer

SOFTWARE DEVELOPMENT PLAN. Home Automation System. Nickolas Helgeland, Jon Erik Nordskog og Kristian Sande Sjølyst

SOFTWARE DEVELOPMENT PLAN. Home Automation System. Nickolas Helgeland, Jon Erik Nordskog og Kristian Sande Sjølyst SOFTWARE DEVELOPMENT PLAN Home Automation System Nickolas Helgeland, Jon Erik Nordskog og Kristian Sande Sjølyst Innhold Introduksjon... 2 Organisering... 3 Risikoanalyse... 4 Kommunikasjon i teamet...

Detaljer

Hovedprosjekt 2011. Høgskolen i Oslo. Gruppe 24. Tore Holmboe (s155547) Vegard Kamben (s148147) Anders Fohlin Kjøde (s155551) Haakon Nygård (s155535)

Hovedprosjekt 2011. Høgskolen i Oslo. Gruppe 24. Tore Holmboe (s155547) Vegard Kamben (s148147) Anders Fohlin Kjøde (s155551) Haakon Nygård (s155535) Hovedprosjekt 2011 Høgskolen i Oslo Gruppe 24 Tore Holmboe (s155547) Vegard Kamben (s148147) Anders Fohlin Kjøde (s155551) Haakon Nygård (s155535) Stian Pettersen (s144449) en RSS-leser på tvers av touchenheter

Detaljer

Produktdokumentasjon. Madison Møbler Administrasjonsside og Nettbutikk

Produktdokumentasjon. Madison Møbler Administrasjonsside og Nettbutikk Produktdokumentasjon Madison Møbler Administrasjonsside og Nettbutikk 1 1. Forord 1.1 Dokumentasjonen Dette er en teknisk dokumentasjon på produktet som er utviklet. Denne er tiltenkt personer med teknisk

Detaljer

Hovedprosjekt 2013. Gruppe 27. Forprosjektrapport [GILJE AS] Lars Gjestang - Hiran Piapo - Bård Skeie

Hovedprosjekt 2013. Gruppe 27. Forprosjektrapport [GILJE AS] Lars Gjestang - Hiran Piapo - Bård Skeie 2013 Hovedprosjekt 2013 Gruppe 27 Forprosjektrapport [GILJE AS] Lars Gjestang - Hiran Piapo - Bård Skeie Innhold 1. Presentasjon... 2 2. Sammendrag... 2 3. Dagens Situasjon... 2 4. Mål og rammebetingelser...

Detaljer

Repository Self Service. Hovedoppgave våren 2010

Repository Self Service. Hovedoppgave våren 2010 Forprosjektrapport for Repository Self Service Hovedoppgave våren 2010 Christer Berg (070604 07HBDRA) Ron Stangvik (070427 07HBDRA) 1 Innholdsfortegnelse 1. MÅL OG RAMMER...3 1.1. Bakgrunn...3 1.2. Prosjektmål...3

Detaljer

Forprosjektrapport for bacheloroppgave i data og informasjonsteknologi

Forprosjektrapport for bacheloroppgave i data og informasjonsteknologi Forprosjektrapport for bacheloroppgave i data og informasjonsteknologi Gruppe 5 Anders Minde Dørum, Eirik Odden Solberg, Patrick Ingeberg og Torbjørn Magnus Brandrud Prosjektmedlemmer: Anders Minde Dørum,

Detaljer

Min digitale infrastruktur

Min digitale infrastruktur 0.1 Organisering av filer Min digitale infrastruktur Med et godt organisert filsystem, vil sikkerhetskopiering være svært enkelt. På denne måten kan man synkronisere filene, slik at man alltid har de sist

Detaljer

SRD GLIS. Cecilie Dortea Gløsmyr, Espen Buø og Henrik Lie

SRD GLIS. Cecilie Dortea Gløsmyr, Espen Buø og Henrik Lie SRD GLIS Cecilie Dortea Gløsmyr, Espen Buø og Henrik Lie Innholdsfortegnelse 1. Systemoversikt... 2 2. Tekniske krav... 3 2.1. Funksjonskrav og brukergrensesnitt spesifikasjon... 3 2.2. Begrensninger...

Detaljer

Høgskolen i Oslo og Akershus

Høgskolen i Oslo og Akershus Høgskolen i Oslo og Akershus Gruppe 2 Forprosjektrapport Presentasjon Oppdragsgiver: Prosjekttittel: Definisjon: Accenture Shera Shera er en «event»-applikasjon til Android der man kan registrere arrangementer

Detaljer

AlgDat 10. Forelesning 2. Gunnar Misund

AlgDat 10. Forelesning 2. Gunnar Misund AlgDat 10 Forelesning 2 Oversikt Java repetisjon IDE eller teksteditor + kommandolinje? Java Collections and Generics Programvareutvikling En mengde mer eller mindre veldefinerte metoder (software engineering):

Detaljer

AGENDA. En produktiv arbeidsplass Ja, derfor Office 365 Hege Line Arnstein Andreassen. Office 365 del 2. Avslutning. Marie Johansen, Microsoft

AGENDA. En produktiv arbeidsplass Ja, derfor Office 365 Hege Line Arnstein Andreassen. Office 365 del 2. Avslutning. Marie Johansen, Microsoft AGENDA En produktiv arbeidsplass Ja, derfor Office 365 Hege Line Arnstein Andreassen Office 365 del 1 Marie Johansen, Microsoft PAUSE Office 365 del 2 Marie Johansen, Microsoft Avslutning Hege Line Eiliv

Detaljer

Produktrapport Gruppe 9

Produktrapport Gruppe 9 Forord Dette dokumentet er ment for personer som skal vedlikeholde, endre eller utvikle systemet. Produktdokument innholder informasjoner om programmets funksjoner og hvordan de fungerer. Før bruk av dette

Detaljer

ErgoGroup AS eway Nydalsveien 28 Postboks 4364 Nydalen 0402 Oslo Tlf.: +47 23 14 50 00 Faks: +47 23 14 50 01 www.ergogroup.no www.eway.

ErgoGroup AS eway Nydalsveien 28 Postboks 4364 Nydalen 0402 Oslo Tlf.: +47 23 14 50 00 Faks: +47 23 14 50 01 www.ergogroup.no www.eway. Hva er eway? eway er en portal og plattform for samarbeid internt i en organisasjon og med organisasjonens partnere og kunder. Gjennom portalen forenkles og effektiviseres arbeidsprosesser knyttet til

Detaljer

Prosjektledelse - fra innsiden

Prosjektledelse - fra innsiden Prosjektledelse - fra innsiden Presentasjon hos UiO 31.08.2012 Ida Lau Borch, fagansvarlig i Metier AS Det ligger et fantastisk potensial i det å være best i prosjektledelse og -styring Prosjekteierstyring

Detaljer

Institutt for informasjonsteknologi, Høgskolen i Oslo og Akershus, våren Camilla Kaasi(s188070) Roza Moustafa(s188113)

Institutt for informasjonsteknologi, Høgskolen i Oslo og Akershus, våren Camilla Kaasi(s188070) Roza Moustafa(s188113) Forprosjektrapport Gruppe 14 Institutt for informasjonsteknologi, Høgskolen i Oslo og Akershus, våren 2015 Sted: Høgskolen i Oslo og Akershus Dato: 23.01.2015 Tittel: Gruppemedlemmer: Oppgave: Oppdragsgiver:

Detaljer

Forprosjektrapport. Bachelorprosjekt i informasjonsteknologi ved Høgskolen i Oslo og Akershus, våren Digitalisering av Sentralen UNG Gründer

Forprosjektrapport. Bachelorprosjekt i informasjonsteknologi ved Høgskolen i Oslo og Akershus, våren Digitalisering av Sentralen UNG Gründer Forprosjektrapport Bachelorprosjekt i informasjonsteknologi ved Høgskolen i Oslo og Akershus, våren 207 Digitalisering av Sentralen UNG Gründer Gruppe 34 Kenneth Di Vita Jensen, s236745 Frank Arne Bjørkmann

Detaljer

11 Planlegging og dokumentasjon

11 Planlegging og dokumentasjon 11 Planlegging og dokumentasjon Ulike arbeidsmetoder Systemutvikling Som systemutvikler er du i stand til å omsette din innsikt i brukerbehov til praktiske programbaserte løsninger. Samarbeid: Programmerer

Detaljer

Forprosjektrapport. Gruppe Januar 2016

Forprosjektrapport. Gruppe Januar 2016 Forprosjektrapport Gruppe 22 22. Januar 2016 Innholdsfortegnelse Innholdsfortegnelse Presentasjon Sammendrag Dagens situasjon Mål og rammebetingelser Mål Rammebetingelser Løsninger og alternativer Løsning

Detaljer

PROGRAMUTVIKLINGSPLAN. Big Data and Machine Learning

PROGRAMUTVIKLINGSPLAN. Big Data and Machine Learning PROGRAMUTVIKLINGSPLAN Big Data and Machine Learning Innholdsfortegnelse Produkt beskrivelse... 1 Team beskrivelse... 2 Prosjektets kunnskapskrav... 2 Medlemmer og roller... 2 Program prosessmodell beskrivelse...

Detaljer

1. Å lage programmer i C++

1. Å lage programmer i C++ Avdeling for informatikk og e-læring, Høgskolen i Sør-Trøndelag Å lage programmer i C++ Tore Berg Hansen og Else Lervik Rividert siste gang 24. august 2006 1. Å lage programmer i C++ Resymé: Dette notatet

Detaljer

Kravspesifikasjon. 1. Innledning. Presentasjon. Innledning. Om bedriften. Bakgrunn for prosjektet

Kravspesifikasjon. 1. Innledning. Presentasjon. Innledning. Om bedriften. Bakgrunn for prosjektet Kravspesifikasjon Presentasjon Tittel: Oppgave: Backup for PDA/Smartphones Utvikle en applikasjon for PDA/Smartphones med funksjonalitet for backup av sms, mms, e-post, kontakter, kalender, bilder og dokumenter

Detaljer

Versjonsbrev. for Extensor05 versjon 1.16

Versjonsbrev. for Extensor05 versjon 1.16 Versjonsbrev for Extensor05 versjon 1.16 Bodø, 28. desember 2011 Innhold Viktig informasjon... 3 Generelt... 3 Extensor Kode Oppdatering... 4 Personalia... 4 Pårørende... 4 Serieinfo... 5 Rom... 5 EKG

Detaljer

VEDLEGG 1 KRAVSPESIFIKASJON

VEDLEGG 1 KRAVSPESIFIKASJON VEDLEGG 1 KRAVSPESIFIKASJON INNHOLDSFORTEGNELSE Forord... 2 1 Systembeskrivelse... 2 2 Mål for systemet... 3 3 Funksjonelle krav... 4 4 Ikke-funksjonelle krav... 5 5 Use-case diagram... 6 6 Rammekrav...

Detaljer

Nyheter i Office 2016 NYHETER, FUNKSJONER, FORKLARING

Nyheter i Office 2016 NYHETER, FUNKSJONER, FORKLARING Nyheter i Office 2016 NYHETER, FUNKSJONER, FORKLARING 1 Word 1.1 Gjør ting raskt med Fortell meg det Du vil legge merke til en tekstboks på båndet i Word 2016 med teksten Fortell meg hva du vil gjøre.

Detaljer

Innstillinger. Endre Personalia

Innstillinger. Endre Personalia Innstillinger Endre Personalia: Her kan du endre personlige innstillinger. Tilpass it's:learning: Her kan du tilpasse utseende og endre f. eks språk. Varsling: Du kan få varslinger tilsendt både på e-post

Detaljer

Konfigurasjonsstyring. INF1050: Gjennomgang, uke 11

Konfigurasjonsstyring. INF1050: Gjennomgang, uke 11 Konfigurasjonsstyring INF1050: Gjennomgang, uke 11 Kompetansemål Konfigurasjonsstyring Hva og hvorfor? I en smidig sammenheng Endringshåndtering Versjonhåndtering Systembygging Release -håndtering Del

Detaljer

Thursday, August 19, 2010. Web-prosjekt

Thursday, August 19, 2010. Web-prosjekt Web-prosjekt Om kurset Organisering av kurset Består av to hoveddeler: Webpublisering Prosjektarbeid Motivasjon Web Lære å utvikle websider Lære prinsipper for brukervennlighet og tilgjengelighet Skrive

Detaljer

Planleggingsverktøyet tillater deg å tilpasse planene som passer dine behov. Du vil finne innstillingene i Planer, i menyen som er til høyre.

Planleggingsverktøyet tillater deg å tilpasse planene som passer dine behov. Du vil finne innstillingene i Planer, i menyen som er til høyre. Fronter 19 Guide Planlegging Fronter 19 kommer med et nytt planleggingsverktøy som gjør det lettere for lærere å organisere deres undervisning. Det gir også elever en god oversikt over hva som må gjøres

Detaljer

En innføring i bruk. Skype for Business Online. Viste du at: Skype for Business Online kan kommunisere med eksterne brukere?

En innføring i bruk. Skype for Business Online. Viste du at: Skype for Business Online kan kommunisere med eksterne brukere? Viste du at: En innføring i bruk av Skype for Business Online Skype for Business Online kan kommunisere med eksterne brukere? Skype for Business kan kommunisere med vanlig Skype? Skype for Business leveres

Detaljer

CONNECTING BUSINESS & TECHNOLOGY KURS OG SERTIFISERINGER - SCRUM

CONNECTING BUSINESS & TECHNOLOGY KURS OG SERTIFISERINGER - SCRUM CONNECTING BUSINESS & TECHNOLOGY KURS OG SERTIFISERINGER - SCRUM Scrum Master og Product Owner i Høst 2015 1 Om Scrum Scrum er et populært rammeverk laget med henblikk på å utvikle komplekse informasjonssystemer.

Detaljer

OBLIG 2 WEBUTVIKLING

OBLIG 2 WEBUTVIKLING OBLIG 2 WEBUTVIKLING Oppgave 1 Design ved hjelp av skisser eller wireframes et nettsted med et "avansert" design. Lag spesifikke design for ulike skjermstørrelser og utskrift. Fokuser spesielt på å få

Detaljer

Kravspesifikasjon MetaView

Kravspesifikasjon MetaView Kravspesifikasjon MetaView BACHELOROPPGAVE VÅREN 2014 1. Presentasjon Tittel: MetaView Oppgave: Lage en applikasjon og api som skal kommunisere med MetaVision slik at det skal bli enklere for leger og

Detaljer

Del VII: Kravspesifikasjon

Del VII: Kravspesifikasjon 1 2 Forord Dette dokumentet inneholder retningslinjer for gruppen vår og beskrivelse av betingelsene for utviklingen av vårt prosjekt. Vår gruppe benyttet dette dokumentet som et styringsdokument for å

Detaljer

Utvikle en prototype for en digital versjon av helsekort for gravide. Programvareleverandør av ehelse-løsninger for helsevesenet

Utvikle en prototype for en digital versjon av helsekort for gravide. Programvareleverandør av ehelse-løsninger for helsevesenet Kravspesifikasjon Hovedprosjekt 2014 Institutt for informasjonsteknologi, Høgskolen i Oslo og Akershus Presentasjon Tittel: Oppgave: Gruppemedlemmer: Digitalt Helsekort for Gravide Utvikle en prototype

Detaljer

SiteGen CMS. Innføringsmanual

SiteGen CMS. Innføringsmanual SiteGen CMS Innføringsmanual Copyright Barlind Solutions AS 2008 Hva er SiteGen CMS? SiteGen CMS er et såkalt content-management-system; eller med litt andre ord et publiseringssystem. Det kan brukes til

Detaljer

2. Beskrivelse av mulige prosjektoppgaver

2. Beskrivelse av mulige prosjektoppgaver Avanserte databaser (øving 9, 10, 11 & 12) Tore Mallaug 25.01.2008 Opphavsrett:Forfatter og Stiftelsen TISIP Lærestoffet er utviklet for faget LO326D Avanserte Databaser INNLEVERINGSFRISTER (Obligatorisk

Detaljer

- reklamebannere mobil og tablet

- reklamebannere mobil og tablet Spesifikasjoner - reklamebannere mobil og tablet FINN.no Versjon 2.4 Sist oppdatert 16.08.2013 1. Innhold Innhold Introduksjon Målsetning Spesifikasjoner HTML Fysisk størrelse 225 px* Eksempler Størrelser

Detaljer

UKE 9 Prosesser og prosessmodeller inkludert smidige metoder. Gruppetime INF1055

UKE 9 Prosesser og prosessmodeller inkludert smidige metoder. Gruppetime INF1055 UKE 9 Prosesser og prosessmodeller inkludert smidige metoder Gruppetime INF1055 Hva skal vi i dag? Introduksjon til modul B - systemutvikling (kap. 1, 2 og 3) Prosesser og prosessmodeller + smidig utvikling

Detaljer

Prosjektledelse - fra innsiden av et utviklingsprosjekt. Presentasjon hos UiO Ida Lau Borch, prosjektleder i Bouvet ASA

Prosjektledelse - fra innsiden av et utviklingsprosjekt. Presentasjon hos UiO Ida Lau Borch, prosjektleder i Bouvet ASA Prosjektledelse - fra innsiden av et utviklingsprosjekt Presentasjon hos UiO 09.09.2011 Ida Lau Borch, prosjektleder i Bouvet ASA Agenda De umulige IT-prosjektene Hvordan vi gjør det Utfordringer og lykkestunder

Detaljer

KRAVSPESIFIKASJON. Tittel: Pris++ Oppgave: Utvikle en Android applikasjon med tilhørende databasesystem. Periode: 1. Januar til 11. Juni.

KRAVSPESIFIKASJON. Tittel: Pris++ Oppgave: Utvikle en Android applikasjon med tilhørende databasesystem. Periode: 1. Januar til 11. Juni. KRAVSPESIFIKASJON Tittel: Pris++ Oppgave: Utvikle en Android applikasjon med tilhørende databasesystem. Periode: 1. Januar til 11. Juni. Prosjektgruppe: 27 Prosjektmedlem: Ole Almenning Stenhaug Veileder.

Detaljer

Høgskolen i Oslo og Akershus. Forprosjektrapport. Gruppe 11

Høgskolen i Oslo og Akershus. Forprosjektrapport. Gruppe 11 Høgskolen i Oslo og Akershus Forprosjektrapport Gruppe 11 Michael Pande, Petter L. Olsen, Diego A. Pasten 23.01.2015 Presentasjon Vi er en gruppe på tre dataingeniørstudenter som har tatt på oss oppgaven

Detaljer

Gruppe Forprosjekt. Gruppe 15

Gruppe Forprosjekt. Gruppe 15 Forprosjekt Gruppe 15 Marius Ylven Westgaard - s236797 - Anvendt Datateknologi Lise Janbu Eide - s236361 - Dataingeniør Lavanja Jeyenthiran - s236346 - Dataingeniør Kristian Pedersen - s236728 - Anvendt

Detaljer

Releaseskriv versjon 2.13. Vedr. INSTALLASJONSPROSEDYRER. Versjon 2.13.36. Pr. 30. MARS 2012 Copyright. Daldata Bergen AS

Releaseskriv versjon 2.13. Vedr. INSTALLASJONSPROSEDYRER. Versjon 2.13.36. Pr. 30. MARS 2012 Copyright. Daldata Bergen AS APPENDIX Releaseskriv versjon 2.13 Vedr. INSTALLASJONSPROSEDYRER Versjon 2.13.36 Pr. 30. MARS 2012 Copyright Daldata Bergen AS Bransjeoversikt- se vår webside: www.daldatabergen.no : Side 1 av 11 Innholdsfortegnelse

Detaljer

Kravspesifikasjon. Høgskolen i Oslo, våren 2011 Sted og dato: Oslo, 9. februar 2011. Gruppemedlemmer

Kravspesifikasjon. Høgskolen i Oslo, våren 2011 Sted og dato: Oslo, 9. februar 2011. Gruppemedlemmer Kravspesifikasjon Høgskolen i Oslo, våren 2011 Sted og dato: Oslo, 9. februar 2011 Gruppemedlemmer Adeel Yousaf Khan s141459 Mats Klingenberg Naustdal s148155 Nur M. Ahmed s148108 Thomas Wiborg s161335

Detaljer

!!!!!!!!!!!! !!!!!!!!!!! WP-WATCHER WORDPRESS SIKKERHET

!!!!!!!!!!!! !!!!!!!!!!! WP-WATCHER WORDPRESS SIKKERHET WP-WATCHER WORDPRESS SIKKERHET WP-WATCHER BACKUP - SIKKERHETSKOPIERING «Hei Jeg oppdaterte en plugin på siden min og nå kommer jeg ikke inn på siden min i det hele tatt. Kan du hjelpe meg?» «Hjelp Jeg

Detaljer