Jun
21

If we need to create small applications with specific requirements how could
CMS provide a convinient solution ?

In most web application development we notice the existence of common
requirements something that all websites should use like a database abstraction,
template manager, multiple debug levels, events manager, locale support,
installer … etc.

  • A website use generally one database type, so why do we need all RDBMS to
    be supported in a single application ?
  • A website that use english only locale, don’t need to run with all
    languages, but can add them anytime.
  • Install, update or upgrade is always a problem with CMS solutions. Most
    solutions aren’t developed with the idea to be extended this concern the
    installer solutions itself.

So what’s are we inventing new ? The idea is to provide a flexible CMS
solution on demand. And what’s on demand mean ? It mean that there is a server
that manage the CMS code development and allow to choose "easily" which package
you need or a CMS Wizard that guide you to create your website. This will be
ideal with a good CMS architecture.

This CMS have four main parts : Core, modules, plugins and templates.

We go back to the examples that I’ve given in the first part of this article
:

  • Blog = CMS {Core + Modules [categories + articles (plugins comment +
    anti-spam + trackback …) + users (plugins registration + ….)]}
  • Ad Management softwre = CMS {Core + Modules [Ads (plugins stats …) +
    Compains (plugins stats …) + users (plugins registration + purchase …) +
    Basket]}
  • E-Commerce = CMS {Core + Modules [Products (plugins : documentation,
    download, stats, galery …) + Users (plugins registration + purchase+support
    …) + Basket + …]}
  • News portal = CMS {Core + Modules [categories + articles (plugins comment
    ….) + users (plugins registration + ….)]}

We can do this with almost all kind of web solution, we write it as a
mathematic equation and we’ll notice that the difference between distinct
solution is the plugins and the required modules.

The problems will be the maintenance of this kind of solution, and how to
combine categories module with product, then with articles or both ? Yes that’s
what I was talking about in the title of these articles "Patterns". And about
the install and upgrade of this solution, XML registry will help to keep
informations updated of current packages and so we could manage easily to get
upgrade when available and install them without stopping the website. Or maybe
it will be stopped for few minutes of the upgrade automaticly then on finish the
website is back working.

In this way we’re creating flexible solution, that can fit more needs than
classic solutions. It is not a framework for developers only or single web
application for specific use. A solution that target a BIG audience.

Of course the idea require to be more developed, specially code requirements,
documentations, architecture, website, packages managements …etc …

Conclusion

As continuation of the first article, CMS is becoming a SCAM project because it
was not designed to fit all websites needs, even if all websites are using
finally CMS! like when we called AJAX Javascript+SSSL (Server Side Scripting
Langage) it was like giving a new life to Javascript. CMS also need to be born
again, but think with me for a new name !

Author : Ben Yacoub Hatem

Tags: No Tags

No Responses

Leave a Response

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>