The place where stuff Happens

First Cut of the Database For the Main Project

I have just finished by first cut design for the main project. The design is not good and I will improve on such in my second cut designs. In the first cut design has:         Client table which has all the client details needed         With two subtypes employee and client         A role table that stores all the privileges of the roles         Profile table that stores all the account related details         And Comment table which stores all the comments of the profile Here is the ERD (Entity Relational Diagram) ...   // //

Database Development Methodology

Database Properties When designing a database the following properties are key for a good design and implementation of the Database Completeness Ensure that users can access the data they want Ensure that the data can be accessed at any time and at any place This include ADHOC queries Integrity Ensures that data is both consistent (no contradictory data) and correct (no invalid data) Ensures that users trust the database (If a database is design properly users will trust it) Flexibility Ensures that a database can evolve and modified (without requiring a lot of effort) to satisfy changing requirements Efficiency Good Response Time(can be achieved with Indexes) Usability Database must be easy to use Data from the Database can be accessed and manipulated in an easy way The Conceptual Data Model Database Development requires a detailed understanding of the meaning of the data and their relationships to ensure that a database has right properties. Data analysis is concerned with representing the meaning of data as a conceptual data model. Development Model Requirements Gathering Establish the requirements that relate specifically to the data Obtain requirements documents Consultation and agreement with the end user. (On what they want to store in the database) Database Administrator overviews the business,legal and ethical issues within the organisation that impact on the data requirements Data Analysis Obtain a detailed description that will suite the user requirements Data requirement document analysis Conceptual Data model is created(Representation in entities and relations to ensure that the database has the right properties, this is not refined) Design Determines the specific type of database system(network,relational,object-oriented) Produces a specification of the logical schema Cater for requirement of all users First-Cut is Designed This will accurately represent the tables and constraints needed to satisfy the conceptual data model description and so satisfies the completeness and integrity requirements but is of poor usability Second Cut is Designed In this stage, the first cut design is flexed(improved on) to increase quality of the design hence making it more usable. This can be looped more than once until the best design is done. Implementation Realizing the design - Using DDL SQL statements to implement the design Populating the database - Import existing data or use database applications Support users and user processes - reporting of error conditions, constraint enforcement,automated processing using triggers,grouping of activities into transactions,defining database procedures and functions and data security Supporting data management strategies- How Frequently should data be backed up? What auditing mechanisms are required? Which users will be permitted to perform which functions? Testing Validation- Has the right database been developed to meet the requirements? It attempt to confirm that the right database has been constructed. Verification- Has the database design been implemented correctly? Ensures that processing steps, constraints and other programmed components of the database have been correctly implemented and contain no errors. Maintenance Operational Maintenance - Performance Checks on the database Porting - In which if the Database undergoes changes , the database implementation is to be revised Requirement change - Requirements are changed