Systemdesign er orienteret mod systemmodellering af en løsning der kan implementeres som et computerbaseret system samt omkringliggende processer igennem formulering af algoritmer og manuelle procedurer samt detaljering af formkrav og fejlhåndtering.
Systemdesignet tager udgangspunkt i systemanalysens systemmodel med valg af hvilke dele af systemet der kan og skal implementeres som et computerbaseret system, samt detaljering og præcisering af hvordan denne implementering kan ske i form af et computerbaseret system og omgivelsernes interaktion med det computerbaserede system.
Systemets data detaljeres og præciseres med computerorienterede datatyper og datastrukturer, og systemets processer detaljeres og præciseres med computerorienterede instruktioner til bearbejdning af data og styring af processerne.
De forskellige traditionelle systemudviklingsmetoder er som ved systemanalyse også typisk bundet til ét systemmodelleringsparadigme i form af funktions-, data- eller objektorienteret systemmodellering men med generel systemmodellering kan disse blot betragtes som forskellige strukturerings- og præsentationsformer af de samme grundlæggende elementer.
Systemdesign datamodellering ved traditionel systemudvikling omfatter typisk entitet-relation modellering og normalisering af data med henblik på implementering af data i en relationsdatabase. Med generel systemmodellering kan datamodellering også eksplicit laves som entitet-relation modeller, men datamodellering kan/bør i stedet for laves med de generelle whole-part og type-instance relationer, som kan transformeres til en entitet-relation model, hvis data skal implementeres i en database.
Ved traditionel systemudvikling omfatter systemdesign procesmodellering typisk en form for hierarkisk processtrukturdiagram med overførsel af data mellem styrende og bearbejdende delprocesser. Med generel systemmodellering kan sådan et proces hierarki umiddelbart modelleres med whole-part relation suppleret med system-relation relationer for de overførte data.
Overførsel af data mellem hierarkiske niveauer er dog ikke "naturlig" med generel systemmodellering, da det indikerer et "fysisk" hierarki med imperative programmeringssprog orienterede funktioner/procedurer der kalder andre funktioner/procedurer. Ved at se bort fra de hierarkiske whole-part relationer kan den hierarkiske processtruktur transformeres til et tilsvarende, mere generelt netværk af delsystemer. Disse kan eventuelt opdeles i et hierarki af hensyn til abstraktion og gruppering af tæt relaterede delsystemer, men dette er ikke ensbetydende med at de skal implementeres som hierarkiske programmeringskomponenter i form af procedurer/funktioner.
Systemdesignet bør ikke være bundet til en bestemt type programmeringssprogs programmeringsmodel. Beslutninger om sådanne implementeringsdetaljer bør træffes i forbindelse med fastlæggelse af implementeringen eller systemarkitekturen med identifikation af relevante programmer, moduler og procedurer/funktioner (hvis der vælges en imperativ implementering).
På tilsvarende måde som ved systemanalyse kan systemmodellering af data og processer desuden transformeres og præsenteres objektorienteret med gruppering af processer omkring direkte input-output relaterede data.
Med generel systemmodellering kan systemdesign således ske som en integreret detaljering af systemanalysen og uafhængigt af eventuelt senere valg af systemarkitektur og implementering.
|