13
AAU introduktion i forhold til, hvad de studerende lærer om udviklingsprocesser og agile processer Peter Axel Nielsen

Introduktion til udviklingsprocesser og agile processer

Embed Size (px)

Citation preview

Page 1: Introduktion til udviklingsprocesser og agile processer

AAUintroduktion i forhold til,hvad destuderende lærer om

udviklingsprocesser og agileprocesser

PeterAxelNielsen

Page 2: Introduktion til udviklingsprocesser og agile processer

Uddannelser

• Datalogi,bachelor+kandidat• Software,bachelor+kandidat• Informatik,bachelor+kandidat• BachelorIT• Interaktionsdesign,bachelor+kandidat

Page 3: Introduktion til udviklingsprocesser og agile processer

Datalogi /softwarebachelor

Projekttema (15ECTS) SW udvikling (5ECTS) (5+5ECTS)

1 Problemanalyse Programmering PV+MAT

2 Programmering OOprogrammering CA+MAT

3 Systemudvikling OOanalyse&design UIDesign+ALG

4 Sprogudvikling SS+PSS+SPO

5 Intelligente systemer Softwareengineering ML+BK

6 Bachelorprojekt VT+AA+SV

Page 4: Introduktion til udviklingsprocesser og agile processer

Datalogi /softwarekandidat

Projekttema (15ECTS) SW udvikling (5ECTS) (5+5ECTS)

7 Avanceret systemudvikling Valgkurser

8 SoftwareInnovation Valgkurser

9 Specialisering (20ECTS)

10 Specialisering (30ECTS)

Page 5: Introduktion til udviklingsprocesser og agile processer

Softwareengineering

Developmentapproaches•Miniproject (1)

Tools,techniques,andpractices•Miniproject (2)

Evaluationandimprovement•Miniproject (3)

Plan-driven Agile

Page 6: Introduktion til udviklingsprocesser og agile processer

Readings

Page 7: Introduktion til udviklingsprocesser og agile processer

Sommerville’s primaryprocessmodelsRequirements

definition

System andsoftware design

Implementationand unit testing

Integration andsystem testing

Operation andmaintenance

Concurrentactivities

ValidationFinal

version

DevelopmentIntermediate

versions

SpecificationInitial

version

Outlinedescription

Requirementsspecification

Softwarediscovery

Softwareevaluation

Requirementsrefinement

Configureapplication

system

Adapt components

Integratesystem

Develop newcomponents

Application system available

Componentsavailable

Page 8: Introduktion til udviklingsprocesser og agile processer

Methodoverview

FewdocsFewsteps

ManydocsFormalsteps

Many,shortiterations

Strictwaterfall

Scrum

XPCycles

Ceremony

UP

Page 9: Introduktion til udviklingsprocesser og agile processer

HomeGroundsAgile Plan-driven

APPLICATION

Primary goalsRapidvalue;responding tochange

Predictability;stablity;highassurance

Size Smallerteamsandprojects Larger teamsandprojects

Environment Turbulent;high change;project-focused

Stable;low change;project/organization-focused

MANAGEMENT

Customerrelations

Dedicated on-sitecustomers,where feasible;focused onprioritized incrememts

As-needed customer interactions;focused oncontract provisions;increasingly evolutionary

Planning/controlInternalized plans;qualitativecontrol

Documented plans;quantitativecontrol

Communications Tacit interpersonal knowledge Explicit documented knowledge

Page 10: Introduktion til udviklingsprocesser og agile processer

HomeGrounds,contd.TECHNICAL

Requirements

Proritized informal stories andtestcases;undergoingunforeseeable change

Formalized project; capability;interface;quality;foreseeableevolutionrequirements

Development

Simpledesign;shortincrements;refactoringassumed inexpensive

Architectforparalleldevelopment;longerincrements;refactoring assumed expensive

Test Executable testcasesdefinerequirements

Documented testplansandprocedures

PERSONNEL

Customers Dedicated;colocated CRACKperformers

CRACKperformers,notalwayscollocated

Developers > 30%FTCockburn level 2and3experts;no 1bor-1

50%level 3searly;10%throughout;30%1b’s; 0-1

CultureComfort andempowerment viamany degrees offreedom;thriving onchaos

Comfort andempowerment viaframework ofpolicies andprocedures;thriving onorder

Page 11: Introduktion til udviklingsprocesser og agile processer

Dimensions

Page 12: Introduktion til udviklingsprocesser og agile processer

Techniques

• Riskmanagement• Projectmanagement• Qualitymanagement(V&V,peerreview,test,usabilityevaluation,…)• Configurationmanagement

Page 13: Introduktion til udviklingsprocesser og agile processer

SEforDependability

Dependability

Availability Reliability SecuritySafety Resilience

The ability of the system to protect itself against deliberate or accidental

intrusion

The ability of the system to resist and recover

from damaging events

The ability of the system to operate without catastrophic failure

The ability of the system to deliver services as

specified

The ability of the system to deliver services when

requested