Top-Down tilgang vs bottom-up tilgang
Top-down-tilgang og bottom-up-tilgang er to tilgange, der ofte bruges, når man designer et projekt. Ikke mange forstår forskellene mellem disse to tilgange, og denne artikel har til hensigt at fremhæve funktionerne i begge dele for at gøre det lettere for læseren at sætte pris på de to koncepter i deres helhed.
Mens top-down-design starter fra abstrakt til endelig at opnå et solidt design, er bottom up-tilgang bare det modsatte, da det begynder med det konkrete design for at komme til den abstrakte enhed. Når det kommer til at designe helt nye systemer, er det top-down-tilgang, der er mest anvendt. På den anden side, i tilfælde af reverse engineering, som når det er målet at forstå en andens design, benyttes bottom up-tilgang.
Bund-up-tilgang fortsætter med design af modul eller delsystem på laveste niveau til det højeste modul eller delsystem. Man har brug for et strukturkort for at kende trinnene, der er involveret i udførelsen. Drivere er også nødvendige for at gennemføre denne type design.
Top-down-tilgang starter med modulet på øverste niveau og fortsætter nedad til modulet på laveste niveau. I virkeligheden følges der dog intet system stift, og designere har en tendens til at hoppe frem og tilbage mellem disse to tilgange, da behovet kan være.
Der er fordele og ulemper ved begge fremgangsmåder. Hvis vi taler om fordelene ved en top-down-tilgang, er det let at visualisere, giver følelse af fuldstændighed, og det er let at vurdere fremskridtene på ethvert trin. Når det drejer sig om en UI-drevet tilgang, er der chancer for overflødige forretningslogikker.
På den anden side, i en bottom-up-tilgang, har brugeren fordelene ved solid forretningslogik, evnen til at skrive en god enhedstest og den lethed, hvormed ændringer kan styres og ændres. Dens ulemper er, at der kræves en stor indsats for at skrive testsager, og fremskridtene kan ikke let verificeres på midttrinnet.
Resumé • Top-down og bottom-up er to tilgange til design • Begge bruges af designere • Begge fremgangsmåder har deres egne fordele og ulemper • Bund-up anvendes ofte i reverse engineering, mens der i et helt nyt projekt almindeligvis anvendes top-down tilgang |