Mjukvaruprojekt Inception-fasen. 1DV404, HT14 Jesper Andersson Kap 5, 6, 7

Relevanta dokument
Användningsfall. 1DV404, HT14 Jesper Andersson Kap 5, 6, 7

RUP - Rational Unified Process

Mjukvaruprocesser och Planering. 1DV404 HT14 Jesper Andersson

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

Deluppgift 2 Kravhantering a) (2p) När man diskuterar krav brukar man ange två olika typer av krav. Beskriv dessa och ge exempel.

RUP Rational Unified Process. 17 november 2004

Del av projektuppgiften. Systemarkitektprogrammet

Vässa kraven och förbättra samarbetet med hjälp av Behaviour Driven Development Anna Fallqvist Eriksson

Praktikum i programvaruproduktion

Design för användbarhet

Symptom på problemen vid programvaruutveckling

(källa: Rick Falkvinge) Historien om Bonke

UML use cases. Mikael Söderström Institutionen för informatik Umeå universitet

Taking Flight! Migrating to SAS 9.2!

Schenker Privpak AB Telefon VAT Nr. SE Schenker ABs ansvarsbestämmelser, identiska med Box 905 Faxnr Säte: Borås

Objektorientering. Grunderna i OO

Support Manual HoistLocatel Electronic Locks

Testning. 1DV404, HT14 Jesper Andersson Kap 21 + Testing Primer

Modern utvecklingsmetodik. Användarcentrering i företag. Användarcentrering i företag. Användarcentrering i företag. Användarcentrering i företag

När? Varför? För vem? Resultat? (Artefakter?)

Hur integrera Active Directory och DNS? Rolf Åberg, Simplex System

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

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

RUP är en omfattande process, ett processramverk. RUP bör införas stegvis. RUP måste anpassas. till organisationen till projektet

Agil programutveckling

CREATING VALUE BY SHARING KNOWLEDGE

2.1 Installation of driver using Internet Installation of driver from disk... 3

Automation Region. Affärsdriven systemutveckling genom agila metoder. Stefan Paulsson Thomas Öberg

Användarcentrerad systemdesign

Lösenordsportalen Hosted by UNIT4 For instructions in English, see further down in this document

Att fatta rätt beslut vid komplexa tekniska upphandlingar

Användningscentrering i agila utvecklingsprojekt. johanna.sarna@valtech.com Valtech

Schenker Privpak AB Telefon VAT Nr. SE Schenker ABs ansvarsbestämmelser, identiska med Box 905 Faxnr Säte: Borås

CM FORUM. Introduktion till. Configuration Management (CM) / Konfigurationsledning. Tobias Ljungkvist

Mjukvarudesign. Designprocessen. Teknisk design. Konceptuell design

PDM Implementation & Change Management /FRN

LARS. Ett e-bokningssystem för skoldatorer.

Iterativ mjukvaruutveckling. 1DV404 HT14 Jesper Andersson

ENIMEOS ΣOEMINE. Krav och trender. Praktisk kravhantering och annat nyttigt från industrin. Christian Ehrenborg

Agil utveckling ställer nya krav på upphandling. Roland Bäcklin, Jaybis Konsult AB

Booking and managing business trips at KTH Meeting agenda

BESKRIVNING AV PROCESSMETODEN SCRUM

Final Course Marks will be combined from the examination and the project:

Hur hanterar vi risk? Vad är TKO? Skillnad på agil och trad? Agil/Lean: Defer Commitment, Build knowledge, Fail fast

Elmarknadshubb roll- och domänmodell

Arkitektur. Den Röda Tråden

Berättelser Scenarios Presentationer Skisser Formella modeller Mjukvaruprototyper Kartong modeller etc.


Elaboration. 1DV404, HT14 Jesper Andersson Kap 13, 33, 34, 39

Design och krav. Design Definition. enkelt Det ska vara möjligt att. Henrik Artman

Föreläsning 3 Användare, uppgift och omgivning. Kapitel 3-4 i Stone et al.

Air Operations 965/2012 Annex V - Specific Approvals Part-SPA

Linköpings universitet 1 TDP029. Systemutveckling. Systemutveckling. Vanliga faser. Fler faser. Systemutvecklingsmetod

OOA Objektorienterad Analys. Exempel på informell kravspecifikation. DD2385 Programutvecklingsteknik Några bilder till föreläsning 11 13/5 2013

Beijer Electronics AB 2000, MA00336A,

SharePoint 2010 licensiering Wictor Wilén

Att fastställa krav. Annakarin Nyberg

Agila kontrakt. Mattias Skarin Kanban / Lean coach Konsten att måla ut sig ur ett hörn och in i ett samarbete.

Användarcentrerad systemdesign

Sara Skärhem Martin Jansson Dalarna Science Park

1.1 Invoicing Requirements

Kompetens på Certifying Staff i POA? Checklista vid release med FORM 1?

Utfärdad av Compiled by Tjst Dept. Telefon Telephone Datum Date Utg nr Edition No. Dokumentnummer Document No.

Webbreg öppen: 26/ /

ALM Live: Scrum + VSTS

Design av användargränssnitt. Processen snarare än produkten

Resultat av EASAs audit av Swedish Transport Agency (STA) 2016

2.45GHz CF Card Reader User Manual. Version /09/15

Kravfångst Bra kravarbete handlar om att ställa rätt frågor och att ge rätt svar i rätt form

Isolda Purchase - EDI

Filhanterare med AngularJS

Testplanering, test-first, testverktyg

Arbeta i projekt. Anders Hessel ITP-projekt Uppsala Universitet

CCTV eller dispens? Vad göra åt kravet på övervakning av området utanför cockpit från båda pilotstolarna?

Swedish National Data Service

Webbregistrering pa kurs och termin

App analytics TDP028

" «Observable» DataGenerator" betyder att klassen DataGenerator ärver från den abstrakta klassen Observable.

Fastställa mål. Daniel Bosk. goals.tex :33:45Z danbos

Design för användbarhet Designexempel, hur tänkte man vid designen?

Preschool Kindergarten

Testning som beslutsstöd

En ansats till behovsstyrd applikationsutveckling

Agila kontrakt och LOU

Information technology Open Document Format for Office Applications (OpenDocument) v1.0 (ISO/IEC 26300:2006, IDT) SWEDISH STANDARDS INSTITUTE

PA1415 Programvarudesign Second Resit

1. Unpack content of zip-file to temporary folder and double click Setup

Projektmetodik. Översikt. Lektion 1: Metodiker. Metodiker.

OCTOPUS utvecklingsmetod samt relaterade frågeställningar och diagram

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

QC i en organisation SAST

Platina och kvalité. Rasmus Staberg, Teknisk direktör,

Agile-metoder, XP och ACSD

För varje par av påstående/anledning svara med ett av följande alternativ (½ p per rätt svar):


Utvärdering. Användbarhet. + beställarperspektivet! Innehåll. Varför?

Tidseffektiv administration av Creo Parametric och Windchill PDMLINK

Item 6 - Resolution for preferential rights issue.

Michael Q. Jones & Matt B. Pedersen University of Nevada Las Vegas

Systemering med användarfokus

Transkript:

Mjukvaruprojekt Inception-fasen 1DV404, HT14 Jesper Andersson Kap 5, 6, 7

Hur organiserar vi arbetet i en processmodell. ü Roller Resurser Mantimmar ü Aktiviteter ü WorkProducts Artefakter

UP - Planering ü Grovkorning - Långsiktig Vision Projektplan Iterationsplanering ü Finkorning - kortsiktigt Iterationsplan

Hur hanterar vi Iterationer och Inkrement Open UP Source: http://epf.eclipse.org/wikis/openup/

UP Faser

Inception ü Mål Få igång projektet ü Fokus Ta fram en mängd artefakter som man kan arbeta vidare med. Kund Projekt Risker ü Milstolpar Definiera viktiga systemfunktioner Definiera en kandidat mjukvaruarkitektur Etablera projektomgivningen

Elaboration ü Mål Konstruera en fungerande körbar arkitekturbas En detaljerad konstruktionsplan ü Fokus Analys av kraven Implementation av en arkitekturbas ü Milstolpar En körbar arkitekturbas

Construction ü Mål Utveckla arkitekturbasen till ett fullständigt mjukvarusystem ü Fokus Implementation Testning av komponenter ü Milstolpar Fruset mjukvarusystem

Transition ü Mål Rätta fel/defekter ü Fokus Genomför kundspecifika Underhåll av design och implementation Acceptans & Beta tester ü Milstolpar RELEASE PARTY!

Inception ü Iterativt och Inkrementellt vi måste börja någon gång ü Skapa en gemensam vision ü Avgränsa projektet ü Fokusera på Var finns affären? Grundläggande funktionella krav Kritiska kvalitetskrav

Vad är viktigt under inception-fasen 1. Förstå vad som skall konstrueras. a. Skapa en övergripande vision, inklusive systemets gränser. b. Identifiera intressenter Vilka är deras framgångskriterier? 2. Identifiera systemets nyckelfunktionalitet. Bestäm vilka krav som är mest kritiska. 3. Identifiera minst en möjlig lösning. a. Bedöm om visionen är tekniskt möjligt. b. Detta kan innebära att identifiera en kandidat till högnivåarkitektur eller skapa prototyper. 4. Gör en uppskattning på en hög nivå för a. kostnader, b. planer, c. Risker

Artefakter under Inception-fasen ü Visionsdokument, mål och avgränsningar (executive summary) ü Use-case modell ü Supplementary Specification ü Risker och Riskhanteringsstrategier ü Prototyper ü Projektplan ü Iterationsplaner

Mjukvaruutveckling Problemlösning ü Förstå problemet ü Tag fram en ide till lösning ü Genomför denna ü Utvärdera Mjukvaruutveckling ü Krav ü Design ü Implementation ü Testning

Krav Interna Externa

Kravhantering 1. Samla in information a. Användares önskemål. b. Annan dokumentation. 2. Analysera och identifiera krav a. Funktionalitet b. Kvalitet c. Process 3. Prioritera kraven 4. Specificera kraven på den produkt som skall tas fram.

Kom ihåg! ü Krav skall vara Korrekta Entydiga Fullständiga Verifierbara Konsekventa Designoberoende Spårbara Är detta möjligt!?!

Kravhantering är svårt ü Människor ü Kommunikation Olika kulturer Olika erfarenheter ü Tyst kunskap ü Olika agendor Hur hanterar vi detta?

Varför bygger vi modeller av kraven? ü Fånga och kommunicera krav ü Förstå problemet och varandra! ü Överbrygga användarperspektivet och utvecklarperspektivet Kund Modell Analytiker Utvecklare

Skriva en kravspecifikation? ü Språket viktigt! Systemet skall Systemet bör Systemet kan ü Gruppera krav Sortera ut det som absolut måste vara med Övrigt diskuteras och Inkluderas, eller läggs till att göra i framtiden listan

Kvalitetskrav ü Systemet skall vara snabbt ü Systemet skall vara säkert ü Vad göra? ü En specifikation skall vara Precis Entydig Verifierbar

Exempel Skriva krav ü Orginal: Software will not be loaded from unknown sources onto the system without first having the software tested and approved. ü Bättre: 3.2.5.2 Software shall be loaded onto the operational system only after it has been tested and approved. ü Ännu bättre: 3.2.5.2 Software shall be loaded onto the operational system only after it has been tested IAW MIL-SPEC 3425 and approved by the CCB.

Exempel II Skriva krav ü 3.4.6.3 The system shall prevent the processing of duplicate electronic files by checking a new SDATE record. An email message shall be sent. ü 3.4.6.3 The system shall: a. Prevent processing of duplicate electronic files by checking the date and time of submission. b. Send the following email message: Request updated submission of date and time, if necessary, or That the processing was successful when successful.

Exempel III Skriva krav ü 3.2.8.6 When doing calculations, the software shall produce correct results. Ta bort!

FURPS+ modellen (Grady 1992) ü FURPS en checklista för krav. Functional (features, capabilities, security) Usability (human factors, help, documentation) Reliability (frequency of failure, recoverability, predictability) Performance (response time, throughput, accuracy, availability, resource usage) Supportability (adaptability, maintainability, internationalization, configurability)

Krav attractions TicketSeller attractions <<database>> Attractions Funktionalitet sales charging booking <<database>> Bookings Charging : Credit <<manifest>> SOAP CreditCardCom pany Dual Core PC >2,0 GHz 4Gb ram Windows XP Professional <<artifact>> TicketService.exe Kvalitet?

Krav måste växa fram ü Utnyttja iterationer och inkrement ü En stor del av problematiken beror på Kommunikation! Brist på förståelse mellan intressenter! ü Hur kan vi skapa förståelse mellan intressenter i ett utvecklingsprojekt?

Krav växer fram ü Jämför Iterativ framtagning av krav med vattenfallsmodeller Vision Krav

UP Översikt

Open UP Source: http://epf.eclipse.org/wikis/openup/

Iterativ och Inkrementell Supplementary specification Vision End user Validate Elicit Analyze Developer Use Case model (initial) (refined) Specify Feasibility Study

En Top-down ansats för kraven Vision Elicit Validate Specify Analyze Definition Use Case Model Specification Supplementary Specification

Användningsfall ü Ett användningsfall berättar en historia om hur ett mål kan uppfyllas ü Eller en uppsättning av berättelser om både lyckas och misslyckas. ü Ett användningsfall utförs av aktörer under en begränsad tid det finns en början minst ett slut (multipel) som bör nås inom rimlig tid. ü Undersöka Mål för ett system är en bra utgångspunkt för att identifiera krav. ü Vilka tjänster erbjuder systemet ü Vilka användare finns till systemet

Use cases och Scenarier ü Scenarier är instanser av användningsfall ü Scenario Use case liknar relationen mellan Objekt Klass ü Brainstorma och dokumentera scenarier Samla in detaljer Kommunikation med användare Perfekt start för att producera test-fall

Use Case Modeller Use Case Diagram ü Vi kan organisera användningsfall som modeller Användningsfall grupperas efter sin logiska tillhörighet Samma område/affär Samma aktör Use Case Actors BookFlight FrequentFlier «extends» Extension Point Agent Relationer BookFlight for FrequentFlier

Actors ü Klassiferar s.k typanvändare ü En användare också vara kan var ett System En händelse ü En actor kan utöka en annan actor Register Clerk Update records Daily

Use Case Beskrivningar ü Detaljer i ett användningsfall Pre och post villkor Primära händelseflöden, ett sk. primärt flöde Alternativa and sekundära flöden Use case relationer

Exempel händelseflöde BookFlight 1. Agent specifies a travel itinerary for customer 2. Searches a set of flights and displays them to the agent. (A) 3. Agent selects a flight. 4. Verifies space on selected flight (B) 5. Booking finalization, submitting payment information (C) 6. Books seats and issues tickets Alternatives 4a. Space not available in selected category 4a1. Informs agent 4a2. Agent specifies another price range 4b. Seats not available (fully booked) 4b1. Informs agent Agent 4b2. Agent specifies new departure preferences. (D) BookFlight for FrequentFlier «extends» BookFlight FrequentFlier