What is CMS?
CMS stands for content management system. Content management is a set of technologies and processes required for the collection, managing and publishing of information. This information can be accessed digitally. The content management system is software which helps in creating, editing, updating, managing, maintaining and distributing content or information. A content management system usually has two ends, administrator’s end and client’s end.
What is custom development?
In custom development, you develop the application from scratch. You have nothing ready for use. You follow the software development life cycle from A to Z for making an application.
How to decide which one should be chosen?
When a client asks you to make a system, choosing tools and technologies is the most important and critical part. The decision is most important because it will decide how you will proceed with a project. It gives you an idea about availability of effort required, resources required and environment. So, the following points will help you in deciding either to choose a CMS or a custom website should be developed.
There is a big range of CMS available in market like WordPress, Sitejet, Drupal, Couch, ProcessWire, Joomla etc. Some of them are generic and some are specific purpose. For example, if we talk about phpBB, it is specific CMS. It helps us in building and managing forums. If we talk about Sitejet, it is business websites oriented. But as compared to them, if you study about ProcessWire, you will find it generic. WordPress is also a generic content management system on which multiple websites can be built. The following points should be considered while choosing one of them.
- How much budget do you have?
If budget is limited, you should choose CMS over custom development. Otherwise, you may proceed towards custom development after analyzing the other parameters.
- How much time do you have?
Time is one of the most important factor. If you have more budget but time is less and not enough to complete the project, you will have to choose CMS. Because custom development takes three times more time as compared to CMS.
- How much effort do you have?
In this context, effort means the availability of required experts. Because even if you have more budget and time, but if you don’t have required experts in team, you will not be able to develop the project from scratch. In this situation, CMS will be a better decision.
- What are the technologies demanded by the client?
Though a large number of CMS are available in market built on different technologies. But what if your client demands the project to be developed in one of the recently launched language or framework? In this situation, CMS won’t be suitable at all. But if a CMS is available built on that technology, you should prefer to use CMS to save your time.
- What should be the durability of application?
Some of the projects are required for less time and some for more time. For example, if a client has to develop a social platform like Facebook, custom development should be chosen because he would like to run the software for years. So, making a custom application with documentation will make it secure for him to get his project maintained as long as he wants. Because all the CMS are not maintained. But if it is a website of event happening in few months, CMS should be chosen because this app won’t be required after that event. Hence, no maintenance would be required.
- Cost Estimation:
Some CMS are for specific purpose. If a client does not mention technology, you can simply compare the requirements against various CMS available. For example, if a client wants forum, you can use phpBB instead of developing it from scratch because it can be done in no cost. But there are two categories of CMS, one is open source and other is proprietary. In case of proprietary CMS, you will need to compare the price of license and cost on custom development and choose the one with low cost.
At current, the craze of extending software is increasing day by day due to innovations. If your client can afford future maintenance expenses, custom development is good option. But if the client has limited budget and he wants to keep extending features of his application, hybrid decision is good option. Because most of the CMS allows plugins. You can install regular functions using existing plugins in market, however, if the plugin is not available in market, you can develop the plugin and integrate it.
- How many users will use this app?
You must have an idea about how many users will use an application. Because CMS are good to a limited number of users, but if there would be a large number of users, CMS is not a good option. Because a custom developed application can be optimized in a much better way.
There are a number of more factors which must be considered but the above factors are the foundation of your decision. Remember, only the right decision leads to the best results.