Skip to main content

Alfresco experience contd ...

With regard to Alfresco, I am trying to use Alfresco share capability to enable small and medium companies to have their own collaborative ECMs. I feel, Alfresco Share is decent enough to do the job. I am using 3.4b version. I have done look and feel change to the theme, the changes are kept to color and logo only. Even though the layouts can be tampered, I feel and suggest not to tamper with.

Alfresco share uses FTL for UI layouts and JS for providing dynamic behavior to the UI. One needs to spend a lot of time to in decoding the links between context files to do even the smallest adaptation that may be required. Once, you know how to read and related context files, then this exercise becomes pretty easy. I hope, that good documentation may ease the process, if you go for enterprise edition.

It is important to understand the business intent before jumping guns on customization. For example, the firm wants to maintain the daily recruitment tracker to find out how many candidates are offered, rejected, so that candiates with the status 'rejected' can be sourced to some other company's requirement. If we take 2 steps back and analyze, the firm needs a mechanism to find out those candiates with rejected status. The maintainence of the daily tracker may not be the actual requirement. In such cases, one can model the solution using simple rules and spaces in the document libray of Alfresco.

Alfresco share is nicely structured as components, templates, web scripts, site data and so on.. Whats confusing is the the folder structure repeats itself in more than one place, leading to more mapping work for the analyzers. The central idea of the layout is to define page component, page template in which page layout will be provided, then use java scripts to render the page controls. I personally felt, the developers have over-designed this to provide the feel of easyness. I would definitely think, simple things would have been better.

We can provide customized data list creations like Sharepoint's data lists. But, a big minus is that we cant filter the list based on the parameters. If we need to customize, we have to put lot more efforts in finding out the actual way of doing it inside Alfresco share. As an alternative, I would design front end components like page, js, template to fit alfresco share requirments and model the backend services as a separate war deployed in the same alfresco container. The data exchange can be REST based. In this way, we can augment missing functionality by writing extended application.

What goes well with Alfresco share, is its inbuilt features are good enough to implement business processes and document management without much customization. Alfresco exposes the APIs so that one can use it as document repository. This is good for organizations who already have portal solutions and want to enable it for DMS.

I am still exploring .... May be I find easier way to work with Alfresco. Opinions may change !!!

Comments

Popular posts from this blog

Key to adopt open source product

Friends, I am working on business solution implementation on open source product called Kaltura. Kaltura is a media management solution and has loads of features that compel any business to take a peek into it. More-over this is the only complete end-to-end open source software available to handle digital assets. But it comes with its own head ache. Considering its open source, its understandable. I feel, handling these would ensure you the success in your open source product implementation. 1. In my opinion, before adopting any open source software, build the capability to deal with the inconsistency bundled in the open source software. 2. I would avoid involving external consultants for 2 reasons.      a. I am not sure, they would bring necessary expertise on to table      b. I fear that there would be little ownership, they will not see big picture of my business (neither I am interested to share it all) 3. Alternative to that is to build the team that is capable of debuggin

Secure your application on cloud

Handling sensitive data Define sensitive data for your application. Classify as sensitive data and confidential data. Sensitive data is something like password, credit card account number, something that you should not compromise at all. Confidential data could be your customer’s health record, something that requires your permission before its usage. So, you need to define sensitive data in the context of your application. There are many ways to protect the sensitive data in transit; the easiest way is to use SSL. This is nothing different than handling sensitive data in any traditional application.   However, make sure you apply this rule while designing your application for cloud deployment. Alternatively, you can encrypt the sensitive data and transport. Be noted that any kind of protection you design, will have implications on performance. However this is ignorable considering the nature of sensitive data. If you just want to protect your data from being tampered during

Essential GCP services for a new age application

Identity and resource management IAM  Identity aware proxy Resource Manager Stackdriver Monitoring Stackdriver Monitoring: Infrastructure and application monitoring Stackdriver Logging: Centralized logging Stackdriver Error Reporting: Application error reporting Stackdriver Trace: Application performance insights (latency) Stackdriver Debugger: Live production debugging Development management Cloud Deployment Manager: Templated Infrastructure deployment Cloud Console: Web based management console Cloud shell: Browser based terminal/CLI Development tools Cloud SDK: CLI for GCP Container registry: Private container registry Container builder: Build/Package container artifacts Cloud source repository: Hosted private git repository Database services Cloud SQL: Managed MySQL and PostgreSQL Cloud BigTable: HBase compatible non-relational DB Cloud Datastore: Horizontally scalable non-relational (ACID) Cloud Spanner: Horizontally scalable relational D