View Integration and Implementation Compromises

Slides:



Advertisements
Similar presentations
The Sales/Collection Business Process
Advertisements

The Sales/Collection Business Process Accounts Receivable Query Join & Null to Zero (NZ) considerations 1.
CHAPTER 7 ACCOUNTING INFORMATION SYSTEMS
Enterprise Systems.
Recording / Financing Fixed Asset Acquisition Human Resources Purchasing Revenue Traditional files approach: separate systems (Legacy Systems) Expenditure.
The Relational Database Model. 2 Objectives How relational database model takes a logical view of data Understand how the relational model’s basic components.
Implementing an REA Model in a Relational Database
Copyright © 2012 Pearson Education, Inc. publishing as Prentice Hall 18-1.
3 1 Chapter 3 The Relational Database Model Database Systems: Design, Implementation, and Management, Seventh Edition, Rob and Coronel.
Chapter 5 UNDERSTANDING AND DESIGNING ACCOUNTING DATA.
Database Design Using the REA Data Model
McGraw-Hill/Irwin Copyright © 2005 by The McGraw-Hill Companies, Inc. All rights reserved. ENTERPRISE INFORMATION SYSTEMS A PATTERN BASED APPROACH Chapter.
McGraw-Hill/Irwin Copyright © 2005 by The McGraw-Hill Companies, Inc. All rights reserved. Chapter 10 Additional Consolidation Reporting Issues.
©CourseCollege.com 1 14 Inventory Inventory held for sale by retailers, manufacturers and wholesalers. Learning Objectives 1.Identify all costs and apply.
DAY 12: DATABASE CONCEPT Tazin Afrin September 26,
Implementing an REA Model in a Relational Database
1 Relational Databases and SQL. Learning Objectives Understand techniques to model complex accounting phenomena in an E-R diagram Develop E-R diagrams.
Implementing an REA Model in a Relational Database
Database Systems: Design, Implementation, and Management Tenth Edition Chapter 3 The Relational Database Model.
McGraw-Hill/Irwin Copyright © 2005 by The McGraw-Hill Companies, Inc. All rights reserved. ENTERPRISE INFORMATION SYSTEMS A PATTERN BASED APPROACH Chapter.
1. Convert a conceptual business process level REA model into a logical relational model 2. Convert a logical relational model into a physical implementation.
Copyright © 2012 Pearson Education, Inc. publishing as Prentice Hall 18-1.
Accounting: What the Numbers Mean Study Outlines and Overhead Masters Chapter 5.
The Budgeting Process 7. OBJECTIVE 1: Define budgeting, and explain budget basics.
Overview of Transaction Processing and Enterprise Resource Planning Systems Chapter 2.
Inventory and Cost of Goods Sold
Database Design Chapters 17 and 18.
Let try to identify the conectivity of these entity relationship
Chapter 5 UNDERSTANDING AND DESIGNING ACCOUNTING DATA
Inventories and the Cost of Goods Sold
Implementing an REA Model in a Relational Database
TRANSACTION PROCESSING SYSTEM (TPS)
Accounting: What the Numbers Mean
Databases Chapter 9 Asfia Rahman.
Business System Development
DEVELOPING A BUSINESS PLAN FOR A MANUFACTURING COMPANY: BUDGETING
The Relational Database Model
Accounting Principles, Ninth Edition
Reporting and Interpreting Cost of Goods Sold and Inventory
Implementing an REA Model in a Relational Database
Consolidation Following Acquisition
Merchandising Activities
Introduction to Transaction Processing
The REA Enterprise Ontology: Value System and Value Chain Modeling
Chapter 18 Automatic Account Assignment
The Human Resource Business Process
Chapter 4 Relational Model Characteristics
Database Relationships
Lecture 2 The Relational Model
Implementing an REA Model in a Relational Database
Accounting Information Systems 9th Edition
Database Design Using the REA Data Model
Chapter 5 Master Production Scheduling
Entity-Relationship Model and Diagrams (continued)
C 7 Inventories: Cost Measurement and Flow Assumptions hapter
Sales Order Process.
Chapter 4 The Relational Model Pearson Education © 2009.
Chapter 4 The Relational Model Pearson Education © 2009.
Overview of Transaction Processing and Enterprise Resource Planning Systems Chapter 2.
Relational Database Model
The Relational Model Transparencies
Database Design Chapters 17 and 18.
Accounting Principles, Ninth Edition
ACCOUNTING INFORMATION SYSTEMS Accounting Principles, Eighth Edition
The Relational Database Model
DCT 2053 DATABASE CONCEPT Chapter 2.2 CONTINUE
Inventories: Cost Measurement and Flow Assumptions
Database Management system
Database Systems: Design, Implementation, and Management
Accounting Principles, Ninth Edition
Presentation transcript:

View Integration and Implementation Compromises Chapter 10 View Integration and Implementation Compromises

Chapter Learning Objectives Identify the steps needed to integrate multiple business process level REA models Complete an integration of two or more business process level REA conceptual models Identify and create common conceptual level, logical level, and physical level implementation compromises Explain common reasons for compromising implementations Identify information needs that require information from multiple tables in multiple business processes Create queries to satisfy information needs that require information from multiple business processes

View Modeling and View Integration Recall that one reason we use models in designing information systems is to reduce complexity and to simplify the reality into manageable pieces. The separate modeling of each transaction cycle is called “view modeling”. Combining the models together to form a complete whole is called “view integration”.

View Integration Step 1: Identify the common entities in two conceptual level views Each pair of cycles that is connected in the value chain shares at least one common resource. Many cycles have at least one agent in common. Cash receipt events and Cash disbursement events exist in multiple cycles.

View Integration Step 2: Merge the common entities, resolving entity and attribute conflicts Entity name conflicts Synonyms: two or more different entity names used to represent the same entity Homonyms: one entity name used to represent two or more different entities Attribute conflicts Different attributes used to describe the same entity in various views Include all attributes needed for all transaction cycles as attributes for the entity in the integrated model

View Integration Step 3: Resolve relationship conflicts, including name conflicts and structural conflicts Ensure each relationship has a unique name Ensure cardinalities are appropriate for relationships once common entities are merged

Revenue Cycle View

Acquisition Cycle View

Identify the common entities

Merge on Common Entities

Resolve Relationship Name Conflicts

Implementation Compromises Conceptual Level Compromises Exclusion of an entity (usually a resource) because of inadequate measurement tools E.g. labor and use of fixed assets, supplies, and services in non-conversion processes Exclusion of a relationship because of inadequate traceability or because no decision information is needed regarding that relationship Caution should be exercised because decision information may be needed at a later point in time

Implementation Compromises Conceptual Level Compromises Consolidate conceptually congruent entities e.g. events that always happen simultaneously

Implementation Compromises Conceptual Level Compromises Materialization of tasks as entities E.g. Request for Quote, Receive Bids Use “what is needed to plan, control, execute, and evaluate” criteria to determine when to separately model “steps needed to achieve an event” If attributes are needed for decision-making purposes and they can’t be stored within the existing event entities, often the tasks will need to be materialized as entities

Implementation Compromises Logical Level Compromises Load considerations discussed in chapter 6 are actually an implementation compromise. A “pure” relational database should never include a null value.

Implementation Compromises Logical Level Compromises Posting keys of similar entities in combination to avoid null values OR Combination of similar entities without a generalization relationship E.g. creating a column called “Payee” in cash disbursement to enable posting a foreign key from Suppliers, Employees (for payroll checks), Creditors (for loan payments), etc. without causing null values. Disallows enforcement of referential integrity May instead combine similar entities into one entity and then create the relationship. E.g. Peoplesoft Enterprise One Address Book combines Customers, Suppliers, Employees

Combined entity key posting

Combined entity key posting

Combination of Entity Sets without Generalization

Implementation Compromises Physical Level Compromises Storage of derivable attributes Static derivable attribute storage is advised if it facilitates querying; volatile derivable attribute storage should be done only if software is capable of triggers (stored formulae rather than stored data values for the volatile derivable attributes) Event History Roll-up A benefit of databases is the “virtual close” – that is, the ability to produce financial statements without actually closing the books. The disadvantage of this is that the database can get too large to allow efficient processing Solution: once event data is no longer needed in disaggregated format, “roll” it up into a single event.

Event History Roll-up

Multiple Cycle Information Needs Many information needs combine data from multiple transaction cycles Cash balance Quantity on Hand of Inventory Types Inventory total cost value Cost of Goods Sold Many others

Query for Cash Balance Determine which table contains the cash receipt date (usually the cash receipt event table) and make sure the same table also contains the cash receipt amount field Determine which table contains the cash disbursement date (usually the cash disbursement event table) and make sure the same table also contains the cash disbursement amount field Create a query that establishes the ending date constraint (with no beginning date constraint) and sums the cash receipt dollar amount identified in step 1 Create a query that establishes the ending date constraint (with no beginning date constraint) and sums the cash disbursement dollar amount identified in step 2 Create a query that subtracts the total in step 4 from the total in step 3

Query for Cash Balance Step 1: Identify table with cash receipt date and amount fields Step 2: Identify table with cash disbursement date and amount fields

Query for Cash Balance Step 3: Query to sum date constrained cash receipts Step 4: Query to sum date constrained cash disbursements

Query for Cash Balance Step 5: Compute Cash Balance (Step 3 – Step 4) Results as of May 31, 2010

Query for Inventory Type Quantity on Hand Determine which table contains the purchase date Usually in purchase event table Determine which table contains the purchase quantity and the inventory item id Usually in purchase-inventory stockflow relationship table Determine which table contains purchase return date Usually in purchase return event table Determine which table contains the quantity returned and the inventory item id Usually in purchase return-inventory stockflow relationship table

Query for Inventory Type Quantity on Hand Determine which table contains the sale date Usually in sale event table Determine which table contains the quantity sold and the inventory item id Usually in sale-inventory stockflow relationship table Join the tables identified in steps 1 and 2 (with purchase dates & quantities), group by inventory item, set the ending date constraint (with no beginning date constraint) and sum the quantity purchased to get the total quantity purchased per inventory item. Include the inventory item id attribute in the query result to provide a means for linking to other intermediate results.

Query for Inventory Type Quantity on Hand Join the tables identified in steps 3 and 4 (with purchase return dates and quantities), group by inventory item, set the ending date constraint (with no beginning date constraint) and sum the quantity returned to get the total quantity returned per inventory item. include the inventory item id attribute in the query result to provide a means for linking to other intermediate results Join the tables identified in steps 5 and 6 (with sale dates and quantities), group by inventory item, set the ending date constraint (with no beginning date constraint) and sum the quantity sold to get the total quantity sold per inventory item.

Query for Inventory Type Quantity on Hand Join the results from steps 7 (purchase quantities by item id) and 8 (purchase return quantities by item id). Change the join type to include all records from the total quantity purchased query and the matches from the total quantity returned query. The null to zero (Nz) function is necessary in the calculation to subtract total quantity returned from total quantity purchased. E.g. Nz(SumPurchaseQty) – Nz(SumQtyReturned).

Query for Inventory Type Quantity on Hand Join the results from steps 10 (unreturned purchase quantities by item id) and 9 (quantities sold by item id). Change the join type to include all records from the total unreturned quantities purchased query and the matches from the total quantity sold query. Nz function is needed in the calculation to subtract total quantity sold from total unreturned purchase quantity. E.g. Nz(SumUnreturnedPurchaseQty) – Nz(SumSaleQty) This query result yields a separate total quantity on hand for each inventory type

Query for Inventory Type Quantity on Hand Steps 1, 2, and 7 Constrain purchase date, sum quantities purchased for each inventory type

Query for Inventory Type Quantity on Hand Steps 3, 4, and 8: Constrain purchase return date; sum quantities returned by inventory type

Query for Inventory Type Quantity on Hand Steps 5, 6, and 9: Constrain sale date; sum quantities sold for each inventory type

Query for Inventory Type Quantity on Hand Step 10: Join Quantities purchased and returned to calculate unreturned purchase quantities

Query for Inventory Type Quantity on Hand Step 11: Join net purchase quantities and quantities sold to calculate quantity on hand Result for May 31, 2010

Query for Inventory Type Cost Value To calculate inventory cost value If applying an inventory costing assumption such as weighted average unit cost, first-in-first-out (FIFO), or last-in-first-out (LIFO) Build on the quantity on hand queries Build queries to determine assumed unit costs Multiply Quantity on Hand by Assumed Unit Cost If applying actual costs based on specific identification Need queries to specifically identify which inventory items were included in each sale and assign costs accordingly FIFO, LIFO, and actual costs based on specific identification require very complex queries with programming beyond the scope of this course

Query for Inventory Type Cost Value Query to Calculate Weighted Average Unit Cost

Query for Inventory Type Cost Value Query to Calculate Weighted Average Unit Cost: Constrain purchase end date, calculate purchase line extensions

Query for Inventory Type Cost Value Query to Calculate Weighted Average Unit Cost: Sum purchase quantities and purchase line extensions

Query for Inventory Type Cost Value Query to Calculate Weighted Average Unit Cost: Divide total purchase line extensions by quantities to get weighted average unit costs

Query for Inventory Type Cost Value Multiply QOH by WAUC to get total cost value per item

Query for Inventory Type Cost Value Sum cost values per item to get total inventory cost value Result for May 31, 2010

Query for Cost of Goods Sold Determine which table contains the sale date usually this is in the table that represents the sale event Determine which table contains the sale quantities usually this is in the table that represents the stockflow relationship between sale and inventory Join the tables together; set date constraints for the beginning and ending of the income statement period; group by inventory id, and sum the quantity sold Join a weighted average unit cost query result to the quantities sold result; multiply the quantity sold by the weighted average unit cost yields total weighted average cost separated by inventory items Create a final query that sums the weighted average cost per inventory item sold to get the total COGS for the income statement

Query for Cost of Goods Sold Steps 1, 2, 3: Constrain sale date, group by inventory item ID, and sum sale quantity

Query for Cost of Goods Sold Step 4: Multiply quantities sold by weighted average unit costs to get cost of goods sold per item

Query for Cost of Goods Sold Step 5: Sum cost of goods sold per item to get total cost of goods sold Result for May 1-31, 2010

Summary To reduce complexity, in practice separate conceptual models are often constructed based on different views (views may be separated by transaction cycle or by some other delineation) Once each view is modeled, the views must be integrated to form a complete conceptual model and then converted to the logical level Compromises often must be made to the “theoretic ideal” conceptual, logical, or physical level models based on insufficient measurement techniques, practical considerations and other constraints Queries often require integration of data from different transaction cycles; an integrated database supports such complex queries

Chapter 10 End of Chapter