lOMoARcPSD|36155182 Database Assignment Higher National Diploma (ESOFT Metro Campus) Scan to open on Studocu Studocu is not sponsored or endorsed by any college or university Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) lOMoARcPSD|36155182 Higher Nationals Internal verification of assessment decisions – BTEC (RQF) INTERNAL VERIFICATION – ASSESSMENT DECISIONS Programme title PEARSON BTEC IN HND COMPUTING Ms.Ishani Assessor Internal Verifier Unit 04 -Database Design & Development Unit(s) Assignment title Student’s name Smart Movers Database System F. Thameena Banu List which assessment criteria the Assessor has awarded. Pass Merit Distinction INTERNAL VERIFIER CHECKLIST Do the assessment criteria awarded match those shown in the assignment brief? Is the Pass/Merit/Distinctiongrade awarded justified by the assessor’s comments on the student work? Has the work been assessed accurately? Y/N Y/N Y/N Is the feedback to the student: Give details: • Constructive? Y/N • Linked to relevant assessment criteria? • Identifying opportunities for improved performance? Y/N Y/N • Agreeing actions? Y/N Does the assessment decision need amending? Y/N Assessor signature Date Internal Verifier signature Date Programme Leader signature (if required) Date F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 1 lOMoARcPSD|36155182 Confirm action completed Remedial action taken Give details: Assessor signature Date Internal Verifier signature Date Programme Leader signature (if required) Date Higher Nationals - Summative Assignment Feedback Form F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 2 lOMoARcPSD|36155182 Student Name/ID Fairoos Thameena Banu Unit Title Unit 04: Database Design & Development Assignment Number 1 Assessor 23/ 06/2018 Date Received 1st submission 16/05/2020 Date Received 2nd submission Submission Date Re-submission Date Ms.Ishani Assessor Feedback: LO1 Use an appropriate design tool to design a relational database system for a substantial problem Pass, Merit & Distinction P1 M1 D1 Descripts LO2 Develop a fully functional relational database system, based on an existing system design Pass, Merit & Distinction Descripts P2 M2 D2 LO3 Test the system against user and system requirements. Pass, Merit & Distinction P3 M3 D3 Descripts LO4 Produce technical and user documentation. Pass, Merit & Distinction Descripts Grade: P4 P5 M4 D4 Assessor Signature: Date: Assessor Signature: Date: Resubmission Feedback: Grade: Internal Verifier’s Comments: Signature & Date: * Please note that grade decisions are provisional. They are only confirmed once internal and external moderation has taken place and grades decisions have been agreed at the assessment board. Assignment Feedback F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 3 lOMoARcPSD|36155182 Action Plan Summative feedback Feedback: Student to Assessor Explained clearly the parts which were requested by the assessor for resubmission Assessor signature Student signature Date thamibanu@gmail.co m Date Student Declaration F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 4 lOMoARcPSD|36155182 I hereby, declare that I know what plagiarism entails, namely to use another’s work and to present it as my own without attributing the sources in the correct way. I further understand what it means to copy another’s work. 1. I know that plagiarism is a punishable offence because it constitutes theft. 2. I understand the plagiarism and copying policy of the Edexcel UK. 3. I know what the consequences will be if I plagiaries or copy another’s work in any of the assignments for this program. 4. I declare therefore that all work presented by me for every aspects of my program, will be my own, and where I have made use of another’s work, I will attribute the source in the correct way. 5. I acknowledge that the attachment of this document signed or not, constitutes a binding agreement between myself and Edexcel UK. 6. I understand that my assignment will not be considered as submitted if this document is not attached to the attached. Student’s Signature: (Provide E-mail ID) Date: (Provide Submission Date) thamibanu@gmail.com Pearson F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 5 lOMoARcPSD|36155182 Higher Nationals in Computing Databas e Design & Develo pment Assignment Brief Student Name /ID Number F.Thameena Banu F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 6 lOMoARcPSD|36155182 Unit Number and Title Unit 4: Database Design & Development Academic Year 2017/2018 Unit Tutor Ms.Ishani Assignment Title Issue Date Unit 4: Database Design & Development (Data base system for the SmartMovers Transport Company) 8-Feb-2018 Submission Date 23-June- 2018 IV Name & Date Submission Format: Part 1: The submission is in the form of an individual written report. This should be written in a concise, formal business style using single spacing and font size 12. You are required to make use of headings, paragraphs and subsections as appropriate, and all work must be supported with research and referenced using the Harvard referencing system. Please also provide a bibliography using the Harvard referencing system. The recommended word limit is 2,000–2,500 words, although you will not be penalised for exceeding the total word limit. Part 2: The submission is in the form of a fully functional relational database system demonstrated to the Tutor; and an individual written report (please see details in Part 1 above). Part 3: The submission is in the form of a witness statement of the testing completed by the Tutor; technical documentation; and a written report (please see details in Part 1 above). Unit Learning Outcomes: LO1 Demonstrate a range of interpersonal and transferable communication skills to a target audience. LO2 Apply critical reasoning and thinking to a range of problem-solving scenarios. LO3 Discuss the importance and dynamics of working within a team and the impact of team working in different environments. LO4 Examine the need for Continuing Professional Development (CPD) and its role within the workplace and for higher-level learning. F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 7 lOMoARcPSD|36155182 Task 1 – (LO1) Use an appropriate design tool to design a relational database system for a substantial problem Task 1.1 (P1) Design a relational database system using appropriate design tools and techniques, containing at least four interrelated tables, with clear statements of user and system requirements. a. Identify the user and system requirements to design a database for the above scenario. b. Identify entities and attributes of the given scenario and design a relational database system using conceptual design (ER Model) by including identifiers (primary Key) of entities and cardinalities, participations of relationships. c. Convert the ER Model into logical database design using relational database model including primary keys foreign keys and referential Integrities. It should contain at least five interrelated tables. Note:-It is allowed to have your own assumptions and related attributes within the scope of the case study given. Task 1.2 (M1) Produce a comprehensive design for a fully functional system, which includes interface and output designs, data validations and data normalisation. a. Explain data normalization with examples. Check whether the provided logical design in task 1.1 is normalised. If not, normalize the database by removing the anomalies. b. Design set of simple interfaces to input and output for the above scenario using Wireframe or any interface-designing tool. c. Explain the validation mechanisms to validate data in the tables with examples. Task 1.3 (D1) Assess the effectiveness of the design in relation to user and system requirements a. Check whether the given design (ERD and Logical design) is representing the identified user and system requirements to access the effectiveness of the design. Task 2 - LO2 Develop a fully functional relational database system, based on an existing system design Task 2.1 (P2) Develop the database system with evidence of user interface, output and data validations, and querying across multiple tables. a. Develop a relational database system according to the ER diagram you have created (Use SQL DDL statements). b. Provide evidence of the use of a suitable IDE to create a simple interface to insert, update and delete data in the database c. Implement the validation methods explained in task 1.2-part c. F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 8 lOMoARcPSD|36155182 d. Display the details payment with the job details and the customer details using Join queries Task 2.2 (P3) Implement a query language into the relational database system a. Explain the usage of DML with below mentioned queries by giving at least one single example per each case from the developed database. Select Update Delete Note: - The queries you have selected should be meaningful and relevant to the given scenario. Task 2.3 (M2) Implement a fully functional database system, which includes system security and database maintenance. a. Explain how security mechanisms have been used and the importance of these mechanisms for the security of the database. Implement proper security mechanisms (EX: -User groups, access permissions) in the developed database. Task 2.4 (M3) Assess whether meaningful data has been extracted using query tools to produce appropriate management information. a. Explain the usage of the below SQL statements with the examples from the developed database Group by Order by Having Between Where Task 3 - LO3 Test the systems against user and system requirements Task 3.1 (P4) Test the system against user and system requirements. a. Provide a suitable test plan to test the system against user and system requirements b. Provide relevant test cases for the database you have implemented Note:- Learner needs to give expected results in a tabular format and screenshots of the actual results with the conclusion Task 3.2 (M4) Assess the effectiveness of the testing, including an explanation of the choice of test data used. a. Explain how the selected test data in task 3.1 b) can be used improve the effectiveness of testing. F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 9 lOMoARcPSD|36155182 Task 3.3 (D2) Evaluate the effectiveness of the database solution in relation to user and system requirements, and suggest improvements. a. Get independent feedback on your database solution from the non-technical users and some developers (use surveys, questioners, interviews or any other feedback collecting method) and make recommendations and suggestions for improvements in a separate conclusion/recommendations section. Task 4- LO4 Produce technical and user documentation Task 4.1 (P5) Produce technical and user documentation. a. Prepare a simple users’ guide and a technical documentation for the support and maintenance of the software. Task 4.2 (M5) Produce technical and user documentation for a fully functional system, including diagrams showing movement of data through the system, and flowcharts describing how the system works. a. Your technical documentation should include some of the UML diagrams (Use case diagram Class diagram, etc.), flow charts for the important functionalities, context level DFD and the Level 1 DFD Task 4.3 (D3) Assess any future improvements that may be required to ensure the continued effectiveness of the database system. a. Suggest the future improvements that may be required to ensure the continued effectiveness of the database system. Table of contents F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 10 lOMoARcPSD|36155182 Contents Acknowledgement..............................................................................................................15 Task 1.1..............................................................................................................................16 a. User and system requirements.............................................................................16 c. Designing ER Diagram.........................................................................................17 ER Diagram..............................................................................................................18 Task 1.2..............................................................................................................................20 Data Normalization......................................................................................................20 First Normal Form..........................................................................................................21 Second Normal Form.....................................................................................................23 Third normal form..........................................................................................................24 Boyce and Codd Normal Form......................................................................................25 b. Wireframe for the above scenario..............................................................................26 c. Validation mechanism..............................................................................................30 Task 1.3..............................................................................................................................34 a. Effectiveness of the database...................................................................................34 Task 2.1..............................................................................................................................35 Task 2.2..............................................................................................................................49 Task 2.3..............................................................................................................................51 Task 2.4..............................................................................................................................53 Usage of SQL statements.............................................................................................53 Group by.....................................................................................................................53 Order by......................................................................................................................55 Having........................................................................................................................55 Between......................................................................................................................56 Where.........................................................................................................................56 Task 3.1..............................................................................................................................57 Test plan.........................................................................................................................57 Introduction................................................................................................................57 Assumptions...................................................................................................................57 Tasks...............................................................................................................................58 Hardware requirements..................................................................................................58 Risks Involved................................................................................................................58 b. Test case.....................................................................................................................58 Case 2.........................................................................................................................59 Case 3.........................................................................................................................59 F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 11 lOMoARcPSD|36155182 Case 4.........................................................................................................................60 Case 5.........................................................................................................................61 Conclusion.................................................................................................................61 Task 3.2..............................................................................................................................62 Task 3.3..............................................................................................................................62 Task 4.1..............................................................................................................................63 Task 4.2..............................................................................................................................70 Task 4.3..............................................................................................................................72 References..........................................................................................................................72 Tables Table1. 1 - Entities and attributes..........................................Error! Bookmark not defined. Table1. 2.............................................................................................................................22 Table1. 3.............................................................................................................................22 Table1. 4................................................................................Error! Bookmark not defined. Table1. 5.............................................................................................................................23 Table1. 6.............................................................................................................................24 Table1. 7.............................................................................................................................24 Table1. 8.............................................................................................................................25 Table1. 9 Winner date of birth............................................................................................25 F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 12 lOMoARcPSD|36155182 Table1. 10 Club Winner.......................................................................................................2 Table3. 1. Case 1..............................................................................................................58 Table3. 2.Case 2..................................................................................................................59 Table3. 3. Case 3.................................................................................................................59 Table3. 4.Case 4.................................................................................................................60 Table3. 5. Cash 5.................................................................................................................61 Y Table4. 1.Visual Studio 2017...............................................................................................67 Table4. 2. MS SQL Server 2012...........................................................................................68 Figures Figure1. 1 ER Diagram........................................................................................................19 Figure1. 2 Sign In................................................................................................................27 Figure1. 3 Create new account...........................................................................................27 Figure1. 4 . Profile...............................................................................................................28 Figure1. 5. Payment............................................................................................................28 Figure1. 6. Make new delivery...........................................................................................29 Figure1. 7. Order Registered..............................................................................................29 Y Figure2. 1............................................................................................................................35 Figure2. 2............................................................................................................................36 Figure2. 3 Customer table..................................................................................................36 Figure2. 4 Product table.....................................................................................................37 Figure2. 5 Job table............................................................................................................37 Figure2. 6 Load table..........................................................................................................38 F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 13 lOMoARcPSD|36155182 Figure2. 7 Deport table......................................................................................................38 Figure2. 8 Payment table....................................................................................................39 Figure2. 9 Transport Unit table..........................................................................................39 Figure2. 10 Insert Customer values....................................................................................40 Figure2. 11 Select all from customer..................................................................................40 Figure2. 12 Insert Product values.......................................................................................41 Figure2. 13 Select all from product....................................................................................41 Figure2. 14 Insert job values..............................................................................................42 Figure2. 15 Select all from job............................................................................................42 Figure2. 16 Insert load values............................................................................................43 Figure2. 17 Select all from load..........................................................................................43 Figure2. 18 Insert deport values........................................................................................44 Figure2. 19 Select all from deport......................................................................................44 Figure2. 20 Insert payment values.....................................................................................45 Figure2. 21 Select all from payment...................................................................................45 Figure2. 22 Insert transport unit values.............................................................................46 Figure2. 23 Select all from transport unit..........................................................................46 Figure2. 24..........................................................................................................................47 Figure2. 25..........................................................................................................................49 Figure2. 26..........................................................................................................................50 Figure2. 27..........................................................................................................................50 Figure2. 28..........................................................................................................................51 Figure2. 29..........................................................................................................................54 Figure2. 30..........................................................................................................................54 Figure2. 31..........................................................................................................................55 Figure2. 32..........................................................................................................................55 Figure2. 33..........................................................................................................................56 Figure2. 34..........................................................................................................................56 Acknowledgement Before heading into the proceedings of this assignment I would like to thank my lecturer Ms.Ishani for all her effort made to coach me and my colleagues. Miss your guidance and support was most needed and the motivations helped. And I would like to thank Esoft organization for giving me this opportunity to reveal out my talents though the assignment. I would like to thank my friends in batch 79 for all the support. Thank you F.Thameena Banu F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 14 lOMoARcPSD|36155182 HND-COM-79 Task 1 – (LO1) Use an appropriate design tool to design a relational database system for a substantial problem Task 1.1 (P1) Design a relational database system using appropriate design tools and techniques, containing at least four interrelated tables, with clear statements of user and system requirements. a. Identify the user and system requirements to design a database for the above scenario. a. User and system requirements Requirement is a thing demanded or obligatory. Comprehensive requirement document will help to decide if the benefits of new application or upgrade justify the cost. F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 15 lOMoARcPSD|36155182 Further on requirements can be categorized as user requirements and system requirements. User requirements are the things users expect from the system. A list of features a system must have which is used as guidance when developing a system. System requirements are the things that the software needs the host to support. The user requirements and system requirements in the scenario are: User requirements Updated information Record all the details about the customers, products, payments, jobs, loads, depots and transport unit The data should be secured System requirements The company needs computers to run database application. The employees who have knowledge to maintain database. System requirement contains software requirements and hardware requirements. In Software requirements client version of window 10 is required for SQL server 2017 also will need hard disk space of 8030 MB. In hardware requirement the initial disk space of 160 MB is required .The SQL server requires a minimum of 6 GB. b. Identify entities and attributes of the given scenario and design a relational database system using conceptual design (ER Model) by including identifiers (primary Key) of entities and cardinalities, participations of relationships. F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 16 lOMoARcPSD|36155182 c. Designing ER Diagram Table1. 1 Entities and fields Entities Fields Customer Cus-no , c-name, address, t-no, Product p-id, type Job Job-no, s-loc, des Load Load-no, l-type Deport Deport_no , d-loc Payment Invo-no, pay-d, amount Transport Unit Cont_no ,dri_id ,amo ,lor_no Cus-no C-name Address t-no P-id Type Job-no S-loc Des Load-no L-type Deport-no D-loc Invo-no Pay-d Amount Cont-no Dri-id Amo Lor-no - Customer number - Customer name - Address - Telephone number - Product id - Type of product - Job number -Start location -Destination - Load number - Load type -Deport number -Deport location -Invoice number -Pay date - Amount of the payment - Container number - Driver id - Amount - Lorry number F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 17 lOMoARcPSD|36155182 ER Diagram Figure1. 1 ER Diagram d. Convert the ER Model into logical database design using relational database model including primary keys foreign keys and referential Integrities. It should contain at least five interrelated tables. Logical Database Design (Relational Schema) Payment Customer Invo_no Pay_Id Amount Cus_no Unit 04 Assignment-01 Job_no Cus_no F.Thameena C_name Banu /COL/E-005293 Add T_no Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) P_id Job Job_no S_loc Des Deport_no Invo_no Page 18 Load_no lOMoARcPSD|36155182 _ v Product Deport Load Deport_no d-loc Job_no Product Load_no L_type Job_no P-id P_id Type Cus_n o Load_no Transport unit Cont_no Dri_id Amo Lor_no Job_no Task 1.2 (M1) Produce a comprehensive design for a fully functional system, which includes interface and output designs, data validations and data normalisation. a. Explain data normalization with examples. Check whether the provided logical design in task 1.1 is normalised. If not, normalize the database by removing the anomalies. Data Normalization Normalization is a technique of organizing the data into multiple related tables to minimize data redundancy. Normalization is the process of decomposing relations with anomalies to create smaller and well-structured relations. F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 19 lOMoARcPSD|36155182 Normalization is used for: Take off redundant data Ensure data dependencies make sense What the purpose of normalization? If data redundancy is found in table it will eat up extra memory space and also will make the user difficult to handle and update the database. In other words the repetition of data increases the size of database. What is meant by Anomalies? Anomalies are the problems which occur in an un-normalized database. Where all data are stored in one table. Types of Anomalies Insertion Anomaly-Add or insert new data to the current existing data. E.g.: new admission in a school. Updation Anomaly- Updating about a data to the current existing data. E.g.: Mr. Adam leaves the school? Or is no longer the HOD of the school? This is Updation anomaly. Deletion Anomaly- Deleting the data from the current existing data. E.g.: In a student table both student data and branch data are together. If the student records are deleted then we will be losing the data on branch as well Normalization types 1. First normal form 2. Second normal form 3. Third normal form F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 20 lOMoARcPSD|36155182 4. BC normal form First Normal Form First normal form sets fundamental rule for database normalization and relates to a single table within a relational database system. In a first normal form table the table should contain atomic values and there are no repeating groups. An atomic value is a value which cannot be divided. A repeating group means the tables containing two or more columns which are closely related Example : BIC Clubs un-normalized table Table1. 2 St_id St_name Mobile Class Club 001 Macaw 941234567891 079 Science, Soccer, Literary 002 Eshani 942345678912 062 Cheer, Literary, Health 003 Oshi 943456789123 043 Media, It 004 Hikka 944567891234 082 Cheer, Cookery . Student table (1st Normal Form) Table1. 3 St_id St_name Mobile Class 001 Macaw 941234567891 079 002 Eshani 942345678912 062 003 Oshi 943456789123 043 004 Hikka 944567891234 082 Student Club Table (1st Normal Form) F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 21 lOMoARcPSD|36155182 Table1. 4 Second Normal Form Second normal form (2NF) is the second step in normalizing a database. A table is in 2nd Normal Form if: St_id Club S_ID 001 St_name Cl_ID ScienceClub 0001 001 Sam 28 SoccerSoccer 0002 001 Nive 31 LiteraryCheer 0003 002 Jack 34 CheerMedia 002 Literary 002 Health 003 Media 003 It 004 Cheer 004 Cookery T he table is in First normal form, and All the non-key columns are dependent on the table’s primary key. Second normal form and third normal form handle with functional dependency and transitive dependency. A functional dependency means that it meets the requirements of First Normal Form (1NF), and all non-key attributes are fully functionally dependent on the primary key. A database t be fully functional dependency it must be in first normal form. Each attributes holds a single atomic value. e.g.: If attribute A determines the value of B, we write this A -> B — meaning that B is functionally dependent on A. In this relationship, A determines the value of B, while B depends on A. Table1. 5 F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 22 lOMoARcPSD|36155182 Table1. 6 Table1. 7 St_id St_name 0001 Sam Cl_ID Club 0002 Nive 28 Soccer 0003 Jack 31 Cheer 34 Media Third normal form Third normal form is the third step of normalization. A table is in third normal form if: A table is in 2nd normal form. It contains only columns that are nontransitively dependent on the primary key. Transitive dependency Transitive dependency means if we have a primary key A and a non-key domain B and C where C is more dependent on B than A and B is directly dependent on A, then C can be considered transitively dependent on A. F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 23 lOMoARcPSD|36155182 E.g.: As the below table is 2nd normal form fails to meet 3rd normal form Table1. 8 Club year Winner Winner date of birth Cheer 2011 Sam 13 July 1996 Soccer 2011 Jack 28 February 1995 Media 2012 Sam 13 July 1996 Table1. 9 Winner date of birth Winner Sam Winner date of birth 13 July 1996 Jack Sam 28 February 1995 13 July 1996 Table1. 10 Club winner Club Year Winner Cheer 2011 Sam Soccer 2011 Jack Media 2012 Sam Boyce and Codd Normal Form Boyce and codd normal form is the latest version of normalization. This form handles certain anomalies that cannot be handled by 3rd normal form. For a table to be in BCNF, following conditions must be satisfied: R must be in 3rd Normal Form And, for each functional dependency (X → Y), X should be a super Key. F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 24 lOMoARcPSD|36155182 b. Design set of simple interfaces to input and output for the above scenario using Wireframe or any interface-designing tool. Wireframe is a design tool to create or develop web. It helps to create the basic structure of a website. Wireframe is a site’s blue print and visual guide the provides details of website navigation, content category and organization, content layout and structure, functionality items, user interaction items, methods of displaying the content. The benefits of using a wireframe are: Visualize the structure clearly. Clarify the features of interface. Push usability to the forefront. Help to refine navigation. Make the design process iterative. According to the scenario the following are the functionalities of the system Customer details Job details Transport details Payment details Deport details Product details Load details b. Wireframe for the above scenario Smart movers login and registration page. F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 25 lOMoARcPSD|36155182 Figure1. 2 Sign In Figure1. 3 Create new account F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 26 lOMoARcPSD|36155182 Figure1. 4 . Profile Figure1. 5. Payment F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 27 lOMoARcPSD|36155182 Figure1. 6. Make new delivery Figure1. 7. Order Registered F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 28 lOMoARcPSD|36155182 c. Explain the validation mechanisms to validate data in the tables with examples. c. Validation mechanism Validation is a process that ensures the delivery of a clear data to the program. It checks for the integrity and validity of data that is being input to different software and its components. Data validation is also known as input validation. Constraint Validation is a type of data validation. Constraint Validation is an algorithm browsers run when a form is submitted to determine validity. There are methods of validations which are named below Check digit - A redundancy check used for error detection. It is used to check if the range of numbers are entered correctly Example, the ISBN-10 numbering system for books uses ‘Modulo-11’ division, where it outputs the remainder of the division as the result of the operation[ CITATION tea20 \l 1033 ]. Type Check – this is a way to confirm that the correct data type is inputted. Example, in an application form age may range from 0 to 100. A number data type would be an appropriate choice for this data. By defining the data type as number, only numbers are allowed in the field (e.g. 18, 20, 25) and it would prevent people from inputting verbal data, like ‘eighteen’[ CITATION tea201 \l 1033 ]. Length check- Allows checking if the data entered is not short or long. this is used to make sure that the correct number of characters are entered into the field Example, consider a password that needs to be 8 characters long. The length check will ensure that exactly 8 characters are entered into the field[ CITATION tea20 \l 1033 ]. Format check- Checks if the entered data is in the right and appropriate format. F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 29 lOMoARcPSD|36155182 Example, a National Insurance number is in the form XX 99 99 99 XX where X is any letter and 9 is any number[ CITATION tea20 \l 1033 ] Constraints Constraints ensure the data entered into a relational database within a limit. Purpose of constraints is to maintain data integrity during an update, insert and delete into a relation. Types of constraints Not null Unique Check Primary key Foreign key Not null Not null ensures that a column does not hold any null or empty value. e.g.: CREATE TABLE Job (Job_ID int NOT NULL, Job_title varchar (255) NOT NULL, Invoice_no int NOT NULL); e.g.: F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 30 lOMoARcPSD|36155182 Unique Unique constraint ensures the column in a table contain unique values. If a column contains unique constraints then the column cannot have duplicate values in the table. e.g.: CREATE TABLE Job (Job_ID int NOT NULL UNIQUE, Job_title varchar (255) NOT NULL, Invoice_no int NOT NULL); Check Ensure that the specific column have value with specified range. e.g.: CREATE TABLE Job (Job_ID int NOT NULL UNIQUE, Job_title varchar (255) NOT NULL, Des_km int CHECK (km>=150) ) Primary key Primary key is a unique identification in a relation. Whereas it should have unique values and should be not null. e.g.: CREATE TABLE Job F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 31 lOMoARcPSD|36155182 (Job_ID int NOT NULL PRIMARY KEY, Job_title varchar (255) NOT NULL, Des_km int CHECK (km>=150) ); e.g.: Foreign key Foreign key is taken from a primary key of another relation. They act as the cross reference between the tables. e.g.: Job table Job_no 00011 00012 Job_title Junior executive Assistant executive Table 11 Department Operations HR Payment table Invoice_no 1238 1239 Name Mike James Job_no 00011 00012 Table 12 In the Job table “Job_no” column is the primary key. In the Payment table “Job_no” column is the foreign key. The both tables are connected with a primary key. e.g.: CREATE TABLE payment F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 32 lOMoARcPSD|36155182 (Invoice_no int NOT NULL PRIMARY KEY, Name (255) NOT NULL, Job_no int FOREIGN KEY REFRENCES job (Job_no)); Task 1.3 (D1) Assess the effectiveness of the design in relation to user and system requirements a. Check whether the given design (ERD and Logical design) is representing the identified user and system requirements to access the effectiveness of the design. a. Effectiveness of the database Smart Movers is a transport company which needs to have system to maintain regular activities of the company in order to satisfy customer demands. The company transports chemical products from one location to another on behalf of registered customers.There are nine regional deports to manage and maintain the transport units to deliver the product. The design (ERD and Logical design) of this project is the identified user and system requirements. The design consists the records of all the information and data about customer, product, transport unit, load, deport, payment and job the user requirements according to the scenario. As a customer makes an order on one or more product it will be recorded as loads for transport unit. The loads are of three types named as small, medium, large and products are of two types no risk and high risk. In every relation of database all the tables are connected using primary keys. The user requirements in the scenario should be recorded in the system. The user can enter his or her information in the Smart Movers website. E.g.: One of the requirements in the scenario (Customer) should enter the details in the website. Similarly all user requirements are made recorded in the system. According to the design of the database all information are stored in one place. Therefore database is an important system to be monitored and kept safe. As a database developer necessary steps should be taken to secure the database system. The design mentioned above describes and represents the system requirements to retrieve the effectiveness and the efficiency of the database design. F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 33 lOMoARcPSD|36155182 Task 2 - LO2 Develop a fully functional relational database system, based on an existing system design Task 2.1 (P2) Develop the database system with evidence of user interface, output and data validations, and querying across multiple tables. a. Develop a relational database system according to the ER diagram you have created (Use SQL DDL statements). 1. Create the database Figure2. 1 F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 34 lOMoARcPSD|36155182 2. Use the database Figure2. 2 3. Create Tables Figure2. 3 Customer table F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 35 lOMoARcPSD|36155182 Figure2. 4 Product table Figure2. 5 Job table F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 36 lOMoARcPSD|36155182 Figure2. 6 Load table Figure2. 7 Deport table F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 37 lOMoARcPSD|36155182 Figure2. 8 Payment table Figure2. 9 Transport Unit table F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 38 lOMoARcPSD|36155182 Figure2. 10 Insert Customer values Figure2. 11 Select all from customer F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 39 lOMoARcPSD|36155182 Figure2. 12 Insert Product values Figure2. 13 Select all from product F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 40 lOMoARcPSD|36155182 Figure2. 14 Insert job values Figure2. 15 Select all from job F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 41 lOMoARcPSD|36155182 Figure2. 16 Insert load values Figure2. 17 Select all from load F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 42 lOMoARcPSD|36155182 Figure2. 18 Insert deport values Figure2. 19 Select all from deport F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 43 lOMoARcPSD|36155182 Figure2. 20 Insert payment values Figure2. 21 Select all from payment F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 44 lOMoARcPSD|36155182 Figure2. 22 Insert transport unit values Figure2. 23 Select all from transport unit F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 45 lOMoARcPSD|36155182 b. Provide evidence of the use of a suitable IDE to create a simple interface to insert, update and delete data in the database Microsoft Visual Studio is a integrated development environment IDE used to develop computer programs, websites, web apps and mobile applications. Visual studio supports 36 different programming languages and allow code editors and debugger to support any programming language such as C++, C#, JavaScript, Python, etc. Visual studio 2017 is the latest version of visual basic launched by Microsoft. Visual Studio 2017 consists of many new features Designer Code Editor Debugging Extensibility Other tools The edition in Visual Studio: Professional Enterprises Community Figure2. 24 ‘ F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 46 lOMoARcPSD|36155182 c. Implement the validation methods explained in task 1.2-part c. Primary key Primary key is the unique identification in the table. As a record is created as primary key that cannot be duplicated. A table can have only one primary key. Primary key is a specific choice to minimal set of attributes that uniquely specify a row in a table. The purpose of primary key in a table is to ensure row level accessibility. e.g.: Customer ID Job number Invoice number Load number Foreign key Foreign key is taken from a primary key of another relation. They act as the cross reference between the tables. Foreign key helps to identify a row of another table. Foreign key do not have to be linked specifically to primary key in another table. Unique Unique constraint ensures the column in a table contain unique values. If a column contains unique constraints then the column cannot have duplicate values in the table. The primary key automatically has a unique constraint. Not null Not null ensures that a column does not hold any null or empty value. Not null constraint does not allow updating new records or inserting new records. d. Display the details payment with the job details and the customer details using Join queries F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 47 lOMoARcPSD|36155182 Figure2. 25 Task 2.2 (P3) Implement a query language into the relational database system a. Explain the usage of DML with below mentioned queries by giving at least one single example per each case from the developed database. Select Update Delete A data manipulation language (DML) is a family of computer languages including commands permitting users to manipulate data in a database. This manipulation involves inserting data into database tables, retrieving existing data, deleting data from existing tables and modifying existing data. DML is mostly incorporated in SQL databases. The functional capability of DML is organized in manipulation commands like SELECT, UPDATE, INSERT INTO and DELETE FROM, as described below: SELECT: This command is used to retrieve rows from a table. The syntax is SELECT [column name(s)] from [table name] where [conditions]. SELECT is the most widely used DML command in SQL. F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 48 lOMoARcPSD|36155182 Figure2. 26 UPDATE: This command modifies data of one or more records. An update command syntax is UPDATE [table name] SET [column name = value] where [condition]. Figure2. 27 DELETE: This command removes one or more records from a table according to specified conditions. Delete command syntax is DELETE FROM [table name] where [condition]. F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 49 lOMoARcPSD|36155182 Figure2. 28 Task 2.3 (M2) Implement a fully functional database system, which includes system security and database maintenance. a. Explain how security mechanisms have been used and the importance of these mechanisms for the security of the database. Implement proper security mechanisms (EX: -User groups, access permissions) in the developed database. Security mechanisms Database security is a top priority for today’s organizations. Database security concerns the use of a broad range of information security controls to protect databases against compromises of their confidentiality, integrity and availability. It involves various types or categories of controls, such as technical, procedural/administrative and physical. Database security is a specialist topic within the broader realms of computer security, information security and risk management. Types of security control in databases: Access control Auditing Authentication Encryption Integrity controls F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 50 lOMoARcPSD|36155182 Backups Application security Access control (AC) is the selective restriction of access to a place or other resource. The act of accessing may mean consuming, entering, or using. Permission to access a resource is called authorization. Database auditing involves observing a database so as to be aware of the actions of database users. Database administrators and consultants often set up auditing for security purposes, for example, to ensure that those without the permission to access information do not access it. Authentication is the first step in access control, and there are three common factors used for authentication. It is the process or act of confirming that a user who is attempting to log in to a database is authorized to do so, and is only accorded the rights to perform activities that he or she has been authorized to do. There are three common factors used for authentication: Something you know (such as a password) Something you have (such as a smart card) Something you are (such as a fingerprint or other biometric method) Encryption is the process that uses an algorithm to transform data stored in a database into "cipher text" that is incomprehensible without first being decrypted. Encryption does not itself prevent interference, but denies the intelligible content to a would-be interceptor. In an encryption scheme, the intended information or message, referred to as plaintext, is encrypted using an encryption algorithm. For technical reasons, an encryption scheme usually uses a pseudo-random encryption key generated by an algorithm. Data integrity is the overall completeness, accuracy and consistency of data. Data integrity is usually imposed during the database design phase through the use of standard procedures and rules. F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 51 lOMoARcPSD|36155182 Three integrity constraints are used in a relational database Entity Integrity Referential Integrity Domain Integrity Backups are copies of data from your database that can be used to reconstruct that data. Backups can be divided into physical backups and logical backups. Logical backups contain logical data exported from a database with an Oracle export utility and stored in a binary file, for later re-importing into a database using the corresponding Oracle import utility. Physical backups are the foundation of any sound backup and recovery strategy. Logical backups are a useful supplement to physical backups in many circumstances but are not sufficient protection against data loss without physical backups. Task 2.4 (M3) Assess w2`hether meaningful data has been extracted using query tools to produce appropriate management information. a. Explain the usage of the below SQL statements with the examples from the developed database Group by Order by Having Between Where Usage of SQL statements Group by The statement is used to group the data by one or more column. e.g.: Calculating the total of payment F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 52 lOMoARcPSD|36155182 Figure2. 29 Figure2. 30 F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 53 lOMoARcPSD|36155182 Order by The statement used to set data in ascending or descending order. e.g.: Figure2. 31 Having It used to apply a condition to the aggregate results to limit the groups of returned rows. e.g.: Figure2. 32 F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 54 lOMoARcPSD|36155182 Between It is used to get set of values in a range. e.g.: Figure2. 33 Where It is apply condition to select, update, insert and delete data. e.g.: Figure2. 34 F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 55 lOMoARcPSD|36155182 Task 3 - LO3 Test the systems against user and system requirements Task 3.1 (P4) Test the system against user and system requirements. a. Provide a suitable test plan to test the system against user and system requirements Test plan Introduction The purpose of Smart Movers database is to enter, retrieve and delete data about the customers, product, transport unit, load, deport payment and job. The customer should be able to enter all the details using smart movers. The purpose of test plan is to test: 1. What happens if additional data are added to the tables? 2. What happens wrong if data types are entered to the system 3. Data can be inserted to the system 4. Data can be updated 5. Data can be deleted from the system Assumptions There can be only four or five customers in the system Four transport units are available in the system with four drivers, four containers and four Lorries. With four starting locations and four destination locations that the product (chemicals) can be transported When the customer makes orders an invoice number will be issued for that customer at that time F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 56 lOMoARcPSD|36155182 Tasks 1. Check whether the system give an error message when trying to delete data from a non-existing table in the database 2. Check whether a value is update 3. Check whether an error message is represented 4. Check whether a created table is in the system 5. Check whether a deleted data still exist. Hardware requirements 1. A PC with a minimum speed of 1.0 GHz for 32-bit and a minimum speed of 1.4 GHz for 64-bit implementation. (Recommended 2.0GHz) 2. A system with 4GB RAM 3. A reasonable storage to store data Risks Involved 1. In the process of testing few or some wanted data would be deleted. 2. In the process of testing some important information could be changed b. Provide relevant test cases for the database you have implemented Note:- Learner needs to give expected results in a tabular format and screenshots of the actual results with the conclusion b. Test case Table3. 1. Case 1 Project Name: Smart Movers Test Engineer: Test Case ID: Thameena Test Scenario: Insert data into the database with correct data type Test Steps: Insert the data into the Depot table with correct SQL syntax Test Data: Jo no (11,12,13,14) 1 F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 57 lOMoARcPSD|36155182 Expected Results: System should give a success message as the output Actual Results: A success message was shown PASS/FAIL PASS Case 2 Table3. 2.Case 2 Project Name: Smart Movers Test Engineer: Test Case ID: Thameena Test Scenario: Insert data into the database with wrong data types Test Steps: Insert the wrong data type into the Load table fields with correct SQL syntax Test Data: Job no (DC3) Cus no (AB2) System should give a failure message as the output 2 Expected Results: Actual Results: A failure message was shown PASS/FAIL PASS Case 3 Table3. 3. Case 3 Project Name: Smart Movers Test Thameena F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 58 lOMoARcPSD|36155182 Engineer: Test Case ID: 3 Test Scenario: Update data in the database Test Steps: Update the data in the Customer table fields with correct SQL syntax Test Data: “1” to “2” Expected Results: System should give a success message as the output Actual Results: A success message was shown PASS/FAIL PASS Case 4 Table3. 4.Case 4 Project Name: Smart Movers Test Engineer: Test Case ID: Thameena Test Scenario: Delete data from the table Test Steps: Delete data from the Invoice table with correct SQL syntax Test Data: Delete “109” from Invoice table Expected Results: System should give a success message as the output Actual Results: A success message was shown 4 F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 59 lOMoARcPSD|36155182 PASS PASS/FAIL Case 5 Table3. 5. Cash 5 Project Name: Smart Movers Test Engineer: Test Case ID: Thameena Test Scenario: Enter a null value to a foreign key field Test Steps: Insert a null value to the Load_Product table ProductID field with correct SQL syntax Test Data: ProductID – “01” Expected Results: System should give a failure message as the output Actual Results: A failure message was shown PASS/FAIL PASS 5 Conclusion As the all the above test case was positive the developed Smart Movers database has no errors and it is well created and organized as it is ready to be executed. F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 60 lOMoARcPSD|36155182 Task 3.2 (M4) Assess the effectiveness of the testing, including an explanation of the choice of test data used. a. Explain how the selected test data in task 3.1 b) can be used improve the effectiveness of testing. Task 3.3 (D2) Evaluate the effectiveness of the database solution in relation to user and system requirements, and suggest improvements. a. Get independent feedback on your database solution from the nontechnical users and some developers (use surveys, questioners, interviews or any other feedback collecting method) and make recommendations and suggestions for improvements in a separate conclusion/recommendations section. Figure3. 1 Feedback form F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 61 lOMoARcPSD|36155182 Task 4- LO4 Produce technical and user documentation Task 4.1 (P5) Produce technical and user documentation. a. Prepare a simple users’ guide and a technical documentation for the support and maintenance of the software. User’s Guide This is the Smart Movers automated system for operational activities. The users’ guide will help you to work with the system. Image of home page Figure 4. 1 Sign In This is the welcome page which will be shown soon after you run the program. If you are a existing user 1. Enter your User ID 2. Enter your password If you are a new user click “Sign up” to create a new account. This is the new account page for new customers. Enter your details correctly, create a new password and remember the password for your sign in purpose. After entering all the relevant details click on “Submit” button to register your account. F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 62 lOMoARcPSD|36155182 Figure 4. 2. New account registration If you are a new user click “Sign up” to create a new account. This is the new account page for new customers. Enter your details correctly, create a new password and remember the password for your sign in purpose. After entering all the relevant details click on “Submit” button to register your account and mae your payment. Figure 4. 3. Payment In this page type your card details to register with SmartMovers and importantly select your type of membership from “Category 1/2/3”. And after click on “Pay”to complete F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 63 lOMoARcPSD|36155182 Figure 4. 4. Profile This is the Profile of the SmartMovers. After you log in to the system you will get here. In this page you can make a new delivery by clicking “New Delivery” button, see your current deliveries by clicking “Current Deliveries” and see your delivery history by clicking on “Delivery History”. When you click on “New Delivery” you will be directed to the following Page. Figure 4. 5. New delivery registration In this window you have to give your product and load details to make an order. After you complete filling the details then click on the “Confirm and pay” button and it will F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 64 lOMoARcPSD|36155182 redirect to the merchant payment site. After you completed the payment your order details will be shown like this following window. Figure 4. 6. Order successfully registered And then finally you can go to the homepage again by clicking on the “Continue to homepage” button F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 65 lOMoARcPSD|36155182 Technical Documentation To run the program smoothly and for better performance and maintenance following requirements is needed. For Visual Studio 2017 Table4. 1.Visual Studio 2017 Hardware 1.8 GHz or faster processor. Dual-core or better recommended 2 GB of RAM; 4 GB of RAM recommended (2.5 GB minimum if running on a virtual machine) Hard disk space: up to 130 GB of available space, depending on features installed; typical installations require 20-50 GB of free space. Hard disk speed: to improve performance, install Windows and Visual Studio on a solid state drive (SSD). Video card that supports a minimum display resolution of 720p (1280 by 720); Visual Studio will work best at a Supported Operating Systems resolution of WXGA (1366 by 768) or higher. Visual Studio 2017 will install and run on the following operating systems: Windows 10 version 1507 or higher: Home, Professional, Education, and Enterprise (LTSB and S are not supported) Windows Server 2016: Standard and Data center Windows 8.1 (with Update 2919355): Core, Professional, and Enterprise Windows Server 2012 R2 (with Update 2919355): Essentials, Standard, Data center Windows 7 SP1 (with latest Windows Updates): Home Premium, Professional, Enterprise, Ultimate [ CITATION Vis18 \l 1033 ] For Microsoft SQL Server 2012 F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 66 lOMoARcPSD|36155182 Table4. 2. MS SQL Server 2012 Component Requirement Memory [1] Minimum: Express Editions: 512 MB All other editions: 1 GB Recommended: Express Editions: 1 GB All other editions: At least 4 GB and should be increased as database size increases to ensure optimal performance. Processor Speed Minimum: x86 Processor: 1.0 GHz x64 Processor: 1.4 GHz Recommended: 2.0 GHz or faster Processor Type x64 Processor: AMD Opteron, AMD Athlon 64, Intel Xeon with Intel EM64T support, Intel Pentium IV with EM64T support x86 Processor: Pentium III-compatible processor or faster [ CITATION Har14 \l 1033 ] F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 67 lOMoARcPSD|36155182 F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 68 lOMoARcPSD|36155182 Task 4.2 (M5) Produce technical and user documentation for a fully functional system, including diagrams showing movement of data through the system, and flowcharts describing how the system works. b. Your technical documentation should include some of the UML diagrams (Use case diagram Class diagram, etc.), flow charts for the important functionalities, context level DFD and the Level 1 DFD Figure 51 F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 69 lOMoARcPSD|36155182 Figure 52 F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 70 lOMoARcPSD|36155182 Task 4.3 (D3) Assess any future improvements that may be required to ensure the continued effectiveness of the database system. b. Suggest the future improvements that may be required to ensure the continued effectiveness of the database system. References Techopedia.com. (2018). What is Data Manipulation Language (DML)? - Definition from Techopedia. [online] Available at: https://www.techopedia.com/definition/1179/data-manipulation-language-dml [Accessed 21 Jun. 2018]. En.wikipedia.org. (2018). Database security. [online] Available at: https://en.wikipedia.org/wiki/Database_security [Accessed 21 Jun. 2018]. F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 71 lOMoARcPSD|36155182 En.wikipedia.org. (2018). Access control. [online] Available at: https://en.wikipedia.org/wiki/Access_control [Accessed 21 Jun. 2018]. En.wikipedia.org. (2018). Database audit. [online] Available at: https://en.wikipedia.org/wiki/Database_audit [Accessed 21 Jun. 2018]. En.wikipedia.org. (2018). Authentication. [online] Available at: https://en.wikipedia.org/wiki/Authentication [Accessed 21 Jun. 2018]. En.wikipedia.org. (2018). Encryption. [online] Available at: https://en.wikipedia.org/wiki/Encryption [Accessed 21 Jun. 2018]. En.wikipedia.org. (2018). Data integrity. [online] Available at: https://en.wikipedia.org/wiki/Data_integrity [Accessed 21 Jun. 2018]. En.wikipedia.org. (2018). Database encryption. [online] Available at: https://en.wikipedia.org/wiki/Database_encryption [Accessed 22 Jun. 2018]. Gibson, D. (2018). Understanding the Three Factors of Authentication | Understanding the Three Factors of Authentication | Pearson IT Certification. [online] Pearsonitcertification.com. Available at: http://www.pearsonitcertification.com/articles/article.aspx?p=1718488 [Accessed 22 Jun. 2018]. Techopedia.com. (2018). What is Data Integrity in Databases? - Definition from Techopedia. [online] Available at: https://www.techopedia.com/definition/811/dataintegrity-databases [Accessed 22 Jun. 2018]. Docs.oracle.com. (2018). Backup and Recovery Overview. [online] Available at: https://docs.oracle.com/cd/B19306_01/backup.102/b14192/intro001.ht m [Accessed 22 Jun. 2018]. Lifewire. (2018). Protect Your Data by Normalizing It to at Least 2NF. [online] Available at: https://www.lifewire.com/full-functionaldependency-1019753 [Accessed 23 Jun. 2018]. https://teachcomputerscience.com/validation/ F.Thameena Banu /COL/E-005293 Unit 04 Assignment-01 Downloaded by Shashika Munasinghe (shaiiko.117ggez@gmail.com) Page 72