Organisasjonsmønstre - Organizational patterns

Organisasjonsmønstre er i stor grad inspirert av prinsippene i programvaremønstermiljøet, som igjen tar ledetråder fra Christopher Alexanders arbeid med mønstre fra den bygde verdenen. Organisasjonsmønstre har også røtter i Kroebers klassiske antropologiske tekster om mønstrene som ligger til grunn for kultur og samfunn. De har i sin tur gitt inspirasjon til Agile programvareutviklingsbevegelse, og for opprettelsen av deler av Scrum og spesielt for ekstrem programmering .

Historie

En tidlig eksplisitt sitering av mønstre av sosial struktur finnes i den antropologiske litteraturen.

Mønstre er de ordningene eller systemene for indre forhold som gir enhver kultur dens sammenheng eller plan, og holder den fra å være en bare ansamling av tilfeldige biter. De er derfor av primær betydning.

Kroeber snakker om universelle mønstre som beskriver et overordnet skjema som er felles for all menneskelig kultur; av systemiske mønstre er bred, men normative skjemaer knyttet til holdninger, atferd, tegn og økonomi; og totale kulturmønstre som er lokale. Kroeber bemerker at systemmønstre kan gå fra kultur til kultur:

En annen type mønster består av et system eller kompleks av kulturelt materiale som har bevist sin nytte som et system og derfor har en tendens til å koherere og vedvare som en enhet; den kan bare endres med vanskeligheter med hensyn til den underliggende planen. Et slikt systemisk mønster er først og fremst begrenset til ett aspekt av kultur, for eksempel livsopphold, religion eller økonomi; men det er ikke begrenset til området, eller til en bestemt kultur; det kan spres på tvers av kultur, fra et folk til et annet. . . . Det som skiller disse systemiske kulturmønstrene - eller velmønstrede systemer, som de også kan kalles - er en spesifikk sammenheng mellom komponentene deres, en nexus som holder dem sterkt sammen, og har en tendens til å bevare grunnleggende plan ... Som en resultat av vedvaren av disse systemmønstrene, blir deres betydning mest tydelig på et historisk syn.

Mønsteraspektet av Kroebers syn passer veldig godt til systemtankemønsterbildet til Christopher Alexander innen arkitekturfeltet. Alexanders bøker ble en inspirasjon for programvareverdenen, og spesielt for den objektorienterte programmeringsverdenen , i cirka 1993. Organisasjonsmønstre i den forstand de er anerkjent i programvaresamfunnet i dag gjorde først opptreden på det originale Hillside Group- verkstedet som ville føre til mønsterfellesskapet og dets PLoP- konferanser.

Hillside Group sendte ut en oppfordring om mønsterpapirer, og holdt i 1994 den første mønsterkonferansen på Allerton Park i sentrum av Illinois i USA. Den andre konferansen, også på Allerton, skulle følge et år senere. Disse to første PLoP- konferansene var vitne til en håndfull organisasjonsmønstre:

  • RaPPEL-mønsterspråket (1995) av Bruce Whitenack som beskrev organisasjonsstrukturer som er egnet til å anskaffe krav;
  • The Caterpillar's Fate mønsterspråk (1995) av Norm Kerth som beskrev organisasjonsstrukturer som støtter evolusjon fra analyse til design;
  • Et verk av James Coplien (1995) som beskriver flere års organisasjonsforskning ved Bell Laboratories;
  • Episodes, et mønsterspråk av Ward Cunningham (1996) som beskriver viktige punkter i det vi i dag vil kalle Agile programvareutvikling;
  • Et mønsterspråk av Neil Harrison (1996) om teamets dannelse og funksjon.

En mengde tilhørende publikasjoner og oppfølgingsartikler fulgte raskt deretter, inkludert en ekstemporisering av tilnærmingen til organisasjonsmønstrene i Bell Labs Technical Journal, et invitert stykke i ASE, en CACM-artikkel av Alistair Cockburn og kort tid etter et mønsterbelastet bok av Alistair, samt kapitler av Benualdi og Janoff i Mønsterhåndboken . Det handlet også om denne gangen Michael A. Beedle et al. publiserte mønstre som beskrev eksplisitte utvidelser til eksisterende organisasjonsmønstre, for anvendelse i prosjekter som bruker en da fem år gammel rammeverk for programvareutvikling kalt Scrum. Noen få artikler til, for eksempel den av Brash et al. begynte også å vises.

Lite mer skjedde på organisasjonsmønstrene fram til utgivelsen av boken av Berczuk et alt om konfigurasjonsstyringsmønstre; dette var et friminutt fra innsatsen som opprinnelig var sentrert ved Bell Labs.

I mellomtiden hadde Jim Coplien og Neil Harrison samlet inn organisasjonsmønstre og kombinert dem til en samling av fire mønsterspråk. De fleste av disse mønstrene var basert på den opprinnelige forskningen fra Bell Laboratories, som studerte over 120 organisasjoner i løpet av et tiår. Disse empiriske studiene var basert på faglig rollespill i programvareutviklingsorganisasjoner, som minner om sosiodramaene til Morenos opprinnelige sosiale nettverkstilnærming . Imidlertid hadde mønsterspråket også betydelige innspill fra andre kilder, og spesielt verkene av Cockburn, Berczuk og Cunningham. Denne samlingen ble utgitt som Organizational Patterns of Agile Software Development i 2004.

En av de nyeste organisasjonsmønsterartiklene kommer fra en tidlig mønster-bidragsyter og talsmann, objektdesign-pioneren Grady Booch.

Prinsipper for oppdagelse og bruk

Som andre mønstre blir ikke organisasjonsmønstre opprettet eller oppfunnet: de blir oppdaget (eller "utvunnet") fra empirisk observasjon. Det tidlige arbeidet med organisasjonsmønstre ved Bell Laboratories fokuserte på å trekke ut mønstre fra analyse av sosialt nettverk . Denne forskningen brukte empiriske rolleteknikker for å samle informasjon om strukturen i relasjoner i fagorganisasjonen. Disse strukturene ble analysert for tilbakevendende mønstre på tvers av organisasjonen og deres bidrag til å oppnå organisatoriske mål. De tilbakevendende vellykkede strukturer ble skrevet opp i mønsterform for å beskrive deres avveininger og detaljerte designbeslutninger (krefter), konteksten de bruker, sammen med en generisk beskrivelse av løsningen.

Mønstre gir en trinnvis vei til forbedring av organisasjonen. Mønsterstilen for å bygge noe (i dette tilfellet en organisasjon) er:

  1. Finn den svakeste delen av organisasjonen din
  2. Finn et mønster som sannsynligvis vil styrke det
  3. Bruk mønsteret
  4. Mål forbedringen eller nedbrytningen
  5. Hvis mønsteret forbedret ting, gå til trinn 1 og finn den neste forbedringen; Ellers, angre mønsteret og prøv et alternativ.

Som med Alexander-stilmønstre for programvarearkitektur, kan organisasjonsmønstre organiseres i mønsterspråk : samlinger av mønstre som bygger på hverandre.

Et mønsterspråk kan foreslå mønstre som skal brukes på et kjent sett med arbeidsmønstre som er til stede.

Organisasjonsmønstre, smidige og andre arbeider

Historien om Agile programvareutvikling og organisasjonsmønstre har blitt sammenflettet siden begynnelsen. Kent Beck var hyrden (interaktiv mønster korrektur) av Coplien papir for 1995 slenger , og han nevner påvirkning av dette arbeidet med ekstrem programmering i 2003 i en publikasjon. Ideen om daglige Scrum-møter kom faktisk fra et utkast til en artikkel for Dr. Dobb's Journal som beskrev organisasjonsmønsterforskningen på Borland QPW-prosjektet. Beedles tidlige arbeid med Sutherland brakte mønsterperspektivet mer solid inn i Scrums historie. Nylig har Scrum-samfunnet tatt nyfunnet interesse for organisasjonsmønstre, og det er felles forskning fremover mellom de to samfunnene. På den måten fant den første Scrum PLoP- konferansen sted i Sverige i mai 2010, sanksjonert av både Scrum Alliance og Hillside Group .

referanser

  1. ^ Alexander, Christopher. Et mønsterspråk. Oxford University Press, © 1979.
  2. ^ Kroeber, Alfred L. Antropologi: Kultur, mønstre og prosess. New York: Harcourt, Brace and World, 1948.
  3. ^ Kroeber, Alfred L. Antropologi: Kultur, mønstre og prosess. New York: Harcourt, Brace and World, 1948, s. 119
  4. ^ Kroeber, Alfred L. Antropologi: Kultur, mønstre og prosess. New York: Harcourt, Brace and World, 1948, s. 120 - 121.
  5. ^ Coplien, James. Mønsterets kultur. I Branislav Lazarevic, red., Computer Science and Information Systems Journal 1, 2, Beograd, Serbia og Montenegro, 15. november 2004, s. 1-26.
  6. ^ Whitenack, Bruce. RAPPeL: et krav-analyse-prosess mønsterspråk for objektorientert utvikling. I James Coplien og Doug Schmidt, red.anm., Mønsterspråk for programdesign. Addison-Wesley, 1995, s. 259 - 291.
  7. ^ Kerth, Norm. Caterpillar's Fate: et mønsterspråk for transformasjonen fra analyse til design. I James Coplien og Doug Schmidt, red.anm., Mønsterspråk for programdesign. Addison-Wesley, 1995, s. 293 - 320.
  8. ^ Coplien, James. Organisasjonsmønstre. I James Coplien og Doug Schmidt, red.anm., Mønsterspråk for programdesign. Addison-Wesley, 1995, s. 183 - 237.
  9. ^ Cunningham, Ward. Episoder: et mønsterspråk for konkurranseutvikling. I Vlissides et al., Red., Pattern Language of Program Design - 2. Addison-Wesley, 1996, s. 371 - 388.
  10. ^ Harrison, Neil. Organisasjonsmønstre for lag. I Vlissides et al., Red., Pattern Language of Program Design - 2. Addison-Wesley, 1996, s. 345 - 352.
  11. ^ Harrison, Neil B. og James O. Coplien. Mønstre fra produktive programvareorganisasjoner. Bell Labs Technical Journal, 1 (1): 138-145, Summer (September) 1996.
  12. ^ Kain, Brendan G., James O. Coplien og Neil B. Harrison. Sosiale mønstre i produktive programvareorganisasjoner. I John T. McGregor, redaktør, Annals of Software Engineering, 259-286. Baltzer Science Publisher, Amsterdam, desember 1996.
  13. ^ Cockburn, Alistair. Samspillet mellom sosiale problemer og programvarearkitektur. CACM 39 (10), oktober 1996.
  14. ^ Cockburn, Alistair. Overlevende objektorienterte prosjekter. Addison-Wesley, 1997.
  15. ^ Genualdi, Patricia. Forbedring av programvareutvikling med prosess- og organisasjonsmønstre. I Linda Rising, red. Mønsterhåndboken. Cambridge University Press, 1998, s. 121 - 129.
  16. ^ Janoff, Norm. Organisasjonsmønstre ved AG kommunikasjonssystemer. I Linda Rising, red. Mønsterhåndboken. Cambridge University Press, 1998, s. 131 - 138.
  17. ^ Michael A. Beedle, Martine Devos, Yonat Sharon, Ken Schwaber og Jeff Sutherland. SCRUM: Et språk for utvidelsesmønster for hyperproduktiv programvareutvikling. Washington University tekniske rapport TR # WUCS-98-25, 1998.
  18. ^ Brash, Danny, et al. Evaluering av organisasjonsmønstre for å støtte virksomhetens kunnskapsledelse. Fortsettelse av den internasjonale konferansen for informasjonsressursstyring fra 2000 om utfordringer med informasjonsteknologiledelse i det 21. århundre. IGI Publishing, mai 2000.
  19. ^ Berczuk, Steve, Brad Appleton og Kyle Brown. Programvarekonfigurasjonshåndteringsmønstre: Effektiv teamarbeid, praktisk integrasjon. Addison-Wesley, 2003.
  20. ^ Moreno, JL Hvem skal overleve ?: grunnlaget for sosiometri, gruppepsykoterapi og sosiodrama. Washington, DC: Nervous and Mental Disease Publishing Co., 1934.
  21. ^ Coplien, James og Neil Harrison. Mønstre for smidig programvareutvikling. Addison-Wesley, © 2004.
  22. ^ Booch, Grady. Arkitektoniske organisasjonsmønstre. IEEE Software 25 (3), Mai 2008, s. 18 - 19.
  23. ^ Fraser, Steven, Kent Beck, Bill Caputo, Tim Mackinnon, James Newkirk og Charlie Pool. "Testdriven utvikling (TDD)." I M. Marchesi og G. Succi, red., XP 2003, LNCS 2675, s. 459 - 462, 2003. © Springer-Verlag, Berlin og Heidelberg, 2003.
  24. ^ Coplien, James O., og Jon Erickson. Undersøkelse av programvareutviklingsprosessen. Dr. Dobbs Journal of Software Tools, 19 (11): 88-95, oktober 1994.
  25. ^ Sutherland, Jeff. Origins of Scrum. Nettsiden [1] , åpnet 22. september 2008. 5. juli 2007.
  26. ^ Sutherland, Jeff. Scrum og organisasjonsmønstre. Nettsiden [2] , åpnet 14. juni 2013. 20. mai 2013.