Software Development & Databases

Assignment Specification 2017

This assignment accounts for 50% of your overall module mark for SOFT562.  The work is to be carried out individually.

The coursework for this module comprises three tasks centered upon a given scenario.  Further details on the expectations for each of these tasks is given in the Task Details section below.  Details for what is to be handed in is covered in the Deliverables section, and an explanation of how the marks are allocated can be found in the Marks section.


  • Design and implement a database based on the scenario given below. (LO2, LO3)
  • Create and implement a test plan in order to verify and validate your design. (LO4)
  • Write a report where you critically evaluate your database design drawing on appropriate theory. (LO1)

These tasks will assess whether you have achieved the following learning outcomes (Referred to as LO’s):

  • Critically evaluate the appropriateness of how software is structured and how a database is designed.
  • Apply good software development practice by employing an object-oriented approach with an event-driven interactive interface and utilize a relational model in database design and implementation.
  • Design and implement a program of moderate size and complexity.
  • Plan and implement testing and verification of the implemented system.

Tasks Details

T1: Design and implement a database based on the scenario given below.


Based on the scenario below, you need to identify the required underlying data structure.  From there, you will need to normalize the database to Third Normal Form (3NF).  Illustrate your normalisation process in a table showing all intermediate stages of Un-normalised Form (UNF), First Normal Form (1NF) and Second Normal Form (2NF).  The normalization table should be included in your report as an appendix.


Represent your design using an Entity Relationship Diagram (ERD) using the notation taught for this module (soft boxes and crow’s feet).  Optionality on the relationships is not required.  Your ERD must also be included in the appendices of your report.


Implement your normalized data table structure in a Microsoft SQL Server database.  Clearly identify the appropriate data types and note the keys.


The output from this task will be a normalisation table and ERD in an appendix in D1 described below.


T2: Create and implement a test plan in order to verify and validate your design.


You should design an appropriate testing strategy for the database created in T1.  Your design should include a testing strategy along with identified unit tests coded in C#.  Your strategy should be included as an appendix in your report, as described in D1 and the unit test code should be included as described with D2 below.


T3:  Critically evaluate your database design drawing on appropriate literature.


For this task you should write a report (rather than an essay) where you critique your design artifacts (the ERD, the normalization table) to discuss the differences.   You should also discuss the approach taken in T2 where you critique and justify your test plan.


Note: A report always uses sections with headings where each section has a particular purpose.  You can read more about how reports are structured from the Report study guide found here on the Learning Development section –


The output from this task will be D1 as described in the deliverables section below.


The following list outlines the items you must hand in to demonstrate you have achieved the tasks given above.  Files must be compressed into one zip file and the zip file uploaded.

Place the required submission for the two parts of the SOFT562 assignment into two separate folders, one for each of the two parts of the module.

You will have one folder containing the Visual Studio solution and report, and one folder containing the deliverables described below for the database submission.

Zip each of these two folders.

Then place the two resulting zip files into a 3rd folder, zip that folder and submit to the SOFT562 DLE by the deadline stated.

Ensure that you do not have your student name or number on any file – or in the filename.   All work is marked anonymously and the DLE creates the appropriate mapping behind the scenes.

Inside the Database Submission zip file you must have:

  • Wordfile (*.docx, *.pdf). This documentis your report and should contain the following:
    1. Your critical evaluation from T3.
    2. Appendices containing the output from T1 : The normalisation table and ERD; and T2 : your testing strategy.

You must structure the document as a report – that is to have numbered headings, an introduction and a contents section.  There is a word limit of 2000 words +/- 10% as per university regulations.  Section Headings are included but the contents and appendices are not.


  • Code files (*.sql, *.cs).Output your implementation from your Microsoft SQL Server database as a set of SQL Create table statements. Combine these in one file to represent all of the tables in your database.  Include “Insert” statements to insert appropriate test data.  You should also include here all .cs files created for your tests.

Your zip file must be uploaded by the deadlines shown on the SOFT562 DLE.  Ensure you do not leave uploading to the last minute or you may face a penalty if the server upload speed is too slow.   A second late will see your mark capped at 40%.  It is recommended that you upload the day before, earlier if possible.

Please note all documentation uploaded to the DLE is passed through plagiarism detection software called Turnitin.

Scenario : Greengages Garden Center

The following describes a (currently manual) system of stock control for a single-site retail garden centre in a provincial town.

Greengages Garden Centre is a family-run, limited liability company.  A wide range of stock is kept for sale.  Typical stock items are:

  • Seeds; shrubs and young trees; bedding plants and herbs; bulbs.
  • Products for controlling weeds and garden pests; soil improvement products.
  • Garden tools and machinery; garden furniture
  • Timber and building materials for outdoor use; outdoor paints and preservatives.
  • Pots of various sizes made from various materials.

The premises comprise a large retail area with a café (run by an outside catering company) linked to an open-air display area with plants and building materials.  At the back of the retail area is a warehouse.   Some stock is located in the retail part as read-for-sale items.  Any stock not on display is stored in a bin system (if small enough) or in specific areas by stock type.  These stock locations are coded to optimize the handling of deliveries.

Every stock item is assigned a unique stock code which consists of three alphabetic characteristics for the stock type plus up to six numbers eg: ABC123456.  New products are given the next available stock number.  The warehouse is checked once a week on the basis that the retail area contains a known quantity of a given stock item.  Items, which are below their re-order level, are listed, and the Purchasing Manager (the owner’s wife) then creates a number of purchase orders to various suppliers.  Catalogues of plants and garden products are reviewed quarterly for new products, and to make price comparisons between suppliers.

Suppliers are chosen on the basis of lowest cost (which is often related to size of order).  On occasions, too much stock has been ordered because only price was taken into consideration.  For some products, the set re-order levels do not match seasonal sales trends and items run out before deliveries arrive.   Stock ordering is always related to sales volumes and there are quantities of some items which have remained unsold.

Sales are only made to the public, although discounts are offered for “bulk” purchases of certain items.  Greengages has invested in modern electronic tills which produce detailed itemised receipts.   Purchases can be made in the usual ways via cash, debit card or credit card.  One of the services offered by Greengages is to allow customers to reserve items by telephone for up to 48 hours.  Sometimes this causes problems as reserved items are inadvertently sold.

When deliveries from suppliers arrive, they are checked against the delivery note.  Any discrepancies are noted on a delivery mismatch form.  If good are damaged, they are recorded on the same form and returned to the supplier.  Stock, which has been accepted, is then taken to the warehouse and stored in its bin or location, and the warehouse paperwork updated accordingly.

Most stock items are straightforward to handle.  The exceptions are items of garden machinery and furniture, some of which have a guarantee.  If such goods are found to be faulty, they can be returned to Greengages for exchange or refund.  Greengages must then obtain replacements or refunds from the original supplier – this is not always possible if suppliers have gone out of business.  Other exceptions are seeds which have a “use by” date.  As new stock is purchased, the “use by” date changes as suppliers release new batches.

Key dates

Assignment issued:

Deliverables uploaded to DLE:


The marks you achieve for this assignment account for 50% of the module mark.  The module mark will contribute to your overall degree classification as per the academic regulations.

The demonstration panel will be making use of the marking grid below.

Mark breakdown

T1:Design and implement a database based on the scenario given below(50%)


The submissions provided by you (the report appendices, the individual .sql code files and the writtenreport) will be examined for clear evidence that you have been able to design and implement a relational database using the appropriate approaches and best practice.


The following aspects will be examined:

·         Is the normalisation correct?

·         Is the entity relationship diagram (ERD) correct?

·         Does the SQL code file run to create the tables as indicated by the ERD and normalistion table?

·         Does the SQL code file insert appropriate data?

·         Are the correct tables identified, represented and implemented?


T2:Create and implement a test plan in order to verify and validate your design(25%)


The submission provided by you will be examined for the following:

·         The testing strategy provides appropriate coverage for the data design.

·         The unit tests are appropriate and correct.

·         An appropriate variety of testing strategy is proposed.


T3:Critically evaluate your database design drawing on appropriate literature. (25%)


The submission provided by you will be examined for the following:

·         Evaluation account coherently written.

·         Report structured appropriately

·         Evaluation draws on appropriate literature.



Last Updated on August 10, 2019 by Essay Pro