Der er et generelt problem for systemudvikling ved at systemudviklingsforløb, -metodologier og -værktøjer bevidst eller ubevidst i vid udstrækning er baseret på en grundlæggende antagelse om at systemudvikling foregår som en ensrettet, rationelt fremadskridende proces, men dette er et uopnåeligt/naivt ideal for mange systemudviklingsopgaver. Dermed vil traditionelle systemudviklingsforløb, -metodologier og -værktøjer komplicere systemudviklingen ved at den løbende skal indpasses i nogle rammer der er grundlæggende forskellige. Der er i stedet for behov for at understøtte mere dialektiske eller direkte kaotiske systemudviklingsprocesser med tæt, gensidigt samspil mellem de forskellige systemudviklingsaktiviteter og ad hoc behov for valg af eller definition af relevante systemudviklingsaktiviteter i forbindelse med de enkelte systemudviklingsforløb og -problemer.
Den grundlæggende systemopfattelse er ligeledes et generelt problem idet systemudviklingsmetodologier, -metoder og -værktøjer typisk kun adresserer én form for system der kun dækker en del af systemudviklingen for eksempel i form af et socialt system eller et teknisk system. Dette komplicerer systemudviklingen ved at hele systemudviklingen skal indpasses i én systemopfattelse der delvist er grundlæggende forskellig, eller ved at systemudviklingen løbende skal koordinere/integrere flere forskellige systemopfattelser og systemmodeller for forskellige dele af systemet. Der er i stedet for behov for en grundlæggende, bredere systemopfattelse, der kan dække hele systemudviklingen.
Formålet med systemudviklingsopgaver varierer meget fra rent teknisk til rent organisatorisk systemudvikling og omfatter typisk flere forskellige grundlæggende formål i forskelligt omfang. Systemudviklingsmetodologier, -metoder og -værktøjer der er orienteret mod ét grundlæggende systemudviklingsformål komplicerer således systemudviklingen ved at hele systemudviklingen skal indpasses i nogle rammer der grundlæggende er uegnede. Der er i stedet for behov for bredere systemudvikling der muliggør såvel den nødvendige detaljering og præcision for udvikling af tekniske systemer som uklarheder, alternativer og konflikter for udvikling af organisatoriske systemer. Systemudviklingen bør ligeledes understøtte meget korte systemudviklings livscykler for hurtig, evolutionær systemudvikling uden at dette nødvendigvis degraderer effektiviteten af det implementerede tekniske system.
Med nødvendigheden af at understøtte mere eller mindre kaotiske systemudviklingsprocesser og forskellige systemudviklingsformål er det ikke muligt at definere faste aktiviteter/faser og (mellem)produkter for systemudviklingsforløb. Der er behov for at definere/tilpasse disse i forbindelse med det enkelte systemudviklingsforløb.
Den typiske skelnen mellem forskellige systemudviklingsparadigmer med udgangspunkt i forskellige synsvinkler som henholdsvis data, processer og objekter samt analytisk top-down nedbrydning og konstruktivistisk bottom-up opbygning er ikke hensigtsmæssig. De forskellige synsvinkler er alle relevante og nyttige i forbindelse med systemudvikling. Der er således behov for at disse "paradigmer" netop gøres til synsvinkler, der frit kan anvendes i systemudviklingen som forskellige måder at præsentere systemet på.
Den samme valgfrihed gælder for valg af og løbende skift mellem forskellige systemudviklingsmetodologier og -metoder tilknyttet de forskellige systemudviklingsparadigmer for at kunne udnytte de forskellige synsvinkler fuldt ud. Der er behov for at generalisere de forskellige systemudviklingsmetoder eller i hvert fald de systemmodeller de bearbejder således at de frit kan kombineres i stedet for at systemudviklingsmetoder er bundet til hinanden enkeltvis i form af specielle systemmodeller som henholdsvis inddata og uddata.
For frit at kunne kombinere forskellige systemudviklingsmetoder er det nødvendigt at generalisere systemmodellerne de bearbejder, da det ellers medfører nærmest uendelig kompleksitet i bindingerne mellem de forskellige systemudviklingsmetoder og -modeller på grund af et stort og eksponentielt stigende antal bindinger mellem de enkelte systemudviklingsmetoder og -modeller. Der er således behov for at generalisere de forskellige systemmodeller til én komplet og konsistent systemmodel med fælles, grundlæggende koncepter og elementer. Ellers må systemudvikling begrænses til et meget begrænset antal systemudviklingsmetoder og -modeller, da kombinationen af disse ellers vil være for kompleks for håndtering af systemudviklerne og systemudviklingsværktøjerne.
Med behov for at benytte forskellige systemudviklingsmetodologier og -metoder er det urealistisk/upraktisk at disse alle skal være omfattet af et enkelt systemudviklingsværktøj, og der kan desuden være behov for at benytte ad hoc og eksperimentielle systemudviklingsværktøjer. Der er dermed behov for åbne systemudviklingsværktøjer der frit kan kombineres/integreres, hvilket ligeledes kræver anvendelse af en generaliseret systemmodel som fælles grundlag for de forskellige systemudviklingsværktøjer.
|