|  |
Build or Buy a CMS?

Creating a content management system either from scratch, or using pre-existing building blocks, may sound like the ultimate way to get the exact solution you require.
However, careful analysis reveals there are dangerous pitfalls with taking the build-your-own content management systems path.
Coming from a web services background, many of the Gravity team recall (and shudder) at the scores of so-called content management systems we saw deployed from “modules” that were kicking around during the heady days of the .com boom.
In comparison to today’s mature, tested and carefully designed products, these systems were quirky, poorly thought-out, and difficult to maintain. At the time, unfortunately, there was little other choice.
However, even now many will seriously consider custom content management system development. Like any IT custom development project, you could be taking on serious risk when it comes to delivering your project on time and budget, not to mention the downside of expensive support and the lack of upgrades in the future.
The following paper delves into the detail behind our perspective, and debunks many commonly held views of product based content management systems by showing how Infomaxim exceeds the return on investment of custom built solutions, hands down.
Two Main Reasons Organisations Choose to Build
Flexibility
The decision to build rather than buy is frequently based on the assertion that no off-the-shelf product could possibly meet the specific business needs of the organisation.
And yet, it is this very requirement that was at the heart of Infomaxim during the products design. In short, this system has been built from the ground up to ensure maximum flexibility.
For many developers, customisation efforts quickly mean abandoning consistent architectures, or processes, in favour of meeting seemingly complex requirements. Such an approach is short-sighted, paying no respect to the need for change, and a consistent model to ensure scalability, security and true-flexibility.
In reality, the information management and publishing requirements of a broad range of possible applications can be successfully contained in a well thought out system. If requirements are found that do not fit the system, instead of developing at a tangent to meet some specific unusual need (and thereby creating an island of development investment), we rather prefer to adjust the system, so the need can be met predictably again and again.
With that in mind:
- Infomaxim features a dynamic Information Store that allows any conceivable structure of content to be created. Any number of meta-data fields can be defined and complex database record structures can be configured, enabling structured data to be managed with the same ease as free-form articles. All this without any custom programming, and in a consistent interface for managing information.
- The Infomaxim template system truly separates presentation and content, and eliminates the need for any programming in order to create flexible page functionality. This is made possible through a system of Skins (the HTML) and Views (the rules that bind information to presentation), and theInfomaxim Information Rendering Language. The end result is a template building system with extraordinary flexibility, enabling complex web applications including online catalogue based shops, portals and directories to be deployed rapidly, with no custom-ASP programming.
Cost
Some web development firms frequently promise to deliver a powerful CMS for an up front cost that may sound attractive.
It is a well known fact that IT development projects frequently run well over time and budget expectations. Heading down the custom development path is almost guaranteed to result in project blow-outs, missed deadlines, and unexpected complications.
Close examination of many custom CMS implementations reveals serious oversights in the design of the publishing engine and the flexibility of the system.
Considering a robust product based solution represents many person- years of development time, it is little wonder a comparable custom system cannot be constructed in a matter of a few weeks or months from scratch.
For example, many custom-built systems lack the following important features:
- 100% audit trail and roll back: Quickly built custom systems frequently present live database records to the web site visitors, rather than versioning approved content, and moving into a flat file format that can be more quickly served, with less load on your live web server. This is risky from a security point of view, and could leave your organisation exposed to unnecessary legal risks because of a lack of historical data on your web site publishing.
- True separation of presentation and business logic. Instead, templates are custom built with programming code, and presentation, in a single page, creating a tightly inter-dependent code base that is complex to maintain. Design changes need to be made by programmers rather than designers, meaning the cost of change is time consuming and expensive. There is system for managing template functionality, therefore change require further development. Cost of ownership rapidly escalates as the inevitable need for changes continues.
- Consistent user interface for managing different structures of information, or content. Instead, many systems bolt-on separate modules, that don’t truly integrate into the core platform, function differently, and don’t work with the same security or publishing model.
- Integrated security, down to the field level. Unless there is a consistent model for managing user permissions across all aspects of the system, security is difficult to manage, let along understand.
- True support for concurrent users, with proper record-locking, and item check-out. In a complex web based client-server environment, proper management of concurrent attempts to edit information is critical to ensuring authors do not stomp on each others work.
The Face of Custom Development
Heading down the custom development path is not for the faint hearted.
- Custom development is time consuming, and requires considerable diligence in scoping and planning requirements to avoid becoming an iteratively resource hungry monster.
- Web development is not like building desktop applications. The nature of the Internet creates inherently complex requirements from a client-server perspective. There are many layers of technology ranging from client-side browsed based code (such as DHTML, JavaScript, Flash) to Server-Side languages (VBScript, Jscript, PHP etc), query languages and procedures (SQL), server components (C, Java, VB) and more. Development of a sophisticated solution demands a clear understanding of all these layers.
- Managing web based application and database servers running a customised solution is more complex than managing a documented product.
- Testing on different platforms, and loads, can be extremely time consuming.
- Documentation may never be written to cover 100% custom systems, or elements of a customised system. Working with pre-existing building blocks that are not properly documented, or are really only code libraries, can be as time consuming as building from scratch.
- Support for a non-standard custom system can be painful to extract, and expensive to continue.
- Maintenance is more complex, more time consuming and more likely to be fraught with the problems of undocumented functions, that have been long forgotten by programmers that have moved onto other projects.
Working with a Proven Solution
Infomaxim is a proven content management solution and not merely a tool set. It is not a collection of loosely defined modules. It is a solid solution, that can be installed and operated out of the box.
- Deploying a product leverages the expertise of a team focussed on development of a solution that has enjoyed the attention and tuning of thousands of hours of development.
- As Infomaxim grows and expands to manage more enterprise information management requirements, the investment you make will become more valuable in other areas of your business.
- Through minimal levels of configuration, Infomaxim can meet the content management needs of a broad range of applications.
- Customisation of your business presentation layer is fast, thanks to a well defined flexible template system that is managed by Infomaxim.
- Deployment times are typically weeks not months, and cost a fraction of the product license cost – not a multiple of it – like some so-called heavy weight solutions.
- Training and support, plus the on-going commitment to provide you a working solution that can grow with your needs, is a core part of the Infomaxim product vision.
- Documentation is consistently organised, and growing as the system expands.
- Online training is growing and becoming more sophisticated.
In Comparison: Buy vs. Build
| Buy | Build |
| Lower cost of ownership | Higher cost of ownership |
| Rapid deployment | Lengthy deployment |
| Rapid integration | Slow integration |
| High level of functionality | Low-moderate functionality |
| Easy to use and maintain | Harder to use, complex maintenance |
| Follows best practices | Custom design |
| Sophisticated features | Lacks sophisticated features |
| Committed support | Contingent support |
| Upgrades and improvements | Limited or no upgrades |
About the Author
Andy Farrell is Managing Director of Gravitymax, a content management system developer based in Sydney, Australia.04/2007


Subscribe to the newsletter
|  |  |
More articles on this topic
|  |  |
 |  |  | Wikis have become an attractive alternative in content management. Whereas the structure of content in "real" management environments must be defined in advance, a wiki entirely adapts itself to meet content requirements... |  |  |  | It is only a small percentage of Web content that really makes a difference. It makes the sale, delivers the service, and builds the brand. This is the killer Web content... |  |  |  | The main reason to use a CMS is to more effectively manage a web site's content. The main reason to publish web content is to make visitors drop in. Consequently, the best CMS will not only run your site but also help you being found... |  |  |  | It is not a secret that the SaaS-Model is becoming increasingly popular on the the market because the benefits of using "Software as a Service" are too obvious: Easy to use, regular updates, access from anywhere - but what about the service? |  |  |  | DITA is not only an XML-based information architecture but more importantly it sets standards being increasingly adopted in content management technologies. DITA helps to categorise content as clearly defined components... |  |
 |  |  | Sleepless nights: Six years ago this week, I first came to understand the words “graduate student.” Over the span of five days, I spent a total of two hours sleeping - the rest of my time was hacking, eating, injecting caffeine into my bloodstream ... |  |  |  | As securitymanager.net discovered when it met with Tripwire’s Paul Gostick, configuration audit and control is more than just a good idea; it’s a business imperative for any organisation that wants to fulfil its business objectives successfully ... |  |  |  | Regulatory compliance has become the boardroom issue of the decade. Executives are paying closer attention because compliance affects all aspects of business operations. And while compliance traditionally focussed on legal aspects of managing policies ... |  |
|  | |  |