Vendors (Vendor_ID, Vendor_Address, Vendor_City, Vendor_Zip, Vendor_Phone, Vendor_Email Notes (Notes_ID, Vendor_ID, Note_Date, Vendor_Contact, Resolve_Date, Inquiry_Detail Bank Divisions (Division_ID, Bank_Divisions Invoices (Invoice_ID, Vendor_ID, Programmer_ID, Contract_ID, User_ID, Invoice_Number, Invoice_Date, Total_Hours, Invoice_Total, Hourly_Rate, Invoice_Start_Date, Invoice_End_Date, Status, Due_Date, PO_Number, Description, Date_Paid, Exception_Detail, Accrued Contracts (Contract_ID, Vendor_ID, Unit_ID, Programmer_ID, Contact_ID, User_ID, Contract_Num, Start_Date, End_Date, Hourly_Rate, Fee_Max, Description, Status, Charge_Unit, Exception_Detail Business Units (Unit_ID, Division_ID, Unit_Number Programmers (Programmer_ID, Vendor_ID, Prog_F_Name, Prog_L_Name, Prog_Phone, Prog_Email System Users (User_ID, User_F_Name, User_L_Name, User_Logon_ID, User_Password, User_Auth_Level Bank Contacts (Contact_ID, Unit_ID, Contact_F_Name, Contact_L_Name, Contact_Phone, Contact_Email These entities, attributes and their relationships are shown in more detail in the Entity Relationship Diagram They are shown with their definitions, domain constraints, and referential integrity constraints in the Metadata Dictionary User Navigation Design (Storyboard) Bank of Xanadu Programming Contract Accounting System was created for the accounting department. Superior I.T. System Solutions has decided on simplicity and a friendly graphic user interface was a necessary component for the overall success of the system. Each menu is easy to navigate from one screen to another. Within the appendix is a visual depiction of the
Entity Name Attribute Name Definition Domain Constraints Referential Integrity Constraints Vendors Vendor_ID Unique identifier for each vendor Required System assigned Unique Numeric (10) PK Vendor_Name Vendor name Required Non-unique Char (25) Vendor_Address Vendor’s street address Required Unique Char (25) Vendor_City City the vendor is located in Required Non-unique Char (25) Vendor_State State the vendor is located in Required Non-unique Look-up Vendor_Zip Vendor’s zip code Required Non-unique Char (5) Vendor_Phone Vendor’s phone number Required Unique Char (10) Vendor_Email Vendor’s email address Optional Programmers Programmer_ID Unique identifier for each programmer Required System assigned Unique Numeric (10) PK Vendor_ID Unique identifier for each vendor Required-FK System assigned Unique Numeric (10) Programmer record can’t exist without a corresponding vendor record Prog_F_Name Programmer’s first name Required Non-unique Char (15) Prog_L_Name Programmer’s last name Required Non-unique Char (15) Prog_Phone Programmer’s phone number Required Unique Char (10) Prog_Email Programmer’s email address Optional Invoices Invoice_ID Unique identifier for each invoice Required System assigned Unique Numeric (10) PK Vendor_ID Unique identifier for each vendor Required-FK System assigned Unique Numeric (10) Invoice record can’t exist without a corresponding vendor record
Programmer_ID Unique identifier for each programmer Required-FK System assigned Unique Numeric (10) Invoice record can’t exist without a corresponding programmer record Contract_ID Unique identifier for each contract Required-FK System assigned Unique Numeric (10) Invoice record can’t exist without a corresponding contract record User_ID Unique identifier for each user Required-FK System assigned Unique Numeric (10) Invoice record can’t exist without a corresponding user record Invoice_Number The number assigned to each invoice Required Unique Char (15) Invoice_Date The date the invoice was created Required Non-unique Date: xx/xx/xxxx Invoice_Total The total amount of the invoice Required Non-unique Currency Invoice_Rate Invoice’s hourly rate Required Non-unique Currency Invoice_Start_Date The start date for the time period covered by the invoice Required Non-unique Date: xx/xx/xxxx Invoice_End_Date The end date for the time period covered by the invoice Required Non-unique Date: xx/xx/xxxx Status The current status of the invoice Required Non-unique Yes/No Due_Date Date payment of the invoice is due Required Non-unique Date: xx/xx/xxxx PO_Number Purchase order number Required Unique Char (10) Description Description of services rendered Required Non-unique Notes Date_Paid Date the invoice was actually paid Required Non-unique Date: xx/xx/xxxx Exception_Detail Reason for invoice exception Optional Look-up Accrued Invoices accrued Optional Yes/No Contracts Contract_ID Unique identifier for the each contract Required System assigned Unique Numeric (10) PK Vendor_ID Unique identifier Required-FK A contract record
for the each vendor System assigned Unique Numeric (10) can’t exist without a corresponding vendor record Unit_ID Unique identifier for the each unit Required-FK System assigned Unique Numeric (10) A contract record can’t exist without a corresponding business unit record Programmer_ID Unique identifier for the each programmer Required-FK System assigned Unique Numeric (10) A contract record can’t exist without a corresponding programmer record Contact_ID Unique identifier for the each contact Required-FK System assigned Unique Numeric (10) A contract record can’t exist without a corresponding contact record User_ID Unique identifier for the each user Required-FK System assigned Unique Numeric (10) A contract record can’t exist without a corresponding user record Contract_Num The number assigned to this contract Required Unique Char (15) Start_Date The date the contract starts Required Non-unique Date: xx/xx/xxxx End_Date The date the contract ends Required Non-unique Date: xx/xx/xxxx Hourly_Rate The hourly rate of the contract Required Non-unique Currency Fee_Max The maximum fee for the contract Required Non-unique Currency Description Description of services to be provided Required Non-unique Notes Status Current status of the contract Required Non-unique Yes/No Charge_Unit Number assigned to the unit being charged Required Unique Look-up Exception_Detail Reason for contract exception Optional Look-up System Users User_ID Unique identifier for each user Required System assigned Unique Numeric (10) PK User_F_Name User’s first name Required Non-unique
Char (15) User_L_Name User’s last name Required Non-unique Char (15) User_logon_ID User’s logon ID Required Unique Char (10) User_Password User’s password Required Unique Char (10) User_Auth_Level Authorization level for the user Required Non-unique Look-up Bank Contacts Contact_ID Unique identifier for each contact Required System assigned Unique Numeric (10) PK Unit_ID Unique identifier for each business unit Required-FK System assigned Unique Numeric (10) A bank contacts record can’t exist without a corresponding business unit record Contact_F_Name Contact’s first name Required Non-unique Char (15) Contact_L_Name Contact’s last name Required Non-unique Char (15) Contact_Phone Contact’s phone number Required Unique Char (10) Contact_Email Contact’s email address Optional Business Units Unit_ID Unique identifier for each business unit Required System assigned Unique Numeric (10) PK Division_ID Unique identifier for each bank division Required-FK System assigned Unique Numeric (10) A business units record can’t exist without a corresponding bank division record Unit_Number Number assigned to each business unit Required Unique Char (15) Bank Divisions Division_ID Unique identifier for each bank division Required System assigned Unique Numeric (10) PK Bank_Division Name assigned to Required
each bank division Unique Char (25) Notes Notes_ID Unique identifier for each note Required System assigned Unique Numeric (10) PK Vendor_ID Unique identifier for each vendor Required-FK System assigned Unique Numeric (10) A notes record can’t exist without a corresponding vendor record Note_Date Date the note was created Required Non-unique Date: xx/xx/xxxx Vendor_Contact Vendor contract that the note applies to Required Unique Char (15) Resolve_Date Date the inquiry is resolved Required Non-unique Date: xx/xx/xxxx Inquiry_Detail Reason for the inquiry Required Non-unique Look-up Navigation Design:
Information Requirements: Vendor Invoice Number Contract ID Payment Status Invoice Notes Assumptions: 1) The Vendor will not send an invoice for programming services before a valid contract has been created for those services 2) The invoice in question will have been received by the Accounting department (Accountant) and entered into the system prior to the actual due date of the invoice 3) The Accountant will be able to satisfy the Vendor's inquiry with the information contained in and available in the system Business Rules: 1) An invoice is not payable unless a valid contract exists for the services billed on the invoice, and the invoice meets the constraints of that contract 2) Vendor inquiries must be resolved within a 24 hour timeframe 3) If a Vendor inquires about an invoice that is not currently in the Accounting system, the Accountant must request a copy of that invoice so it can be entered into the system and then sent to the Buyer for resolution PAY INVOICE Use Case Name: PAY INVOICE ID: UC009 Primary Actor: Accountant Brief Description: This use describes the steps for sending an invoice that is approved for payment to the Accounts Payable (A/P) department, from the time the Accountant has approved the invoice for payment until the invoice has been sent to the A/P department. Trigger: Invoice(s) are entered into the system with an "Approved to Pay" Payment Status