10 Stappen naar SQL Succes

10 Stappen naar SQL Succes - dummies

Het doel van SQL is om ontwikkelaars in staat te stellen bruikbare en robuuste databases en database-applicaties te maken. Om hier succesvol in te zijn, moet je ontwikkelingsinspanningen een reeks fasen doorlopen, die allemaal voortbouwen op het vorige, totdat je een succesvol project met recht kunt vieren. Hier zijn tien essentiële stadia die zullen resulteren in een succesvolle database-ontwikkeling.

Definieer de taak

Aan het begin van een project heeft de persoon die u de taak toewijst om een ​​systeem te bouwen (de klant) een idee van wat nodig is. Dat idee kan heel specifiek, scherp en beknopt zijn, of het kan vaag, vaag en slecht gedefinieerd zijn. Je eerste taak is het genereren en opstellen van een gedetailleerde beschrijving van wat het eindresultaat van het project, de deliverables zou moeten zijn. Dit is de primaire taak van de definitiestap.

In de definitiefase definieert u het probleem dat moet worden opgelost door uw database en de bijbehorende toepassing zo nauwkeurig mogelijk. Doe dit door goed naar uw klant te luisteren terwijl zij beschrijft wat zij van het systeem verwacht. Stel vragen om vage punten te verduidelijken. Vaak heeft de cliënt het niet goed doordacht. Ze zal een algemeen idee hebben van wat ze wil, maar geen duidelijk beeld van de details. Je moet met haar een overeenkomst bereiken over de details voordat je verder kunt gaan.

Bepaal de projectomvang

De volgende stap in de definitiefase is het bepalen van de projectomvang. Hoe groot zal het zijn? Wat heeft het nodig in de tijd van systeemanalisten, programmeertijd, apparatuur en andere kostenitems? Is er een deadline?

Bepaal wat er nodig is om het werk te doen:

Nadat u de projectomvang hebt bepaald, is de volgende vraag die u zichzelf moet stellen, 'Is het mogelijk om deze taak uit te voeren binnen de tijd en de kostenbeperkingen die daarop worden gesteld? door de klant? 'Om deze vraag te beantwoorden, moet u een haalbaarheidsanalyse uitvoeren. Nadat u de analyse hebt voltooid, kunt u besluiten dat het project niet haalbaar is zoals momenteel is gedefinieerd. U moet het weigeren of de klant ervan overtuigen om de scope te beperken tot iets hanteerbaarder.

Nadat u hebt vastgesteld dat het project uitvoerbaar is, weet u wat voor soort personeel u nodig hebt om het werk te doen. Op dit punt moet je beslissen wie aan het project zal werken. Je kunt misschien een kleine klus helemaal alleen doen, maar de meeste ontwikkelingsinspanningen vereisen een team van meerdere personen. Het vinden van mensen met de vereiste vaardigheden (en die ook beschikbaar zijn om aan het project te werken wanneer u ze nodig hebt) kan net zo uitdagend zijn als elk onderdeel van de totale ontwikkelingsinspanning.

Genereer een Statement of Requirements

Nadat u met uw klant tot een overeenkomst bent gekomen over wat het project precies zal omvatten, kunt u een formele Statement of Requirements opstellen. De Statement of Requirements is een expliciete verklaring van de weergave-, update- en controlemechanismen van de database-applicatie.

Het rapport met vereisten moet zo gedetailleerd mogelijk zijn. Het is in wezen een contract tussen u en uw klant. U bent het erover eens wat precies zal worden geleverd en wanneer het zal worden geleverd. Om het arrangement te bezegelen, moeten zowel u als uw klant het Statement of Requirements ondertekenen, waarmee overeenstemming wordt bereikt over wat u verantwoordelijk zult maken voor het afleveren. Deze stap lijkt misschien nogal formeel, maar het beschermt beide partijen. Er kan later nooit sprake zijn van wat is afgesproken.

Maak een formeel databasemodel

Tot nu toe was het project voornamelijk analyse. Op dit punt kunt u de ontwerpfase ingaan en de overgang van analyse naar ontwerp maken. U weet waarschijnlijk alles wat u moet weten over het probleem, dus nu kunt u beginnen met het ontwerpen van de oplossing.

Bij databaseontwerp draait het allemaal om modellen. Op dit punt heeft u het datamodel van de gebruiker, dat het concept van de gebruikers van de structuur van de database vastlegt. Het omvat alle belangrijke soorten objecten, de kenmerken van die objecten en hoe de objecten met elkaar verband houden. Het is echter niet voldoende gestructureerd om de basis te zijn voor een databaseontwerp. Daarvoor moet u het datamodel van de gebruiker omzetten in een model dat voldoet aan een van de formele database-modelleringssystemen die in de afgelopen decennia zijn ontwikkeld.

Het meest populaire van de formele modelleringssystemen is het entity-relationship-model, gewoonlijk het E-R-model genoemd. Met dit model kunt u vastleggen wat de gebruikers u hebben verteld in een goed gedefinieerde vorm die u vervolgens eenvoudig kunt vertalen naar een relationele database.

Zodra u het systeem in de vorm van een E-R-model hebt, kunt u dit gemakkelijk omzetten in een relationeel model. Het relationele model is iets dat door uw DBMS wordt begrepen en u kunt de database rechtstreeks hieruit maken.

Ontwerp de databasetoepassing

Nadat u de database hebt ontworpen, is de ontwerptaak ​​slechts voor de helft af. U hebt een structuur die u nu kunt vullen met gegevens, maar u hebt nog geen tool om op die gegevens te werken. De tool die u nu moet ontwerpen, is de database-applicatie.

De databaseapplicatie is het deel van het totale systeem dat interactie heeft met de gebruiker. Het creëert alles wat de gebruiker op het scherm ziet. Het detecteert en reageert op elke belangrijke inzinking die de gebruiker maakt en elke muisactie die de gebruiker uitvoert. Het drukt elk rapport af dat wordt gelezen door de collega's van de gebruiker. Vanuit het oogpunt van de gebruiker is de databasetoepassing het systeem.

Bij het ontwerpen van de databaseapplicatie moet u ervoor zorgen dat deze gebruikers in staat stelt om alles te doen wat de vereisten bevatten die zij kunnen doen.Het moet ook een gebruikersinterface presenteren die begrijpelijk en gebruiksvriendelijk is. De functies van het systeem moeten op logische posities op het scherm verschijnen. De gebruiker moet gemakkelijk kunnen begrijpen hoe alle functies die de toepassing biedt, moeten worden uitgevoerd.

Build it

Nu dat u een databaseontwerp hebt, kunt u de tabellen maken, de relaties tussen deze tabellen en de beperkingen voor die gegevens die kunnen worden ingevoerd.

Documenteer het

Alles wat u hebt gedaan en de redenen voor alle beslissingen die u hebt genomen, moeten zorgvuldig worden gedocumenteerd. Hopelijk doe je dit altijd al. In dit stadium hoeft u alleen de documentatie in de definitieve vorm te plaatsen. Een bekwame ontwikkelaar die onbekend is met het project, moet het kunnen oppakken nadat u bent overgeschakeld naar grotere en betere dingen.

Alles testen

Nadat u een databasesysteem hebt gebouwd en gedocumenteerd, lijkt het alsof u klaar bent en kunt u genieten van een welverdiende vakantie, maar bent u nog niet helemaal klaar - het systeem moet rigoureus getest worden. Dat testen moet gedaan worden door iemand die niet hetzelfde denkt als jij. Zodra het systeem operationeel is, zullen gebruikers dingen doen die u zich nooit had voorgesteld. Ze zullen combinaties maken van selecties die u niet hebt voorzien, waarden invoeren in velden die geen betekenis hebben en dingen achterstevoren en ondersteboven doen. Het is niet te zeggen wat ze zullen doen. Ongeacht het onverwachte wat de gebruiker doet, wilt u dat het systeem reageert op een manier die de database beschermt en die de gebruiker begeleidt bij het maken van de juiste invoeracties.

Het voltooide product onderhouden

Nadat u het systeem op tijd en binnen het budget heeft opgeleverd, gevierd en uw laatste betaling voor de taak hebt verzameld, zijn uw verantwoordelijkheden nog niet voorbij. Zelfs als de onafhankelijke tester het fantastisch heeft gedaan om het systeem te laten mislukken, kan het na oplevering nog steeds verborgen bugs bevatten die weken, maanden of zelfs jaren later verschijnen. Mogelijk bent u verplicht om die bugs gratis op te lossen, afhankelijk van uw contractuele overeenkomst met de klant.

Zelfs als er geen bugs worden gevonden, hebt u mogelijk nog steeds enige verantwoordelijkheid. Niemand begrijpt immers net zo goed het systeem als jij. Naarmate de tijd vordert, veranderen de behoeften van uw klant. Misschien heeft ze extra functies nodig of wil ze migreren naar nieuwere, krachtigere hardware. Deze mogelijkheden kunnen wijzigingen in de database-applicatie vereisen, en u bent in de beste positie om die aanpassingen te doen, op basis van uw voorkennis. Dit extra werk zou een aardige extra opbrengst voor u kunnen betekenen.