Contents |
SIDE-Labs Overview
Jean-Christophe Kermagoret
Introduction
SIDE-Labs is:
- A set of graphical tools
- For system integrators and developers
- To produce automatically Alfresco based applications
In a quickier and better way than manual programming
The pain
Alfresco is powerful, but:
- Developing even simple application is a real pain
- It's difficult to know what to do
- Lots of xml files to configure
- It's even difficult to do when you know
- Lots of xml lines of code to write (1 000s to 10 000s)
The Pain (2)
No developer tools to help you:
- To design
- To generate
- To test
- To deploy
The solution
A set of graphical tools to assist you during development process:
- To design each part of your Alfresco application
- To generate automatically content-types, forms, workflows and views
- To test
- To deploy
A set of server extensions
Benefits
- Rich feature set (SQL, Advanced forms
- Productivity
- Quality
- Agility
Key features
- Development/Configuration Tool
- Graphical tools
- Forms engine
- Paperless engine
- Ready for industrialization
Architecture
Concepts
The complete architecture is defined on KerBlue (http://www.kerblue.org). SIDE implements a Model Driven Software Development process (MDSD), which is par of Model Driven Engineering (MDE).
Figure 8.1. KerBlue Architecture
Technical point of view
Sustainable Virtual Application
Figure 8.2. KerBlue Sustainable Virtual Application
Sustainable Virtual Framework
Figure 8.3. KerBlue Sustainable Virtual Framework
Target Technical Platform
Figure 8.4. KerBlue Target Technical Platform
SIDE
Integration architecture
Figure 8.5. Integration Architecture
Front office integration (FOI)
Portals
- Liferay, JBoss, ...
CMS
- Drupal, Joomla, ...
Specific Application
- J2EE
- .Net
- Php, Ruby, …
FOI – Javascript frameworks
- dojo
- jQuery
- ExtJS
Back office integration (BOI)
Direct Access
- JDBC, ODBC
BOI – Office applications
- Excel, Access, ...
- OpenOffice, ...
BOI – Report engines
Open source
- Birt, JasperReports, …
Commercial
- Cristal Reports, …
BOI – Business Intelligence
- Pentaho, SpagoBI, ...
- BO, SQL Server, SAS, ...
Methodology
Building an application with SIDE-Labs implies the following steps:
Figure 9.1. SIDE Steps
Input Data
Storage
- Design data model through Data Diagram
- Generate Alfresco model through Data Generator
- Deploy model on your Alfresco instance
Forms (Form Diagram)
- Design
Process Data
- Validation
- Design processes through Workflow Diagram
- Subprocesses
- Actions based on javascript, java or webservices
- Usual workflow elements
- Generate jBoss & Alfresco model through Workflow Generator
- Deploy jBoss & Alfresco models on your Alfresco instance
- Test and enjoy
- Design processes through Workflow Diagram
Browse Data
- Navigate
- Design the application through the Portal Diagram
- Generate the Liferay or Alfresco share portal through Portal Generator
- Deploy models on Liferay or Alfresco Share on your Liferay and Alfresco instances
- View
- Design
- Generate
- Deploy
Analyze Data
- Reports
- Business Intelligence
Integration
Forms
Webservice
Figure 10.1. Simple form example (without CSS)
With CSS
- #RequestForAbsence-1 {
- background: url(icons/nuvola/48x48/apps/colors.png) no-repeat scroll top right;
- }
Figure 10.2. Simple form example (with CSS)
Integrated form
Figure 10.3. Simple form integration (with jQuery)
Views
Webservice
Figure 10.4. Simple datagrid example
Integration
Integration in a jQuery modal window for example
Figure 10.5. Simple datagrid integration (with jQuery)






