Examensarbete 20 poäng D-nivå KOMPETENSSYSTEM. Reg.kod: Oru-Te-EXA089-D108/04 Peter Lorenz. Magisterprogrammet i Datateknik 160 p

Storlek: px
Starta visningen från sidan:

Download "Examensarbete 20 poäng D-nivå KOMPETENSSYSTEM. Reg.kod: Oru-Te-EXA089-D108/04 Peter Lorenz. Magisterprogrammet i Datateknik 160 p"

Transkript

1 Examensarbete 20 poäng D-nivå KOMPETENSSYSTEM Reg.kod: Oru-Te-EXA089-D108/04 Peter Lorenz Magisterprogrammet i Datateknik 160 p Örebro vårterminen 2004 Examinator: Lars Karlsson COMPETENCE SYSTEM Örebro universitet Örebro University Institutionen för teknik Department of technology Örebro SE Örebro, Sweden

2 Sammanfattning Denna rapport beskriver utvecklingen av ett kompetenssystem i ASP.NET och programmeringsspråket C# för publikation på ett intranät. Projektstyrningsmodellen PMM (Project Management Model) och utvecklingsmetoden RUP (Rational Unified Process) har använts vid projektets genomförande. De kunskaper om RUP som projektet gav har tillsammans med litteraturstudier om TPFDmetoden (TestPlan Före Design) och XP (Extreme Programming) resulterat i en jämförelse mellan dessa metoder. Abstract This report describes the development of an online competence management system in ASP.NET and the programming language C#. The project management model PMM and RUP (Rational Unified Process) have been used in the project. The report also includes a comparison between RUP, TPBD (TestPlan Before Design) and XP (Extreme Programming).

3 Förord Till grund för denna rapport ligger det examensarbete som utförts på uppdrag av Meteorit AB under våren Examensarbetet avslutar magisterprogrammet i Datateknik vid Örebro Universitet, Institutionen för Teknik. Jag vill speciellt tacka följande personer: Peter Moström, min handledare på Meteorit, för att han gett mig förtroendet att utveckla det nya kompetenssystemet. Projektets referensgrupp som kommit med många bra förslag på systemets funktionalitet. Håkan Lindegren, min handledare vid Örebro Universitet som granskat och gett goda råd om rapportens utseende. Örebro den 31 maj 2004 Peter Lorenz

4 INNEHÅLLSFÖRTECKNING 1 INLEDNING BAKGRUND SYFTE METOD OCH KÄLLOR BEFINTLIGT KOMPETENSSYSTEM GENERELLA KOMPETENSSYSTEM REFERENSGRUPPSMÖTEN PPH-KURSEN LITTERATURSTUDIER PROJEKTBESKRIVNING ÖVERGRIPANDE KRAV PÅ UTFORMNING AV SYSTEMET METODIK PMM Vattenfallsmodellen RUP MICROSOFT.NET ASP.NET ADO.NET DataSet DataReader ANVÄNDARAUTENTISERING I ASP.NET SESSIONSOBJEKTET HOGIA KOMPETENSUTVECKLING RESULTAT ANVÄNDARGRÄNSSNITT SYSTEMDESIGN Utvecklings- och målmiljöer Logik Databaskonstruktion Inloggning och autentisering av användare JÄMFÖRELSE AV RUP, EXTREME PROGRAMMING OCH TPFD XP TPFD RUP ARTEFAKTMÄNGD SAMMANFATTNING DISKUSSION REFERENSER Peter Lorenz 4(47)

5 1 Inledning 1.1 Bakgrund Meteorit är ett konsultbolag inom systemutveckling och nätverk som grundades i Örebro Deras affärsidé är att vara en stark och långsiktig IT-partner för större företag och organisationer. Meteorit har ett behov av att beskriva och kontinuerligt uppdatera vilken kompetens respektive medarbetare har. I anslutning till offerter, planering av uppdrag eller att man helt enkelt behöver hjälp av en viss karaktär är det viktigt att snabbt och enkelt kunna ta reda på vem som kan vad om en bransch, produkt eller teknologi. Det finns också ett behov av att kunna se hur den gemensamma kompetensen är fördelad per organisatorisk enhet för att man skall få en bild av vilken kompetens som finns var. Det är också viktigt i den strategiska kompetensplaneringen. Meteorit har sedan tidigare tagit fram ett system för att hantera kompetens men detta system kom aldrig i drift och har därmed inte använts. Nu är systemet något föråldrat och behöver byggas om. 1.2 Syfte Syftet med examensarbetet är att genom systemering och programmering ta fram ett nytt kompetenssystem. Detta skall sedan publiceras på intranätet och vara tillgängligt för alla Meteorits anställda. PMM (Project Management Model) och RUP (Rational Unified Process) kommer att användas som styrmetoder vid projekt och utvecklingsarbetet. De erfarenheter om RUP som arbetet ger, kommer tillsammans med litteraturstudier om TPFD-metoden (TestPlan Före Design) och XP (Extreme Programming) att ligga till grund för en jämförelse av olika programutvecklingsmetoder. Peter Lorenz 5(47)

6 2 Metod och källor Detta avsnitt beskriver de metoder och källor som ligger till grund för kravspecifikation och utveckling av det nya kompetenssystemet. 2.1 Befintligt kompetenssystem Meteorit utvecklade redan år 2001 ett kompetenssystem i Java, se figur 2.1. Systemet blev dock aldrig helt färdigställt och togs ej i bruk på grund av dess många buggar och brist på funktionalitet. Grundtanken i systemet var att den anställde skulle gå igenom alla inlagda kompetenser och ange nivå noll på de kompetenser man saknade. Övriga delar av systemet fungerade ej. Figur 2.1: Gammalt kompetenssystem 2.2 Generella kompetenssystem Skärmdumpar på kommersiella system hämtade från (LCube AB, 2004) och (P&L Nordic AB, 2004) har studerats för att inspirera och ge idéer om vilken funktionalitet som bör ingå i ett kompetenssystem. 2.3 Referensgruppsmöten Tre möten med referensgrupp bestående av kompetensansvariga vid företaget har hållits. Första mötet hölls i samband med förberedelsefasen och resulterade i ett stort antal krav på systemet. Andra mötet ägde rum innan konstruktion för att diskutera programmets design. Tredje mötet hölls för att fastställa testrutiner innan test-och-felrättning av systemet påbörjades. 2.4 PPH-Kursen Hösten 2004 gick jag kursen PPH (Programvaruutveckling och projekthantering) vid Örebro Universitet, Institutionen för Teknik. Kursen har utarbetats av Håkan Lindegren och går på halvfart en hel termin. Studenterna lottas in i grupper om fyra personer och skall sedan bedriva ett utvecklingsprojekt med hjälp av TPFD-metoden, dvs kravspecificering, testplan, design och implementation. För att bli godkänd krävs att en produkt levereras och fungerar enligt uppställda krav. Det är främst via kursen jag har kännedom om TPFD-metoden, som jämförs med RUP och XP i den här rapporten. Peter Lorenz 6(47)

7 I min grupp beslöt vi oss för att ta fram ett Windowsprogram i vilket man enkelt skulle kunna budgetera sin vardagliga ekonomin. Resultatet vid kursens slut var programmet HemBudget (2003). Det inkluderar funktioner som till exempel fleranvändarstöd och grafisk statistik. 2.5 Litteraturstudier Lunell (2003), Beck (1999) och Lindegren (2003) har studerats för att ge underlag för en jämförelse mellan utvecklingsmetoderna RUP, XP och TPFD. Kriterier för jämförelsen sattes långt in i projektet. Erfarenheterna från TPFD och RUP blev där styrande. Kriterierna ser ut så här: Vilka är skillnaderna i kravhantering? Vad är skillnaden i dokumentmängd? Hur väl lämpar sig metoderna i utbildningssyfte? Peter Lorenz 7(47)

8 3 Projektbeskrivning Detta avsnitt beskriver övergripande krav på systemet samt de projektstyrnings- och utvecklingsverktyg som använts under projektets gång. Sist i avsnittet presenteras den kompetensutvecklingsmodell som legat till grund för systemet. 3.1 Övergripande krav på utformning av systemet Systemet skall utvecklas i form av en webbapplikation för publicering på intranätet. Ingen extra inloggning skall vara nödvändig för användaren. Autentisering skall ske via företagets Active Directory. Detta kallas för single sign-on. Två typer av användare skall finnas i systemet, administratör och anställd. Administratörerna skall ha tillgång till analyser, utvecklingshistorik samt systemadministration. För att klassas som administratör av systemet skall det räcka med att användaren är medlem i gruppen KompetensAdmin i Active Directory. Applikationen skall utvecklas i ASP.NET och C#. Programmet skall spara information i en Microsoft SQL-databas. Systemet skall integreras med Hogia för att kunna sortera anställda och visa information utifrån företagets organisatoriska enheter. (Hogia är ett moduluppbyggt affärssystem. Moduler finns för till exempel fakturering, kundreskontra; projektredovisning; tidsredovisning etc.) PMM skall användas som styrmetod under projektets gång. RUP skall användas som utvecklingsmetod. Systemet skall döpas till Kompetensia v1.0 Meteorit Professional Edition. 3.2 Metodik För att kunna se hur olika aktiviteter är relaterade till varandra samt kunna följa ett projekts livscykel används ofta en projektstyrnings- och utvecklingsmetod. Här följer en genomgång av PMM och RUP. På grund av sitt historiska värde beskrivs även Vattenfallsmodellen PMM Figur 3.1: Faser i PMM Peter Lorenz 8(47)

9 PMM (Project Management Model) är en projektstyrningsmodell som Meteorit tillämpar. figur 3.1 visar en överblick av de aktiviteter som ett projekt passerar under sin livscykel. PMM används för att säkerställa att: En metodisk modell finns som stöd vid projektarbetet. Krav, mål och omfattning är klargjorda och motsvarar leveransobjekt. Nivån på kontroll är tillräcklig för att uppfylla uppdragsgivarens direktiv. Kvalitetssäkring kan genomföras på ett och samma sätt för alla projekt. Kunden får en positiv bild och upplever en genomgående hög kvalitet i Meteorits arbetssätt i projektet. Initieringsfas (Initiate) Uppdragsbeskrivningen (benämnd REM i figur 3.2) fungerar som indata till initieringsfasen. Dokumentet klargör vad som förväntas av projektet, tidpunkt för leverans samt till vilken kostnad projektet kan genomföras. Den är en hörnsten i projektinitieringen och ligger som grund till beslut om projektet kan genomföras eller ej. Projektets sponsor måste signera uppdragsbeskrivningen för att säkerställa att dess innehåll överensstämmer med förväntat resultat. Projektspecifikationen (PS) är utdata från initieringsfasen. Den beskriver resultatet av fasen och fungerar som kontrolldokument för den efterföljande styrningen av projektet. Dokumentet måste godkännas av projektstyrningsgruppen eller sponsorn innan projektets genomförandefas kan påbörjas. Figur 3.2: Initieringsfasen Genomförandefas (Manage) Under genomförandefasen bedrivs parallellt alla de aktiviteter som finns specificerade i projektspecifikationen. Arbetet är händelsedrivet vilket betyder att oplanerade händelser är förväntade. För att hantera detta hålls löpande möten, övervakning, förändringshantering, verifikation samt acceptanstest och projektets sponsor hålls informerad om projektets framskridande genom leveransdokument (DEL). Denne måste sedan returnera ett signerat acceptansprotokoll (ACC) för att bekräfta att resultatet överensstämmer med kraven på projektet. Project Working Model I denna aktivitet, som drivs parallellt med Manage, tillämpas någon utvecklingsmetod för programvara, till exempel RUP. Avslutningsfas (Terminate) I avlutningsfasen lämnas leveransobjektet över till ägaren tillsammans med dokumentation till dess supportorganisation. Projektgruppen sammanställer erfarenheterna från projektet och resurser frigörs. Peter Lorenz 9(47)

10 3.2.2 Vattenfallsmodellen Vattenfallsmodellen är en utvecklingsmodell för programvara. Den togs fram på 70-talet då man såg behov av ett strukturerat arbetssätt. Den bygger på illusionen att det är möjligt att i ett tidigt skede av projektet fastställa och frysa systemets samtliga krav. Faserna i tabell 3.1 passeras och en ny fas kan inte påbörjas förrän den gamla är helt färdig. Eventuella problem som dyker upp skjuts på framtiden eller kodas runt och om kravändringar hotar arbetets gång håller man sig till det som bestämts från början. Kravanalys Design Implementation och deltest Systemtest I dag finns stor enighet om att vattenfallsmodellen inte lämpar sig för mjukvaruutveckling. Det har visat sig att ett parallellt och iterativt arbetssätt, som exempelvis RUP förespråkar lämpar sig mycket bättre än vattenfallsmodellens linjära och sekventiella metodik (Tallung, 2003). Tabell 3.1: Vattenfallsmodellens faser RUP RUP är en generell process för programvaruutveckling. Det är en kommersiell produkt som marknadsförs och utvecklas av Rational Software Corporation (IBM Rational, 2004) och nya utgåvor kommer regelbundet. I RUP har man försökt samla mycket av dagens bästa praxis inom programvaruutveckling och den är avsedd att fungera i så väl små som stora projekt. Detta betyder att RUP innehåller en stor mängd dokumentation och mallar, många av mycket abstrakt karaktär. Det finns ofta ett behov av att anpassa RUP efter projektets storlek, konkretisera beskrivningar och komplettera anvisningar med mera, därför brukar RUP även kallas för en konfigurerbar process. Bästa praxis betyder att man i RUP inkluderat ett antal väl beprövade metoder från tidigare programvaruutvecklingsmodeller. Dessa kan användas vid utveckling utan att för den skull tillämpa RUP. I dokumentationen återfinns följande sex beprövade metoder. Iterativ utveckling Utvecklingen delas upp i fyra större faser enligt figur 3.3 inom vilka ett antal iterationer sker. På svenska skulle dessa faser kunna kallas Föreberedelse, Etablering, Konstruktion och Överlämning (Lunell, 2003). Antalet iterationer i varje fas är beroende av projektets storlek och behov. Peter Lorenz 10(47)

11 Figur 3.3: Faser och iterationer i RUP (Källa: IBM Rational, 2004) Varför iterativt? Alla projekt innehåller alltid ett visst antal risker. Det kan vara risker som direkt påverkar utvecklingen, som t.ex. brist på hårdvara eller otillräckliga utvecklingsverktyg men även affärsrisker som att konkurrenter hinner före. Desto tidigare i projektets livscykel en risk identifieras ju tidigare kan den elimineras. Om man inte driver utvecklingen iterativt, utan tillämpar vattenfallsmodellen, kan det vara mycket svårt att tidigt identifiera risker (Wilson- Welsh, 2003). Dessa brukar då inte uppenbara sig förrän man närmar sig slutet på livscykeln, se figur 3.4. Förutom riskidentifiering kan man även hantera de kravändringar som kommer in under projektets gång på ett effektivare sätt om man utvecklar iterativt. Figur 3.4: Vattenfallsmodellen och RUP Peter Lorenz 11(47)

12 Kravhantering Kravhantering är att samla in, dokumentera, organisera, prioritera och följa upp de krav som ställs på ett system. I tabell 3.2 isas ett antal olika kravtyper. Funktionalitet Användarvänlighet Stabilitet Prestanda Drift/Vidareutv. Resultatet av kravhanteringen i RUP är användningsfallsmodellen. Denna fungerar sedan som indata till Analys och Design, Implementation och Test. Tabell 3.2: Kravtyper Arkitekturcentrerad utveckling En byggfirma skulle aldrig komma på tanken att börja bygga ett hus utan att först ha tillgång till en ritning. Det har dock inte varit lika självklart vid mjukvaruutveckling. I RUP tillämpas därför det som kallas arkitekturcentrerad utveckling dvs. en ritning av hur systemet ska byggas upp och olika komponenters samverkan. För att beskriva ett systems arkitektur används 4+1 -vymodellen. Fem olika vyer beskriver designen av systemet sett från fem olika perspektiv, se figur 3.5. Logisk vy Implementationsvy Användningsfallsvy Processvy Driftsättningsvy Figur 3.5: 4+1 -vy över arkitektur De olika vyerna är: Användningsfallsvyn Så uppfattas systemet utifrån av dess användare. Logisk vy Implementationsoberoende beskrivning av systemets delar, beteende och samverkan. Implementationsvy Visar hur källkoden är organiserad och hur den logiska vyn skall implementeras. Processvy Systemet beskrivs som ett antal samverkande exekverbara delar. Används mest för större sammanhängande system. Driftsättningsvy Fysisk arkitektur för driftsättning av systemet. Peter Lorenz 12(47)

13 Visuell modellering Vid visuell modellering beskrivs systemets uppbyggnad med hjälp av standardiserade grafiska element. Modellen blir helt implementationsoberoende och verktyg finns för att utifrån modellen generera färdig källkod. I RUP kopplas den visuella modelleringen till UML (Unified Modelling Language). Upprepad kvalitetsverifiering Kvalitet är inget som kommer gratis bara för att man bygger ett datorprogram. Alla som är delaktiga i projektet är också ansvariga för produktens kvalitet. Det går inte att i efterhand omvandla ett system med låg kvalitet genom test-och-felrättning. Kvalitetskontroll måste föras aktivt genom hela livscykeln. Detta sker genom kontinuerliga granskningar och uppföljningar. Vid kravanalys kontrolleras kravens konsekvens och dess detaljrikedom, både inom projektet och för kommunikation med kunden. Vid analys och design kontrolleras om designmodellen överensstämmer med ursprungliga krav. I samband med implementation utförs tester för att garantera att implementerad kod överensstämmer med designmodellerna. Kvalitetsverifiering är alltså en aktivitet som hela tiden pågår parallellt med projektet. Konfigurations- och ändringshantering I ett projekt som bedrivs iterativt kommer flera versioner av dokument och programprototyper att tas fram. Ett konfigurations- och ändringssystem har till uppgift att hålla ordning på allt som projektet genererar. Detta inkluderar bl a versionshantering av källkod, konfigurationskontroll (vilka delar systemet utgörs av och hur de hänger ihop) samt ändringskontroll (hur hanteras ändringsbegäran och hur följs de upp). Ovanstående aktiviteter kan sägas vara giltiga för alla projekt, oavsett man tillämpar RUP eller inte. Nedan beskrivs ett antal aktiviteter som är mer specifika för RUP. Användningsfallsdriven utveckling Användningsfall utgör kärnan i RUP och kan ses som det nav omkring vilket övriga aktiviteter cirklar. Ett användningsfall beskriver ett händelseförlopp i systemet utifrån en aktörs synvinkel. En aktör kan vara en individ eller apparat som integrerar med systemet. Då man beskriver förloppet utgår man från handling och konsekvensregeln. Exempel på ett användningsfallsscenario för ett uttag från en bankomat skulle då se ut som följer: 1. Aktören (bankkunden) stoppar in kortet i automaten (handling) 2. Systemet svarar med att fråga efter kod (konsekvens) 3. Aktören anger pin-kod (handling) 4. Systemet verifierar kod mot databas och frågar efter belopp för uttag (konsekvens) 5. Aktören anger belopp(handling) 6. osv.. Användningsfallet ovan beskriver vad som kallas för ett huvudflöde. Utöver detta kan användningsfallet ha ett antal alternativflöden. Exempel på detta kan vara vad som sker om pin-koden i exemplet ovan inte godkänns. Alla användningsfall beskrivs också med ett diagram som tillsammans med närliggande fall bygger upp en användningsfallsmodell liknande den i figur 3.6. Peter Lorenz 13(47)

14 Figur 3.6: Exempel på användningsfallsdiagram Roller I RUP ingår även att definiera roller, dvs vem som gör något. Rollbegreppet beskriver vilken slags person som behövs för olika uppgifter inom en disciplin av RUP. En roll behöver inte betyda en person, utan kan mycket väl fyllas av flera individer. En person kan även ha flera olika roller. Meteorits RUP-konfiguration Figur 3.7 visar den konfiguration som Meteorit tillämpar och även PMMs roll i RUP. Peter Lorenz 14(47)

15 Figur 3.7: Meteorits RUP-konfiguration (Källa: Victorin, 2003) Peter Lorenz 15(47)

16 Kompetensia Kravhantering Tre iterationer är ett minimum vid kravhantering för att ta fram användningsfallsmodellen. Arbetet kan se ut som följer: 1. Identifiera och beskriv aktörer 2. Identifiera och beskriv användningsfall 3. Prioritera. Vilka är mer eller mindre viktiga? 4. Skriv en outline för samtliga användningsfall, dvs en översiktlig beskrivning av huvudflödet. 5. Prioritera bland användningsfallen. 6. Detaljera användningsfallen, identifiera alternativflöden 7. Prioritera bland användningsfallen. (Källa: Victorin, 2003) I samråd med styrgrupp godkänner projektledaren kraven innan arbetet med design och arkitektur påbörjas. Även designmodell och testplan skall godkännas innan implementation. Peter Lorenz 16(47)

17 Kompetensia 3.3 Microsoft.NET År 2000 lanserades Microsoft.NET. Det uttalas dotnet och har på svenska översatts till plattformen.net (Pagina Förlags AB, 2004). Huvudmålet med.net är att underlätta mjukvaruutveckling där fokus ligger på utbyte av information via Internet. Genom så kallade Web Services kopplas olika typer av system samman, vilket kan ge användaren möjlighet att ta del av sina data och program oavsett plats och plattform, se figur 3.8. Figur 3.8: Kommunikation via XML Web Services Tidigare har program som utvecklats för Windowsmiljö använt sig av anrop till Win32- biblioteken bestående av hundratals Windowsspecifika funktioner. Dessa bibliotek har i sin tur hanterat kommunikationen med Windows och hårdvaran. Källkoden har kompilerats direkt till maskinkod och ett körbart program. Detta har bidragit till följande problem: Plattformsberoende Ett program som är utvecklat i exempelvis Visual Basic kan bara köras i Microsoft Windows. Det finns inga garantier att samma exekverbara program, utvecklat i olika programmeringsspråk, genererar liknande maskinkod vilket gör det omöjligt att dela funktioner och bibliotek mellan olika språk. Win32 API är inget annat än en uppsjö av funktioner. Dessa funktioner innehåller ofta mycket kryptiska förklaringar och anropsparametrar vilket gör det svårt för en utvecklare. På Microsoft har man väl känt till dessa brister och har därför i plattformen.net vidtagit åtgärder för att eliminera dessa. Peter Lorenz 17(47)

18 Kompetensia De två första problemen har man löst på det sätt som illustreras i figur 3.9. Källkoden översätts först till vad som kallas Microsoft Intermediate Language (MSIL). Denna IL-kod körs sedan i exekveringsmotorn, Common Language Runtime (CLR). CLR hanterar översättningen till maskinspecifika instruktioner och kontrollerar även minnet, undantagshantering och skräpsamling. Figur 3.9: Virtuell exekveringsmotor kör programmets kod Problemet med det svårhanterliga Win32 API har man löst genom att införa det som kallas för klassramverket. Det är en stor samling klasser som innehåller all funktionalitet som en utvecklare kan tänkas behöva. Till skillnad från Win32 API är klasserna välorganiserade i så kallade namnutrymmen (eng. namespace). Till exempel innehåller namnutrymmet System klasser för att hantera de primitiva datatyperna: System.Int32, System.Array, System.String osv. (MSDN, 2004) 3.4 ASP.NET ASP.NET är en ny teknik för att kunna ta del av de ovan nämnda fördelarna även vid webbutveckling. Detta betyder att ASP.NET-sidor utvecklas i något av de programmeringsspråk som stöds av plattformen.net. Då en klient begär en webbsida kontrollerar webbservern om aktuell IL-kod finns tillgänglig och i så fall genereras HTML som skickas till klienten. Om IL-kod saknas eller om ASP.NET-sidans kod uppdaterats, kompileras sidan om på nytt. Den nya IL-koden sparas sedan på disk så att framtida kompileringar ej behövs. En annan nyhet i ASP.NET är code-behind vilket gör det möjligt att separera logik från presentation och lägga all kod i separata klassfiler. Peter Lorenz 18(47)

19 Kompetensia Kontroller I ASP.NET finns ett antal olika kontroller till hjälp när man bygger användargränssnitt. De anges i koden på följande sätt, vilket betyder att de kommer att hanteras av servern: <asp:tagname runat= server > Förutom HTML Controls, som består av vanliga HTML-kontroller, finns följande att tillgå: Server Controls Färdigpaketerad programkod för att utföra dynamiska funktioner. Detta kan vara till exempel <asp:button>, som representerar en knapp och dess funktionalitet eller <asp:label>, vilket ger en etikett. Validation Controls Används för att enkelt kunna validera en användares inmatade data i exempelvis fält. List Controls Tillhandahåller paketerad kod för att enkelt hantera listor från exempelvis en databas. Rich Control Avancerade komponenter som exempelvis kalender. User Control Kontroll som användaren själv kan skapa. Filändelsen blir.ascx och kontrollen kan sedan inkluderas i ASP.NET-sidorna. Det är lämpligt att skapa en användarkontroll om det är någon funktion som kommer att användas på flera sidor, som exempelvis en dropdown-lista över kompetensområden. 3.5 ADO.NET ADO.NET är en samling klasser för dataåtkomst som ingår i klassramverket. Det är möjligt att ansluta till Microsoft SQL Server men även andra databaser och XML-datakällor. Två nyheter i ADO.NET är DataSet och DataReader. Dessa förklaras närmare i nästa avsnitt. Många utvecklare misstar sig och tror att DataSet är bättre än DataReader eller tvärtom. Båda teknikerna har sina för- och nackdelar (Goodyear, 2004) och användningsområdet bör avgöra vilken teknik man väljer DataSet DataSet utgör kärnan i ADO.NETs så kallade frånkopplade arkitektur. Detta innebär att information hämtas från datakällan, lagras i minnet i form av ett DataSet och databaskopplingen stängs. När man är klar med databehandlingen överförs alla ändringar till databasen igen. Peter Lorenz 19(47)

20 Kompetensia Exempel på när ett DataSet är bra att använda: Vid avancerade beräkningar på resultaten från en databasfråga innan dessa skrivs ut på skärmen. Då man behöver kunna navigera fritt, filtrera, sortera och söka bland informationen som returnerats. Då samma information skall användas på flera olika ställen eller senare i programmet. Då informationen som hämtas ligger till grund för nya databasanrop. Om datakällan är ett XML-dokument istället för en databas. DataSet klarar av att läsa in XML-dokument direkt och kan även skriva till fil DataReader DataReader läser en rad i taget till minnet från databasen och kräver därför att databaskopplingen hålls öppen. DataReader kan bara navigera framåt en rad i taget. DataReader är bra att använda: Om det finns behov av att informationen som visas alltid är aktuell och därför måste hämtas från databasen varje gång den skall bearbetas. Om man bara behöver läsa informationen en gång, rad för rad, som till exempel vid databindning av Webbkontroller som listboxar, datagrid m.m. Då en liten mängd data skall hämtas från databasen ett upprepat antal gånger. 3.6 Användarautentisering i ASP.NET För att uppfylla kravet på single sign-on, se Avsnitt 3.1, måste användaren som besöker sidan identifieras av ASP.NET-applikationen. Denna information kan sedan användas för uppslag i företagets Active Directory för att hämta fler uppgifter, såsom till exempel namn och adress men även för att kontrollera användarens åtkomstgrad till applikationen utifrån grupptillhörighet i AD. Det finns tre olika säkerhetsinställningar som ligger till grund för vilken användare som ASP.NET-applikationen kommer att exekveras under (Brown, 2002). I det här kapitlet beskrivs dessa genom att följa ett inkommande anrop från en klient. I figur 3.10 visas den väg genom vilken en förfråga färdas innan ASP.NET-applikationen startar. Peter Lorenz 20(47)

21 Kompetensia Figur 3.10: ASP.NET-förfrågan [1] Inkommande förfrågan anländer till webbservern och slussas via operativsystemet vidare till INETINFO.EXE som är den process i Microsoft Internet Information Services (IIS) som hanterar webbservertjänster. Notera att denna process körs under användaren SYSTEM, den användare med flest rättigheter i operativsystemet. [2] Tråden inne i processen INETINFO som hanterar förfrågan kommer alltid att personifiera ett annat användarkonto, beroende på de aktuella autentiseringsinställningar i IIS som visas i figur Figur 3.11: Autentiseringsmetoder i IIS Peter Lorenz 21(47)

22 Kompetensia Om anonym åtkomst är påslagen kommer tråden att köras som användaren IUSR_MACHINE om inga andra inställningar gjorts. Integrerad Windows Autentisering lämpar sig mycket bra som autentiseringsmetod för intranät där användare och webbservrar ingår i samma domän. Uppgifter om den aktuella Windowsanvändaren på anropande klient används för åtkomstkontroll på servern. Om detta misslyckas kommer webbläsaren att be användaren om användarnamn och lösenord. Utbyte av uppgifter sker krypterat mellan klient och server. Integrerad Windows Autentisering används i kompetenssystemet för att uppfylla kravet på single sign-on-funktionalitet. [3] Om förfrågan gäller en ASP.NET-sida, vidarebefordras denna till aspnet_isapi.dll. Denna DLL fungerar som en brygga till den separata processen ASPNET_WP (arbetarprocessen). [4] Arbetarprocessen körs inte som SYSTEM utan under ett lokalt användarkonto som heter ASPNET. Detta konto installeras automatiskt vid installation av.net-ramverket. Till skillnad från SYSTEM-kontot har denna användare mycket få rättigheter till systemet. [5] Tråden som hanterar förfrågan i arbetarprocessen personifierar i sin tur en användare eller ej utifrån de inställningar som finns i filen web.config, som följer med webbapplikationen. <identity impersonate= true false /> Om identity impersonate sätts till true kommer användaren som identifierades av tråden i INETINFO att ärvas till aktuell tråd i ASPNET_WP, annars kommer denna att köras under samma användare som processen, dvs. ASPNET. [6] Här slussas förfrågan genom en serie moduler som kan liknas vid en uppsättning filter. Var och en av dessa moduler måste implementera gränssnittet IHttpModule. I tabell 3.12 visas de klasser som redan finns tillgängliga i.net-ramverket. Eftersom dessa filter hanterar förfrågningar innan de når en applikation, kan de till exempel omdirigera anonyma användare till en loginsida (vid formulärautentisering) eller neka användare åtkomst till applikationen. En genomgång av samtliga dessa ligger utanför denna framställning och lämnas därför därhän. Class DefaultAuthenticationModule FileAuthorizationModule FormsAuthenticationModule PassportAuthenticationModule SessionStateModule UrlAuthorizationModule Description Insures that an Authentication object is present in the context. This class cannot be inherited. Verifies that the remote user has NT permissions to access the file requested. This class cannot be inherited. Enables ASP.NET applications to use forms authentication. This class cannot be inherited. Provides a wrapper around PassportAuthentication services. This class cannot be inherited. Provides session-state services for an application. Provides URL-based authorization services for allowing or denying access to specified resources. This class cannot be inherited. Tabell 3.12: Klasser som implementerar IHttpModule. (Källa: MSDN Class Library, 2004) Peter Lorenz 22(47)

23 Kompetensia Vilken modul som kommer att användas baseras även det på inställningar i web.config: <authentication mode= None Windows Forms Passport / > Eftersom kompetenssystemet använder sig av Windowsautentisering kommer modulen WindowsAuthenticationModule att användas. Dess uppgift är att hantera den autentiseringsinformation som IIS skickar med förfrågan. Detta sker genom att ett WindowsPrincipalobjekt skapas som i sin tur innehåller ett WindowsIdentity-objekt via egenskapen Identity. Dessa två klasser implementerar gränssnitten IPrincipal respektive IIdentity. WindowsPrincipal-objektet kommer man sedan åt via egenskapen HttpContext.User. Aktuell användare hämtas från HttpContext.Current.User.Identity.Name. [7] Slutligen når förfrågan sin slutdestination, en så kallad HttpHandler. En aspx-sida ärver från System.Web.UI.Page som implementerar IHttpHandler-gränssnittet, så en vanlig aspxsida är en typ av HttpHandler. 3.7 Sessionsobjektet För att hålla reda på en användare över flera sidor i applikationen används i ASP.NET ett så kallat sessionsobjekt. Varje gång en ny användare besöker sidan instansieras ett objekt som är specifikt bundet till användarens webbläsare. Objektet är sedan åtkomligt från applikationens alla sidor. I kompetenssystemet används detta för att spara aktuellt användarid och om användaren är administratör eller ej. Information läggs in på följande sätt: Session["isAdmin"] = true; Och hämtas på motsvarande sätt: int usrid = (int) Session["UserID"]; 3.8 Hogia På Meteorit finns ett antal resultatenheter, exempelvis konsultgrupp 1, drift och stab. Samtliga anställda är medlemmar i någon av dessa enheter och information om detta återfinns i en SQL-databas som är kopplad till affärssystemet Hogia. Ett krav på Kompetensia är att kunna visa statistik fördelad per resultatenhet. Meteorit tillhandahåller en lagrad procedur för att hämta nödvändig information från Hogiadatabasen. 3.9 Kompetensutveckling Kompetens är varje människas teoretiska och praktiska kunskaper, arbetslivserfarenheter, sociala färdigheter, samt viljan och förmågan att omsätta dessa i handling Källa: Att utveckla kompetens är något som tar tid. Det är en process där ansvaret ligger på samtliga inblandade i företaget. Utan ordentliga verktyg är det svårt att styra utvecklingen och aktivt utvärdera dess resultat. Peter Lorenz 23(47)

24 Kompetensia En kompetensutvecklingsprocess bör bestå av fyra återkommande moment som visas i figur 3.13 (Advantum, 2004). Figur 3.13: Kompetensutvecklingens fyra faser Kompetensanalys Korta och långsiktiga mål identifieras och ställs upp. Kompetensinventering Nuvarande och önskad kompetens kartläggs och dokumenteras. Detta kan ske löpande och vid 2-3 större inventeringar per år i samband med utvecklingssamtal eller dylikt. Kompetensförsörjning Individerna tilldelas rätt medel för att kunna uppnå mål och kompetensnivåer satta i de två första stegen. Detta kan vara kurser, kvalitetsgrupper, diskussioner, mässbesök eller att en ny person anställs för att fylla ett visst kompetensbehov. Utvärdering Här analyseras kompetensläget för att se om målen uppnåtts och kompetensen ökat inom önskade områden. Resultaten från utvärderingen blir indata till en ny kompetensanalys. Peter Lorenz 24(47)

25 Kompetensia 4 Resultat Detta avsnitt beskriver det färdiga kompetenssystemet utifrån användarperspektiv samt systemdesign och databaskonstruktion. 4.1 Användargränssnitt En översikt av användargränssnittet visas i figur 4.1. Applikationens indexsida innehåller två ramar. Vid start laddas menyn i den vänstra ramen och blir på så sätt alltid synlig. I den högra ramen laddas startsidan. Menyval visas därefter alltid i den högra ramen. Figur 4.1: Startsida - Kompetensia Genomgången av sidorna i detta avsnitt följer den ordning en ny användare rekommenderas följa. Personlig info Här anges namn, telefon och övriga personliga uppgifter tillsammans med bakgrund, tjänster och utbildning. Det finns även möjlighet att ladda upp en bild. Kompetensaktiviteter Användaren skall här lägga in sin projekthistorik, dvs. uppgifter om tidigare projekt och de arbetsuppgifter som dessa inkluderat. Även aktiviteter som till exempel avslutade kurser eller litteraturstudier kan läggas in, se figur 4.2 och figur 4.3. Peter Lorenz 25(47)

26 Kompetensia Figur 4.2: Kompetensaktiviteter Figur 4.3: Lägg till ny aktivitet Peter Lorenz 26(47)

27 Kompetensia Certifiering Användaren lägger in de certifieringar som han/hon har tagit. Kompetensinventering Här skall användaren inventera sin kompetens. Detta sker genom att ange nuvarande- och önskad nivå inom ett kompetensområde, se figur 4.4. För att styrka angivna nivåer ges möjlighet att referera varje kompetensinställning till tidigare inlagda kompetensaktiviteter och certifieringar. Genom att klicka på Lägg till referens visas fönstret i figur 4.6. Figur 4.4: Kompetensinventering Längst ner på sidan visas de kompetenser man tidigare inventerat med möjlighet att ta bort eller uppdatera dessa, se figur 4.5. Figur 4.5: Kompetenslista vid kompetensinventering Peter Lorenz 27(47)

28 Kompetensia Figur 4.6: Lägg till referens Figur 4.7: Kompetensmål Peter Lorenz 28(47)

29 Kompetensia Kompetensmål Här skall individuella kompetensmål ställas upp utifrån egna önskemål och de krav som finns samlade i företagets gemensamma målpool, se nedan. Användaren anger då målet är uppnått och detta markeras i översikten med en stjärna, se figur 4.7. Målpool Mål identifieras av företagsledningen och läggs ut i målpoolen. Härifrån kan de anställda sedan flytta mål till sina personliga kompetensmål. Kompetensgrupper Här listas de kompetensgrupper och dess medlemmar som finns på företaget. Möjlighet finns att gå med och gå ur kompetensgrupp. Min Profil All information som användaren angett i systemet, förutom kompetensmål, sammanställs under Min Profil. Denna kommer sedan att fungera som konsultprofil och möjlighet finns att skriva ut profilen och att spara denna som ett Worddokument, se figur 4.8. Bild Bild Bild Figur 4.8: Min Profil Längst ner på sidan Min Profil visas användarens kompetenslista. Det är en översikt av de kompetenser som användaren har angett vid sin kompetensinventering, se figur 4.9. Peter Lorenz 29(47)

30 Kompetensia Figur 4.9: Kompetenslista Genom att klicka på en kompetens i listan visas information om dess referenser och nivåhistorik, se figur Figur 4.10: Information om kompetensen MS SQL Server Admin Peter Lorenz 30(47)

31 Kompetensia Sök kompetens Följande sökfunktioner finns i Kompetensia, se figur 4.11: Visa profil Gå direkt till en anställds profil Fritextsökning Ange valfria kommaseparerade söktermer och systemet visar de personer som matchar sökningen och deras kompetensnivåer inom området. Kompetensaktiviteter Listar systemets alla inlagda kompetensaktiviteter. Certifieringar Listar systemets alla inlagda certifieringar. Projektsökning Möjlighet att markera flera av de kompetenser som finns inlagda i systemet och visa personer som bäst passar in på sökningen samt matchningsgrad. Möjlighet att filtrera sökresultat med en lägsta nivå på returnerade resultat. Figur 4.11: Sök kompetens Peter Lorenz 31(47)

32 Kompetensia För åtkomst till följande sidor krävs administratörsrättigheter. Utvecklingshistorik Ger möjlighet att analysera kompetensutvecklingen över tiden, dvs ändring i summan av nuvarande- och önskade nivåer. Resultat kan visas för en eller flera resultatenheter samt en kompetenskategori eller specifik kompetens, se figur 4.12 och figur Förutom nivåhistorik returneras även antalet anställda enligt sökkriterierna, se figur Figur 4.12: Sökkriterier för utvecklingshistorik Figur 4.13: Utvecklingshistorik Branschkunskap 2002 Peter Lorenz 32(47)

33 Kompetensia Figur 4.14: Antalet anställda som matchar sökningen Kompetenscirkel Visar hur kompetensen är fördelad procentuellt ett angivet år och grupperat efter valbar resultatenhet, se figur Figur 4.15: Kompetenscirkel Peter Lorenz 33(47)

34 Kompetensia Administrera målpool Här läggs nya mål in i företagets målpool. Här visas också vilka anställda som överfört ett visst mål till sina personliga kompetensmål. Systemadministration Möjlighet att administrera systemet, dvs ta bort användare, lägga till kompetenser och kategorier, kompetensgrupper, kompetensaktivitetstyper, administrera hjälpavsnitt och övrigt som har med systemets funktionalitet att göra. En översikt av ASP.NET-sidorna och användarkontrollernas struktur visas i figur Peter Lorenz 34(47)

35 Kompetensia Figur 4.16: Applikationens användargränssnitt Peter Lorenz 35(47)

36 4.2 Systemdesign Utvecklings- och målmiljöer Utvecklingsmiljö Följande utrustning och mjukvara har använts vid utveckling av Kompetensia: Server med Microsoft SQL Server 2000 Internet Information Server 5.0 med.net-ramverket installerat som webbserver En klientdator med Windows XP som operativsystem. Microsoft Visual Studio.NET som utvecklingsverktyg. Microsoft Word 2003 som ordbehandlare Microsoft Internet Explorer 6.0 som webbläsare Visual Paradigm för att generera UML-diagram från kod Rational Rose för design av systemet Målmiljö Följande hård- och mjukvara utgör systemets målmiljö: Server med Microsoft Server 2003 Internet Information Server 5 med.net-ramverket installerat. Systemet är uppbyggt som en treskiktsarkitektur där grundpelarna i systemet utgörs av de åtta klasser som illustreras i figur Deras uppgift är att dölja programmets logik för aspxsidorna samt erbjuda omvärlden ett väldefinierat gränssnitt. Valet av denna design gör det enkelt att integrera dessa komponenter i andra system. Kompetens (CCompetence) Kompetensmål Kompetensaktiviteter Certifiering (CTarget) (CMilestone) ( CCertificate) Användare (CUser) Kompetensgrupper (CCompGroup) Sökning (CSearch) Analys (CAnalysis) Figur 4.17: De åtta klasserna utgör logiklagret, systemets grundpelare Varje klass tillhandahåller metoder och egenskaper för den funktionalitet som klassen representerar. Kommunikation mellan logiklagret och andra system, såsom Active Directory och Hogiadatabasen, sker via tre databasklasser som visas i figur Peter Lorenz 36(47)

37 Figur 4.18: Kommunikation mellan logik och datakällor För att till exempel komma åt metoder i klassen CUser från en code-behind sida (se avsnitt 3.4) instansieras ett objekt av klassen på följande sätt: CUser usr = new CUser(); Logik Här följer en genomgång av de åtta grundklasserna med exempel på funktionalitet. Kompetensklassen (CCompetence) Tillhandahåller metoder för kompetensspecifika uppgifter såsom: Hantera systemets inlagda kompetenser och dess kategorier. Metoder för kompetensinventering, dvs. hantera en anställds kompetenser och kompetensnivåer. Historik över ändringar i kompetensnivåer. Hantera den anställdes kompetenslista. Kompetensmål (CTarget) Här finns samtliga metoder samlade för att hantera en anställds personliga mål samt mål i målpoolen. Bland annat: Visa, lägg till, ta bort och uppdatera mål. Flytta mål från målpoolen. Markera mål som uppnåtts. Hämta mål där deadline passerats. Peter Lorenz 37(47)

38 Kompetensaktiviteter (CMilestone) Hanterar all funktionalitet för kompetensaktiviteter. Här finns metoder för att: Visa, lägga till, ta bort och uppdatera aktiviteter. Hantera aktivitetstyper. (Standardtyper: Projekt, Litteratur, Kurs och Övrigt) Certifiering (CCertificate) Här finns metoder för att hantera en anställds certifieringar. Visa, lägga till, ta bort och uppdatera certifieringar. Hämta titel och företagsnamn på samtliga certifieringar i databasen. Användare (CUser) Tillhandahåller metoder för att hantera användare. Detta inkluderar: Visa, lägg till, uppdatera, ta bort en användare. Hantera inloggning av en användare. Hämta alla användare. Uppdatera senaste logindatum. Kompetensgrupper (CCompGroup) Hanterar kompetensgrupper såsom: Visa kompetensgrupp och dess medlemmar. Lägg till och ta bort medlemmar från en grupp. Sökning (CSearch) Här finns alla de metoder som behövs för att kunna söka i systemet såsom: Kommaseparerad fritextsökning på kompetensnamn. Namn och nivåer returneras på de som matchar sökningen. Projektspecifik sökning. Ett antal av systemets inlagda kompetenser kryssas i och resultatet visar de personer som bäst matchar sökningen med matchningsgrad i procent. Analys (CAnalysis) Innehåller metoder som behövs för kompetensanalys, dvs. utvecklingshistorik och kompetenscirkel såsom: Summa önskad- och nuvarande nivå per kategori och specificerad kompetens Summa önskad- och nuvarande nivå per angiven resultatenhet Summa kompetensnivå för ett givet år Summa kompetensnivå för en viss kategori samt kompetens ett givet år Databaskonstruktion Arbetet med databasmodellen i figur 4.19 har pågått parallellt med logikdesignen och reviderats under projektets gång. Alla SQL-frågor hanteras av lagrade procedurer i databasen. Peter Lorenz 38(47)

39 Figur 4.19: Databasmodellen Peter Lorenz 39(47)

40 4.2.4 Inloggning och autentisering av användare Ett viktigt krav på systemet är det som kallas single sign-on, se avsnitt 3.1. Detta betyder att användaren av systemet inte skall behöva gå igenom mer än ett inloggningsförfarande. Autentisering av användaren påbörjas i filen Start.aspx. De olika momenten visas i figur Användarens windowsinloggningsid hämtas från User.Identity.Name (se avsnitt 3.6). Hos Meteorit består detta ID av första bokstaven i förnamnet följt av de två första i efternamnet. Från Active Directory hämtas med hjälp av detta ID personens fullständiga namn samt information om personen tillhör administrationsgruppen eller ej. Om användaren inte finns i AD avslutas körningen med ett felmeddelande. Namnet används sedan för uppslag i Kompetensiadatabasen där det kontrolleras om användaren har ett konto eller ej. Finns inget konto skapas ett nytt och applikationen startar. HttpContext.Current.User.Identity.Name Active Directory Finns i AD Finns ej i AD Kompetensia Databas Finns i Kompetensias databas Finns ej i Kompetensias databas Kompetensia Start Lägg till ny användare Figur 4.20: Inloggningsförfarande Peter Lorenz 40(47)

41 5 Jämförelse av RUP, Extreme Programming och TPFD Avsnittet ger en översikt av två andra utvecklingsmetoder som hade kunnat tillämpats under projektets gång istället för RUP. Till grund för jämförelsen av metoderna i kapitlets sammanfattning ligger de erfarenheter av RUP som examensarbetet givit, tillsammans med litteraturstudier om TPFD-metoden (TestPlan Före Design) och XP (Extreme Programming). 5.1 XP XP är uppbyggt av ett antal regler. Jämfört med RUP, där man kan konfigurera och använda de delar man har behov av, måste man i XP tillämpa samtliga regler för att metoden skall fungera. Varje regel utgör en kedjelänk, se figur 5.1. Tas en länk bort havererar hela idén med XP. Figur 5.1: XP-kedjans regler Regel 1 User stories Projektet drar igång utan att specificera några detaljerade krav på produkten, förutom några kortfattade så kallade user stories, författade på enkla berättarkort. De är skrivna av kunden och beskriver vad systemet skall göra. Det som skiljer dessa från RUPs användningsfall och TPFDs användarkrav är detaljrikedommen. I XP är denna endast tillräcklig för att grovt bestämma implementationstiden. När det är dags att implementera en user story träffas utvecklarna och kunden för en muntlig detaljerad beskrivning av funktionerna. Regel 2 Konstant omstrukturering Eftersom det inte finns någon detaljspecifikation av kraven, finns inte heller möjlighet att ta fram någon design- och systemspecifikation innan implementation påbörjas. Det betyder att systemdesignen kommer att ändras flera gånger under projektets gång. Detta tillåts dock och anses säkert så länge koden ständigt omstruktureras. Även i RUP och TPFD är omstrukturering ett välkommet inslag men då endast för att kontrollera och förbättra en redan framtagen design och inte alls lika omfattande som i XP. Regel 3 Automatiserade enhets- och integrationstester Det är känt att omstrukturering av kod kan medföra att fler fel byggs in i koden, då viktiga data kanske flyttas eller tas bort. Detta förebyggs i XP av ständiga och utförliga enhetstester. Dock kommer dessa tester enbart att avslöja fel i koden och inte fel man infört som påverkar Peter Lorenz 41(47)

42 systemets övergripande design. Kom ihåg att någon designspecifikation inte finns att tillgå, därför förespråkar XP att integrationstester utföras dagligen. Regel 4 Parprogrammering För att ytterligare förhindra fel i systemdesignen tillämpas i XP parprogrammering. Den som för tillfället inte programmerar kan då kontrollera så att de omstruktureringar som görs inte påverkar integrationen med systemets övriga delar. Regel 5 Användare Eftersom det inte finns någon utförlig dokumenterad specifikation av projektet används en riktig användare som programmerarnas bollplank. Denne kundrepresentant får fungera som detaljkrav under hela projektets gång och därför behövs inga detaljerade och dokumenterade krav. I den ursprungliga handledningen (Beck, 1999) hävdar Kent Beck, en av XPs tre grundare, att en kundrepresentant skall finnas tillgänglig för utvecklingsteamet 40 timmar i veckan. Det bästa är att helt enkelt knyta henne/honom till projektgruppen. Kritikerna hävdar att det är alltför kostsamt för kunden att avvara en anställd till projektet så länge detta pågår. Beck menar att det är ett val som måste göras. Om det är för dyrt att avvara en anställd för att bidra till utvecklingen av ett väl fungerande system, då kanske systemet inte ska införskaffas alls (Beck, 1999). Sedan 1999 har denna kundroll förändrats och idag är det inte längre en person utan snarare ett team av kundrepresentanter som håller ständig kontakt med utvecklingsteamet, utan att för den skull behöva sitta i samma rum som programmerarna. 5.2 TPFD TPFD är en utvecklingsmetod som lärs ut i kursen Programvaruutveckling och Projekthantering vid Örebro Universitet, Institutionen för Teknik. Den är framtagen av Håkan Lindegren och är lämplig att användas till små- eller delar av ett större projekt. TPFD står för TestPlan Före Design och tanken är att lära sig så mycket som möjligt om det system som skall byggas innan implementationsfasen påbörjas, dvs raka motsatsen till vad XP förespråkar. TPFD är en inkrementell metod där ett inkrement består av fyra delprocesser, se figur 5.2. Egentligen är det en omskrivning av vattenfallsmodellen, som beskrevs i avsnitt Lindegren (2003, s. 369) hävdar att modellen fungerar; bara inkrementen hålls korta. Rekommenderad maxlängd på ett inkrement är 26 veckor. Figur 5.2: RGKU-modellen Peter Lorenz 42(47)

43 Varje delprocess innehåller ett antal aktiviteter som skall utföras, se figur 5.3. Under R-processen dokumenteras grundligt systemets funktionalitet genom dokumenten användarkrav och detaljkrav. En testplan utvecklas redan i denna process utifrån det som står i detaljkraven och ett konfigurationsdokument tas fram. I G-processen utvecklas en designspecifikation som skall ligga till grund för systemets implementation. Indata blir detaljkrav och testplan och vid processens slut skall en färdig produkt finnas för test- och felrättning. Dokument med en sammanställning av återstående problem samt ändringslogg skall också vara ett resultat av G-processen. I ändringsloggen läggs de förslag till ändringar som kommer in efter det att ett dokument stängts, dvs. godkänts av granskaren. Figur 5.3: Aktiviteter i TPFD-metoden K-processen syftar till att uppdatera dokument och verifiera produkten. Test- och felrättning påbörjas och resultatet från processen skall vara en väl fungerande produkt och en ordnad dokumentation. U-processen tillhandahåller aktiviteter för att hantera utgåvor, dvs. paketera produkt och utvecklingsmiljö. I denna process spelar konfigurationsdokumentet en betydande roll. Peter Lorenz 43(47)

PMM (Process Maturity Metrics) Allmänt. Mätetal för framgångsfaktorer. 1. CM konfigurationsstyrning

PMM (Process Maturity Metrics) Allmänt. Mätetal för framgångsfaktorer. 1. CM konfigurationsstyrning PMM (Process Maturity Metrics) PMM är en metod för att mäta processmognad i utvecklingsprojekt. I korthet går metoden ut på att man utvärderar sin utvecklingsprocess med avseende på ett antal framgångsfaktorer

Läs mer

Projektkaos. Chaos-rapporten. 34% av projekten avslutades i tid och enligt budget... ... 66% misslyckades!

Projektkaos. Chaos-rapporten. 34% av projekten avslutades i tid och enligt budget... ... 66% misslyckades! Projektkaos. Chaos-rapporten 34% av projekten avslutades i tid och enligt budget...... 66% misslyckades! 1 Standish Group, 2003 (www.standishgroup.com) Praxis Hantera krav Använd komponentarkitekturer

Läs mer

Guide för Innehållsleverantörer

Guide för Innehållsleverantörer Library of Labs Content Provider s Guide Guide för Innehållsleverantörer Inom LiLa ramverket är innehållsleverantörer ansvariga för att skapa experiment som "LiLa Learning Objects", att ladda upp dessa

Läs mer

Innehåll. Dokumentet gäller från och med version 2014.3 1

Innehåll. Dokumentet gäller från och med version 2014.3 1 Innehåll Introduktion... 2 Före installation... 2 Beroenden... 2 Syftet med programmet... 2 Installation av IIS... 2 Windows Server 2008... 2 Windows Server 2012... 6 Installation av webbapplikationen

Läs mer

Sänk kostnaderna genom a/ ställa rä/ krav och testa effektivt

Sänk kostnaderna genom a/ ställa rä/ krav och testa effektivt Sänk kostnaderna genom a/ ställa rä/ krav och testa effektivt Kravhantering / Testprocess - Agenda AGENDA Grundläggande kravhanteringsprocess. Insamling, dokumentation, prioritering, Test och förvaltning

Läs mer

Exempel på verklig projektplan

Exempel på verklig projektplan Exempel på verklig projektplan Detta är ett exempel på en proffessionell projektplan hämtad ur verkliga livet. Den visas inte i sin fullständighet, det mesta är bortklippt, men strukturen och mycket av

Läs mer

Agil programutveckling

Agil programutveckling Agil programutveckling Pontus Evertsson D00, Lunds Tekniska Högskola d00pe@efd.lth.se Anna Jennerheim D00, Lunds Tekniska Högskola d00aj@efd.lth.se 2003-05-15 1 1. Inledning 3 2. Extreme Programming (XP)

Läs mer

Praktikum i programvaruproduktion

Praktikum i programvaruproduktion Praktikum i programvaruproduktion Introduktion Föreläsare/Ansvarig: Pontus Boström Email:pontus.bostrom@abo.fi Rum A5055 Assistent: Petter Sandvik Email: petter.sandvik@abo.fi Rum: A5048 Föreläsningar:

Läs mer

Manual för din hemsida

Manual för din hemsida Manual för din hemsida Dynamiska hemsidor är en lösning för att man på ett enkelt sätt skall kunna lägga till, ändra och ta bort sidor på sin hemsida. För att detta skall vara möjligt bygger lösningen

Läs mer

Konfigurering av inloggning via Active Directory

Konfigurering av inloggning via Active Directory Konfigurering av inloggning via Active Directory Här följer en konfigureringsanvisning för inloggning via Active Directory i Hogia Personal Business Manager. Innehåll Systemkrav... 2 Operativsystem...

Läs mer

Javautvecklare. Utbildningsfakta. 400 YH-poäng, 2 år

Javautvecklare. Utbildningsfakta. 400 YH-poäng, 2 år Javautvecklare 400 YH-poäng, 2 år Utbildningsfakta Kurser (12 stycken) Grundläggande programmering och javaverktyg 50 yhp Grafiskt gränssnitt och interaktion 20 yhp Internet, webb och webbramverk 40 yhp

Läs mer

Din guide till. Teknisk Specifikation Säljstöd

Din guide till. Teknisk Specifikation Säljstöd Din guide till Teknisk Specifikation Säljstöd April 2014 Innehåll Systemkrav... 3 Operativsystem... 3 Mjukvara... 3 Maskinvara... 4 Datakällor... 4 Databas... 5 Databasstruktur... 5 Katalogstruktur...

Läs mer

Decentraliserad administration av gästkonton vid Karlstads universitet

Decentraliserad administration av gästkonton vid Karlstads universitet Datavetenskap Opponent(er): Markus Fors Christian Grahn Respondent(er): Christian Ekström Per Rydberg Decentraliserad administration av gästkonton vid Karlstads universitet Oppositionsrapport, C/D-nivå

Läs mer

Projekt- och kvalitetsstyrning på Frontec

Projekt- och kvalitetsstyrning på Frontec Projekt- och kvalitetsstyrning på Frontec Detta dokument beskriver hur Frontec bedriver utvecklingsprojekt med kvalitetssäkring FSAB_LS020_Projekt och kvalitetsstyrning A.doc Sida 1(6) Frontec kan projekt

Läs mer

MANUAL MOBIL KLINIK APP 2.2

MANUAL MOBIL KLINIK APP 2.2 MANUAL MOBIL KLINIK APP 2.2 Innehåll Innan appen tas i bruk 2 Registrera besök manuellt 6 Dokumentera besöket 7 Registrera besök med NFC-tagg 7 Planera nytt besök 9 Avboka besök 10 Patienter 10 Anteckningar

Läs mer

2014-2015 Alla rättigheter till materialet reserverade Easec

2014-2015 Alla rättigheter till materialet reserverade Easec 1 2 Innehåll Introduktion... 3 Azure Client SDK Libraries... 4 Översikt: Azure Client Libraries... 5 Azure SDK... 6 Azure SDK (forts.)... 7 Azure SDK (forts.)... 8 Cloud Services... 10 Cloud Services...

Läs mer

Opponentrapport på examensarbete Utveckling av ett affärssystem med Unified Process av Therese Sundström.

Opponentrapport på examensarbete Utveckling av ett affärssystem med Unified Process av Therese Sundström. Opponentrapport på examensarbete Utveckling av ett affärssystem med Unified Process av Therese Sundström. Författare Per Johansson, Henrik Wallinder Generellt Helhetsintrycket från genomläsning av uppsatsen

Läs mer

INSTALLATIONSINSTRUKTIONER FÖR VIDA INNEHÅLL

INSTALLATIONSINSTRUKTIONER FÖR VIDA INNEHÅLL VIDA INSTALLATIONSINSTRUKTIONER VIDA 2015 INNEHÅLL 1 INLEDNING... 3 2 FÖRE INSTALLATION... 4 2.1 Checklista för åtgärder före installation... 4 2.2 Tredjepartsprodukter... 4 2.2.1 Adobe Reader... 5 2.3

Läs mer

Elisabet Stöök Konsult SAS Institute AB Copyright 2003, SAS Institute Inc. All rights reserved.

Elisabet Stöök Konsult SAS Institute AB Copyright 2003, SAS Institute Inc. All rights reserved. Administrera din SAS miljö med SAS Metadata Server och SAS Management Console. Elisabet Stöök Konsult SAS Institute AB Copyright 2003, SAS Institute Inc. All rights reserved. SAS Intelligence Value Chain

Läs mer

BILAGA E till Programvaruprojekt ÅTERSTÅENDE PROBLEM MultiPC v1.0. Innehållsförteckning

BILAGA E till Programvaruprojekt ÅTERSTÅENDE PROBLEM MultiPC v1.0. Innehållsförteckning ÅTERSTÅENDE PROBLEM MultiPC v1.0 Rev 7 1(7) BILAGA E till Programvaruprojekt ÅTERSTÅENDE PROBLEM MultiPC v1.0 Här listas problem som kan behöva hanteras i kommande inkrement. De prioriteras alltså ner

Läs mer

PROGRAMUTVECKLINGSPROJEKT 1999-05-10

PROGRAMUTVECKLINGSPROJEKT 1999-05-10 $19b1'$5+$1'/('1,1* 1* 7,'5$ '5$33257 ,QQHKnOO INNEHÅLL...2 PROJEKTINFORMATION...4 SAMMANFATTNING...4 BAKGRUND...4 DATORMILJÖ...5 SÄKERHET...5 SYSTEMÖVERBLICK...5 ALLMÄNNA FUNKTIONER...6 LOGIN...6 FUNKTIONER

Läs mer

Objekt-orienterad utveckling. Objektorienterad analys och design. Objekt-orienterad programutveckling. Objekt-orienterad analys och design: Litteratur

Objekt-orienterad utveckling. Objektorienterad analys och design. Objekt-orienterad programutveckling. Objekt-orienterad analys och design: Litteratur Objekt-orienterad utveckling Saker man vill uppnå: Objektorienterad analys och design Sven-Olof Nyström Uppsala Universitet 16 mars 2005 en systematisk metod för att gå från problembeskrivning till färdigt

Läs mer

Storegate Pro Backup. Innehåll

Storegate Pro Backup. Innehåll Storegate Pro Backup Välkommen! I denna manual kan du bland annat läsa om funktioner och hur du ska konfigurerar programmet. Läs gärna vårt exempel om versionshantering och lagringsmängd innan du konfigurerar

Läs mer

Inledande programmering med C# (1DV402) Introduktion till C#

Inledande programmering med C# (1DV402) Introduktion till C# Introduktion till C# Upphovsrätt för detta verk Detta verk är framtaget i anslutning till kursen Inledande programmering med C# vid Linnéuniversitetet. Du får använda detta verk så här: Allt innehåll i

Läs mer

Netwise Office Web. 2001-12-05, Rev 1.0, CJ 1(30)

Netwise Office Web. 2001-12-05, Rev 1.0, CJ 1(30) Netwise Office Web Netwise Office Web... 2 Allmänt... 2 Användargränssnitt... 2 Inloggning... 4 Felmeddelande vid personlig inloggning... 5 Katalogsökning... 6 Användarinformation... 8 Avancerad sökning...

Läs mer

Tele2 Växel. Användarmanual Statistik

Tele2 Växel. Användarmanual Statistik Tele2 Växel Användarmanual Statistik Innehåll 1. Tele2 Växel Statistik... 3 1.1 Få tillgång till Tele2 Växel Statistik... 4 1.2 Översikt Tele2 Växel Statistik... 5 2. Tele2 Växel Statistik Bas... 7 2.1

Läs mer

Instruktion. Datum. 2013-06-19 1 (12) Coverage Dokument id Rev Status? - 1.0 Godkänd. Tillhör objekt -

Instruktion. Datum. 2013-06-19 1 (12) Coverage Dokument id Rev Status? - 1.0 Godkänd. Tillhör objekt - 20130619 1 (12)? 1.0 Godkänd Secure Manager Guide Hantera användarprofiler i tjänsten Telia Secure Manager Dokumentet beskriver hur du som administratör beställer och hanterar användarprofiler i administrationsportalen

Läs mer

Insamlingsverktyg - teknisk beskrivning av metadataformuläret

Insamlingsverktyg - teknisk beskrivning av metadataformuläret Digitala leveranser Insamlingsverktyg - teknisk beskrivning av metadataformuläret Innehåll: Allmänt Layout och uppbyggnad Hur man använder programmet Starta Fylla i metadata Skapa metadatafiler och leverera

Läs mer

Plattform as a Service, leverantör tillhandahåller plattformen, jag tillhandahåller applikation och ansvarar för denna.

Plattform as a Service, leverantör tillhandahåller plattformen, jag tillhandahåller applikation och ansvarar för denna. Modul 1: Molntjänst Publikt moln Privat moln Hybrid moln IaaS PaaS SaaS DaaS DaaS SLA Infrastructure as a Service, leverantör tillhandahåller infrastrukturen, jag tillhandahåller virtuella maskiner eller

Läs mer

Creo Customization. Lars Björs 2014-10-16

Creo Customization. Lars Björs 2014-10-16 Creo Customization Lars Björs 2014-10-16 Norra Europas största partner och återförsäljare av PTC relaterad programvara (Windchill, Creo, Arbortext, MathCad, Relex) 70 anställda Egen utvecklingsavdelning

Läs mer

Konfigurationer Video- och distansmöte Bilaga till Tekniska anvisningar

Konfigurationer Video- och distansmöte Bilaga till Tekniska anvisningar Konfigurationer Video- och distansmöte Bilaga till Tekniska anvisningar Innehållsförteckning 1 Inledning... 3 2 Inkopplingsalternativ... 4 2.1 Lokal gatekeeper ansluten till Central Sjunet SBC... 4 2.2

Läs mer

Användarhantering Windows 7 I denna laboration kommer vi att skapa nya användare och grupper och titta på hur man hantera dessa.

Användarhantering Windows 7 I denna laboration kommer vi att skapa nya användare och grupper och titta på hur man hantera dessa. Användarhantering Windows 7 I denna laboration kommer vi att skapa nya användare och grupper och titta på hur man hantera dessa. Antal: Enskilt Material: En dator med Windows 7 (Vista, Windows 8 eller

Läs mer

DOTPROJECT Manual. Projektledare och administratör har tillgång till fler funktioner och mer information än andra roller i det webbaserade systemet.

DOTPROJECT Manual. Projektledare och administratör har tillgång till fler funktioner och mer information än andra roller i det webbaserade systemet. Projektarbeta med DOTPROJECT Projektplattformen Dotproject kan användas direkt via webben med en vanlig webbläsare. Systemet är framförallt lämpligt om du snabbt och enkelt vill dela all projektinformation,

Läs mer

Undervisningen ska ge eleverna tillfälle att arbeta i projekt samt möjlighet att utveckla kunskaper om projektarbete och dess olika faser.

Undervisningen ska ge eleverna tillfälle att arbeta i projekt samt möjlighet att utveckla kunskaper om projektarbete och dess olika faser. WEBBTEKNIK Webbteknik används för att utveckla och vidareutveckla statiska och dynamiska webbsidor, webbplatser, webbapplikationer eller andra applikationer där webbtekniker används, till exempel applikationer

Läs mer

NU! NU! Bygg en webbplats NU! Bygg en webbplats. Swedish Language Edition published by Docendo Sverige AB. Bygg en webbplats.

NU! NU! Bygg en webbplats NU! Bygg en webbplats. Swedish Language Edition published by Docendo Sverige AB. Bygg en webbplats. web_omslag.qxp 2006-03-20 17:06 Sida 1 NU! CDn innehåller: Upptäck hur du: Använder "dra och släpp-metoden" för att lägga till text, bilder och andra objekt till en webbsida Skapar listrutor och dynamiska

Läs mer

SMD140 - Projekt för dataingenjörer Omvänd auktion

SMD140 - Projekt för dataingenjörer Omvänd auktion SMD140 - Projekt för dataingenjörer Omvänd auktion Simon Sandlund simsan-4@student.ltu.se Richard Nilsson ricnil-4@student.ltu.se Thomas Rova thorov-3@student.ltu.se Mikael Johansson imioja-3@student.ltu.se

Läs mer

Systemkrav och tekniska förutsättningar

Systemkrav och tekniska förutsättningar Systemkrav och tekniska förutsättningar Hogia Webbrapporter Det här dokumentet går igenom systemkrav, frågor och hanterar teknik och säkerhet kring Hogia Webbrapporter, vilket bl a innefattar allt ifrån

Läs mer

Datavetenskap. Therese Sundström. Utveckling av ett affärssystem med. Unified Process. Examensarbete, D-nivå 30 ECTS 2005:05

Datavetenskap. Therese Sundström. Utveckling av ett affärssystem med. Unified Process. Examensarbete, D-nivå 30 ECTS 2005:05 Datavetenskap Therese Sundström Utveckling av ett affärssystem med Unified Process Examensarbete, D-nivå 30 ECTS 2005:05 Utveckling av ett affärssystem med Unified Process Therese Sundström 2005 Therese

Läs mer

Installationsguide fo r CRM-certifikat

Installationsguide fo r CRM-certifikat Installationsguide fo r CRM-certifikat För att säkerställa en säker inloggning till CRM Finance webb så behöver alla kunder installera ett kund-unikt klientcertifikat innan man kan försöka logga in i systemet.

Läs mer

LABORATION 2 DNS. Laboranter: Operativsystem 1 HT12. Martin Andersson. Utskriftsdatum: 2012-09-12

LABORATION 2 DNS. Laboranter: Operativsystem 1 HT12. Martin Andersson. Utskriftsdatum: 2012-09-12 LABORATION 2 DNS Laboranter: Kurs: Klass: Operativsystem 1 HT12 DD12 Handledare: Hans Ericson Martin Andersson Utskriftsdatum: 2012-09-12 Mål, syfte, förutsättningar Mål Laborationen skall ge insikt i

Läs mer

PROGRAMMERING. Ämnets syfte. Kurser i ämnet

PROGRAMMERING. Ämnets syfte. Kurser i ämnet PROGRAMMERING Ämnet programmering behandlar programmeringens roll i informationstekniska sammanhang som datorsimulering, animerad grafik, praktisk datoriserad problemlösning och användaranpassad konfiguration

Läs mer

Skapa din egen MediaWiki

Skapa din egen MediaWiki Skapa din egen MediaWiki Inledning och syfte I detta moment skall du installera en egen wiki (Mediawiki), som du skall konfigurera. Du har möjligheten att använda en egen wiki på din dator eller webbhotell

Läs mer

Utveckling av ett grafiskt användargränssnitt

Utveckling av ett grafiskt användargränssnitt Datavetenskap Opponenter: Daniel Melani och Therese Axelsson Respondenter: Christoffer Karlsson och Jonas Östlund Utveckling av ett grafiskt användargränssnitt Oppositionsrapport, C-nivå 2010-06-08 1 Sammanfattat

Läs mer

TIS-Web startguide 3.6. TIS-Web Startguide

TIS-Web startguide 3.6. TIS-Web Startguide TIS-Web Startguide Den här guiden hjälper dig komma igång med de vanligaste funktionerna i TIS-Web, ladda upp data och utvärdering av färdskrivardata. För mer detaljerad information se manualerna som finns

Läs mer

Att använda ELSA. Vad behövs för att använda ELSA?. Felrapportering och support

Att använda ELSA. Vad behövs för att använda ELSA?. Felrapportering och support KI Biobank Instruktion Användarmanual för ELSA Innehållsförteckning Allmänt... 1 Vad är ELSA?... 1 Vad behövs för att använda ELSA?... 2 Felrapportering och support... 2 Att använda ELSA... 2 Viktig information...

Läs mer

Webbservrar, severskript & webbproduktion

Webbservrar, severskript & webbproduktion Webbprogrammering Webbservrar, severskript & webbproduktion 1 Vad är en webbserver En webbserver är en tjänst som lyssnar på port 80. Den hanterar tillgång till filer och kataloger genom att kommunicera

Läs mer

Web Services. Cognitude 1

Web Services. Cognitude 1 Web Services 1 Web Services Hur ska tillämpningar integreras? Hur ska tillämpningar integreras (via nätet ) för att erbjuda tjänster åtkomliga på nätet? SVAR: Web Services (Enligt Microsoft, Sun, IBM etc.)

Läs mer

Stored procedure i ASP.NET

Stored procedure i ASP.NET Stored procedure i ASP.NET OBS! Om du vill jobba med att skapa en stored procedure i en SQL Serverdatabas ifrån VS2010 måste du ha fullversion, expressversionen tillåter dig ej att skapa triggers, stored

Läs mer

Flexi Exchange Connector. Copyright 1993-2013 Datatal AB. Med ensamrätt. Copyright 2013 Datatal AB. All rights reserved.

Flexi Exchange Connector. Copyright 1993-2013 Datatal AB. Med ensamrätt. Copyright 2013 Datatal AB. All rights reserved. Flexi Exchange Connector Copyright 1993-2013 Datatal AB. Med ensamrätt. Copyright 2013 Datatal AB. All rights reserved. 1 Översikt... 2 1.1 Vad gör Flexi Exchange Connector?... 2 1.2 Vilka serverkonfigurationer

Läs mer

Processbeskrivning Systemutveckling

Processbeskrivning Systemutveckling ProcIT-P-015 Processbeskrivning Systemutveckling Lednings- och kvalitetssystem Fastställd av Sven Arvidson 2011-09-12 Innehållsförteckning 1 Inledning 3 1.1 Symboler i processbeskrivningarna 3 2 Systemutvecklingsprocessen

Läs mer

VAD GÖR DU / VEM ÄR DU?

VAD GÖR DU / VEM ÄR DU? INNEHÅLL Vad blir din roll Databaser vad är och varför Terminologi Datamodellering vad är och varför Utvecklingsprocessen SQL vad är det Data / Information / Kunskap Kapitel 1 delar av. Praktisk Datamodellering

Läs mer

LEX INSTRUKTION LEX LDAP

LEX INSTRUKTION LEX LDAP LEX INSTRUKTION LEX LDAP Innehållsförteckning LEX INSTRUKTION LEX LDAP... 1 1 INLEDNING... 1 2 INSTALLATION... 2 3 LEXLDAPSERVICE - KLIENTEN... 3 3.1 HUVUDFÖNSTER... 3 3.2 INSTÄLLNINGAR... 4 3.2.1 Lex...

Läs mer

Utvecklingsm odell och utvecklingsm etod för att skapa god kom m unikation

Utvecklingsm odell och utvecklingsm etod för att skapa god kom m unikation Kurs: Designm etodik, 3 p Delm om ent: Datum : 2 0 0 3-1 2-1 8 Utvecklingsm odell och utvecklingsm etod för att skapa god kom m unikation Nils Järgenstedt [ it3 jani@ituniv.se] Innehållsförteckning INLEDNING...

Läs mer

30 år av erfarenhet och branschexperts

30 år av erfarenhet och branschexperts 30 år av erfarenhet och branschexperts Integrerad Säkerhet Integrerad Säkerhet Varför överordnat system Användarvänlighet Kvalitet Trygghet Kostnadseffektivitet Varför ett överordnat system? Med stora

Läs mer

PROGRAMMERING. Ämnets syfte. Kurser i ämnet

PROGRAMMERING. Ämnets syfte. Kurser i ämnet PROGRAMMERING Ämnet programmering behandlar programmeringens roll i informationstekniska sammanhang som datorsimulering, animerad grafik, praktisk datoriserad problemlösning och användaranpassad konfiguration

Läs mer

Certifikatbaserad inloggning via SITHS, tillämpningsexempel

Certifikatbaserad inloggning via SITHS, tillämpningsexempel Certifikatbaserad inloggning via SITHS, tillämpningsexempel För att logga in i en webbapplikation med hjälp av SITHS-kort och certifikat behöver webservern och applikationen konfigureras för hantering

Läs mer

Installation/uppdatering av Hogia Personal fr.o.m. version 13.1

Installation/uppdatering av Hogia Personal fr.o.m. version 13.1 Installation/uppdatering av Hogia Personal fr.o.m. version 13.1 Viktig information gällande installation Från version 12.2 av Hogia Personal krävs Microsoft.Net Framework 3.5 SP1 för att installation skall

Läs mer

WEBBTEKNIK. Ämnets syfte

WEBBTEKNIK. Ämnets syfte WEBBTEKNIK Webbteknik används för att utveckla och vidareutveckla statiska och dynamiska webbsidor, webbplatser, webbapplikationer eller andra applikationer där webbtekniker används, till exempel applikationer

Läs mer

WEBBTEKNIK. Ämnets syfte

WEBBTEKNIK. Ämnets syfte WEBBTEKNIK Webbteknik används för att utveckla och vidareutveckla statiska och dynamiska webbsidor, webbplatser, webbapplikationer eller andra applikationer där webbtekniker används, till exempel applikationer

Läs mer

OBS! Det är av största vikt att innan konfiguration av modulen, genomfört de inställningar som presenteras med bilagorna till denna manual.

OBS! Det är av största vikt att innan konfiguration av modulen, genomfört de inställningar som presenteras med bilagorna till denna manual. 1 LB-M-EX 0001 2010 LB-M-EX 0001 2010 Användarmanual för Lockbee Backup Exchange 2007 Användarmanualen är avsedd att ge en närmare introduktion av Lockbee Backup Exchange 2007 och dess funktioner och nyttjande.

Läs mer

Novell Vibe 4.0. Mars 2015. Snabbstart. Starta Novell Vibe. Bekanta dig med gränssnittet och funktionerna i Novell Vibe

Novell Vibe 4.0. Mars 2015. Snabbstart. Starta Novell Vibe. Bekanta dig med gränssnittet och funktionerna i Novell Vibe Novell Vibe 4.0 Mars 2015 Snabbstart När du börjar använda Novell Vibe kanske du vill börja med att skapa en personlig arbetsyta och en teamarbetsyta. Det här dokumentet innehåller information om hur du

Läs mer

1 Systemkrav avantraupphandling

1 Systemkrav avantraupphandling 1 (10) Godkänd av Produkt/Projekt/Verksamhet avantraupphandling 3.0.1 1 Systemkrav avantraupphandling Intranät webb klient Internet applikation klient Förrådssystem Beställningssystem COM+ Server File

Läs mer

Jetshop AB WEBSERVICE-API 1.2 ANVÄNDARMANUAL. Version 1.2 2011-10-12

Jetshop AB WEBSERVICE-API 1.2 ANVÄNDARMANUAL. Version 1.2 2011-10-12 Jetshop AB WEBSERVICE-API 1.2 ANVÄNDARMANUAL Version 1.2 2011-10-12 1. Förord I det här dokumentet ges en generell beskrivning av det Webservice-API som är utvecklat av Jetshop AB, och är avsett för dig

Läs mer

Axalon Process Navigator SP Användarhandledning

Axalon Process Navigator SP Användarhandledning Axalon Process Navigator SP Användarhandledning Axalon Process Navigator SP 2013, senast reviderad: den 11 juni 2014 Innehåll Innehåll... 2 Om denna användarhandledning... 3 Syfte... 3 Vem är denna handledning

Läs mer

Examensarbeten hösten 2014

Examensarbeten hösten 2014 Examensarbeten hösten 2014 2/8 Förslag till examensarbeten på SPV Hos oss kan du ansöka om att skriva uppsats inom flera olika ämnesområden. För oss är uppsatsen ett bra sätt att få delar av vår verksamhet

Läs mer

Quick Start CABAS. Generella systemkrav CABAS / CAB Plan. Kommunikation. Säkerhet

Quick Start CABAS. Generella systemkrav CABAS / CAB Plan. Kommunikation. Säkerhet Gunnel Frogedal 2014-07-17 6 32753 1 of 5 Quick Start CABAS Generella systemkrav CABAS / CAB Plan Applikationen stöds av följande operativsystem: Windows Vista SP2 Windows 7 SP1 Windows 8 (inte RT) Windows

Läs mer

Introduktion till MySQL

Introduktion till MySQL Introduktion till MySQL Vad är MySQL? MySQL är ett programmerings- och frågespråk för databaser. Med programmeringsspråk menas att du kan skapa och administrera databaser med hjälp av MySQL, och med frågespråk

Läs mer

Tekis-FB 7.1.0. Systemkrav

Tekis-FB 7.1.0. Systemkrav 7.1.0 Systemkrav Systemkrav 2015-09-17 MAAN 2 (2) Systemkrav 7.1.0 Dokumentet beskriver de krav som systemet ställer på maskinvara och programvara i de servrar och klientdatorer som ska användas för systemet.

Läs mer

KONSULTPROFIL Rodrigo

KONSULTPROFIL Rodrigo KONSULTPROFIL Rodrigo Systemutvecklare.NET/EPiServer/SharePoint Sammanfattning Rodrigo är en utåtriktad och glad person med båda fötterna på jorden som trivs både med att leda och samarbeta. Har jobbat

Läs mer

Systemkrav WinServ II Edition Release 2 (R2)

Systemkrav WinServ II Edition Release 2 (R2) Systemkrav WinServ II Edition Release 2 (R2) Observera: Alla rekommendationer är aktuella vid den tid då dokumentet publicerades och visar den senaste informationen för nödvändig mjukvara. Systemkrav för

Läs mer

Win95/98 Nätverks Kompendium. av DRIFTGRUPPEN

Win95/98 Nätverks Kompendium. av DRIFTGRUPPEN Win95/98 Nätverks Kompendium av DRIFTGRUPPEN Sammanfattning Vad håller jag i handen? Detta är en lättförståelig guide till hur man lägger in och ställer in nätverket i Windows 95 och 98 Efter 6 (sex) enkla

Läs mer

Manual för W3D3 Office Add-in

Manual för W3D3 Office Add-in FormPipe Software Uppsala AB, Box 231 31, 104 35 Stockholm BESÖK: Bangårdsgatan 4C, Uppsala T: 018-100 900 F: 018-100 905 E: info@formpipe.se, www.formpipe.se ORGNR: 556463-9861 VAT: SE556463986101 PG:

Läs mer

Manual. Kursplan. Astrakan. ESF Edition Publikt användargränssnitt. Artisan Global Media

Manual. Kursplan. Astrakan. ESF Edition Publikt användargränssnitt. Artisan Global Media Manual Astrakan Kursplan ESF Edition Publikt användargränssnitt Artisan Global Media ~ 2 ~ Innehållsförteckning Publikt användargränssnitt... 3 Allmän... 3 Personlig... 4 Presentation av Kurstillfälle...

Läs mer

Nationell Informationsstruktur 2015:1. Bilaga 7: Arkitektur och metodbeskrivning

Nationell Informationsstruktur 2015:1. Bilaga 7: Arkitektur och metodbeskrivning Nationell Informationsstruktur 2015:1 Bilaga 7: Arkitektur och metodbeskrivning Innehåll Nationell informationsstruktur arkitektur och metod... 3 Standarder inom informatik... 3 NI relaterat till ISO 42010...

Läs mer

360 Infrastruktur - 360 v.4.1 & SharePoint 2010. Magnus Larsson, Software Innovation

360 Infrastruktur - 360 v.4.1 & SharePoint 2010. Magnus Larsson, Software Innovation 360 Infrastruktur - 360 v.4.1 & SharePoint 2010 Magnus Larsson, Software Innovation Agenda 360 Grundinstallation 360 Avancerad installation 360 & Microsoft OneNote 360 Features installation 360 Grundinstallation

Läs mer

TST8102 WEBCM BRUKSANVISNING

TST8102 WEBCM BRUKSANVISNING TST8102 WEBCM BRUKSANVISNING INNEHÅLLSFÖRTECKNING TST8102 WEBCM - BRUKSANVISNING 1. Översikt... 3 2. Installation... 3 2.1 Nätverksinställningar... 4 3. Startsida... 5 4. Statussida... 6 5. Gruppsida...

Läs mer

Boss installationsmanual förberedelser

Boss installationsmanual förberedelser 1 Boss installationsmanual förberedelser Boss kan installeras på flera sätt, Serverinstallation eller Nätverksinstallation. För båda dessa sätt kan man dela databasen med flera användare. Serverinstallation,

Läs mer

www.grade.com LUVIT Kompetens Manual

www.grade.com LUVIT Kompetens Manual www.grade.com LUVIT Kompetens Manual Innehållsförteckning 1. KOMPETENS 3 1.1. MEDARBETARENS KOMPETENSVY 3 1.1.1. Personlig utveckling 3 1.1.1.1. Profil 3 1.1.1.2. Kompetensanalys 4 1.1.1.3. Mål- och utvecklingssamtal

Läs mer

Slutrapport. APFy.me

Slutrapport. APFy.me Slutrapport APFy.me Innehållsförteckning 1 Inledning... 3 2 Mål och syfte... 3 3 Projektbeskrivning... 3 4 Leverabler... 4 5 Resultat... 4 6 Utvärdering och analys... 4 6.1 Utvärdering av resultat... 4

Läs mer

Projekt Rapport. RaidPlanner. Jeanette Karlsson UD10

Projekt Rapport. RaidPlanner. Jeanette Karlsson UD10 Projekt Rapport RaidPlanner Jeanette Karlsson UD10 Abstrakt: Denna rapport handlar om mitt projekt i kursen Individuellt Mjukvaruutvecklings projekt. Rapporten kommer att ta upp hur jag gått tillväga,

Läs mer

Informationssystem och databasteknik, 2I-1100

Informationssystem och databasteknik, 2I-1100 Informationssystem och databasteknik, 2I-1100 Introduktion till informationssystem - användning, teknik och utveckling Vad är ett informationssystem? Informationssystem: datoriserat system som stödjer

Läs mer

Engineering Bases viktigaste egenskaper

Engineering Bases viktigaste egenskaper Engineering Bases viktigaste egenskaper Med Engineering Base intåg på den Svenska marknaden är det många företag som inom de närmaste åren kommer att se över strategin kring sitt CAD system och utvecklingen

Läs mer

Diagnostisktprov Utveckla i Azure

Diagnostisktprov Utveckla i Azure .easec Diagnostisktprov Utveckla i Azure Mats Johannesson 2015-06-08 1 o Indikerar ett svar önskas. Flera svar önskas. Maxpoäng: 86 Din poäng: Godkänt: 43 poäng Väl Godkänt: 60 poäng 2 1. Vilka fyra alternativ

Läs mer

Kursinformation. Metodik för programvaruutveckling. Utvecklingsprocessen för programvara. Innehåll. Processmodell. Exempel

Kursinformation. Metodik för programvaruutveckling. Utvecklingsprocessen för programvara. Innehåll. Processmodell. Exempel Kursinformation Metodik för programvaruutveckling Föreläsning 3 Latex ok för litteraturstudierapport (prata med mig bara) Nästa föreläsning är av Björn Regnell (jag är med också) Presentationer imorgon

Läs mer

Ramverk för projekt och uppdrag

Ramverk för projekt och uppdrag Peter Yngve IT-centrum 2011-02-10 1.0 1 (9) Ramverk för projekt och uppdrag Peter Yngve IT-centrum 2011-02-10 1.0 2 (9) BAKGRUND/MOTIV... 3 MÅL OCH SYFTE... 3 DEFINITIONER AV PROJEKT... 3 MODELL FÖR PROJEKTSTYRNING...

Läs mer

WebViewer Manual för administratör. 2013 Nova Software AB

WebViewer Manual för administratör. 2013 Nova Software AB WebViewer Manual för administratör 2 Manual WebViewer Innehållsförteckning Innehållsförteckning... 2 1 Introduktion... 3 2 Inställningar... 4 2.1 Uppdatera licensinformation... 4 2.2 Inmatning av användaruppgifter...

Läs mer

LABORATION 1 Pingpong och Installation av Server 2008 R2

LABORATION 1 Pingpong och Installation av Server 2008 R2 LABORATION 1 Pingpong och Installation av Server 2008 R2 Laboranter: Kurs: Klass: Operativsystem 1 HT12 DD12 Handledare: Hans Ericson Martin Andersson Utskriftsdatum: 2012-08-29 Mål Laborationen skall

Läs mer

Användarhandbok. version 1.15.8. sida 1 av 15

Användarhandbok. version 1.15.8. sida 1 av 15 Användarhandbok version 1.15.8 sida 1 av 15 Innehållsförteckning Introduktion... 4 Gränssnitt... 4 Inloggning... 5 Användarnamn och lösenord... 5 Kod... 5 Startsida... 6 Menyer... 6 Systembild... 7 Sidobjekt...

Läs mer

QC i en organisation SAST 2008-09-16

QC i en organisation SAST 2008-09-16 QC i en organisation SAST 2008-09-16 1 Agenda Hur är vi organiserade inom test på SEB? Hur är QC uppsatt på SEB? Hur arbetar vi med QC i en stor organisation? Uppfyllde QC våra förväntningar och hur har

Läs mer

Manual HSB Webb brf 2004 03 23

Manual HSB Webb brf 2004 03 23 TERMINOLOGI I Polopoly används ett antal grundläggande begrepp för publicering och hantering av information, eller innehåll som det också benämns. Nedan följer en kort genomgång av denna grundläggande

Läs mer

DATABAS ÖVER PROVVÄGAR

DATABAS ÖVER PROVVÄGAR Ett Trafikverket/VTI/Nynäs/SBUF-projekt Datum 2010-11-16 Författare Richard Nilsson DATABAS ÖVER PROVVÄGAR Skanska Sverige AB Teknik - Väg och Asfalt Box 9044 200 39 Malmö Tel: 010-448 32 68 Fax: 010-448

Läs mer

Snabbguide webbhotellstjänster v 1.0

Snabbguide webbhotellstjänster v 1.0 Snabbguide webbhotellstjänster v 1.0 Innehållsförteckning 1.0 Allmänt...3 2.0 Översikt kontrollpanel...4 2.1 Desktop...5 2.2 Home...6 3.0 Domäninställningar...7 3.1 Ladda upp dina filer information om

Läs mer

Det här dokumentet går kortfattat igenom registrerings- och ansökningsprocessen.

Det här dokumentet går kortfattat igenom registrerings- och ansökningsprocessen. Det här dokumentet går kortfattat igenom registrerings- och ansökningsprocessen. 1. Webbläsare Följande versioner av webbläsare stöds: Netscape från version 7.x Firefox från version 1.x Internet Explorer

Läs mer

Innehåll 1 Inledning Serverinstallation 2.1 Systemkrav 2.2 SQL Server 2.3 Behörighet vid installation 2.4 Behörighetskontroll i Microsoft SQL Server

Innehåll 1 Inledning Serverinstallation 2.1 Systemkrav 2.2 SQL Server 2.3 Behörighet vid installation 2.4 Behörighetskontroll i Microsoft SQL Server Installationsanvisning Boss delad databas sid 2 (40) Innehåll 1 Inledning 3 2 Serverinstallation 3 2.1 Systemkrav 3 2.2 SQL Server 3 2.3 Behörighet vid installation 3 2.4 Behörighetskontroll i Microsoft

Läs mer

lokalnytt.se Manual kundadministration

lokalnytt.se Manual kundadministration lokalnytt.se Manual kundadministration version 2.0 2012-08-23 Innehåll Inledning... sidan 2 Rekommendationer... sidan 2 Gemensamma funktioner... sidan 3 Inloggning... sidan 4 Startsida... sidan 5 Objekt...

Läs mer

Lektion 2, Grundläggande funktioner i ASP.NET

Lektion 2, Grundläggande funktioner i ASP.NET Lektion 2, Grundläggande funktioner i ASP.NET Lektionen behandlar kapitlen 3 och 4 i kursboken. Application och Page Framework Med Visual Studio 2005 levereras ett antal inbyggda verktyg bland annat SQL

Läs mer

Kort-kort om utdelade användarkonton och datormiljön på NADA

Kort-kort om utdelade användarkonton och datormiljön på NADA Kort-kort om utdelade användarkonton och datormiljön på NADA UNIX-konto, användaridentitet Namn Du har fått ett konto med ett användarnamn bestående av prefixet ip99_ och ytterligare tre bokstäver. Dessa

Läs mer

BESKRIVNING AV PROCESSMETODEN SCRUM

BESKRIVNING AV PROCESSMETODEN SCRUM NORDSCRUM BESKRIVNING AV PROCESSMETODEN SCRUM NORDSCRUM BESKRIVNING AV PROCESSMETODEN SCRUM INNEHÅLLSFÖRTECKNING inledning... 3 SCRUM... 3 Bakgrund... 3 Faser... 3 Ramverket... 3 Nordscrum... 4 StudentProjekt...

Läs mer

Kom igång! Snabbstart för dig som är administratör

Kom igång! Snabbstart för dig som är administratör Kom igång! Snabbstart för dig som är administratör Innehåll Snabbstart och användarmanual 4 Personalhandbokens uppbyggnad 5 Redigeringsläget 6 Att redigera i personalhandboken 7 Publicering av de redigerade

Läs mer