Management Challenges in Enterprise Resource Planning (ERP) Post-Implementation Dr Celeste Ng, Ph.D. 吳思佩 @ Celeste Ng, YZU; 15th Oct 2004 @ Celeste Ng Session 1: Previous Research Experience - what is ERP? - what is ERP post-implementation? - what is ERP maintenance? - previous research outcomes @ Celeste Ng Section 1: Previous research experience What is ERP? • Enterprise resource planning – Characteristics: integrated, cross-functional, modern business application packaged software – Vendor (int’l): SAP (Germany), Oracle (Calf.,USA), PeopleSoft (USA), J.D. Edward (USA) – Vendor (Taiwan): Data Systems Consulting Co., Ltd. ( 鼎新電腦), Wellan System Co., Ltd. (偉盟系統股份有 限公司),Datawin (鉅茂科技股份有限公司). – Market: generate nearly $20B in revenue in year 2002 @ Celeste Ng What is ERP post-implementation? • Activities after system implementation @ Celeste Ng What is ERP maintenance? • Post-implementation activities • Undertaken by the client-organization • Targeting at – keeping the system running correctly – operating well in a changed environment – providing user-support – realizing more business benefits – maintaining the installed system a supported version SOURCE: Ng, C.S.P., G.G. Gable, and T. Chan, "An @ ERP-client Celeste Ng Benefits-oriented Maintenance Taxonomy", Journal of Systems and Software, 64(2), pp. 87-109, 15 November 2002. Outcomes – for maintenance request classification Who Who is the source? Why What Affect client's module? Why? Business Benefit Oriented Maintenance category Any business benefit? B.1 Realize benefits and/or make enhancements C.1 Yes Enhancement D.1 Yes B.2 Make adjustments and adaptations C.2 Yes Adaptive D.2 No B.3 Fix bugs and error C.3 Yes Corrective D.3 No B.4 Provide user support C.4 No User-support D.4 No Business benefit catefory Competitive advantage A.1 Client-organization Other A.2 Vendor Globalization Other B.5 Realize substantial benefits and/or make enhancements C.5 Yes Functional Upgrade or minor enhancement D.5 Yes B.6 Keep the system vendor-supported - long-term C.6 Yes Technical Upgrade D.6 Yes B.7 Keep the system up to the standard required by the vendor - short-term C.7 Yes/ No Patchmaintenance: standard D.7 Yes Patchmaintenance: adaptive D.8 No Patchmaintenance: corrective D.9 No Integrated system Best Practice / Business Processes C.8 No B.8 Make adjustments and adaptation B.9 Fix bugs and error Other C.9 Yes Cost effective / reduction C.10 No C.11 Yes Legend: "Who" is to be assessed by - IT-staff "Why" is to be assessed by - IT-staff and system user "What" is to be assessed by - IT-staff "Benefit-oriented" is to be assessed by - Senior Managers (including IT-managers and business managers) Other ADAPTED FROM: Ng, C.S.P., G.G. Gable, and T. Chan, @ Celeste "An ERP-client Ng Benefits-oriented Maintenance Taxonomy", Journal of Systems and Software, 64(2), pp. 87-109, 15 November 2002. Outcomes – for decision-making process (1) Cost Function If enhancement maint_cost_enh = implement_cost * + ongoing_maint_cost** + fixed_cost implement_cost = #_of_hours*** X cost_per_hour ongoing_maint_cost = (#_of patch_project + #_of _upgrade) X (a_fraction_of_implement_cost) Initiator Trade-off If corrective**** maint_cost _corr = #_of_hours*** X cost_per_hour + fixed_cost Maintenance cost If master-data-change**** maint_cost _master_data = #_of_hours*** X cost_per_hour + fixed_cost If user-support maint_cost _user_support = personnel + training + documentation + fixed_cost System users: User opportunity cost If enhancement Oppor_cost_user_enh = (prob_not_avail X Oppor_cost) + [prob_avail X (Oppor_cost ongoing_maint_cost)] Oppor_cost = (benefit_category_weight X unrealized_benefit_value) If corrective, master data change or user-support**** Oppor_cost = (benefit_category_weight X unrealized_benefit_value) Maintenance cost IT-staff: User opportunity cost Maintenance Activities Maint_cost_prov_enh = #_of_hours*** X cost_per_hour + ongoing_maint_cost** + fixed_cost Oppor_cost_CSA_enh = (prob_not_avail X Oppor_cost) + [prob_avail X (Oppor_cost - ongoing_maint_cost)] Oppor_cost = (benefit_category_weight X unrealized_benefit_value) Maintenance cost Maint_cost_patch = (#_of_hours X cost_per_hour) + [(#_of_modification) X a_fraction_of_implement_cost] + fixed_cost User opportunity cost Oppor_cost = (benefit_category_weight X unrealized_benefit_value) Notes: * The user-enhancement implementation cost is charged back to the requestor's organization. Therefore, it is not included in CSA's ERP Decision Framework. ** This cost is incurred if the enhancement done is affected by the future patch-maintenance or upgrade. *** The number of hours for the client-initiated maintenance activities can be estimated by considering the task complexity and maint. category, and other factors. Vendor (patch): Upgrade cost Vendor (New Version Upgrade): Reduction in Maintenance cost User opportunity cost ****Corrective or masterdata-change requests could also be initiated by IT-staff. Upgrade_cost = software + hardware + user_training_cost + consultant_fees + + reapply_modification_cost + upgr_implementation_cost + fixed_cost reapply_modification_cost = modification_required X hour_per_modification X cost_per_hour consultant_fees = #_of_consul_hour X consul_cost_per_hour upgr_implementation_cost = (complexity X version_gap) X (integration_and_testing_cost + sys_disruption_cost) reduce_maint_cost = - [ (#_of_modification - modification_required) X ongoing_maint_cost + (patch_decrease_rate X ave_annual_patch_cost) ] Oppor_cost = (benefit_category_weight X new_version_unrealized_benefit_value) SOURCE: Ng, C.S.P., "A Decision Framework for Enterprise @ Celeste Resource Ng Planning Maintenance and Upgrade: A Client Perspective", Journal of Software Maintenance and Evolution: Research and Practice, 13(6), pp. 431-468, 2001. Outcomes – for decision-making process (2) 5 Opportunit y cos t W j x j Globalization Competitive Advantage Best Practice / Business Processes j 1 W j = relative weight for a benefit category-j xj = unrealized benefit value of a request evaluated under benefit-j Integrated System Cost Effective / Reduction SOURCE: Ng, C.S.P., G.G. Gable, and T. Chan, "An @ ERP-client Celeste Ng Benefits-oriented Maintenance Taxonomy", Journal of Systems and Software, 64(2), pp. 87-109, 15 November 2002. Outcomes – for decision-making process (3) Examples of maintenance requests and benefit quantifications Objective of the Benefit descriptions Benefit quantifications Reduced time and cost # of staff involved X total time (in spent hours) taken to complete a match- maintenance request Maintenance-request-1: Electronically payments matched against open manually matching invoices receipts and invoices “Cost reduction” category transaction X transactions per # of match- month X staff hour X 334 hourly rate E.g.: 3 staff X 0.25 transactions X $100 = $25,050 Maintenance-request-2: Easy access reports of to, current and and historical sales information More accurate sales “Competitive advantage” E.g.: 50 sales unit X $200 = $10,000 category Additional unit of sales per month X net revenue per unit sales planning. Better information to Amount of time saved in dealing inform managers of with a customer X # of customers local per month X manager’s hourly rate global and customer history negotiating when payment or contract terms. E.g.: 0.5 hour X 20 customers X $150 = $1,500 “Globalization” category User opportunity costs and maintenance request priorities Maint. request Benefit categories (Thousand $) User Cost Maint. Opport. costs request Comp. Global. Integrated Best prac. advantage (W5 = system (W3 =.1 28) reduction (W4 = .056) .078) (W2=.266) Request-1 0 0 0 0 25.05 11.85 1st Request-2 10 1.5 0 0 0 0.677 3rd Request-3 0 0 10 3 0 3.044 2nd (Thousand $) priority (W1 = .473) SOURCE: Ng, C.S.P., "A Decision Framework for Enterprise @ Celeste Resource Ng Planning Maintenance and Upgrade: A Client Perspective", Journal of Software Maintenance and Evolution: Research and Practice, 13(6), pp. 431-468, 2001. Outcomes – for decision-making process (3) • Total cost of ownership, Z is: Z C IMPLEMENTATION C PATCH _ MAINTENANCE _ REQUEST C INTERNAL _ MAINTENANCE _ REQUEST C UPGRADE CUSER _ OPPORTUNITY C ANNUAL LICENCE FEE C DOCUMENTATION COUTSOURCING CTRAINING C EQUIPMENT CMANAGEMENT& SERVICE SOURCE: Ng C. S. P. 2005. Enterprise Resource Planning Maintenance Concepts. Encyclopedia of Information Science and Technology; Khosrow-Pour M.(Ed.). Idea Group, Inc.: Hershey, PA; (In-press) @ Celeste Ng Outcomes – for maintenance methodology P.2 Estimate resources requirement P.3 Determine the vendor maintenance support * P.4 Establish the maintenance organization P.5 Define the maintenance management issues P.6 Define maintenance service for system users P.7 Establish configuration management plan P.8 Develop training and helpdesk policies P.9 Sketch the desired maintenance procedure TM, M TM, M TM, M M M M M M M M.1 Maintenance request identification M.3 Search for availability of maintenance support * M.5 Issue quotation M.7 Implement the solution M.9 Conduct testing H, A A M, U P A, P, T, I, U, M M.2 Maintenance classification, approval, and prioritization M.4 Propose solutions M.6 Design solution M.8 Conduct impact analysis, and perform modificationenhancements adjustment* M, U M, A, P A, P A, P M.10 Deliver the changes to the users P, M,T, I U.1 Design an upgrade project methodology U.3 Develop a business case U.5 Make full assessments of the new functionality and technical requirements in each upgrade option * U.7 Install the new version onto the development system U.9 Conduct a thorough testing of the upgrade system U.11 Go live and deliver the new system M TM, M M, A, C M, A, P M, A, P, U, T, I M, P, T, I ERP Software Upgrade SOURCE: Ng, C.S.P., G.G. Gable, and T. Chan,"An ERP Maintenance Model," in IEEE Proceedings of the IEEE Hawaii International Conference on System Sciences (HICSS), pp. (on CD-ROM), 2003. P.1 Define maintenance ERP Maintenance Procedure ERP Maintenance Preparation • A documented maintenance methodology is produced that follows SEI software process modeling. Activity name Participants U.2 Research for upgrade options available * U.4 Make full assessment of the modification-enhancements and technical environment of the current version U.6 Conduct impact analysis between the new upgrade version and the current version * U.8 Construct the new system, and perform modificationenhancements adjustment U.10 Carry out the trial upgrades M M, A, C M, A, P A, P, I M, A, P, T, I TM = Top Management, M = Maintenance Manager, H = Helpdesk, A = Business Analyst, U = System User, P = Programmer, T = Tester, I = Integrator, C = Consultant * = An Activity is new and/or unique to the ERP environment. @ Celeste Ng Outcomes – for maintenance data-model M.3 Search for availability of maintenance support M.1 Maintenance request identification M.2 Maintenance classification, approval, and prioritization - problem ID - product ID - service desk ID - originator - date and time of occurrence - criticality - major functional area - functional area - problem description - rationale for request - existence of business benefit - existence of impact on installed module(s) M.4 Propose solutions - maintenance category (problem type) - benefit category - urgency - problem ID - product ID - service desk ID - originator - date and time of occurrence - criticality - major functional area - functional area - problem description - rationale for request - existence of business benefit - existence of impact on installed module(s) - number of patches implemented - number of modificationenhancements - maintenance category (problem type) - benefit category - urgency - problem ID - product ID - service desk ID - originator - date and time of occurrence - criticality - major functional area - functional area - problem description - rationale for request - existence of business benefit - existence of impact on installed module(s) - uniqueness - projected availability - estimate time - action to be taken - Issues of consideration - tailoring option - defect found in - error detection difficulty - method for detection - number of patches implemented - number of modificationenhancements - maintenance category (problem type) - benefit category - urgency - problem ID - product ID - service desk ID - originator - date and time of occurrence - criticality - major functional area - functional area - .......... - business value - implementation cost - ongoing maintenance cost - task complexity - quote - quote type - client cost centre - uniqueness - projected availability - estimate time - action to be taken - Issues of consideration - tailoring option - defect found in - error detection difficulty - method for detection - number of patches implemented - number of modificationenhancements - maintenance category (problem type) - benefit category - ........... - problem status - problem status date - approved by - patch number (vendor change request) - details before sw modification - business value - implementation cost - ongoing maintenance cost - task complexity - quote - quote type - client cost centre - uniqueness - projected availability - estimate time - action to be taken - Issues of consideration - tailoring option - defect found in - error detection difficulty - method for detection - .......... M.9 Conduct testing M.8 Conduct impact analysis, and perform modificationenhancements adjustment M.6 Design solution Investigation Phase Maintenance activity M.7 Implement the solution M.5 Issue quotation - changes made to - analyst - programmer - problem status - problem status date - approved by - patch number (vendor change request) - details before sw modification - business value - implementation cost - ongoing maintenance cost - task complexity - quote - quote type - client cost centre - uniqueness - projected availability - estimate time - action to be taken - Issues of consideration - tailoring option - defect found in - error detection difficulty - .......... - related changes - details after sw modification - released - changes made to - analyst - programmer - problem status - problem status date - approved by - patch number (vendor change request) - details before sw modification - business value - implementation cost - ongoing maintenance cost - task complexity - quote - quote type - client cost centre - uniqueness - projected availability - estimate time - action to be taken - Issues of consideration - tailoring option - ............. Resolution Phase M.10 Deliver the changes to the users - approval to migrate - related changes - details after sw modification - released - changes made to - analyst - programmer - problem status - problem status date - approved by - patch number (vendor change request) - details before sw modification - business value - implementation cost - ongoing maintenance cost - task complexity - quote - quote type - client cost centre - uniqueness - projected availability - estimate time - action to be taken - ................ - applied - accepted by - approval to migrate - related changes - details after sw modification - released - changes made to - analyst - programmer - problem status - problem status date - approved by - patch number (vendor change request) - details before sw modification - business value - implementation cost - ongoing maintenance cost - task complexity - quote - quote type - client cost centre - uniqueness - projected availability - ............ Delivery Stage Maintenance attributes to be collected SOURCE: Ng, C.S.P., G.G. Gable, and T. Chan, "A Maintenance-data-model @ Celeste Ng of Enterprise Resource Planning," in Proceedings of the Australasian Conference on Information Systems (ACIS), pp. 483-492, 2001.