tirsdag den 1. september 2009

Abstraction

Abstraction er et værktøj som kan bennyttes til effektivt at fange og repræsentere komplekse emner.

Man vil som datamodelør være ansvarlig for at, designe felxible strukturer da de dermed kan ændres skulle det være nødvendigt, samtidigt er det også vigtigt at sørge for at alle ting nødvendige er på plads når en aplikation bliver skabt.

Abstraction er en del af de process som benyttes efter normalization. Og den tilfører flexibilitet. Til vores model ved at redifinere og sammenslutte nogle af dataelementerne, enhederne og forholdne af modellen og dermed gøre dem mere forståelige. Man kan fjerne detaljer for at gøre applikationen mere forståelig, for et større spektrum af situationer mens der stadigvæk er preserveret de vigtige dele eller hvordan konceptet fungerer. Ved at fjene detaljer, fjerner vi forskel og derfor ændrer vi den måde vi ser disse koncepter på. '

Man kan for eksempel har seperate kunde og arnejdsgiver enheder, kan man komme ud for situationer, hvor det ville være en fordel istedet for at have personlige enheder, disse personlige enheder kan inkludere koncepter som kan blive tilføjet en applikation senere hen.

Abstraction kan reducere analyse og design tid, hvis vi altså vælger at bruge abstract før eller istedet for normalization. Hvis vi mangler tid, dokumentation ect.. kan vi dermed bruge abstraction istedet for normalization, man behøver dermed ikke at foretage en længeregående analyse og derfor sparer man naturligvis en del rescourser som for eksempel tid, men hvis du har tid ville det være en fordel at normalizing og derefter abstract.

Ved at bruge abstraction får vi ekstra flexibilitet for eksempel vil et nyt telefon nummer hos findsononline.com skabe en ny række, istedet for dataelementer på en model med konstant applikationsændring. Selvom man derfor får større fleksibilitet mister man samtidigt, tab af komunikation, tab af businessregler og længere skabelsestid. Når vi bruger abstract, taber vi faktiske business data elementers navne. Vi ænder rækkenavne til værdier.man taber som sagt også businessreglerved at bruge abstract, hvis man for eksempel vil i kontakt til sine medarbejdere er dette ikke muligt gennem telefon, da deres numre vil være samlet i en række uden man ved hvem det er. Istedet for et decideret data element.

Selvom vi kan formindske tiden det tager at analysere og designe ved at bruge abstraction, vil dette komme til at koste i udviklingstiden da det tager længere tid at skrive kode, istedet for rækker af data elementer.

Det er vigtigt når man bruger abstraction at man kun bruger det hvor det er værd at gøre det. For eksempel hvis man har identificeret to typer af sammenlignenlige ting, på sin model, og der er flere at tage af, altså for eksempel hvis man har person data og der er både telefon nummer og fax nummer, så er der også en chance for at denne har flere numre. Derfor vil det i dette tilfælde være en god ide at bruge abstraction.


 

Ingen kommentarer:

Send en kommentar