mandag 14. juli 2003, 23:14, skrev Kjetil Torgrim Homme:
[Karl Ove Hufthammer]:
Eg synest «valideringsregel» er eit utmerka ord å bruka for «check constraint».
einig.
«Constraint» er noe annet en «validation».
Substantivet «kontrollskranke» fra Brage Førland er en langt bedre faglig oversettelse av «check constraint» enn «valideringsregel». Dette fordi validering handler om formatkontroll. Skranker handler om forretningsregler i databasen. Det er forskjell på hvordan man behandler dato-opplysningen man legger inn i en database, og om dato-formatet er amerikansk eller norsk :-).
Skranke brukes om logiske fenomen hvor man f.eks. sjekker for ulikheter. Validering handler vanligvis om kvalitetsikring av programvare hvor man forsikrer seg om at resultatet er i samsvar med kravspesifikasjonen.
Nå har validerings-begrepet sneket seg inn i programmeringsbransjen ad omveier. Man bruker automatiske rutiner for godkjenning av HTML- eller XML-dokumenter. På den måten sjekker man at elektroniske dokumenter følger bestemte standarder. Dette kalles gjerne dokumentvalidering.
Også i databaseapplikasjoner har ordet validering sneket seg inn. Spesielt gjelder dette inn/ut-felter i brukergrensesnittet hvor dataene som legges inn må samsvare med typen til et rekke i en relasjonsdatabase. F.eks «passer brukergrensesnittet på» at man taster inn en dato i rett format, slik at dato-feltet i databasen kan motta verdien.
Denne form for formatvalidering er ikke det samme som den forretningsregelen som uttrykkes i relasjonslogikken i en database. Da heter det skranker. Skrankene bestemmer forretningsreglene. Valideringen bestemmer, og forhåpentligvis hjelper brukere til å forsikre seg om at man nå har tastet inn en dato, ikke f.eks. et pengebeløp.
Grunnen til at man feilaktig blander sammen skranker med valideringsregler er ofte manglende kompetanse hos utviklere, eller mangler i relasjonsdatabaseteknologien. Tidvis skyldes dette betydelige mangler i Microsoft sin Visual Basic-løsninger for databaser og MS Access. Det skyldes også IBM-kurs i DB2 hvor det var vanlig å ansette folk med ettårig økonomiutdanning, som siden ble sendt på databasekurs på IBM. Ja, det var slik for 10-15 år siden, og slike databaser er et rent helvete å programmere i mot (jeg har gjort det).
Det bør nevens at Microsoft har avviklet løsninger som Visual Basic og MS Access hvor det mangler en skikkelig 3-lagsmodell. Teknologien er kastet og fullstendig erstattet med .NET-teknologien. Problemet der er at man kan kortslutte unntakshåndteringen, men det er en helt annen historie :-)
mvh Knut Yrvin
Kilde: www.dict.org
constraint
<programming, mathematics> A Boolean relation, often an equality or ineqality relation, between the values of one or more variables (often two). E.g. x>3 is a constraint on x. constraint satisfaction is the process of assigning values to variables so that all constraints are true.
validation
The stage in the software life-cycle at the end of the development process where software is evaluated to ensure that it complies with the requirements.