Sunday, January 28, 2007

 
(Selling More, By Having An Adaptive System, An XYZ Company Story)

Section 2: Building A Custom Enterprise System For XYZ Company So It Can Sell More (Introductory Memo)

abc Systems
Your programming resource

Re: Building A Custom Enterprise System For XYZ Company So It Can Sell More

Dear XYZ Company Owners,

Why:

Why did I bother spending my own time writing the documents in this package? Because I’m passionate about the subject of enterprise software development, and how when it is executed well, it can help companies sell more, with greater efficiency, to maximize their revenue. But more importantly to you, because I could not restrain myself from going the extra mile in my desire to perform such work at XYZ Company.

In the past, I’ve been asked by XYZ Company what I think is the useful life of the current enterprise system, and if it was replaced how long would it take. This package does provide answers to those specific questions. However, the most important aspect of such questions to me is whether the current system or some alternative to it, would allow XYZ Company to grow much faster, and sell more product, in more channels, to more customers, in more countries, with greater efficiency. If this isn’t currently important to you, then you can put off reading the rest of this package for a number of years. At least until your existing system no longer can support your current growth rate.

Truthfully, if the company is content to continue its steady annual 15% growth rate while only making the occasional small changes to its business model, the argument for considering an alternative to XYZ Company’s existing system is currently hard to make.

On the other hand, if YXZ Company would like to do something like set its growth rate on an exponential path, and within a decade go from one hundred million to one billion in sales, while accommodating a thousand plus employees, in multiple countries, in multiple offices and warehouses, then an alternative to the current system needs to be considered.

Why a new system? Because XYZ Company’s current custom enterprise system called 123 Enterprise was built to accommodate the business model that existed for the company at the time that system was constructed, and to be worked on primarily by a single developer. Easily forecasted needs, such as, multiple warehouses, multiple office, international sales, drop-shipments, and web sales were left out, and are becoming increasingly difficult things to add to it. During my time at XYZ Company, I’ve observed that the effort to retrofit the existing system to accommodate some of these needs was hard, time consuming, and significantly delayed the benefits to be obtained by making such changes.

What:

What kind of enterprise system should XYZ Company have to accommodate rapid growth? It needs an adaptable system. In fact, it needs a system that is magnitudes easier to adapt then its current enterprise system. The only constant in business is change, and XYZ Company would need a system built with that as a guiding principle.

A new adaptive system can be purchased, developed, or refactored from the existing system. Outside of cost, the primary tradeoffs between the three decisions, is the speed to delivery, and the extent to which each can offer the company a competitive advantage over the long run. Superior custom information systems do offer significant competitive advantage, but require longer delivery times then commercial solutions, and more commitment on behalf of the company to the development process. For more information in regards to considering the purchase versus build decision see the initial sections of my document Selling More By Having An Adaptive System – An XYZ Company Story.

When:

When should you acquire a new adaptive enterprise system to accommodate rapid growth? When you current one isn’t expected to accommodate your future plans, or when the present value cost of making it do so, far exceeds the cost of acquiring a new one. The first criteria, is the easier one to apply. But, if that doesn’t provide you with the answer, you need to start moving on to the consideration of costs for purchasing versus building.

You can solicit commercial purchase and maintenance cost from vendors of such packages, or more objective third party sources. Refactoring costs for the existing system involve adding another two or three developers with the skills to do so, and a manager\software architect to coordinate that activity and the ongoing functional development of the product. Approximately, an annual additional development cost of about $600,000, on top of the current $600,000 being spent, for the next few years. When it’s done, the refactored system will look like an entirely new system in comparison to the current state of the existing one. However, its optimal evolution will have been tempered by many considerations for the legacy system and the concurrent development of it, while the company continues to use it to run its business. It will also need to deal with compromises to accommodate two development teams operating with different cultures, standards, and goals. A harder and riskier path to having an adaptive system then the other two alternatives.

In regards to developing a new adaptive system from scratch, I have come up with the figures shown below. The costs I offer for building a custom system are based on the following assumptions: 1) The system needs to be highly scalable, so much so, that is able to support growth in sales from the current one hundred million mark to the one billion dollar mark and beyond, it needs to handle employee growth from the current level of 150 to one 1,000 plus employees. 2) It needs to be a highly adaptive system capable of permitting sales through multiple channels, in multiple countries\currencies, from multiple offices, and multiple warehouses, with multiple product types all with simple configuration. 3) It needs to be built with a number of relatively autonomous modules as outlined in the VICS Architectural Guide, modules such as, Product Development\Merchandising, Ordering, Logistics, Financial, and Business Support. Along with support for the business functions also listed in that guide. 4) It would be built with ABC Systems Inc. Development Process. Using those assumptions, I’ve come up with a total cost for a custom enterprise system of approximately $4.5 million, and a time frame of 2 ½ years to build, costing XYZ Company about 1 ½ % of its annual revenue. A more detailed breakdown follows.

Estimate Category Year One Year Two Third ½ Year Total
Software Architect 225,000 250,000 125,000 600,000
Assistant Technical Lead 200,000 225,000 112,500 537,500
Senior Programmer 150,000 157,500 80,000 387,500
QA Tester 150,000 160,000 80,000 390,000
Business Analyst 150,000 160,000 80,000 390,000
Four Offshore Developers
(Added during 1st year) 175,000 367,500 200,000 742,500

Labor total 1,050,000 1,320,000 677,500 3,047,500
Tools @ 10% of Labor 105,000 132,000 250,000* 487,000
Contingency total @ 30% 315,000 396,000 203,250 914,250

Grand Total 1,470,000 1,848,000 1,130,750 4,448,750
* Money to upgrade computers to run new system.

Definitely a large sum of money when you initially think about it, but maybe not so large, if one considers its amortization over the twenty plus year life of the system, or when one divides it by the revenue of the company as it grows to a billion plus dollars in 10 years. Or in comparison to the META groups average estimate for commercial ERP implementations of $15 million.

Of course, there are the horror stories to contend with; custom enterprise developments that ran years over schedule, and ones that cost many times there original estimate. However, your situation never has to become so bleak, if you adopt ABC Systems, Inc. Development Process, as the common reasons for such projects to behave badly are well known, and our process is designed to handle them. Moreover, in adopting this development process, you will get constant feedback on how the project is progressing, and the opportunity to make course corrections as needed. For more information on this matter, see my document Selling More By Having An Adaptive System – An XYZ Company Story, in particular, the final section of that document, Building An Adaptive Enterprise System.

What’s in the rest of this package?

The rest of the package distributed with this memo brings together many development oriented documents I’d previously prepared for the XYZ Company, which I now collectively refer to as the ABC Systems Inc. Development Process. The newer versions of those documents in this package don’t incorporate much new information, but have been reworked to present it in a more consistent fashion.


Sincerely,



Desmond Nolan
Enterprise Software Developer\Architect

DesNolan@OptOnline.NET
Mobile (203) 984-0787

Comments: Post a Comment

<< Home

This page is powered by Blogger. Isn't yours?