Monday, August 5, 2019
Database Management System for Car Company
Database Management System for Car Company STRATEGY ANALYSIS DESCRIPTION OF CURRENT BUSINESS ACTIVITIES INTRODUCTION DMC is a Dedicated cars company that is specialized in Car sales business, and it was established Four years ago in 7th May 2005, and its main name stands for Dedicated Motor Cars and its main division is in Tripoli Libya, it is a company with many high workers and skilled employees working on it as they are sharing the same ambition, and always aiming for the best in their business, in both to improve their employees skills and also to provide the best services to their dear customer. DMC is really working hard to achieve a new improvement in their business every year, also to get the most popular and successful cars to get them, and for the best prices to its customers, as they are also filling their case show with a good collection in each month. As for this month they got a very promising collection of new cars that just released this year, and old ones but got well comments from millions of people who tried them, this collection will be for this year as in this time its the companys season time for the business. Current System The current system of my company is going like this, each day we are improving, and as I can see now we are well known as 1 of the top 20 Private companies in Libya, and we are also known in the other continents as well. We are also not restrict with only 1 nationality as we are offering jobs, because our company contains employees from different nationality as we have some of them in the main division and some other are in our different offices around the globe. DMC has a good budget as overall, and it is improving, also the customers are so pleased with our services in general, and our economical prices. That includes that we are always taking care of our employees in terms of payment and to keep them improving by sending them to take courses in different kind of fields. Although we are doing a pretty good job in this business field and improving by a good rate percentage every year, but we are really facing some of the major problems in our business, the main problem is that we are facing a new changes and new challenges in our business, also we have other competitors companies in the countries we are doing this business and selling our cars and making our different services. Problem Background Effects of it So our main problem actually includes semi problems that we should take care of them so we can solve the main problem, which is we really need to move on with our services with the technology we are facing these days in doing those kind of business to make it better, faster, and easier. And 1st of all is our own system in the company, because it is still not well organized as an strong infrastructure and we also need a well studied design model for this infrastructure for our company. Thats where I planned to made a Special database system to our company, which will be including our employees, our daily customers for each season, and our sales of cars on this season on as well covered by the invoice section of the company, and some specific information about our shipment idea and its fee and coverage services. The good thing is that with this new system we will be able to make a clear and direct relational between all the sections mentioned above and make a really strong infrastructure for the company plus to be able to store information and data more sufficiently. In this segment I would like to give you an idea about the goals and aims that we are aiming to achieve and they are: Improve the business even much further, to reach a new level of development. Reduce the paper work as we had a lost of some data from time to time. To always keep up with the other contenders companies so we wont lose our customers. Secure our data in a sufficient way. Provide a system where it is easy to get data for any of our customers. Improvement of production to satisfy the customers needs. Easy access to database and information used by employees. Remove barriers to widen its production by improving sales procedure and reducing costs. Hardware and Software Necessity These are all the hardware requirements needed Minimum Requirements Processor 2 Gigahertz (GHz) Pentium IV-Intel processor or Higher. Memory 512 MB of RAM or Higher. Hard Disk 900 MB of available space required on the system drive, 4 gigabytes (GB) of available space capacity on the installation drive. Drive DVD-ROM or CD-ROM drive and Floppy drive Display Super VGA (1024 x 768) or higher resolution. These are all the software requirements needed Minimum Requirements Operating Systems Windows XP Service Pack Final, Windows Vista, or Windows 7 any edition with MS-Office. H I S T O R Y DMC Companys history is not that much as the company only established two years ago, but in those two years we can say that the company earned its name and make various successful that led it to earn a respectful history archive in the day it starts doing business till our day now. Specification for New System The main purpose from making this new application in my company is 1st to achieve the objectives that DMC is aiming to achieve, 2nd to make the business much easier for the customer and the employee as each of them will have the advantage of these kind of applications in our business. Also the cars sales section (which is the Cars Details) will be much more attractive this way, and as it shows all the possible information that needed at the same time. That goes for the employee and customers tables as well; they are helping the company over all by making it progressing even much faster and also to reduce the paper work. About Us table shows the company in a really short cut way, and its true words shows on this section, also for the producer of this application to have his word on that section. Also the shipment tables is an important section and it is one of the reasons to determine whether a certain car sales company is really know about its business and can keep up, or sadly but have no idea about this field of business as it helps a lot in showing exactly the steps taking to ship your car and to not need to discuss any of the employee about it because it is very clear. On the other hand, last one but not last, is Plate Info table, which holds all the plate number for the cars that have been purchased from our company, and also saving the numbers from the other cars for the customers that are ding services for their own car. BUISNESS ACTIVITIES OPERATIONS DESCRIPTION OF OPERATIONS Þ Assign an Employee to handle a certain invoice. Þ Check the Country of the Customer to make the delivery shipment service for his/her order. Þ Adding an Employee to the company. Þ Assign a Unique ID to a Customer. Þ Adding a new Car to the showcase. Operation Name: Assign an Employee to handle a certain invoice. Description: This operation handles the fact that when we are having a new invoice table, we hand it over to a certain employee, and a (certain) employee means that he/she is not busy with another invoice or another operation in the moment. Input: The assigned Employee must appear his/her unique ID number, along with his name, and should be clear to read. Output: The Employee will be responsible for that invoice, and handle its full data. ============================ Operation Name: Check the Country of the Customer to make a delivery shipment service for his/her order. Description: This operation handles the action when the Customer wants to make a shipment service for his current order and to make it to a certain country. Input: The Customer must give information about the destination (Country) area where he/she wants to deliver the order. Output: The Customer will be given an information about the shipment service such as the fee that known for that country. ============================ Operation Name: Adding an Employee to the company. Description: As DMC expanding greatly in the past years, we are making this issue more than usual lately, and it is about recruiting a new employee to the company, further adding his information to the database. Input: For this operation we need to have the new Employee Name, Age, Nationality, and his/her Date of Birth to be able to add him/her to our database. Output: The new Employee will be added to our database, and will be given a Unique ID number to be known as one of DMC employees. ============================ Operation Name: Assign a Unique ID to a Customer. Description: This operation deals with having a new customer and need to be having his/her information in our database to be given an ID number for easily checking the customer status when he/she makes more orders in the future. Input: To make this operation successful, we need to have basic information yet helpful for us such as Name, Age, and Contact number. Output: The Customer has been given a unique ID number. BUSINESS ACTIVITIES This section describes the operations of DMC Company which is as I mentioned before but in more specific it deals with car sales that the company get from other retailers which recently built up a really strong relationship with DMC and are getting the best deals to expand our business. So mainly DMC deals with customers with services, and we do car sale business, also we are very restrict with our system and the invoice we made are very clear for every car, further our employees are doing their best in every deal been made for each car. And more to mention here for our upcoming Database building is that we are going to build a new design system model that contains Cars, Employee, Invoice, Shipment, and Customer. Those Five elements that I mentioned above will be our main focus on this database design, as it is in general what DMC is is all about. For that matter here we are going to explain in details every Element we have for our Design Model, been explained by including its Attributes and a brief description about its main purpose. And every element will be known later on in the database description as Entity. Invoice Entity This entitys main purpose is to keep track of the sales, and for every deal that have been sold by whom as an employee and for whom as a customer, also it will display all the data necessary about the product (Car) AND ITS Unique ID, plus other major information such as total price and the invoice reset number, whats more is this entity acts as the main entity related to all the other entities as it is also related to the (Shipment) entity as it also saves the shipment number in the invoice paper. The Attributes that have been made for this Entity are: Invoice_Number, Customer_ID, Employee_ID, Shipment_Nmber, Total_Price, and Car_ID, and we will be talking about all the attributes for every entity in more details later on. Cars Entity This entity deals with all the cars that the company DMC stores, and contains all its details such as the car brand name, its color and the car ID, and the shipment number for every specific shipment that been made, along with the most important attribute for all the customers which is: the cars price. Employee Entity This entity here will be busy of containing the Employee_ID, Name, Age, Nationality, and Date of Birth, it will be also including two separated types of employees and they are: Part Time, and Full Time. Customer Entity This Entity is busy with giving the full information needed about the customers we are dealing with such as their Customer_ID, Name, Age, Contact_Number, and these information will be helpful in many facts in our company such as in making our invoices and assigning a specific car for a certain customer. Shipment Entity Shipment entity is one of the services that made our company earn its name in such a short time, as this service allow a full shipment service for as much as needed for cars for our customers viewed with its price, and a unique Shipment_Number, also the Country attributes as it tells the destination for each shipment services and the Fee attribute to tells the price for each country shown on the list. BUSINESS RULES In this section we will be listing DMC companys main rules in its business, as for our customers for an example they are able to buy as much cars as they can with no any problems but for our cars in the stock we cannot offer to sell the car for more than one and only one customer, also with our employees as any 1 of our employees can deal with more than just one car, but for the cars they should be dealt with only one employee to make the sell process. And as for these examples here we will be listing all the business rules for our company to make sure to be followed as it is: For every Shipment service that been made, it has to be assigned into an invoice that is related to it and that is a MUST. Every Car in stock can have one invoice specialize for it; same goes for the invoice as we made only one car can fit in each invoice rather than more than just one to make the business more flexible. Every Car can have a shipment service depends on the customers need, and as for this shipment service, it can be done for more than just one car as well, but it should be made for at least one car for this service to be available. For every single customer, he/she can belong to more than just one invoice depends on the orders he/she made and how many cars been bought, and in the other hand for the invoice it can only belong to one and only one customer, means we cannot include two customers buying the same car model in one invoice because they sold the same car model. Every employee can handle more than just one invoice when making the selling process, he/she can serve more than just one invoice, but for the invoices, every invoice should be handled by only one employee. Also we have to make sure that we wont start the buying process for our customers unless we have their personal data in our database system. For our new employees, we cannot let them start working in active business unless the process of having their personal information inside our database is done. INITIAL E.R DESIGN SPECIFICATION TABLE SPECIFICATION Inside DMC database I would like to create few modules and show the way to create them, and the purpose of making them, plus the reason of every column, so they can help me on the objectives Im aiming to achieve which they are: Database Description My database consists of five tables (And two sub-type tables that will be mentioned later on) and they are: Cars Invoice Customer Employee Shipment Table Specification Table Name: Invoice Table Description: To be used as a reference of all the sales of the company. Attribute of the Table: Invoice_Number, Customer_ID, Car_ID, Employee_ID, Shipment_Number, Total_Price. Table Type: Independent. Primary Key: Invoice_Number. ============================ Table Name: Customer Table Description: To be shown the customer basic information, along with his/her unique ID number. Attribute of the Table: Customer_ID, Name, Age, Contact_Number. Table Type: Independent Primary Key: Customer_ID ============================ Table Name: Employee Table Description: To be shown the Employee private data inside the database. Attribute of the Table: Employee_ID, Name, Nationality, Date of Birth. Table Type: Independent (Supertype) Primary Key: Employee_ID ============================ Table Name: Cars Table Description: To be shown the Car basic data, along with the cars price and its shipment number. Attribute of the Table: Brand_Name, Color, Car_ID, Shipment_Number, Price. Table Type: Independent Primary Key: Car_ID ============================ Table Name: Shipment Table Description: To be shown more specific information about the shipment service, such as the countries that are available for the service, plus the fee. Attribute of the Table: Shipment_Number, Country, Fee Table Type: Independent Primary Key: Shipment_Number ============================ Table Name: Full Time Table Description: To be shown more specific information about the Full Time employees, such as the Salary for the Full Time employees section, and the administration section which shows each full time employee and hi/her related administration division, along with the Employee ID. Attribute of the Table: Employee_ID, Salary, and Administration. Table Type: Independent (Subtype) Primary Key: Employee_ID ================================ Table Name: Part Time Table Description: To be shown more specific information about the Part Time employees, such as their Salary as well, and the Part time employees time shifting for their work time, and for sure their employee ID.. Attribute of the Table: Employee_ID, Salary, and Time Shifting. Table Type: Independent (Subtype) Primary Key: Employee_ID ATTRIBUTE SPECEFICATION 1. Invoice Entity Name: Invoice Primary Key: Invoice_Number Name Datatype Length Classification Allow Null Constraints Description Invoice_Number Int Simple No Unique A certain unique numbers to keep track of each invoice Customer_ID Varchar (10) Simple No Unique The ID for a customer Employee_ID INT (10) Simple No Unique The unique ID for an employee Car_ID Varchar (10) Simple No Unique The ID for a car Total_Price Double Simple No Unique Total price of a certain invoice Shipment_Number Int (10) Simple No Unique Unique number made for a certain shipment made 2. Cars Entity Name: Cars Primary Key: Car_ID Name Datatype Length Classification Allow Null Constraints Description Brand_Name VarChar (20) Simple No Unique Model name of the car Color VarChar (10) Simple No Unique Color of the car Car_ID Varchar (10) Simple No Unique The ID for a car Shipment_Number Int (20) Simple No Unique Unique number made for a certain shipment made Price Double Simple No Unique Actual Price of a car 3. Employee Entity Name: Employee Primary Key: Employee_ID Name Datatype Length Classification Allow Null Constraints Description Employee_ID INT (10) Simple No Unique The unique ID for an employee Name VarChar (20) Simple No Unique The first name of employee Nationality Varchar (20) Simple No Unique The employees nationality Date of Birth Date Simple No Unique The employees date of birth 4. Customer Entity Name: Customer Primary Key: Customer_ID Name Datatype Length Classification Allow Null Constraints Description Customer_ID Varchar (10) Simple No Unique The ID for a customer Name VarChar (10) Simple No Unique The first name of a customer Age Int (2) Simple No Unique The customer age Contact_Number Int (10) Simple No Unique Customer Contact number 5. Shipment Entity Name: Shipment Primary Key: Shipment_Number Name Datatype Length Classification Allow Null Constraints Description Shipment_Number Int (20) Simple No Unique Unique number made for a certain shipment made Country VarChar (10) Simple No Unique The country where the shipment destination Fee Int (5) Simple No Unique The price of the shipment 6. Full Time (Sub-Type Entity) Entity Name: Full Time Primary Key: Employee_ID Name Datatype Length Classification Allow Null Constraints Description Employee_ID INT (10) Simple No Unique The unique ID for an employee Salary Currency Simple No Unique The salary of a particular employee Administration VarChar (20) Simple No Unique The certain task that the employee is responsible for 7. Part Time (Sub-Type Entity) Entity Name: Part Time Primary Key: Employee_ID Name Datatype Length Classification Allow Null Constraints Description Employee_ID INT (10) Simple No Unique The unique ID for an employee Salary VarChar (10) Simple No Unique The salary of a particular employee Time Shifting Date/Time Simple No Unique The certain day that the employee have his/her work shifts on CODING CREATING OF TABLES CREATING OF TABLES As for my companys project for our database I used Microsoft Office Access 2007, and I started creating tables on it. [1] Cars Table Script Name Create Cars Table CREATE TABLE Cars ( Car_ID VARCHAR PRIMARY KEY NOT NULL, Brand_Name VARCHAR(20) NOT NULL, Color VARCHAR(10) , Shipment_Number INTEGER(20) NOT NULL, Price Double NOT NULL, ); [2] Invoice table Script Name Create Invoice Table CREATE TABLE Invoice ( Invoice_Number INTEGER PRIMARY KEY NOT NULL, Customer_ID VARCHAR(10) NOT NULL, Car_ID VARCHAR(10) NOT NULL, Shipment_Number INTEGER(10) NOT NULL, Price Double NOT NULL, ); [3] Customer table Script Name Create Customer Table CREATE TABLE Customer ( Customer_ID VARCHAR PRIMARY KEY NOT NULL, Name VARCHAR(10) NOT NULL, Age INTEGER(2) NOT NULL, Contact_Number INTEGER(10) NOT NULL, ); [4] Employee table Script Name Create Employee Table CREATE TABLE Employee ( Employee_ID VARCHAR PRIMARY KEY NOT NULL, Name VARCHAR(20) NOT NULL, Nationality VARCHAR(20) NOT NULL, Date of Birth Date NOT NULL, ); [5] Shipment table Script Name Create Shipment Table CREATE TABLE Shipment ( Shipment_Number INTEGER PRIMARY KEY NOT NULL, Country VARCHAR(10) NOT NULL, Fee INTEGER(10) NOT NULL, ); CONSTRAINTS SPECIFICATION Generalization hierarchy on an Employee. Description: This hierarchy assigns the Employee entity as Supertype, and Full Time, Part Time as Subtypes, and since the both subtypes have many similarities, the Supertype have the attributes in common to the subtypes and they are: Employee_ID, Name, Nationality, Date of Birth. . The subtypes cannot be one in another, means the Full Time employee cannot be a Part Time employee, and therefore this generalization hierarchy is of the type disjoint. Type: Disjoint Super type Entity: Employee Super type Primary Key: Employee_ID Common Attributes: Employee_ID, Name, Nationality, Date Of Birth. Constraints Full Time: This subtype entity shows certain data about the Full time employees in the company and their related information which is needed to our database. As for the attributes for this entity: Employee_ID, Salary, Administration. Part Time: This subtype entity shows the data the other type of employees which is the part time employee type. As for the attributes for this entity: Employe_ID, Salary, Time shifting, INITIAL POPULATING OF TABLES Cars Table Populating Table (Cars) INSERT INTO Cars (Brand_Name, Color, Car_ID, Shipment_Number, Price) VALUES (Mustang, Orange, 17111, 11333, 40000) ; Invoice Table Populating Table (Invoice) INSERT INTO Invoice (Invoice_Number, Customer_ID, Car_ID, Employee_ID, Shipment_Number, Total_Price) VALUES (11, 9844, 17633, 1432, 11771, 25) ; Customer Table Populating Table (Customer) INSERT INTO Customer (Customer_ID, Name, Age, Contact_Number) VALUES (9020, Avinash, 39, 2800131) ; Employee Table Populating Table (Employee) INSERT INTO Employee (Employee_ID, Name, Nationality, Date of Birth) VALUES (1422, Vadimas, Libyan, 2/21/1986) ; Shipment Table Populating Table (Shipment) INSERT INTO Shipment (Shipment_Number, Country, Fee) VALUES (11311, Germany, 130) ; Full Time Table Populating Table (Full Time) INSERT INTO Full Time (Employee_ID, Salary, Administration) VALUES (1433, 1300, Secretary) ; Part Time Table Populating Table (Part Time) INSERT INTO Part Time (Employee_ID, Salary, Time Shifting) VALUES (1441, 2000, 3/23/2009) ; USERS INPUT (INSERTION, DELETION, UPDATE) INSERTION: Add New Car (Cars Table) Query name: Insert (New Car in the cars showcase) INSERT INTO Cars (Brand_Name, Color, Car_ID, Shipment_Number, Price) VALUES ([Type the Cars Brand], [Type the Color of the Car ], [The Car ID], [The Shipment Number related to this Car], [The Price of this Car is); INSERTION 2 Here we are going to try to insert a new data into the Shipment form, as we will be using it through the Shipment form insertion button included in that form. Then here the database will ask you if your up for inserting new data into that form And here the data has been inserted successfully below UPDATE: Update New Customer (Customer Table) Query name Update (New Customer in the Customers Table) UPDATE Customer SET Contact_Number = [Enter Customers phone number] WHERE Customer_ID = [ID]; DELETION: Delete a Shipment Country (Shipment Table) DELETE * FROM Shipment WHERE Country = [Enter the Country that will be eliminated]; PERFORMING QUERIES, SUB-QUERIES QUERY [1] (Performing Alias technique into a Query) Description: To manage all the Employees names into one query QUERY [2] (Performing Function technique into a Query) Description: To display all the cars available at the moment QUERY [3] (Performing Concatenation technique into a Query) Description: To give a brief description about each car in the showcase QUERY [4] (Performing Sub-Query technique into a Query) Description: To Create a query from the employee data where it concern only employees who are British. QUERY [5] (Performing another Sub-Query technique into a Query) Description: To Create a query from the Cars data where it concern only the minimum prices of listed cars plus be grouped by the cars brand name. TESTING Test case : 1 Objectives : To use ALIAS in Employee Table Test Data : SELECT NAME AS FULLNAME FROM Employee; Expected Test Result : To display the corresponding records. Actual Test Result : As shown in the image below. Conclusion : Success. The record was displayed. Test case : 2 Objectives : To use ALIAS in Customer Table Test Data : SELECT Name AS CustomerName FROM Customer; Expected Test Result : To display the corresponding records. Actual Test Result : As shown in the image below. Conclusion : Success. The record was displayed. Test case : 3 Objectives : To use ARITHMETIC in Car Table Test Data :SELECT Car_ID, Brand_Name, (Price*2) AS [Price with Shipment] FROM Cars; Expected Test Result : To display the corresponding records. Actual Test Result : As shown in the image below. Conclusion : Success. The record was displayed. Test case : 4 Objectives : To Create Shipment Table Test Data : CREATE Table Shipment ( Shipment_Number int (5), Country varchar (10), Fee money (10) ) ; Expected Test Result : To display the corresponding records. Actual Test Result : As shown in the image below. Conclusion : Success. The record was displayed. Test case : 5 Objectives : To use COMPARISON in Cars Table Test Data : SELECT Car_ID, Brand_Name FROM Cars WHERE Price>6000; Expected Test Result : To display the corresponding records. Actual Test Result : As shown in the image below. Conclusion : Success. The record was displayed. Test case : 6 Objectives : To use COMPARISON in Shipment Table Test Data : SELECT Shipment_Number, Country FROM Shipment WHERE Fee Expected Test Result : To display the corresponding records. Actual Test Result : As shown in the image below. Conclusion : Success. The record was displayed. Test case : 7 Objectives : To Create Cars table Test Data : CREATE Table Cars ( Car_ID int (5), Shipment_Number int (5), Brand_Name varchar (10), Color varchar (10), Price (10) ) ; Expected Test Result : To display the corresponding records. Actual Test Result : As shown in the image below. Conclusion : Success. The record was displayed. Test Database Management System for Car Company Database Management System for Car Company STRATEGY ANALYSIS DESCRIPTION OF CURRENT BUSINESS ACTIVITIES INTRODUCTION DMC is a Dedicated cars company that is specialized in Car sales business, and it was established Four years ago in 7th May 2005, and its main name stands for Dedicated Motor Cars and its main division is in Tripoli Libya, it is a company with many high workers and skilled employees working on it as they are sharing the same ambition, and always aiming for the best in their business, in both to improve their employees skills and also to provide the best services to their dear customer. DMC is really working hard to achieve a new improvement in their business every year, also to get the most popular and successful cars to get them, and for the best prices to its customers, as they are also filling their case show with a good collection in each month. As for this month they got a very promising collection of new cars that just released this year, and old ones but got well comments from millions of people who tried them, this collection will be for this year as in this time its the companys season time for the business. Current System The current system of my company is going like this, each day we are improving, and as I can see now we are well known as 1 of the top 20 Private companies in Libya, and we are also known in the other continents as well. We are also not restrict with only 1 nationality as we are offering jobs, because our company contains employees from different nationality as we have some of them in the main division and some other are in our different offices around the globe. DMC has a good budget as overall, and it is improving, also the customers are so pleased with our services in general, and our economical prices. That includes that we are always taking care of our employees in terms of payment and to keep them improving by sending them to take courses in different kind of fields. Although we are doing a pretty good job in this business field and improving by a good rate percentage every year, but we are really facing some of the major problems in our business, the main problem is that we are facing a new changes and new challenges in our business, also we have other competitors companies in the countries we are doing this business and selling our cars and making our different services. Problem Background Effects of it So our main problem actually includes semi problems that we should take care of them so we can solve the main problem, which is we really need to move on with our services with the technology we are facing these days in doing those kind of business to make it better, faster, and easier. And 1st of all is our own system in the company, because it is still not well organized as an strong infrastructure and we also need a well studied design model for this infrastructure for our company. Thats where I planned to made a Special database system to our company, which will be including our employees, our daily customers for each season, and our sales of cars on this season on as well covered by the invoice section of the company, and some specific information about our shipment idea and its fee and coverage services. The good thing is that with this new system we will be able to make a clear and direct relational between all the sections mentioned above and make a really strong infrastructure for the company plus to be able to store information and data more sufficiently. In this segment I would like to give you an idea about the goals and aims that we are aiming to achieve and they are: Improve the business even much further, to reach a new level of development. Reduce the paper work as we had a lost of some data from time to time. To always keep up with the other contenders companies so we wont lose our customers. Secure our data in a sufficient way. Provide a system where it is easy to get data for any of our customers. Improvement of production to satisfy the customers needs. Easy access to database and information used by employees. Remove barriers to widen its production by improving sales procedure and reducing costs. Hardware and Software Necessity These are all the hardware requirements needed Minimum Requirements Processor 2 Gigahertz (GHz) Pentium IV-Intel processor or Higher. Memory 512 MB of RAM or Higher. Hard Disk 900 MB of available space required on the system drive, 4 gigabytes (GB) of available space capacity on the installation drive. Drive DVD-ROM or CD-ROM drive and Floppy drive Display Super VGA (1024 x 768) or higher resolution. These are all the software requirements needed Minimum Requirements Operating Systems Windows XP Service Pack Final, Windows Vista, or Windows 7 any edition with MS-Office. H I S T O R Y DMC Companys history is not that much as the company only established two years ago, but in those two years we can say that the company earned its name and make various successful that led it to earn a respectful history archive in the day it starts doing business till our day now. Specification for New System The main purpose from making this new application in my company is 1st to achieve the objectives that DMC is aiming to achieve, 2nd to make the business much easier for the customer and the employee as each of them will have the advantage of these kind of applications in our business. Also the cars sales section (which is the Cars Details) will be much more attractive this way, and as it shows all the possible information that needed at the same time. That goes for the employee and customers tables as well; they are helping the company over all by making it progressing even much faster and also to reduce the paper work. About Us table shows the company in a really short cut way, and its true words shows on this section, also for the producer of this application to have his word on that section. Also the shipment tables is an important section and it is one of the reasons to determine whether a certain car sales company is really know about its business and can keep up, or sadly but have no idea about this field of business as it helps a lot in showing exactly the steps taking to ship your car and to not need to discuss any of the employee about it because it is very clear. On the other hand, last one but not last, is Plate Info table, which holds all the plate number for the cars that have been purchased from our company, and also saving the numbers from the other cars for the customers that are ding services for their own car. BUISNESS ACTIVITIES OPERATIONS DESCRIPTION OF OPERATIONS Þ Assign an Employee to handle a certain invoice. Þ Check the Country of the Customer to make the delivery shipment service for his/her order. Þ Adding an Employee to the company. Þ Assign a Unique ID to a Customer. Þ Adding a new Car to the showcase. Operation Name: Assign an Employee to handle a certain invoice. Description: This operation handles the fact that when we are having a new invoice table, we hand it over to a certain employee, and a (certain) employee means that he/she is not busy with another invoice or another operation in the moment. Input: The assigned Employee must appear his/her unique ID number, along with his name, and should be clear to read. Output: The Employee will be responsible for that invoice, and handle its full data. ============================ Operation Name: Check the Country of the Customer to make a delivery shipment service for his/her order. Description: This operation handles the action when the Customer wants to make a shipment service for his current order and to make it to a certain country. Input: The Customer must give information about the destination (Country) area where he/she wants to deliver the order. Output: The Customer will be given an information about the shipment service such as the fee that known for that country. ============================ Operation Name: Adding an Employee to the company. Description: As DMC expanding greatly in the past years, we are making this issue more than usual lately, and it is about recruiting a new employee to the company, further adding his information to the database. Input: For this operation we need to have the new Employee Name, Age, Nationality, and his/her Date of Birth to be able to add him/her to our database. Output: The new Employee will be added to our database, and will be given a Unique ID number to be known as one of DMC employees. ============================ Operation Name: Assign a Unique ID to a Customer. Description: This operation deals with having a new customer and need to be having his/her information in our database to be given an ID number for easily checking the customer status when he/she makes more orders in the future. Input: To make this operation successful, we need to have basic information yet helpful for us such as Name, Age, and Contact number. Output: The Customer has been given a unique ID number. BUSINESS ACTIVITIES This section describes the operations of DMC Company which is as I mentioned before but in more specific it deals with car sales that the company get from other retailers which recently built up a really strong relationship with DMC and are getting the best deals to expand our business. So mainly DMC deals with customers with services, and we do car sale business, also we are very restrict with our system and the invoice we made are very clear for every car, further our employees are doing their best in every deal been made for each car. And more to mention here for our upcoming Database building is that we are going to build a new design system model that contains Cars, Employee, Invoice, Shipment, and Customer. Those Five elements that I mentioned above will be our main focus on this database design, as it is in general what DMC is is all about. For that matter here we are going to explain in details every Element we have for our Design Model, been explained by including its Attributes and a brief description about its main purpose. And every element will be known later on in the database description as Entity. Invoice Entity This entitys main purpose is to keep track of the sales, and for every deal that have been sold by whom as an employee and for whom as a customer, also it will display all the data necessary about the product (Car) AND ITS Unique ID, plus other major information such as total price and the invoice reset number, whats more is this entity acts as the main entity related to all the other entities as it is also related to the (Shipment) entity as it also saves the shipment number in the invoice paper. The Attributes that have been made for this Entity are: Invoice_Number, Customer_ID, Employee_ID, Shipment_Nmber, Total_Price, and Car_ID, and we will be talking about all the attributes for every entity in more details later on. Cars Entity This entity deals with all the cars that the company DMC stores, and contains all its details such as the car brand name, its color and the car ID, and the shipment number for every specific shipment that been made, along with the most important attribute for all the customers which is: the cars price. Employee Entity This entity here will be busy of containing the Employee_ID, Name, Age, Nationality, and Date of Birth, it will be also including two separated types of employees and they are: Part Time, and Full Time. Customer Entity This Entity is busy with giving the full information needed about the customers we are dealing with such as their Customer_ID, Name, Age, Contact_Number, and these information will be helpful in many facts in our company such as in making our invoices and assigning a specific car for a certain customer. Shipment Entity Shipment entity is one of the services that made our company earn its name in such a short time, as this service allow a full shipment service for as much as needed for cars for our customers viewed with its price, and a unique Shipment_Number, also the Country attributes as it tells the destination for each shipment services and the Fee attribute to tells the price for each country shown on the list. BUSINESS RULES In this section we will be listing DMC companys main rules in its business, as for our customers for an example they are able to buy as much cars as they can with no any problems but for our cars in the stock we cannot offer to sell the car for more than one and only one customer, also with our employees as any 1 of our employees can deal with more than just one car, but for the cars they should be dealt with only one employee to make the sell process. And as for these examples here we will be listing all the business rules for our company to make sure to be followed as it is: For every Shipment service that been made, it has to be assigned into an invoice that is related to it and that is a MUST. Every Car in stock can have one invoice specialize for it; same goes for the invoice as we made only one car can fit in each invoice rather than more than just one to make the business more flexible. Every Car can have a shipment service depends on the customers need, and as for this shipment service, it can be done for more than just one car as well, but it should be made for at least one car for this service to be available. For every single customer, he/she can belong to more than just one invoice depends on the orders he/she made and how many cars been bought, and in the other hand for the invoice it can only belong to one and only one customer, means we cannot include two customers buying the same car model in one invoice because they sold the same car model. Every employee can handle more than just one invoice when making the selling process, he/she can serve more than just one invoice, but for the invoices, every invoice should be handled by only one employee. Also we have to make sure that we wont start the buying process for our customers unless we have their personal data in our database system. For our new employees, we cannot let them start working in active business unless the process of having their personal information inside our database is done. INITIAL E.R DESIGN SPECIFICATION TABLE SPECIFICATION Inside DMC database I would like to create few modules and show the way to create them, and the purpose of making them, plus the reason of every column, so they can help me on the objectives Im aiming to achieve which they are: Database Description My database consists of five tables (And two sub-type tables that will be mentioned later on) and they are: Cars Invoice Customer Employee Shipment Table Specification Table Name: Invoice Table Description: To be used as a reference of all the sales of the company. Attribute of the Table: Invoice_Number, Customer_ID, Car_ID, Employee_ID, Shipment_Number, Total_Price. Table Type: Independent. Primary Key: Invoice_Number. ============================ Table Name: Customer Table Description: To be shown the customer basic information, along with his/her unique ID number. Attribute of the Table: Customer_ID, Name, Age, Contact_Number. Table Type: Independent Primary Key: Customer_ID ============================ Table Name: Employee Table Description: To be shown the Employee private data inside the database. Attribute of the Table: Employee_ID, Name, Nationality, Date of Birth. Table Type: Independent (Supertype) Primary Key: Employee_ID ============================ Table Name: Cars Table Description: To be shown the Car basic data, along with the cars price and its shipment number. Attribute of the Table: Brand_Name, Color, Car_ID, Shipment_Number, Price. Table Type: Independent Primary Key: Car_ID ============================ Table Name: Shipment Table Description: To be shown more specific information about the shipment service, such as the countries that are available for the service, plus the fee. Attribute of the Table: Shipment_Number, Country, Fee Table Type: Independent Primary Key: Shipment_Number ============================ Table Name: Full Time Table Description: To be shown more specific information about the Full Time employees, such as the Salary for the Full Time employees section, and the administration section which shows each full time employee and hi/her related administration division, along with the Employee ID. Attribute of the Table: Employee_ID, Salary, and Administration. Table Type: Independent (Subtype) Primary Key: Employee_ID ================================ Table Name: Part Time Table Description: To be shown more specific information about the Part Time employees, such as their Salary as well, and the Part time employees time shifting for their work time, and for sure their employee ID.. Attribute of the Table: Employee_ID, Salary, and Time Shifting. Table Type: Independent (Subtype) Primary Key: Employee_ID ATTRIBUTE SPECEFICATION 1. Invoice Entity Name: Invoice Primary Key: Invoice_Number Name Datatype Length Classification Allow Null Constraints Description Invoice_Number Int Simple No Unique A certain unique numbers to keep track of each invoice Customer_ID Varchar (10) Simple No Unique The ID for a customer Employee_ID INT (10) Simple No Unique The unique ID for an employee Car_ID Varchar (10) Simple No Unique The ID for a car Total_Price Double Simple No Unique Total price of a certain invoice Shipment_Number Int (10) Simple No Unique Unique number made for a certain shipment made 2. Cars Entity Name: Cars Primary Key: Car_ID Name Datatype Length Classification Allow Null Constraints Description Brand_Name VarChar (20) Simple No Unique Model name of the car Color VarChar (10) Simple No Unique Color of the car Car_ID Varchar (10) Simple No Unique The ID for a car Shipment_Number Int (20) Simple No Unique Unique number made for a certain shipment made Price Double Simple No Unique Actual Price of a car 3. Employee Entity Name: Employee Primary Key: Employee_ID Name Datatype Length Classification Allow Null Constraints Description Employee_ID INT (10) Simple No Unique The unique ID for an employee Name VarChar (20) Simple No Unique The first name of employee Nationality Varchar (20) Simple No Unique The employees nationality Date of Birth Date Simple No Unique The employees date of birth 4. Customer Entity Name: Customer Primary Key: Customer_ID Name Datatype Length Classification Allow Null Constraints Description Customer_ID Varchar (10) Simple No Unique The ID for a customer Name VarChar (10) Simple No Unique The first name of a customer Age Int (2) Simple No Unique The customer age Contact_Number Int (10) Simple No Unique Customer Contact number 5. Shipment Entity Name: Shipment Primary Key: Shipment_Number Name Datatype Length Classification Allow Null Constraints Description Shipment_Number Int (20) Simple No Unique Unique number made for a certain shipment made Country VarChar (10) Simple No Unique The country where the shipment destination Fee Int (5) Simple No Unique The price of the shipment 6. Full Time (Sub-Type Entity) Entity Name: Full Time Primary Key: Employee_ID Name Datatype Length Classification Allow Null Constraints Description Employee_ID INT (10) Simple No Unique The unique ID for an employee Salary Currency Simple No Unique The salary of a particular employee Administration VarChar (20) Simple No Unique The certain task that the employee is responsible for 7. Part Time (Sub-Type Entity) Entity Name: Part Time Primary Key: Employee_ID Name Datatype Length Classification Allow Null Constraints Description Employee_ID INT (10) Simple No Unique The unique ID for an employee Salary VarChar (10) Simple No Unique The salary of a particular employee Time Shifting Date/Time Simple No Unique The certain day that the employee have his/her work shifts on CODING CREATING OF TABLES CREATING OF TABLES As for my companys project for our database I used Microsoft Office Access 2007, and I started creating tables on it. [1] Cars Table Script Name Create Cars Table CREATE TABLE Cars ( Car_ID VARCHAR PRIMARY KEY NOT NULL, Brand_Name VARCHAR(20) NOT NULL, Color VARCHAR(10) , Shipment_Number INTEGER(20) NOT NULL, Price Double NOT NULL, ); [2] Invoice table Script Name Create Invoice Table CREATE TABLE Invoice ( Invoice_Number INTEGER PRIMARY KEY NOT NULL, Customer_ID VARCHAR(10) NOT NULL, Car_ID VARCHAR(10) NOT NULL, Shipment_Number INTEGER(10) NOT NULL, Price Double NOT NULL, ); [3] Customer table Script Name Create Customer Table CREATE TABLE Customer ( Customer_ID VARCHAR PRIMARY KEY NOT NULL, Name VARCHAR(10) NOT NULL, Age INTEGER(2) NOT NULL, Contact_Number INTEGER(10) NOT NULL, ); [4] Employee table Script Name Create Employee Table CREATE TABLE Employee ( Employee_ID VARCHAR PRIMARY KEY NOT NULL, Name VARCHAR(20) NOT NULL, Nationality VARCHAR(20) NOT NULL, Date of Birth Date NOT NULL, ); [5] Shipment table Script Name Create Shipment Table CREATE TABLE Shipment ( Shipment_Number INTEGER PRIMARY KEY NOT NULL, Country VARCHAR(10) NOT NULL, Fee INTEGER(10) NOT NULL, ); CONSTRAINTS SPECIFICATION Generalization hierarchy on an Employee. Description: This hierarchy assigns the Employee entity as Supertype, and Full Time, Part Time as Subtypes, and since the both subtypes have many similarities, the Supertype have the attributes in common to the subtypes and they are: Employee_ID, Name, Nationality, Date of Birth. . The subtypes cannot be one in another, means the Full Time employee cannot be a Part Time employee, and therefore this generalization hierarchy is of the type disjoint. Type: Disjoint Super type Entity: Employee Super type Primary Key: Employee_ID Common Attributes: Employee_ID, Name, Nationality, Date Of Birth. Constraints Full Time: This subtype entity shows certain data about the Full time employees in the company and their related information which is needed to our database. As for the attributes for this entity: Employee_ID, Salary, Administration. Part Time: This subtype entity shows the data the other type of employees which is the part time employee type. As for the attributes for this entity: Employe_ID, Salary, Time shifting, INITIAL POPULATING OF TABLES Cars Table Populating Table (Cars) INSERT INTO Cars (Brand_Name, Color, Car_ID, Shipment_Number, Price) VALUES (Mustang, Orange, 17111, 11333, 40000) ; Invoice Table Populating Table (Invoice) INSERT INTO Invoice (Invoice_Number, Customer_ID, Car_ID, Employee_ID, Shipment_Number, Total_Price) VALUES (11, 9844, 17633, 1432, 11771, 25) ; Customer Table Populating Table (Customer) INSERT INTO Customer (Customer_ID, Name, Age, Contact_Number) VALUES (9020, Avinash, 39, 2800131) ; Employee Table Populating Table (Employee) INSERT INTO Employee (Employee_ID, Name, Nationality, Date of Birth) VALUES (1422, Vadimas, Libyan, 2/21/1986) ; Shipment Table Populating Table (Shipment) INSERT INTO Shipment (Shipment_Number, Country, Fee) VALUES (11311, Germany, 130) ; Full Time Table Populating Table (Full Time) INSERT INTO Full Time (Employee_ID, Salary, Administration) VALUES (1433, 1300, Secretary) ; Part Time Table Populating Table (Part Time) INSERT INTO Part Time (Employee_ID, Salary, Time Shifting) VALUES (1441, 2000, 3/23/2009) ; USERS INPUT (INSERTION, DELETION, UPDATE) INSERTION: Add New Car (Cars Table) Query name: Insert (New Car in the cars showcase) INSERT INTO Cars (Brand_Name, Color, Car_ID, Shipment_Number, Price) VALUES ([Type the Cars Brand], [Type the Color of the Car ], [The Car ID], [The Shipment Number related to this Car], [The Price of this Car is); INSERTION 2 Here we are going to try to insert a new data into the Shipment form, as we will be using it through the Shipment form insertion button included in that form. Then here the database will ask you if your up for inserting new data into that form And here the data has been inserted successfully below UPDATE: Update New Customer (Customer Table) Query name Update (New Customer in the Customers Table) UPDATE Customer SET Contact_Number = [Enter Customers phone number] WHERE Customer_ID = [ID]; DELETION: Delete a Shipment Country (Shipment Table) DELETE * FROM Shipment WHERE Country = [Enter the Country that will be eliminated]; PERFORMING QUERIES, SUB-QUERIES QUERY [1] (Performing Alias technique into a Query) Description: To manage all the Employees names into one query QUERY [2] (Performing Function technique into a Query) Description: To display all the cars available at the moment QUERY [3] (Performing Concatenation technique into a Query) Description: To give a brief description about each car in the showcase QUERY [4] (Performing Sub-Query technique into a Query) Description: To Create a query from the employee data where it concern only employees who are British. QUERY [5] (Performing another Sub-Query technique into a Query) Description: To Create a query from the Cars data where it concern only the minimum prices of listed cars plus be grouped by the cars brand name. TESTING Test case : 1 Objectives : To use ALIAS in Employee Table Test Data : SELECT NAME AS FULLNAME FROM Employee; Expected Test Result : To display the corresponding records. Actual Test Result : As shown in the image below. Conclusion : Success. The record was displayed. Test case : 2 Objectives : To use ALIAS in Customer Table Test Data : SELECT Name AS CustomerName FROM Customer; Expected Test Result : To display the corresponding records. Actual Test Result : As shown in the image below. Conclusion : Success. The record was displayed. Test case : 3 Objectives : To use ARITHMETIC in Car Table Test Data :SELECT Car_ID, Brand_Name, (Price*2) AS [Price with Shipment] FROM Cars; Expected Test Result : To display the corresponding records. Actual Test Result : As shown in the image below. Conclusion : Success. The record was displayed. Test case : 4 Objectives : To Create Shipment Table Test Data : CREATE Table Shipment ( Shipment_Number int (5), Country varchar (10), Fee money (10) ) ; Expected Test Result : To display the corresponding records. Actual Test Result : As shown in the image below. Conclusion : Success. The record was displayed. Test case : 5 Objectives : To use COMPARISON in Cars Table Test Data : SELECT Car_ID, Brand_Name FROM Cars WHERE Price>6000; Expected Test Result : To display the corresponding records. Actual Test Result : As shown in the image below. Conclusion : Success. The record was displayed. Test case : 6 Objectives : To use COMPARISON in Shipment Table Test Data : SELECT Shipment_Number, Country FROM Shipment WHERE Fee Expected Test Result : To display the corresponding records. Actual Test Result : As shown in the image below. Conclusion : Success. The record was displayed. Test case : 7 Objectives : To Create Cars table Test Data : CREATE Table Cars ( Car_ID int (5), Shipment_Number int (5), Brand_Name varchar (10), Color varchar (10), Price (10) ) ; Expected Test Result : To display the corresponding records. Actual Test Result : As shown in the image below. Conclusion : Success. The record was displayed. Test
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment
Note: Only a member of this blog may post a comment.