Top Banner
Developed by Name: Sanooj Remegius Bastianpulle Reg. No: 1038598A68955D2D Page 1 of 21 NEW PROJECT LTD
21

New Project Ltd

Nov 29, 2014

Download

Documents

Sanooj Remegius
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: New Project Ltd

Developed by

Name: Sanooj Remegius Bastianpulle

Reg. No: 1038598A68955D2D

Page 1 of 20

NEW PROJECT LTD

Page 2: New Project Ltd

Batch Code :

Start Date : 12/03/2011 End Date: 25/03/2011

Name of the Coordinator : Lahiru Rathnayake

Name of Developer : Sanooj Remegius Bastianpulle

Date of Submission : 26/03/2011

Page 2 of 20

NEW PROJECT LTD

Page 3: New Project Ltd

CERTIFICATE

This is to certify that this report, “Titled New Project Ltd.”, Embodies the original work done by Sanooj Remegius in partial fulfillment of his/her course requirement at NIIT.

Coordinator: Lahiru Rathnayke

Page 3 of 20

NIIT

Page 4: New Project Ltd

I would like to acknowledge the contributions of my Lecturer Mr. Lahiru Ratnayake to the development of my project & presentation.

Mr. Lahiru Ratnayake directed me to a wide range of resources on the web. He answered all of my questions as well as asked me questions that helped me to narrow my search. Further, He helped me figure out correct documentation for sources that did not fit the Research Guide examples. He gave me this help during class time and after class. I also worked with students at NIIT who helped me locate primary sources.

Page 4 of 20

ACKNOWLEDGEMENT

Page 5: New Project Ltd

System Summary: New Project Ltd. Is a company that provides staff on contract for various project assignments it has a system of time cards. The cards are issued to its employees. The time card enables New Project to prepare the final billing that needs to be submitted to the clients for release of payment in lieu of work.

Page 5 of 20

SYSTEM ANALYSIS

Page 6: New Project Ltd

Number of entities: 6

Names of entities:

1. Client

2. Project

3. Employee

4. Time card

5. Time Card Expense File

6. Invoice

Page 6 of 20

ENTITIES

Page 7: New Project Ltd

Attributes:

Entity Attributes1. Client Client Code

Company NameAddressCountryContact PersonPhone

2. Project Project CodeClient CodeEmployee CodeProject NameProject DescriptionEstimate BillStart DateEnd Date

3. Employee Employee CodeEmployee NameAddressCountryWork PhoneBilling Rate

4. Time Card Time Card IDEmployee IDDate IssuedDate WorkedProject IDWork DescriptionBillable HoursWork Code

5. Time Card Expense File Time Card Expense IDTime Card IDExpense DateExpense AmountExpense DescriptionProject IDExpense Code IDExpense Code

Page 7 of 20

ATTRIBUTES

Page 8: New Project Ltd

6. Invoice Payment CodePayment Mode IDPayment Mode NameCorresponding Project CodeExpense AmountPayment AmountPayment DateCard NumberCard Holders NameExpiry Date of Card

Page 8 of 20

Page 9: New Project Ltd

Page 9 of 20

E/R DIAGRAM

Client

Project

Invoice

Employee

Time Card Time Card Expense

Payment Code

Payment Mode ID

Payment Mode Name

Corresponding Project Code

Payment Amount

Payment Date

Date Worked

Time Card ID

Employee ID

Date Issued

Work Description

Project ID

Payment Amount

Payment Date

Expense Code ID

Expense Description

Expense Code Project ID

Expense Amount

Expense DateTime Card ID

Time Card Expense ID

PhoneContact Person

Country

Address

Company Name

Client Code

End Date

Start Date

Estimate Bill

Project DescriptionProject Name

Project Code

Billing RateWork Phone

Country AddressEmployee Name

Employee Code

Receives

Designed

Done By

Daily Fills

Will Have

Communicate

Expiry Date of Card

Card Holders Name

Card Number

Client Code

Employee CodeExpense

Amount

Page 10: New Project Ltd

Number of Tables: 7

Structure of Tables: The table structure are shown here

Page 10 of 20

TABLES

CLIENT [Entity] PROJECT [Entity] PROJECT DETAILS [Relationship]

EMPLOYEE [Entity]

TIME CARD DETAILS [Entity] TIME CARD EXPENSE [Entity] INVOICE [Entity]

CLIENT

Client Code

Company Name

Address

Country

Contact Person

Phone

PROJECT

Project Code

Client Code

Employee Code

Project Name

Project Description

Estimate Bill

Start Date

End Date

PROJECT DETAILS

Project Details ID

Project Code

Client Code

Bill Estimated

Actual Amount

Discount

Total Cost

EMPLOYEE

Employee Code

Employee Name

Address

Country

Work Phone

Billing Rate

TIME CARD DETAILS

Time Card ID

Employee ID

Date Issued

Date Worked

Project ID

Work Description

Billable Hours

Work Code ID

TIME CARD EXPENSE

Time Card Expense ID

Time Card ID

Expense Date

Expense Amount

Expense Description

Project ID

Expense Code ID

Expense Code

INVOICE

Payment Code

Payment Mode ID

Payment Mode Name

Corresponding Project Code

Expense Amount

Payment Amount

Payment Date

Card Number

Card Holders Name

Expiry Date of Card

Page 11: New Project Ltd

The Project Details table is formed because of many-to-many relationship between the Project and Clients.

Page 11 of 20

Page 12: New Project Ltd

The Tables are already in 1 NF. The table structures are shown here.

Page 12 of 20

TABLES AFTER 1 NF

CLIENT PROJECT PROJECT DETAILS

EMPLOYEE

PROJECT DETAILS

Project Details ID

Project Code

Client Code

Bill Estimated

Actual Amount

Discount

Total Cost

CLIENT

Client Code

Company Name

Address

Country

Contact Person

Phone

PROJECT

Project Code

Client Code

Employee Code

Project Name

Project Description

Estimate Bill

Start Date

End DateEMPLOYEE

Employee Code

Employee Name

Address

Country

Work Phone

Billing Rate

Page 13: New Project Ltd

Page 13 of 20

TIME CARD DETAILS TIME CARD EXPENSE INVOICE

TIME CARD DETAILS

Time Card ID

Employee ID

Date Issued

Date Worked

Project ID

Work Description

Billable Hours

Work Code ID

TIME CARD EXPENSE

Time Card Expense ID

Time Card ID

Expense Date

Expense Amount

Expense Description

Project ID

Expense Code ID

Expense Code

INVOICE

Payment Code

Payment Mode ID

Payment Mode Name

Corresponding Project Code

Expense Amount

Payment Amount

Payment Date

Card Number

Card Holders Name

Expiry Date of Card

Page 14: New Project Ltd

The tables are already in 2 NF as the attributes in each table depend on the primary key. The table structures are shown here.

Page 14 of 20

TABLES AFTER 2 NF

CLIENT PROJECT PROJECT DETAILS

EMPLOYEE

PROJECT DETAILS

Project Details ID

Project Code

Client Code

Bill Estimated

Actual Amount

Discount

Total Cost

CLIENT

Client Code

Company Name

Address

Country

Contact Person

Phone

PROJECT

Project Code

Client Code

Employee Code

Project Name

Project Description

Estimate Bill

Start Date

End DateEMPLOYEE

Employee Code

Employee Name

Address

Country

Work Phone

Billing Rate

Page 15: New Project Ltd

Page 15 of 20

TIME CARD DETAILS TIME CARD EXPENSE INVOICE

TIME CARD DETAILS

Time Card ID

Employee ID

Date Issued

Date Worked

Project ID

Work Description

Billable Hours

Work Code ID

TIME CARD EXPENSE

Time Card Expense ID

Time Card ID

Expense Date

Expense Amount

Expense Description

Project ID

Expense Code ID

Expense Code

INVOICE

Payment Code

Payment Mode ID

Payment Mode Name

Corresponding Project Code

Expense Amount

Payment Amount

Payment Date

Card Number

Card Holders Name

Expiry Date of Card

Page 16: New Project Ltd

In the Time Card Expenses table the Expense Code depends on Expense Code ID not on Time Card Expense ID. Therefore, for the tables to be in 3 NF, we need to create another table, Expenses.

Also in the Invoice table, the attribute Payment Mode Name depends on Payment Mode ID and not on Payment Code. Therefore, we need to create a separate table Payment Modes.

In addition, the attributes Card Holders Name and Expiry Date of Card depend on Card Number not Payment Code. Therefore we need to create another table Credit Cards.

The updated table structures are shown here.

Page 16 of 20

TABLES AFTER 3 NF

CLIENT PROJECT PROJECT DETAILS

PROJECT DETAILS

Project Details ID

Project Code

Client Code

Bill Estimated

Actual Amount

Discount

Total Cost

CLIENT

Client Code

Company Name

Address

Country

Contact Person

Phone

PROJECT

Project Code

Client Code

Employee Code

Project Name

Project Description

Estimate Bill

Start Date

End Date

Page 17: New Project Ltd

Page 17 of 20

EMPLOYEE TIME CARD DETAILS

INVOICE

TIME CARD EXPENSE

EXPENSES

PAYMENT MODES CREDIT CARDS

EMPLOYEE

Employee Code

Employee Name

Address

Country

Work Phone

Billing Rate

TIME CARD EXPENSE

Time Card Expense ID

Time Card ID

Project ID

Expense Code ID

INVOICE

Payment Code

Payment Mode ID

Corresponding Project Code

Expense Amount

Payment Amount

Payment Date

Card Number

TIME CARD DETAILS

Time Card ID

Employee ID

Date Issued

Date Worked

Project ID

Work Description

Billable Hours

Work Code ID

PAYMENT MODES

Payment Mode ID

Payment Mode Name

CREDIT CARDS

Credit Card Number

Card Holders name

Expiry Date of Card

EXPENSES

Expense Code ID

Expense Code

Project ID

Expense Description

Expense Date

Expense Amount

Page 18: New Project Ltd

When we place the information about credit card in a separate table, the query performance during the generation of payment receipt will get affected due to creation of joins in every payment receipt. Therefore, for optimum performance, we denormalize and place the credit card information back into the Invoice table. The updated table structures are shown here.

Page 18 of 20

TABLES AFTER DENORMALIZATION

EMPLOYEE

CLIENT PROJECT PROJECT DETAILS

TIME CARD DETAILS TIME CARD EXPENSE INVOICE

CLIENT

Client Code

Company Name

Address

Country

Contact Person

Phone

PROJECT

Project Code

Client Code

Employee Code

Project Name

Project Description

Estimate Bill

Start Date

End Date

PROJECT DETAILS

Project Details ID

Project Code

Client Code

Bill Estimated

Actual Amount

Discount

Total Cost

EMPLOYEE

Employee Code

Employee Name

Address

Country

Work Phone

Billing Rate

TIME CARD DETAILS

Time Card ID

Employee ID

Date Issued

Date Worked

Project ID

Work Description

Billable Hours

Work Code ID

TIME CARD EXPENSE

Time Card Expense ID

Time Card ID

Project ID

Expense Code ID

INVOICE

Payment Code

Payment Mode ID

Corresponding Project Code

Expense Amount

Payment Amount

Payment Date

Card Number

Card Holders Name

Expiry Date of Card

EXPENSES

Expense Code ID

Expense Code

Project ID

Expense Description

Expense Date

Expense Amount

PAYMENT MODES

Payment Mode ID

Payment Mode Name

Page 19: New Project Ltd

The primary and Foreign keys (whenever applicable) for each table are listed with their respective table names:

CLIENTo Primary Key: Client Code

PROJECTo Primary Key: Project Codeo Foreign Keys: Client Code, Employee Code

PROJECT DETAILSo Primary Key: Project Details IDo Foreign Keys: Project Code, Client Code

EMPLOYEEo Primary Key: Employee Code

TIME CARD DETAILSo Primary Key: Time Card IDo Foreign Keys: Employee ID, Project ID

TIME CARD EXPENSESo Primary Key: Time Card Expense ID

INVOICEo Primary Key: Payment Codeo Foreign Keys: Payment Mode ID, Project Code, Expense Amount

EXPENSESo Primary Key: Expense Code IDo Foreign Keys: Project ID, Expense Amount

PAYMENT MODESo Primary Key: Payment Mode ID

Page 19 of 20

PRIMAR AND FOREIGN KEYS

Page 20: New Project Ltd

Page 20 of 20

EMPLOYEE

Employee Code

Employee Name

Address

Country

Work Phone

Billing Rate

CLIENT

Client Code

Company Name

Address

Country

Contact Person

Phone

PROJECT DETAILS

Project Details ID

Project Code

Client Code

Bill Estimated

Actual Amount

Discount

Total Cost

EXPENSES

Expense Code ID

Expense Code

Project ID

Expense Description

Expense Date

Expense Amount

INVOICE

Payment Code

Payment Mode ID

Corresponding Project Code

Expense Amount

Payment Amount

Payment Date

Card Number

Card Holders Name

Expiry Date of Card

PAYMENT MODES

Payment Mode ID

Payment Mode Name

TIME CARD EXPENSE

Time Card Expense ID

Time Card ID

Project ID

Expense Code ID

TIME CARD DETAILS

Time Card ID

Employee ID

Date Issued

Date Worked

Project ID

Work Description

Billable Hours

Work Code ID

PROJECT

Project Code

Client Code

Employee Code

Project Name

Project Description

Estimate Bill

Start Date

End Date