Gå til hovedindhold
Version2 it for professionelle
Forsiden

Hovedmenu

  • It-nyheder
  • Blogs
  • It-job
  • It-firmaer
  • Whitepapers
  • Opret bruger
  • Log ind
Du kan logge ind med din e-mail-adresse
Der er forskel på store og små bogstaver i adgangskoden.
Glemt adgangskode?
Se kommentarer (8)
Emner Agil udvikling, Uddannelse, Projektledelse

Software Engineering er død

Af Anne-Sofie Nielsen 26. juli 2009 kl. 20:53

Som en, hvis officielle titeler "Senior Software Engineer" (nu behøver vi ikke at træde i, at jeg snart fylder 30...) blev jeg afsindigt nysgerrig, da Dorte Toft for nylig sendte mig i retning af en artikel i IEEE Software med titlen "Software Engineering: An idea whose time has come and gone".

Har jeg nu spildt tiden på ingeniørstudiet, monstro? 

Artiklen indeholder noget så sjældent som en mands erkendelse af, at han tog fejl. Tom DeMarco skrev i 1982 bogen "Controlling Software Projects: Management, Measurement and Estimation", der blev lidt af en bibel indenfor et af de områder, der tilskrives klassisk Software Engineering, nemlig som titlen siger: Ledelse af softwareprojekter gennem at opstille og overvåge en række metrikker.

Hovedessensen af bogen kan groft sagt opsummeres i dens første og mest citerede sætning: "You can?t control what you can't measure." Korrekt, men som Tom DeMarco i IEEE-artiklen erkender, er tiden måske kommet til, at man gør op med paradigmet om, at det er så vigtigt at styre og kontrollere softwareprojekter.

Tom DeMarco tilføjer desuden en række pointer, som ikke burde være nyt stof for tilhængerne af agile metoder (eller almindelig omtanke):

  1. Måling og kontrol er ikke gratis - det koster både tid og penge.
  2. Man får ikke altid målt det, der er vigtigt.
  3. Medarbejderne performer bedre, hvis de ikke bliver holdt i (for) kort snor 

Mange Open Source-projekter har jo i nyere tid demonstreret, at der kan laves glimrende produkter med et absolut minimum af kontrol.

Det kan derfor virke som gamle nyheder, at Tom DeMarco nu kommer på banen med disse synspunkter. Men jeg tager hatten af for, at en kapacitet på området erkender sine fejl - man kan blot håbe på, at det vil smitte af på de klassiske it-uddannelser, så fremtidige generationer af softwareingeniører m.fl. ikke skal tudes ørene fulde med glæderne ved vandfaldmodellen og uendelige bjerge af procesdokumentation.

For jeg køber til gengæld ikke artiklens definition af, at en sådan proces-fokusering skulle være definitionen af Software Engineering. Vi har i dén grad stadig brug for, at software bliver engineered = skabt med omtanke!

Send Tweet
Udskriv
Billede af Anne-Sofie NielsenOm Anne-Sofie Nielsen

Anne-Sofie Nielsen er udviklingschef hos Kapow Software og har en baggrund som civilingeniør i informatik fra DTU. Har aldrig helt fået besluttet sig for at være en nørd eller ej.

Follow @femalenerd

Kommentarer (8)

Opret en konto eller log ind for at følge indhold på Version2 - og bliv opdateret via e-mail eller rss

Følg kommentarer
Torben Mogensens billede
Torben Mogensen 27. jul. 2009 - 11.41
 
Education Engineering og Research Engineering
1. Måling og kontrol er ikke gratis - det koster både tid og penge. 2. Man får ikke altid målt det, der er vigtigt. 3. Medarbejderne performer bedre, hvis de ikke bliver holdt i (for) kort snor

Gid, at undervisningsministeriet og forskningsministeriet ville erkende dette. Der bliver mere og mere måling og flere og flere restriktioner og rapportkrav, som koster en masse ressourcer, og som ikke efter min mening øger kvalitet eller produktivitet. Den eneste effekt er, at de parametre, man måler på, bliver forbedrede. Men at de parametre rent faktisk er synonyme med kvalitet er ret tvivlsomt.

  • Stem op 0
  • Stem ned 0
  • Log ind eller opret en konto for at skrive kommentarer
Torben Rahbek Koch 27. jul. 2009 - 17.54
 
Omdefinering af Software Engineering

Jeg synes, at der mere er tale om at Tom DeMarco vil omdefinere opfattelsen af, hvad Software Engineering omfatter, selvom han måske modsiger sig selv lidt:

"I’m gradually coming to the conclusion that software engineering is an idea whose time has come and gone. I still believe it makes excellent sense to engineer software. But that isn’t exactly what software engineering has come to mean."

Han er jo nok bare, ligesom hele den agile skole, kommet frem til at det er en god ide at sætte folk i fokus i stedet for processen:

"Rather, I’m advocating a management approach, one that might well steer the team toward agile methods, at least
toward the incremental aspects of the agile school."

Helt uden tal (metrics) klarer man sig nok ikke - der skal stadig estimeres og planlægges i hver iteration.

Men enig, dejligt at en person som DeMarco, kan se sagen fra "den anden side" også ;-)

  • Stem op 0
  • Stem ned 0
  • Log ind eller opret en konto for at skrive kommentarer
Anne-Sofie Nielsens billede
Anne-Sofie Nielsen 28. jul. 2009 - 12.22
 
Re: Omdefinering af Software Engineering
Helt uden tal (metrics) klarer man sig nok ikke - der skal stadig estimeres og planlægges i hver iteration.

Enig, men "nyheden" består så i, at man ikke bevidstløst beregner og planlægger, men forinden vurderer, hvor det giver nytte for pengene.

  • Stem op 0
  • Stem ned 0
  • Log ind eller opret en konto for at skrive kommentarer
Jesper Louis Andersen 30. jul. 2009 - 12.06
 
Re: Education Engineering og Research Engineering

@Torben:

En af de sjove ting i Tom Demarcos bog (som tilfældigvis var toiletlæsning hjemme hos mig i et par uger) er hans Heisenberg-princip i lettere modificeret udgave. Hvad du måler i en proces vil utvilvsomt blive påvirket af målingen.

Hvis du endvidere fortæller hvad din metrik er og bruger den til at vurdere effektiviteten af en gruppe mennesker, så medfører det banalt set at gruppen lokaloptimerer. Desværre er det sjældent ækvivalent med en global optimering.

  • Stem op 0
  • Stem ned 0
  • Log ind eller opret en konto for at skrive kommentarer
Poul-Henning Kamps billede
Poul-Henning Kamp 30. jul. 2009 - 12.58
 
Re: Education Engineering og Research Engineering

Jvf Dilbert sekvensen hvor de fik bonus per fejl de fandt.

Wallys kommentar: "Jeg tror jeg vil skrive mig en rungstedtraktor i eftermiddag".

Poul-Henning

  • Stem op 0
  • Stem ned 0
  • Log ind eller opret en konto for at skrive kommentarer
Henrik Sørensen 16. nov. 2009 - 07.57
 
Re Poul-Henning

Dén HAR jeg set implementeret i en dansk virksomhed.

Resultat : Folk indsatte bevidst fejl, som de efterfølgende selv rettede med høj bonus til følge..

  • Stem op 0
  • Stem ned 0
  • Log ind eller opret en konto for at skrive kommentarer
Jens Madsen 16. nov. 2009 - 11.22
 
Frihed betyder ikke mangel på kontrol.

Jeg tror Tom DeMarco har begået endnu en fejl... Frihed, og kontrol, er ikke modsætninger. Kunsten er, at kombinere frihed med kontrol. I princippet, behøver medarbejderne ikke at opdage de "overvåges".

Men fjerner vi overvågningen, så overlades styringen til mafien. Så bliver det den største terrorist som vinder. Formålet med at "kontrolere", er netop at udelukke terrorisme.

Imidlertid medfører kontrol også ansvar - dem der kontrolerer, får ansvaret for produktet. Fjerner du kontrollen, så fjernes deres ansvar, og du får medarbejderansvar.

Medarbejderansvar fungerer også nogenlunde - men genneralt kan være fordele ved, at placere ansvaret et bestemt sted. Ulempen er, hvis disse så ikke tager ansvaret, og ikke forstår at løfte opgaven. I så fald, så vil det naturligvis langt bedre, at lade programmørerne tage det fulde ansvar, trods de med stor sandsynlighed er rejst og borte, når det går galt.

Lønningsmæssigt, vil det naturligvis også betyde noget. Har lederen ikke mere ansvaret, så går han lønmæssigt ned på samme niveau, som de andre i virksomheden. Med ansvar følger lønnen. Ingen ansvar - ingen løn.

  • Stem op 0
  • Stem ned 0
  • Log ind eller opret en konto for at skrive kommentarer
Jens Madsen 16. nov. 2009 - 12.09
 
Hvad er kontrol?

Med kontrol, forstår jeg "aflæsning", altså det samme som at læse, eller verificere data. Ikke at skrive data.

Nogle forstår måske kontrol, som at skrive data - altså hvad vi kunne kalde at diktere, eller diktatur.

Hvis Tom DeMarco forstår kontrol som at "skrive data", altså at styre, og at udføre diktatur på medarbejderne, så medgiver jeg ham at frihed og kontrol er modsætninge. Men forstås kontrol, som at aflæse, så er det i princippet ikke destruktivt, og behøver ikke at ødelægge frihed.

Det som er destruktivt, er som regel når man begynder at vil styre. Dette kan i mange tilfælde betragtes som at skrive i data som ikke er sine egne, og dette medfører ofte fejl, og ustabilitet. Overvågning, og aflæsning, kombineret med at gøre det bedst mulige for medarbejderne (uddanne hvis der opdages mangler i evner og kunnen, eller give dem midler, hvis der opdages nogle mangler), er ikke det samme som at ikke give dem fuld frihed. At anvende overvågningen, til at give dem de opgaver de gerne vil have, kan også være eksempel på "positiv" anvendelse af overvågning.

Det er nødvendigt med en vis måling, hvis du skal tage ansvar. Jeg tror hellerikke, at nogle programmører tror, de kan få noget til at fungere, uden at have afprøvet og testet det de gør.

Problemet opstår, når du så ser en fejl. Er du dårlig, går du ind og retter fejlen. Du vil måske se, at en variabel får en forkert værdi, og ændrer denne med debuggeren. Kort tid efter, sker fejlen igen... Programmet forstod ikke en skid.

Her er kunsten, at anvende målingen positivt overfor medarbejderne, og overfor softwarens kvalitet. Det medfører, at medarbejderne måske skal videreuddannes, hvis det afsløres noget de ikke kan. Eller, at de måske skal have flere resourcer, såsom flere penge, mere tid, eller hjælpere til projektet, uden de måske selv har opdaget det. Disse tiltag, kan sammenlignes med, at vi løser problemerne for vores program - f.eks. at vi uddanner og løser fejlen, at vi måske tilfører større hukommelse eller større cpu kraft, for at løse flaskehalsen, osv. Overvågningsdataene - eller kontrollen - bruges nu positivt, til at få fejlen rettet, og ikke til at gå ind og ændre og modificere i data, i hvert enkelt tilfælde.

Det er vigtigt, at medarbejderne er "med", og den der tager beslutningerne. Så må med uddannelse, flere resourcer, måske udeligering af svære opgaver mv. sikres at de har bedst mulige vilkår, til at løse opgaven. Kontrol, er her en vigtig resource, til at kunne opnå det.

Desto mere af intelligensen, som ligger hos medarbejderen - desto bedre er det. En leder, har kun den intelligens, som hans medarbejdere har tilsammen. Lederens opgave er, at få noget ud af den. En leder, som dikterer, kan meget nemt være en dårlig leder. Meddens en leder der overvåger og måler, oftest er en god leder. En leder, som ikke hverken måler eller styrer, er næppe en rigtig leder, og en der ikke måler, er ikke en god leder. Er personen dygtig som ingeniør, er han måske en god senior, men kan han ikke aflæse og måle medarbejderne, vil han være dårlig leder.

At måle, og aflæse sine medarbejdere, mener jeg stadigt er vigtigt for at kunne lede og styre. Og det kan samtidigt gøres, uden at holde medarbejderne i "kort snor".

  • Stem op 0
  • Stem ned 0
  • Log ind eller opret en konto for at skrive kommentarer

Tilføj kommentar

Opret en konto eller log ind for at følge indhold på Version2 - og bliv opdateret via e-mail eller rss

Følg kommentarer
Log ind herunder eller opret en bruger for at skrive kommentarer
Du kan logge ind med din e-mail-adresse
Der er forskel på store og små bogstaver i adgangskoden.
Glemt adgangskode?

Seneste nyt

Google: Dart bliver langt hurtigere end JavaScript

Udgivet 21. maj 12.20Opdateret 21. maj 12.20

Verdens mest brugte browser hedder Chrome

Udgivet 21. maj 11.25Opdateret 21. maj 11.25

NemID sender Mac-computere fra 2009 ud i kulden

Udgivet 21. maj 10.42Opdateret 21. maj 10.59

It-konsulent hjalp ven med virus-problemer – og havnede i retten

Udgivet 21. maj 10.11Opdateret 21. maj 11.14

Microsoft lancerer socialt netværk - nu med videofester

Udgivet 21. maj 9.27Opdateret 21. maj 9.36

Flere it-nyheder »

Tilmeld dig Version2's it-nyhedsbrev og vind den nye iPad.

Seneste debat

  1. Enhedslisten bider sig fast: VIL have svar på, om NemID er spionsoftware

    12 comments.
    Last update 43 sekunder
    Skrevet af Frithiof Andreas Jensen
  2. To psykologiske årsager til at IT-projekter går galt

    3 comments.
    Last update 2 minutter 20 sekunder
    Skrevet af Torben Mogensen
  3. NemID sender Mac-computere fra 2009 ud i kulden

    9 comments.
    Last update 13 minutter 44 sekunder
    Skrevet af Jesper Lund
  4. Diablo III overtrumfer Yousees planer om kabelarbejde

    19 comments.
    Last update 14 minutter 44 sekunder
    Skrevet af Tim Andreasen
  5. Vestager: Drop CPR - brug NemID til at verificere danskerne på nettet

    9 comments.
    Last update 20 minutter 36 sekunder
    Skrevet af Jesper Lund
  6. Dansk IT: Brug NemID i stedet for CPR til at bekræfte folks identitet

    20 comments.
    Last update 23 minutter 26 sekunder
    Skrevet af Carsten Stenberg
  7. Cisco kan være en dyr netværksreligion

    3 comments.
    Last update 34 minutter 52 sekunder
    Skrevet af Jens Jönsson
  8. Verdens mest brugte browser hedder Chrome

    3 comments.
    Last update 36 minutter
    Skrevet af Hans-Kristian Bjerregaard

Mere debat »

It-virksomheder

Relation House
|
Ciklum
|
Visma Sirius A/S
|
Timelog
|
Incube
|
ITX
|
MOC
|
Biwise
|
Intelliglobe
|
Esec
|
Webdanmark.Com
|
Systematic
 

Information

  • Kontakt redaktionen
  • Job- og annoncesalg
  • Teknisk support
  • Om Version2
  • Brugerbetingelser
  • Privatlivspolitik

Aktuelle emner

  • Agil udvikling
  • Android
  • Bruttolønsordning
  • Business Intelligence
  • Cloud computing
  • Download Windows 8
  • HTML5
  • Harddisk-priser
  • IE9
  • Intranet
  • It-sikkerhed
  • Kindle Fire
  • Multimedieskat
  • NemID
  • OS X Mountain Lion
  • Open source CMS
  • Projektledelse
  • Scrum
  • Sharepoint intranet
  • Storage
  • Ubuntu 11.10
  • Virtualisering
  • Windows 8
  • Windows Phone 7
  • iOS 5
  • iPhone 4S

Tjenester

  • Android-app
  • iPhone-app
  • RSS-feeds
Følg @version2dk
Tilmeld dig Version2's it-nyhedsbrev og vind den nye iPad.

Version2 udgives af

  • Mediehuset Ingeniøren A/S work Skelbækgade 4 1717 København V
  • Tlf. work 33265300