Accounting Information Systems: A Business Process Approach Chapter Seven: Understanding and Designing Forms 1 Learning Objective After completing this chapter, you should understand: The need for input forms in accounting applications The relationship between data tables and forms Interface elements used on forms Internals controls (input controls in forms) 2 Learning Objective (Continue) After completing this chapter, you should be able to: Use event analysis to identify the forms required for an application Use a UML use case diagram to document the forms in your application Design forms to record data in tables Incorporate controls to enhance the efficiency and accuracy of data entry Write a use case description to document user interaction with forms 3 Exhibits: 7.1, 7.2, 7.5 Tables: 7.1 - 7.11 4 Exhibit 7.1 Documenting Form Design In this chapter, we introduce several techniques that you can use to clearly communicate the design of your forms to others on the development team and to end-users: Example of the Documentation Documentation Purpose Need for forms and Documents the need for a form for each event. Use case diagram Form layout and 7.4B, Table 7.2 Exhibit 7.2 Lists forms and users. Figure 7.7 Provides a visual representation of the various form Figures 7.4A elements. 7.5, and 7.6 Describes the content and organization of a form in Form design Exhibit 7.2 and template erms of tables, queries, and relationships. This part of the documentation is the bridge between the form’s design and its implementation using a DBMS. The form design template is similar to the report design template used in Chapter 6. Use case While the form layout is a static representation of the description rm elements, the use case focuses on behavior. In particular, it shows how the end-user interacts with the form interface during data entry. Input controls are documented. Table 7.3 Exhibit 7.2 and Table 7.4 5 Exhibit 7.2 Templates Used for Documenting Form Designs Panel A: Identify Form Template. Purpose: To document decisions as to need for forms. Name of table(s) in which Event* data are recorded, if any Maintain manager Manager Make sale Sales, Sales Detail Deposit Deposit Input form required? Yes Yes Yes *Input forms are not created for query or reporting events. Panel B: Form Design Template—Content and Organization. Purpose: To document the content and organization of a designed form. Title on Form Deposit Form Type of Form Single-record entry form Data Table Deposit Manager 1. Attribute recorded in tables 2. Attribute displayed but not modified* 3. Foreign keys that link this table to the others used in the form (if any) Format Main form Deposit#, SSN, Date, Amount Last_Name, First_Name SSN Attribute Names and Calculations Used D: Deposit#, SSN, Date, Amount M: Last_Name, First_Name Subform (for main form/subform format only) Formulas for calculations: *Attributes displayed but not modified are commonly used for confirmation. 6 Exhibit 7.2 Templates Used for Documenting Form Designs (Concluded) Panel C: Data Item Controls Template. Purpose: To document the controls associated with individual data items in a form. Data Item Control Features Deposit# Computer-generated SSN Computer-generated based on log-in Date Current date is default date Panel D: Use Case Description Example. Purpose: To describe user interaction with a form and input controls. 1. The user selects the “Enter Deposit” option from the menu. 2. The system displays the Enter Deposit Form. 3. The system displays a Deposit#. etc. 7 Exhibit 7.5 Revenue Cycle for H & J Tax Preparation Service (This exhibit provides data for several Focus on Problem Solving boxes.) H & J Tax Preparation Service offers a variety of tax services. Information about these tax services is provided in the following Tax Service Report: Tax Service Report Year-to-Date Service# Service Description Fee Revenues 1040 Sch-A Sch-B Sch-C State Corp Federal Individual Income Tax Form 1040 $100 (long form) 1040 Schedule A (itemized deductions) 50 1040 Schedule B (interest & dividend earnings) 50 1040 Schedule C (sole proprietorship) 110 State Income Tax Return 80 Corporate Income Tax 30 (per hr.) $120,000 51,000 53,300 84,000 81,000 103,000 8 Exhibit 7.5 Revenue Cycle for H & J Tax Preparation Service (Continued) The company is interested in developing an automated system for recording services rendered and billing clients. Except for the tax software used to prepare the tax return, the current system is manual. A description of the company’s revenue cycle, up to the point of collection, follows. A client calls the office to inquire about tax services. The secretary sets an appointment for the client to meet with an accountant. The client meets with an accountant and decides on the tax services that will be needed. The accountant then prepares a Service Request Form indicating the agreed-upon services. An example follows: Service Request Form Request# 104 Accountant: Jane Smith Client: Robert Barton Date: 2/10/03 Service# Service Description Fee 1040 Sch-A Sch-B State Federal Individual Income Tax Form 1040 (long form) 1040 Schedule A (itemized deductions) 1040 Schedule B (interest & dividend earnings) State Income Tax Return Total $100 50 50 80 $280 9 Exhibit 7.5 Revenue Cycle for H & J Tax Preparation Service (Concluded) The client gives a copy of the Service Request Form to the secretary. For new clients, the secretary takes the client information (e.g., Client_Name, Address, Contact_Person, Telephone) from the client and records it on a Client Form. She files the client form along with a copy of the Service Request Form in a client folder. A part of the Client Form is shown here: Client Form Client#: 1001 Client: Robert Barton Address: 242 Greene St., St. Louis, MO Telephone: 431-555-4530 The accountant obtains information necessary for preparing the returns from the client (e.g., income and deductions). The information is entered into Mega-Tax, a tax software product used at the company. The recording and storage of tax information is handled by the MegaTax software and is separate from the rest of the revenue cycle. The company is not planning to integrate the tax preparation software with the rest of the revenue cycle. Thus, in this case, you can disregard the recording of detailed tax return information. When the tax return is finished, the accountant gives the tax return to the secretary. She writes the services provided and the charges for each on an invoice, with the total amount due shown at the bottom. She then notifies the client that the return is ready. 10 Table 7.1 Tables Used in ELERBE’s Order Processing Application Panel A: Inventory Table ISBN Author Title Price 0-256-12596-7 0-127-35124-8 0-135-22456-7 0-146-18976-4 0-145-21687-7 0-235-62400-6 Barnes Introduction to Business Cromwell Building Database Applications $65.00 Cromwell Management Information Systems $68.00 Johnson Principles of Accounting Platt Introduction to E-commerce $72.00 Rosenberg HTML and Javascript Primer $45.00 Quantity_ Quantity_ On_Hand Allocated $78.35 3,500 5,000 $70.00 5,000 6,000 4,000 0 50 8,000 40 0 200 250 ISBN = unique international standard number assigned to the book; Price = standard selling price; Quantity Allocated = quantity of books committed to customer orders but not yet shipped Panel B: Customer Table Customer# Name Address Contact_Person Phone 3450 3451 3452 Brownsville, TX Fairhaven, MA Bunker Hill, MA Smith Costa LaFrank 956-555-0531 508-888-4531 617-888-8510 Brownsville C.C. Educate, Inc. Bunker Hill C.C. Panel C: Order Table Order# Order_Date 0100011 05/11/2003 0100012 05/15/2003 0100013 05/16/2003 Customer# 3451 3451 3450 Status Open Open Open 11 Table 7.1 Tables Used in ELERBE’s Order Processing Application (Concluded) Panel D: Order_Detail Table Order# ISBN Quantity 0100011 0100011 0100012 0100012 0100012 0100013 0100013 200 150 50 75 40 35 100 0-256-12596-7 0-146-18976-4 0-135-22456-7 0-146-18976-4 0-145-21687-7 0-146-18976-4 0-256-12596-7 ISBN = number identifying the book; Quantity = quantity ordered Panel E: Shipment Table Ship# Order# Ship Date S114 S115 0100011 0100012 05/12/2003 05/16/2003 Panel F: Shipment_Detail Table Ship# ISBN Quantity S114 S114 S115 S115 S115 0-256-12596-7 0-146-18976-4 0-135-22456-7 0-146-18976-4 0-145-21687-7 200 150 50 75 40 12 Table 7.2 Events and Forms for ELERBE, Inc. Name of table(s) in which data are recorded, if any Input form required? Form Name Respond to customer inquiries Take order Pick goods Ship goods Bill customer Collect cash Maintain customer none No Order, Order Detail none Shipment, Shipment Detail Invoice Cash Receipt Customer Yes No Yes Yes Maintain inventory Inventory Yes Maintain inventory prices Inventory Yes Event Yes Order Entry Enter Shipment Enter Invoice Yes Cash Receipt Customer Maintenance Inventory Maintenance Inventory Price Maintenance 13 Table 7.3 Content and Organization of Order Form for ELERBE, Inc., shown in Figure 7.6 Title on Form Type of Form Data Table Order Form Multi-table form with main form/subform Order (O) Order_Detail (OD) 1. Attribute recorded in tables Order#, Order_ Date, Customer#, Status Customer (C) Inventory (I) Customer_Name, Customer_Address, Contact_Person, Phone Title, Author, Unit Price Order#, ISBN, Quantity 2. Attribute displayed but not modified 3. Foreign keys that link this table to the others used in the form (if any) Customer# Format Attribute Names and Calculations Used Main form O: Order#, Order_Date, Customer#, Status*. C: Customer_Name, Customer_ Address, Contact_Person, Phone. Calculation: Total of Extended Price, Sales Tax. OD: ISBN, Quantity. I: Title, Author, Unit Price. Calculation: Extended Price. Subform (for main form/subform format only) Order# ISBN Formulas for calculations: *Status should be recorded as “open” Extended Price = Quantity x Price Total of Extended Price = Sum (Extended Price) Sale Tax = 5% x (Total of Extended Price) 14 Table 7.4 Use Case Description of Record Customer Order with Internal Controls for ELERBE, Inc. Activity: Record Customer Order 1. The order entry clerk selects the “Record Customer Order” option from the menu. 2. The system assigns a new Order# and displays it. 3. The system displays the current date as a default for the Order_Date. 4. The order entry clerk enters the Customer# in the computer system. 5. The computer checks to see if the Customer# is valid. 6. The system displays other customer information (e.g., Contact_Person, Address). Control Computergenerated value Default Look-up Feature Record checking Confirmation 15 Table 7.4 Use Case Description of Record Customer Order with Internal Controls for ELERBE, Inc. (Concluded) Activity: Record Customer Order For each product ordered: 7. The order entry clerk enters the ISBN. 8. The computer system checks to see if the ISBN is valid. 9. The computer displays product details (e.g., Author, Description). 10. The order entry clerk enters the Quantity. 11. The system checks whether the clerk has entered a numeric value and whether inventory is available. 12. The system calculates the Extended_Price (Price x Quantity). 13. The system calculates the Order_Total and displays it. 14. The system prompts the order entry clerk to review the order details and to accept/edit/reject the order. 15. The order entry clerk accepts the order. 16. The system records the order. 17. The system updates the Quantity_Allocated. Control Look-up feature Record checking Confirmation Format check, Validation rule Computergenerated value Computergenerated value Accept/Reject 16 Table 7.5 Events and Forms for Fairhaven Convenience Store Event Maintain manager Maintain inventory Yes Make sale Deposit cash Name of table(s) in which data are entered, if any Manager Inventory Sales, Sales Detail Deposit Input form required? Yes Yes Yes 17 Table 7.6 Content and Organization of Manager Maintenance Form (Single-Record Form): Fairhaven Convenience Title on Form Type of Form Data Table Manager Maintenance Form Single-record form Manager 1. Attribute recorded in tables SSN, Last_Name, First_Name, Address, File_Stat, Exemptions 2. Attribute displayed but not modified 3. Foreign keys that link this table to the others used in the form (if any) Format Main form Attribute Names and Calculations Used SSN, Last_Name, First_Name, Address, File_Stat, Exemptions Subform (For main form/subform format only) Formulas for calculations: 18 Table 7.7 Input Controls and Use Case Description for Manager Maintenance Form: Fairhaven Convenience Sto Panel A: Manager Maintenance Form—Data Item Controls Data Item Control Features SSN Last_Name Format checks (number with nine digits) Format checks (certain characters, such as punctuation, not permitted) Format checks (certain characters not permitted) Format checks (certain characters not permitted) Look-up feature Format checks (must be number), validation rule (should be less than maximum number of exemptions possible) First_Name Address File_Stat Exemptions Panel B: Manager Maintenance Form—Use Case Description 1. The owner selects the “Maintain Manager Information” option from the menu. 2. The system displays the Manager Maintenance Form. 3. The owner enters an SSN. 4. The system verifies that the SSN is in the correct format. 5. The owner enters the Last_Name, First_Name, and Address. 6. The owner selects a filing status from a drop-down list. 7. The owner enters the number of exemptions. 8. The system verifies that the number of exemptions is less than the maxiimum number of exemptions possible 9. The system asks the user to review the data entered and accept. 10. The owner reviews the data and saves the record. 19 Table 7.8 Content and Organization of Deposit Form (Single-Record Form): Fairhaven Convenience Title on Form Type of Form Data Table 1. Attribute recorded in tables 2. Attribute displayed but not modified 3. Foreign keys that link this table to the others used in the form (if any) Format Main form Deposit Form Single-record form Deposit (D) Manager (M) Deposit#, SSN, Date, Amount Last_Name, First_Name SSN Attribute Names and Calculations Used D: Deposit#, SSN, Date, Amount M: Last_Name, First_Name Subform (for main form/subform format only) Formulas for calculations: 20 Table 7.9 Input Controls and Use Case Description for Deposit Form: Fairhaven Convenience Sto Panel A: Deposit Form—Data Item Controls Data Item Deposit# SSN Last_Name First_Name Date Amount Control Features Computer-generated serial number Computer-generated based on user log-in Confirmation Confirmation Default Validation rule Panel B: Deposit Form—Use Case Description 1. The manager selects the “Enter Deposit” option from the menu. 2. The manager enters his username and password. 3. The system obtains SSN based on username. 4. The system displays the Enter Deposit Form. 5. The system displays a Deposit#. 6. The system displays the current date. 7. The manager enters the amount of the deposit. 8. The system asks the user to review the data entered and accept. 9. The manager reviews the data and saves the record. 21 Table 7.10 Content and Organization of Sales/Cash Receipt Form: Fairhaven Convenience Store Title on Form Sales/Cash Receipt Form Type of Form Multi-table data entry (Main form/Subform) Data Table Sales_Detail (SD) Sales (S) Manager (M) Invento 1.Attribute recorded Sale#, Product#, Sale#, Date, SSN, in tables Quantity, Price Payment_Type, Account# 2.Attribute displayed Last_Name Descrip but not modified Price (default) 3.Foreign keys that Product# SSN link this table to the Sale# others used in the form (if any) Format Attribute Names and Calculations* Used Main form S: Sale#, Date, SSN, Payment_Type, Account#. M: Last_Name. Calculation: Total Subform (for main SD: Product#, Quantity, Price. I: Description, Price. form/subform Calculation: Extended Price format only) *Formulas for calculations: Extended Price = Quantity x Price Sales Tax = 0.05 x Sum (Extended Price) Total = Sum (Extended Price) + Sales Tax 22 Table 7.11 Input Controls and Use Case Description for Sales/Cash Receipt Form: Fairhaven Convenience Store Panel A: Sales/Cash Receipt Form—Data Item Controls Data Item Sale# Date Control Features Computer-generated serial number Default is current date, validation rule (e.g., dates must be within the current period) SSN Determined by computer from username entered at time of log-in For each item purchased by customer: Product# Scanned, referential integrity Price Default from Inventory Table Description Confirmation Quantity Format checks, validation rule (e.g., Quantity should not exceed 999) Extended Price Computer-generated Amount Computer-generated Sales Tax Computer-generated Payment_Type Drop-down box requiring selection of one of three choices: cash, check, or credit card Account# 23 Table 7.11 Input Controls and Use Case Description for Sales/Cash Receipt Form: Fairhaven Convenience Store (Concluded) Panel B: Sales/Cash Receipt Form—Use Case Description 1. The manager starts a session by entering his username and password. 2. The system obtains his SSN from the Manager Table based on his username. 3. The manager selects the “Record Sale” option from the menu. 4. The system displays the Date (current date). 5. The system assigns a unique Sale#. For each item purchased by customer: 6. The manager enters the Product# by scanning the bar code on the product. 7. The computer system checks to see if the Product# is valid. 8. The system displays other inventory information (e.g., Description and Price). 9. The manager enters the Quantity of each item purchased. 10. The computer checks to make sure that a number has been entered and that it does not exceed the maximum number allowed (validation rule). 11. After all the items have been entered, the system computes the Total. 12. The system then computes the Sales_Tax. 13. The manager enters the Payment_Type (e.g., cash, check, or credit card). 14. The manager then enters payment details (e.g., Account#) in the computer system. 24