Monday, March 08, 2010

CMS of what kind?

stumbled upon "Microsoft SharePoint: The CMS Killer" blog post. A personal view how MS SharePoint fits for ECMS use cases.
The results might be wrong or write depending on what your understanding of CMS is.


There is no common understanding of the the term CMS and even not for the derived term ECMS.


CMS means Content Management System. Based on this definition it is a application (system) to manage content. Thats trivial but what does content really means? Content is all and everything. Most of the content can be managed within IT systems as well.


General categories of content maintained by IT applications:
  • Structured content
    Content maintained and structured as a collection of data (order or offer data). Content in this context means a collection of records with given structure
    Those type of data are typical maintained with applications called ERP or other kind of systems of this type (e.g. ALM systems).
  • Unstructured content
    Content maintained within documents. The content within the document is not addressable outside the application the document was created with (the semantic makes only sense in one specific usage scenario).
    Those type of data are typical maintained with applications called DMS or Web-CMS (maintaining HTML) systems.
The propagation of xml introduce a third categorie of content:
  • Semi-structured content
    Content used to create documents (information products) of some kind. The content within the document is addressable outside the application the document was created with.
    Content maintained as system independent instance of data (e.g. order or offer data).
    In both cases XML is the common format today.
Each CMS has a history in one of the mentioned areas and has its specific strength and weakness for usage in different domains.

The corresponding consultants knowing the mentioned issue and trying to create domain specific names for specific usage of systems
  • DBMS
    Main goal is to maintain relational data and used by dedicated applications on top.
  • DMS
    Main goal is to maintain documents
  • Web-CMS
    Main goal is to maintain intranet / extranet / internet sites
  • ECMS
    Main goal is to provide enterprise ready workflow and records management on top of DMS feature set
  • CCMS
    Main goal is to maintain content stored in XML for single-source publishing
  • ?
    anything i missed, of course there are plenty of buzzwords / domains out there describing mixed-scenario usage.
Because non of the mentioned definitions are "formal approved" the specific vendors use the term with most customer attention in their target domain and each vendor tries to fulfill use-cases from other domains as well. Because each CMS has a particular implementation history the usage in most cases is limited even if the vendor claims to cover most of them.


  • a C-CMS vendor might support xml usage and publishing very well but does not scale if enterprise workflow or records management is required.
  • a ECMS vendor has enterprise BPM support build in but lacks of sophisticated xml semantic and functions.
  • a Web-CMS makes creating your Internet presence easy but lacks the usage of the same content for printed documents
  • .....

This reflects the current state of content management. I expect in the next few years that new and maybe existing systems will move into the semi-structured content area and some of them might succeed. They might reach the final goal that content can be create, maintain, re-purpose and publish based on different user communities from one single source.

Until that stage is reached....coming back to initial "Microsoft SharePoint: The CMS Killer" statement. Ask the author what kind of content use-case he has in mind and you can validate the statement.

Sunday, March 07, 2010

we live for our customers....


do you work with customer centric mindset?
do you work in a customer centric organization?

your first and quick answer might be yes, of course. my company does everything to make the customer happy, thats where our revenue comes from. of course.....

That was my first thought as well.

Than i looked at several websites incl. my own company one. you find service descriptions, white papers, success stories, awards -- everything focus to promote the own portfolio of services / products.

Have a look at your company's website. Looks it different?

To understand the customer means to understand their challenges, needs and questions they have. You have to answer the questions: what is the business value you can bring to your customer instead of leave them alone to select  a specific product or service you offer.

What is the reason for that?

It is much harder to define and understand the problems your customer have and how you can provide business value for them using their terms and definition. Instead showing what you did and do and let the potential customer decide if that might help them is much easier.

By the way you will be much more successful if you at least try to think and follow the problems your potential customer have to solve....

top most dangerous programming errors

the list "Top 25 Most Dangerous Programming Errors" makes clear that the software domain still has much to learn. do you involved in software development projects either as project manager, software architect or software developer? if so you are sure that the mentioned errors not happen in your daily work or the subject of your daily work?

i think it is still much work to do until software development can be called a "proofed engineering discipline".

the more application will be hosted in the cloud the more such kind of issues will be mission critical for the target group of the application.

by the way the list is a good reminder of low level non functional requirements and topics for peer-review....