ISY103-Database Management for Business
Background Information for Sample Database Project:
Australian Manufacturing Company (AMC) requires a database system to manage their stores, employees, products, suppliers, patrons and orders
The following information has been gathered about current business activities of AMC.
1.AMC has many stores in different cities across Australia. Each store has unique store number and other details like name, contact details (phone number, email address and fax number) and location details (postal address composed of street number, suburb, state and postcode).
2.There are many departments within each store, for example, HR, accounts, finance and sales etc. each department is uniquely identified by department number. AMC also records department title, phone number and email address.
3.Each store has a number of employees. Each department is supervised by a department supervisor and each store is managed by a store manager who both are employees of AMC. Each department has a single supervisor only i.e. the department supervisor is also the supervisor for all the employees work within that department.
4.Each employee is referenced by unique employee number, name (first and last names), address, mobile number, email, TFN, salary and joining date. An employee’s salary is recorded differently as per his or her employment type. Employees can be employed as fulltime or casual basis. For a fulltime staff, annual salary is recorded and hourly rate for a casual staff.
5.Each store creates payslips for all employees work in that store on a weekly basis. As a minimum payslip number, no of hours worked, employee detail, store detail and gross pay are recorded.
6.AMC sales different products like fashion, health, beauty, electronics etc. Each product is characterised by product number, name, brand, description and price.
7.Each product can be supplied by one or more supplier and each supplier can supply one or many products. AMC also keeps appropriate details of their suppliers.
8.Each store maintains an inventory of their products available for sale. The quantity of each product available in store and the quantity ordered are kept.
9.AMC patron visits the store and shops in the store. Each customer is characterised by customer number, name (first and last names), mobile number and address.
10A patron may place orders. An order contains one or many products at a time. A store keeps track of order number, order date, product(s) ordered and quantity ordered for each product.
The proprietors of AMC have appointed your group as Database System Consultant to analyse, design and develop conceptual data model and physical database. They want a software/online application in future to be built on the database you design so that the operation of the AMC is greatly improved.
Your created models must accommodate the provided requirements. It is understandable that the provided information may not sufficient to create model that centralise all the data appropriately. You are free to make assumptions about their business activities if require. Make sure you record your assumptions.
1. Part A: Entity Relationship Diagram
1. Your first task is to study the Case study requirements and gather as much knowledge to list all the main Entities and attributes.
2. Create an Entity Relationship Diagram (ERD) to help you decide on the relationships.
Your entity relation diagram that models your database design should:
i. Include all entities, relationships (including names) and attributes.
ii. Identify primary and foreign keys.
iii. Include cardinality/ multiplicity and show using crow’s feet or UML notation.
iv. Include participation (optional / mandatory) symbols if applicable.
Part B: Normalisation
Normalise all entities and relationships in optimal normal form. Provide the normalised schema and discuss the level of normalisation achieved for each relation. You goal should be normalise all entities in 3NF. Provide the reasons for any relation that is not maintained in 3NF.
Part C: Relational schema and MySQL database
1. Create relational schema that matches ERD and normalised schemas you created in Part A and B. The schema should include suitable data validation, integrity and referential integrity constraints, for example, types and length of attributes, primary and foreign keys etc. Make sure you follow standards, naming conventions and notation.
2. Using MySQL, you are required to develop a demonstration prototype system (database) that stores data for AMC stores, employees, products, suppliers, patrons and orders. Create a new database called AMCDB. Create tables according to your relational schema created in step 1.
Part D: Personal Report - Every group member needs to write this part individually and add to the documentation
Write a page to the AMC proprietors as a personal reflection that describes your experience building the database. You can discuss any challenges / difficulties that you experienced or solutions that you found. Comment on any limitations and / or strengths of your database design. Comment on whether your database meets all the system requirements as specified in Project Specification. Avoid making excuses or comments that reflect negativity. Include an acknowledgement of all students you have spoken to about the assignment.
Part E: Report Layout, SQL script and presentation
Deliverables for Parts A, B, C, D and E must be printed as a report with a cover sheet attached. See Administrative Details on page 10 for more details. Your report must include header and footer that include all the group members’ name and student number, unit name, assignment name, and page numbers. Your report must be checked for spelling and grammar. Your report must also be formatted so that it is well set out and easy to read.
a) Each group must submit a single zip file on Moodle which contains all the assignment files (single word file with deliverables for parts A – D, separate 6 | P a g e personal reports for each group member, MYSQL backup script notepad file and presentation)
b) The SQL that can be used to restore your database should also be uploaded to Moodle. You can create the SQL for your database as follows:
Use the mysqldump command to create a text version of the database. Use mysqldump to create SQL file that contains a list of SQL statements which can be used to restore/recreate the original database.
The syntax is as follows:
$ mysqldump -u [uname] -p[pass] [dbname] > [backupfile.sql]
[uname] Your database username
[pass] The password for your database
[dbname] The name of your database
[backupfile.sql] The filename for your database backup
You do not need to log on to MySQL. For example, from the DOS command prompt, the syntax is:
e:\xampp\mysql\bin>mysqldump -u root MyDB > e:\MyDB_bak.sql
This will create the SQL file that can be used to restore your database.
You can save your script as you go to notepad.