Escolar Documentos
Profissional Documentos
Cultura Documentos
Benjamin Chevallereau
Summary
Zaizis Background Alfresco Platform
quality phase
development phase packaging phase deployment phase maintenance phase
Conclusion
Implementing Alfresco as a Content Platform
Zaizi
Zaizi is a consultancy and systems integrator specialising in assembling smart content solutions using Alfresco, Liferay, Ephesoft and Solr. Our team have experience building and delivering a wide range of enterprise solutions including document and web content management systems, portals and corporate extranets on Alfresco. We are an Alfresco certified Platinium Partner, Ephesoft Platinium Partner and Red Hat Enterprise Linux Ready Partner.
Alfresco Platform
Context
Company
Company
Company
Dept A
Dept B
Dept A
Dept B
Dept C
New york
Paris
Chicago
London
Singapore
Development phase
Version Control System
Alfresco has made Spring the core foundation of its architecture. So, SpringSource Tool Suite seems to the best tool to develop on Alfresco.
Development Workstation
JRebel is a JVM-plugin that makes it possible for Java developers to instantly see any code change made to an app without redeploying. It allows to save a lot of time!!
Use a Maven repository to easily create new module, to package it and to deploy it locally or remotely.
Best Practises
Always use the extension mechanism provided by Alfresco using extension folders during the development part. Always package as AMP or JAR and test again after: Its usual to forget some files during these steps... Package configuration files related to the same part in a same AMP module to increase the reusability of these modules. Always test extension locally, using, for example JUnit. Dont forget to use namespaces everywhere its possible: Content model JAVA classes ...
Development Workstation Version Control System
We use Maven to package locally and to deploy locally or remotely. We use Unit and JMeter locally and remotely to: Test that everything is running; We use sonar for code quality to: Check that coding rules are respected; Launch unit tests;
Development Workstation
Best Practises
All developers should define a JUnit test for each module. These tests should be executed on each development workstation and on a testing server. One or several JMeter scenarios should be defined for performance tests.
Development Workstation
Packaging phase
Version Control System
STS Projects
Create an Eclipse project per module. Package a coherent set of customisation in a same package, called an AMP : Alfresco Module Package.
AMP
Generate
Best Practises
Its important to understand the extension mechanism provided by Alfresco. AMP modules or JAR files can be used to package customisation depending of the customisation nature. Maven can be used to create RPM including several modules. These combination can be unique for a company or a department. Of course, these package must be tested entirely to avoid conflicts between modules.
Version Control System
STS Projects
AMP
Generate
Deployment phase
A RPM module contains several AMP modules developed and tested individually. These module contains, of course, Alfresco and Share too.
Dept A
Dept B
Dept A
Dept B
Dept C
Best Practises
Dept A
Dept B
Dept A
Dept B
Dept C
...
Singapore
New York London Paris Chicago
Dept B
Dept A
Dept B
Dept C
Best Practises
JMX
In production, JMX should be used with caution. Modifications are not persisted after a server restart.
New York Singapore London Paris Chicago
In production, JMX is very useful to enable/disable logs to identify a problem, or to start some automatic jobs. In development and test phase, JMX can be used to define the right configuration of a server dynamically. AppDynamics and JMeter should be used to monitor servers but to identify some performance problems too.
Dept A
Dept B
Dept A
Dept B
Dept C
Big picture
JMX
Version Control System
Development Workstation
STS Projects
AMP
Generate
Dept A Dept B
Dept A Dept B
Dept C
Contact us
Benjamin Chevallereau, Solutions ArchitectZaizi Limited222 Westbourne Studios242 Acklam RoadLondon W10 5JJ
Thank You