CMS Driven Applications make use of content as a primary driver for the functionality and are built on top of a content management system.
CMS Driven Applications
Stakeholders in an Application
Decision Makers
Project Owner
Architects
Developers
Users
Maintenance and Support
CMS Driven Applications
Application Types
Shrink Wrapped Applications
Custom Built Applications
Custom Built Shrink Wrapped
CMS Driven Applications
Life Cycle of a shrink wrapped application
Major Release
Customer buys the application
Customer adapts to the application
CMS Driven Applications
Life Cycle of a shrink wrapped application
major release, customer buys it, customer uses it and adapts how he/she works around the software (there is a need for this type of application, the user wants to use it the way it's built or uses the software of the competitor instead)
Application is built in conjunction with the stake holders, then released. Application is released in a partial state if it already helps in the business process, development continues until the full application is ready, features are frequently added over the life of the application to adopt to the business.
CMS Driven Applications
Life Cycle of a custom built application
Partial Release Build Business Change Final Release Application Change
CMS Driven Applications
What happens with the team once the major development is completed?
Reassignment of core team to other projects
Contractors may disappear
New team members are assigned for maintenance and support
CMS Driven Applications
How complicated are changes?
Development team has to be involved for small changes
Application has to be released and fully retested to make sure it is still functioning properly
Resources have to be drawn back into the project
CMS Driven Applications
How big is the team that makes changes?
Full team including developer
CMS Driven Applications
Lesson from the above:
Don't forget the maintenance aspect when building an application!
CMS Driven Applications
Zachman Framework
CMS Driven Applications
CMS/WCM is addressing this problem for the web site building use case
Developer is not involved in production changes
User can make changes
Fast reaction to business needs without the burden of full development cycle
CMS Driven Applications
Magnolia before 4.0:
User can change content
Developer manages the overall look
Release Cycle is needed for new look
CMS Driven Applications
Magnolia before 4.0:
CMS Driven Applications
Magnolia after 4.0 with STK:
CMS Driven Applications
Advantages:
Very flexible
Inexpensive maintenance and support
Fast release cycles
Disadvantages:
Too much flexibility can introduce errors
CMS Driven Applications
Why not do the same for application development?
CMS Driven Applications, why?
What is a Content Management System?
A Content Management System (CMS) supports the creation, management, distribution and publishing of corporate information.
It covers the complete life cycle of the pages on your site, from providing simple tools to create the content, through to publishing and finally to archiving.
It also provides the ability to manage the structural layout of the site, the appearance of the published pages and the navigation provided to the users.
Today's web sites also contain or are applications!
CMS Driven Applications
Definition:
A CMS Driven Application is an application which includes as many steps as possible into the content part while having the logical part as a base. This allows for easy changes and maintenance.
CMS Driven Applications
Building the Application
The team builds a more modular application, taking data and configuration from the CMS and render it for its application purposes
The team then uses the modules created on the CMS to build out the actual application
CMS Driven Applications
Making changes to the application
Changes can now be made by modifying content/configuration in the CMS directly. Changes can be viewed immediately and can be made by business people, designers or developers without redeploying.
CMS Driven Applications
Easier Maintenance Cycle
Application changes are now managed the same way as content changes.
CMS Driven Applications
Less to build
Magnolia already comes with security, caching, deployment and activation work flow
Less risk for critical security issues
Developers focus on business logic and build more reusable code.
CMS Driven Applications
CRUD example
(create, read update delete)
CMS Driven Applications
Module built:
Generic CRUD module connecting to a database or a repository, including form handler, error messages, operations, added GUI designer to create the forms.
Module can be reused for any form screen, forms can be managed by users, no developer needed to make changes (better error messages?)
CMS Driven Applications
Magnolia Project References:
Healthcare web site for costco members
swissroots – a community web site
Open Enrollment – a healthcare application platform
Web Content Management has given the web developers more
Web Content Management has given the web developers a way to control all aspects of a website instead of being held hostage by the web team to make changes to a site. Todays business applications are facing a similar challange where changes to an application have to be completed by the development team. Moving to a CMS driven application infrastructure allows this control to move from the developers to the business team.
Building on a solid foundation such as Magnolia for your application development brings great benefits in security, scalability, time to market and maintenance of a business application. less
0 comments
Post a comment