Category | Assignment | Subject | Computer Science |
---|---|---|---|
University | Arden University (AU) | Module Title | COM5013 Database design and implementation |
Word Count | 4000 Words |
---|---|
Assessment Type | Report |
As part of the formal assessment for the programme you are required to submit an Advanced Databases assignment. Please refer to your Student Handbook for full details of the programme assessment scheme and general information on preparing and submitting assignments.
After completing the module, you should be able to:
1. Demonstrate a critical understanding of the tools and techniques required for advanced database development.
2. Justify the design and development of a database application and critically evaluate the implementation and approach.
3. Design and implement a database system using a range of techniques, meeting the needs of both the user and the client.
4. Develop appropriate query language statements in order to efficiently create, manage and interrogate data within a database application.
Your assignment response should be a formal written report, including a cover page, table of contents, headers and footers, page numbers, appropriate section headings and sub-headings, and a references section that uses the AU Harvard system.
A database is required to manage inventory for an online platform that provides a second-hand electronic gadgets and accessories to members of the public in UK, both sellers and buyers. Electronic gadgets and accessories include items from all brands and categories.
• Inventory Management: The database must be capable of managing data for each user’s electronic gadgets and accessories on sale. Each electronic gadgets and accessory item should have its name, model, colour, brand, date of purchase, specification, condition, price, etc.
• Inheritance Strategy: The database must implement an inheritance strategy to allow for the efficient management of data across electronic items and accessories’ categories.
• User, order, and shipping management: Basic user information should be stored for their user profile, along with their order history and shipping information.
• Sales: Basic sales data of electronic gadgets and accessories need to be included which helps to manage the stock.
• Search and filtering: The database should include functions for inventory searching and filtering so data sets can be narrowed down to specific categories of electronic gadgets or accessories.
• Reporting: The database should provide the ability to generate customized reports and analytics on inventory levels of the electronic gadgets and accessories.
You are to design a database solution to this scenario using the database management system (DBMS) specified by your tutor.
Any evidence submitted using a database account or platform other than the one provided by your tutor will be treated as unverifiable and disregarded, no marks will be provided for the work.
Physical model
Present a physical model for your database solution in the form of a “crow’s foot” enhanced entity relationship diagram (EERD). This must include entities, attributes, keys, relationships with modalities and cardinalities, datatypes, any appropriate junction tables and need to use naming conventions for all of it. Your database needs to be efficient and satisfy all the requirements of the given case study.
It should also indicate all constraints, including keys and AT LEAST TWO of the following:
A default value constraint
A check constraint used for validation
An auto-incrementing column
Data must be normalised to 3nf prior to optimisation. You do not need to detail the steps taken to normalise the data; it should be apparent in the final structure.
It must also include AT LEAST ONE example of super/sub-typing (inheritance) modelled using a specific strategy, AT LEAST ONE example of appropriate de normalised data AND AT LEAST ONE non-key index to improve the efficiency and performance of the database functionalities.
Physical model rationale
Write a further section justifying your selected approach(es) to super/sub-typing (inheritance), de-normalisation, and the use of any non-key indexes. Avoid broad definitions of the terminology, this is not a knowledge check, instead present the reasoning behind your specific design choices. Support your arguments by citing credible sources.
(500 words)
(10 marks)
(Total: 1500 word equivalent)
(30 marks)
(LOs: 1 & 2)
Implementation
Implement your physical design in the specified DBMS. You must include text-based copies of any SQL code used and screenshots as evidence of the results of execution of that code in your report. Screenshots should include identifying data, such as username/workspace information, to validate their origins.
Insert sample data, approximately 3-20 records for all the tables, appropriate for the given scenario, for use in testing and query development. For the data insertion, evidence includes some sample data insertion in the main body of your report (at least
3 rows per table), but anything beyond this should be included in an appendix.
In each of the following, you must demonstrate a level of complexity commensurate with the work being produced. Which is to say that, for example, a statement simply returning the contents of a single table is not complex enough. Your code should include joins, functions, grouping, aliases, expressions and so on. Your rationale for each should explain how the function relates to the scenario, and any benefits regarding performance optimisation or data security.
Example views
Create 2 meaningful examples of views, given the context of the scenario. Provide the code necessary to implement them, screenshots of them in use and the rationale behind each.
(600 word equivalent)
(20 marks)
Example stored procedures
Create 2 meaningful examples of stored procedures, given the context of the scenario. Provide the code necessary to implement them, screenshots of them in use and the rationale behind each.
(600 word equivalent)
(20 marks)
Example trigger
Create one meaningful example of a trigger to be used, given the context of the scenario. Provide the code necessary to implement it, screenshots of it in use and the rationale behind it.
(300 word equivalent)
(10 marks)
(Total: 2500 words equivalent)
(70 marks)
(LOs: 3 & 4)
Assessment specific grading criteria: |
|||||||
Task 1 |
Learning outcomes: 1. Demonstrate a critical understanding of the tools and techniques required for advanced database development. 2. Justify the design and development of a database application and critically evaluate the implementation and approach. |
||||||
|
80% and above |
70-79% |
60-69% |
50-59% |
40-49% |
30-39% |
29% and below |
Physical Model (20%) |
Extremely clear evidence of key principles. |
Very clear evidence of key principles. |
Clear evidence of key principles. |
Good evidence of key principles.
Entities (tables), attributes (cols), relationships, cardinalities, keys and junction tables entities are present and comprehensively appropriate. Data is normalised to 3nf.
AND
Inheritance is identified and appropriate to the scenario, but missing some detail, e.g. appropriate attributes have not been identified for both parent and child entities. |
Some evidence of key principles.
Entities, attributes, relationships, cardinalities, keys and junction tables are present and nearly comprehensively appropriate. Data is normalised to 3nf.
AND
Parent-child entities are identified and largely appropriate for the scenario, but not be well diagrammed or completely missing attributes
AND |
Some evidence of key principles on a basic level.
Entities (tables), attributes (cols), relationships, cardinalities, keys and junction tables are present, but not consistently appropriate.
OR
Data is only partially normalised to 3nf.
OR
Inheritance example consists of inappropriate/ poorly chosen entities. |
Little to no evidence of an understanding of ANY ONE OR MORE key principles.
Key principles include but are not limited to: Identifying entities and attributes, normalisation of data, cardinalities, keys and inheritance.
e.g. Little to no evidence of normalisation OR cardinalities are missing OR inheritance example is missing.
OR
Completely lacks ANY ONE OF appropriate naming conventions, data types or |
|
Entities (tables), attributes (cols), etc. as per 51-60% |
Entities (tables), attributes (cols), etc. as per 51-60% |
Entities (tables), attributes (cols), etc. as per 51-60% |
||||
|
|
AND |
AND |
||||
|
AND |
|
|
||||
|
Inheritance is very well modelled and appropriate to the scenario. Appropriate constraints are identified as per 71- 80%. The overall structure is very clear and consideration has been given to factors beyond the scope of the scenario (e.g. scalability).
AND |
Inheritance is well modelled and appropriate to the scenario. Appropriate shared/unique attributes and mandatory/ optional, overlap / disjoint constraints are also identified.
AND
All examples of advanced techniques are |
Inheritance is reasonably well modelled and appropriate to the scenario, with multiple shared/unique attributes accounted for.
AND
All examples of advanced techniques are technically appropriate, though |
|
All examples of advanced techniques are technically appropriate and demonstrate a complex appreciation of the scenario, accounting for future extensibility. |
technically appropriate and demonstrate a proper appreciation of the scenario. |
they may still not all demonstrate a proper appreciation of the scenario. |
AND
The examples of inheritance, de- normalisation and non-key index(es) are technically appropriate, though the 2 constraint examples may not be, and they may not demonstrate a proper appreciation of the scenario. |
Includes an example of an inheritance strategy, de- normalised data, a non-key index and at least 2 of: [a default value constraint, a check constraint, an auto incrementing column]
Though any/all of these may not be particularly well considered. |
OR
Does not include an example of an inheritance strategy, de- normalised data, a non-key index and at least 2 of: [a default value constraint, a check constraint, an auto incrementing column] |
constraints.
OR
The structure is such that it massively limits the functionality of the database. E.g. A key one-to-many or many- to-many relationship is implemented in a one- to-one or one-to-many fashion respectively. |
|
80% and above |
70-79% |
60-69% |
50-59% |
40-49% |
30-39% |
29% and below |
Physical model rationale (10%) |
Modelling decisions are justified in both general principles, with appropriate citations, and with reference to specific examples that may go beyond the scope of the scenario.
These must address all three of: an inheritance strategy AND denormalization AND any non-key indexes. |
Modelling decisions are justified in both general principles, with appropriate citations, and with reference to scenario specific examples.
These must address all three of: an inheritance strategy AND denormalization AND any non-key indexes. |
Modelling decisions are justified in both general and scenario specific principles.
These must address all three of: an inheritance strategy AND denormalization AND any non-key indexes. |
Modelling decisions are justified using general principles.
These must address all three of: an inheritance strategy AND denormalization AND any non-key indexes. |
Modelling decisions are justified using general principles.
These must address any two of: an inheritance strategy OR denormalization OR any non-key indexes. |
Lacks meaningful discussion of decision-making process.
OR
Does not include discussion of at least two of: an inheritance modelling strategy OR denormalization OR any non-key indexes. |
Lacks discussion of decision-making process.
Content is largely generic, descriptive or explains terminology rather than justifying the physical model produced. |
|
Task 2 |
Measures: 3. Design and implement a database system using a range of techniques, meeting the needs of both the user and the client. 4. Develop appropriate query language statements in order to efficiently create, manage and interrogate data within a database application. |
||||||
|
80% and above |
70-79% |
60-69% |
50-59% |
40-49% |
30-39% |
29% and below |
Implementation (incl. sample data) (20%) |
Implementation is wholly representative of the proposed model and the execution demonstrates near professional level skills.
AND
Large amounts (~20 records per table, where appropriate), of wholly realistic data, given the scenario, is inserted for the purposes of testing using SQL scripting or columns defined/ populated by use of aggregate functions for efficiency. |
Implementation is wholly representative of the proposed model, including proper implementation of advanced constraints.
AND
Moderate amounts (~ 10-20 records per table, where appropriate), of wholly realistic data, given the scenario, is inserted for the purposes of testing using SQL scripting or columns defined/ populated by use of aggregate functions for efficiency. |
Implementation is wholly representative of the proposed model, including proper implementation of advanced constraints.
AND
Moderate amounts (~ 5-10 records per table, where appropriate), of semi-realistic data given the scenario, is inserted for the purposes of testing manually or using some SQL scripting or columns defined/ populated by use of aggregate functions for efficiency. |
Implementation is nearly completely representative of the proposed model.
There may be some minor deficiencies in the implementation of advanced constraints like auto-incrementing columns.
OR
Only limited sample data sets (~1-3 records per table, where appropriate) have been inserted for testing manually. |
Implementation is mostly representative of the proposed model, though there may be some minor deficiencies in execution. e.g. Little consideration has been given to aspects like appropriate allocation of string size or numerical limits.
OR Datasets included for testing are very limited or only partially relate to the scenario. |
Implementation is partially representative of the proposed model or there are large deficiencies in the execution.
e.g. Foreign key constraints are not properly implemented.
OR
Unrealistic / extremely limited amounts of sample data inserted for testing. |
Implementation is missing, barely attempted or otherwise wholly deficient.
e.g. Does not relate to the proposed model. There are grievous errors in syntax which would make the code non-functional. The code is provided but the results are not evidenced or vice- versa.
OR
Sample data is missing from one or more tables. |
|
80% and above |
70-79% |
60-69% |
50-59% |
40-49% |
30-39% |
29% and below |
Stored Database Objects Procedural functionality
Views (20%)
Stored procedures (20%)
Trigger (10%) |
Functional code is provided, well supported with evidence of execution on moderately sized datasets
Advanced stored database objects’ procedural scripting techniques may be demonstrated (use of procedures, views, complex trigger conditions, etc). The rationale addresses the requirements of, and demonstrates both a comprehensive critical and creative consideration of, the scenario. Performance and security benefits are comprehensively considered and well justified with use of citation. |
Functional code is provided, well supported with evidence of execution on moderately sized datasets.
Use of multi table joins, functions, grouping, aliases, etc. demonstrate an advanced understanding of procedural functionalities of stored database objects. The rationale addresses the requirements of, and demonstrates a critical consideration of, the scenario.
Performance and security benefits are comprehensively considered and well justified with use of citation. |
Functional code is provided, well supported with evidence of execution on moderately sized datasets.
Use of multi table joins, functions, grouping, aliases, etc. demonstrate a good understanding of procedural functionalities of stored database objects.
The rationale addresses the requirements of, and demonstrates a valid consideration of, the scenario.
Performance and security benefits are considered and justified with use of citation. |
Functional code is provided, supported with evidence of execution on small datasets.
Use of multi table joins, functions, grouping, aliases, etc. within the scripts demonstrate a good understanding of procedural functionalities of stored database objects.
The rationale addresses the requirements of, and demonstrates some consideration of, the scenario.
Performance and security benefits are considered. |
Functional code is provided, supported with evidence of execution.
Overall demonstrates a relatively basic level understanding of procedural functionalities of stored database objects (e.g. 2 table joins, single column ordering, etc.)
The rationale addresses some requirements of the scenario.
Performance and security benefits are considered, but slightly exaggerated or partially incorrectly identified. |
Functional code is provided, supported with evidence of execution.
Demonstrates a basic level of understanding of procedural functionalities of stored database objects. (e.g. selecting data from a single table.)
Includes a rationale, but this may only be tangentially connected to the scenario.
Performance and security benefits are poorly considered or partially incorrectly identified. |
Code is not provided, does not function fully, or does not address the any of the requirements of the scenario.
OR
Evidence of execution is missing.
OR
No rationale is present, or is simply descriptive.
Performance and security benefits are not considered or wholly incorrect. |
Submit Your Assignment Questions & Get Plagiarism Free Answers
Order Non-Plagiarized AssignmentDo you need help with your COM5013 Database Design and Implementation assignment at Arden University, you have come to the right place. Our team of experts provides the best online assignment help and report writing services in UK and the computer science assignment help so that your work is of the highest quality. We cover key areas such as database architecture, normalization and SQL queries. Plus, to help you get started, we provide free samples that demonstrate our expertise. Don't feel stressed about tight deadlines - order your excellent graded assignment with all coursework written perfectly by professionals!
Let's Book Your Work with Our Expert and Get High-Quality Content