| CORE Home > Our Company > E-Bulletin |
|
Volume 2 Welcome to the second issue of our e-bulletin. Please feel free to forward it to your colleagues. |
||||||||||||||||||||||||||||||||||||||||||||||||||
|
The Hidden Costs of Packaged Applications Upgrades and Customization First, we look at the "not so hidden" costs. These are relatively obvious, yet are often overlooked at the planning stage. One such cost is the upgrade that must be made to hardware and operating systems to accommodate the new application. Another example is the cost of modifying a packaged solution to meet the specific needs of the organization. Most packages offer some degree of customization, however it can be very difficult, if not impossible, to customize a packaged application to meet all of your needs. Training and Productivity Perhaps the biggest and most frequently underestimated cost is training. Managers can easily measure the up front cost of the training program, but often neglect to calculate the productivity loss that is incurred as users are taken off-line from their scheduled duties in order to learn the new application. This time can range from several days to a few weeks. Further productivity is lost during the period when users are at the bottom of the learning curve of the new application. While frequent users of legacy applications can use function keys to fly through data input screens, when given a new application the rate at which they can enter data is greatly reduced. This productivity loss can have serious cost implications. Studies have shown: Only 10% of ERP implementations finish on budget 50% to 70% of all accounting software system implementations fail to some degree, and most of those failures are attributed to inadequate training A successful implementation of a new mission critical application usually involves several departments, and requires a significant time investment from key personnel within each department. This investment is heavier when a package is implemented, since the business rules are likely different and there will be some modifications to key processes. Added to that cost is the price the organization pays while it adjusts to the new procedures. Depending on the type of application being implemented, interruptions to business cycles can include delayed shipments, slow collections, disruption of benefits, and production backlogs, to name a few. Overcoming these costs with CORE Migration CORE Migration solves many of these issues. CORE Migration facilitates application customization and maintenance by re-engineering legacy PowerHouse® applications in either Java or Microsoft .NET. The recipient of the migrated application can modify the new program in any way that they see fit since the new application is fully owned by the client. CORE Migration duplicates 100% of the legacy applicationís current functionality in either Microsoft .NET or Java. This means that the new application will operate in exactly the same way as the legacy application. Why is this important? The training requirement is greatly reduced. Users of the migrated application will be instantly familiar with the application's workflow. CORE Migration can also preserve all of the hotkey functions, which means that although the application sports a new graphic interface, the data entry clerk who relies on the keyboard will not suffer any productivity losses. CORE Migration also guarantees 100% preservation of the business logic embedded in the application. This means that during the implementation of the new application there is minimal disruption to the business, and unless desired, there is no need to re-engineer critical processes. A homegrown application should be regarded as an investment. It was likely developed over several years, at a heavy cost, and has delivered considerable value to the business. On the surface, replacing the application with an off-the-shelf package may seem attractive from a cost perspective. However, additional costs will emerge that should be factored into the decision. CORE Migration provides firms with the opportunity to eliminate many of these costs by migrating existing applications, which leverages the significant investment that has already been made. Migration Tip: Test Cases are Essential Organizations usually take a variety of approaches to documenting test cases; these range from developing detailed, recipe-like steps, to writing general descriptions. In detailed test cases, the steps describe exactly how to perform the test. This approach is ideal in situations where testers do not have the intimate knowledge of the original application. In descriptive test cases, the tester (who has an intimate knowledge of the legacy application) decides at the time of the test how to perform the test and what data to use. CORE Migration prefers detailed test cases because determining pass or fail criteria is usually easier with this type of case. In addition, detailed test cases are reproducible and are easier to automate than descriptive test cases. This is particularly important if clients also plan to compare the results of tests over time, such as when they are optimizing configurations. Detailed test cases are more time-consuming to develop and maintain. On the other hand, test cases that are open to interpretation are not repeatable and can require debugging, which consumes time that would be better spent on other activities. A test case should include: Ideally, test cases should be written by a team member who understands the function or technology being tested, and each test case should be submitted for peer review. When planning your tests, remember that it is not feasible to test everything. Instead of trying to test every combination, prioritize your testing so that you perform the most important tests - those that focus on areas that present the greatest risk or have the greatest probability of occurring - first. Question: How do I estimate the cost and timeline of my PowerHouse application migration? Answer: Accurately estimating the timing and overall cost of a PowerHouse migration is difficult. As discussed in last month's issue , there are 5 phases in the SDLC (System Development Life Cycle) approach, and each phase should take approximately the same amount of time to complete. If you estimate the "Build" phase (the stage in which you re-write the source code), you can multiply that number by five and create your timeline. Now the question becomes, how do you estimate how long the build phase will take? The most commonly used estimation method is to do a count of the lines of code in the PowerHouse application, and then divide that number by the number of lines of code you think your full development team can write in an 8 hour day. However, this will only provide you with a very rough estimate, particularly with PowerHouse code, since there is a substantial variance in the size of each line of code. To illustrate: This would be counted as one line of code: LET T_RETURN_CODE = T_GL_BLANK This would also be counted as one line of code: IF (50 > (SIZE(PACK(TRUNCATE(T_DESCRIPTION))) + & SIZE(PACK(TRUNCATE(CHANGE_SCREEN OF CHANGE_REQUEST))))) & AND T_GL_NULL <> PACK(TRUNCATE(CHANGE_SCREEN OF CHANGE_REQUEST)) THEN LET T_DESCRIPTION = PACK(TRUNCATE(T_DESCRIPTION)) + & PACK(TRUNCATE(D_SEPARATER)) + & PACK(TRUNCATE(CHANGE_SCREEN OF CHANGE_REQUEST)) Obviously, the second line of code is much bigger and more complex, and would take significantly longer to re-write. Although this is just one example, factor this variance by the number of lines of code in an application, say 500,000, and you get a sense of just how inaccurate the estimate could be. A more sophisticated method for assessing the size of software applications is to perform a function point analysis. Originally developed by Alan Albrecht of IBM in the late 1970s, a function point analysis is a method of examining the functional requirements of an application, and it provides detailed information to the business analyst. A major drawback of function point analyses is that they are extremely time consuming to perform. When performing a function point analysis on a PowerHouse application it is important to remember to include the functions that are intrinsic to the product; for example the default procedures that PowerHouse will add to Quick screens. So how is CORE Migration able to provide fixed price, fixed timeline migrations? CORE Migration uses an automated scientific method allowing for both precision and consistency in evaluating the scope and complexity of the application source code, thus ensuring our ability to provide fixed price contracts and fixed delivery timelines. The CORE Migration Assessment toolset initially parses the entire application to identify any missing or orphaned files. The toolset reads the dictionary and each source code module, and assigns the CORE Migration "Metric Point Weighting". The Metric Point Weighting is based on a Function Point Methodology that dissects each individual piece of source code and weighs it on both scope and complexity. In contrast to a standard function point analysis, CORE Migration's Assessment toolkit has been specifically designed to work with PowerHouse, and accounts for all of the intrinsic functionality within a PowerHouse application. The CORE Migration Metric Point Weighting is made up of two main metrics: 1. Scope Metric - Calculates the 'Size' of the module The 'Scope Metric' formula measures: Inputs + Outputs + Field Properties + Procedures ================== = Scope Metric 2. Complexity Metric - Calculates the 'Complexity' of the module The 'Complexity Metric' formula measures: Data Accesses + Assignments + Events + Conditions + Expressions + External Dependencies =================== = Complexity Metric The Metric Point Weighting = Scope + Complexity Once the total metrics of the application have been established, CORE Migration calculates the number of metric points that can be processed on a daily basis, and a highly accurate timeline for the migration is completed. To view an example of a metric point analysis for a PowerHouse application, or for a free assessment of your PowerHouse migration project, please contact the CORE Migration sales department at (613) 727-5051. |
|
||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||