The interesting aspect of the design of a CMS is that the same code serves all the pages of a website which is built using the CMS. The content of the page are retrieved from the database, and they are mixed with the visual theme, the menus, other parts of the page such as headers and footers before serving to the browser.
The Xsemble flow diagram captures this aspect very well. A process node (called Method node in Xsemble terminology) that follows the START node (at the top) examines the URL requested, and makes the decision of whether it is a site page, a blog article or a blog list page. It forwards the control (gray lines) to the appropriate part that executes that functionality. The single green node seen on the left side (a Page node) serves all the pages of the web site. The incoming blue arrows from the circles represent the data that the node gets to be able to show that. Thus, this flow diagram captures the working of a CMS very well.
The other subprojects contain flow diagrams that cater to the admin and the authoring functionality. In general, this kind of separation of concerns makes a design very easy to understand for anyone who wants to review it. Further, as Xsemble flow diagram would stay up-to-date with the actual working of the software through its life, this understanding is accurate and reliable.
The project documents below give the details such as the use cases considered, corresponding screen layout (wireframes) and the detailed explanation of the Xsemble flow diagrams. This work is the produce of a group of students who did their internships with Acism. The complete flow diagrams are available in the form of Xsemble workspaces. If you need these diagrams, please contact email@example.com.