¿Qué solución de Portal debería usar?

Dime qué quieres hacer y yo te recomendaré una solución de portal que se ajuste a tus necesidades. Es que existen muchas alternativas Free/Open Source, Commercial Open Source and full Commercial, si nos vamos a LAMP pues existen muchas más y en el mundo .Net, otras más.
Por ello es importante que identifiques tus necesidades y con ello podrás seleccionar el producto de portal con la que construirás tu solución.
Pero antes definamos qué es Portal, es otra palabra de moda?, Portal o Web Portal?.

Enterprise Portal

Enterprise Portal

¿Qué es Portal?

From Wikipedia (http://en.wikipedia.org/wiki/Web_portal):

“A web portal or links page is a web site that functions as a point of access to information on the World Wide Web. A portal presents information from diverse sources in a unified way.
Apart from the standard search engine feature, web portals offer other services such as e-mail, news, stock prices, information, databases and entertainment. Portals provide a way for enterprises to provide a consistent look and feel with access control and procedures for multiple applications and databases, which otherwise would have been different entities altogether.
Examples of public web portals are AOL, Excite, iGoogle, MSN, Netvibes, and Yahoo!.”

¿Qué es Software Portal?

From SearchCIO.com (http://searchcio.techtarget.com/definition/portal-software):

“Portal software is a type of development tool used to create a portal (starting point) on a company’s
intranet so that employees can find a centralized starting place for access to consolidated
enterprise-related functions, such as e-mail, customer relationship management (CRM) tools,
company information, workgroup systems, and other applications. The package may be customized to
varying degrees of enterprise or individual specificity. Portal software is similar to intranet
software, but the end product typically features more complexity, automation, organization, and
interactivity. Although the end product is sometimes referred to as an intranet portal, it is usually
called an enterprise information”

¿Qué tipo de Portales existen?

Cada vez es más difícil clasificar un Portal bajo una categoría, ya que las mismas categorías están cambiando y los Portales cada vez tienen detalles comunes entre sí.
He tomado la definición de tipos de Portales de la http://www.contentmanager.eu.com que creo es muy amplia y acertada.

Aquí va:

1. Information Portals vs. Content Management Portals

Information Portals:
También llamado Vertical Enterprise Portals o Enterprise Information Portals consolida information de diferentes tipos y de diferentes fuentes.
Los usuarios de estos portales suelen consumir información, no son creadores.

Se suele usar para:

  • Hacer “mash-up” en general.
  • RSS, Información del tiempo, información financiera,
  • Acceder al correo corporativo, calendario, eventos, cursos, etc.
  • Ver información corporativa de la empresa, descargar formularios, etc.
  • Ver reportes, etc.

Content Management Portals:
Permite gestionar (crear, modificar, borrar, publicar, compartir, etc.) activos digitales (contenido, documentos, etc.) desde el Portal.

Se suele usar para:

  • Hacer check-in, check-out, hacer versionado, bloquear, etc. sobre los documentos.
  • Realizar un flujo de trabajo sobre los documentos.

2. Application Centric Portals vs. Content Centric Portals

Application Centric Portals:
Básicamente es un Portal que permite interactuar con las aplicaciones o sistemas de negocio de la organización, evita tener un acceso a cada una de ellas.
Este Portal permite acceder a todas las aplicaciones de negocio desde un sólo punto.

Se suele usar para:

  • Realizar los trámites, no sólo el registro o inicio de ellas.

Content Centric Portals:
Muy similar a Content Management Portal, en este caso, el Portal coge la información de las aplicaciones corporativas como los WCMS, DMS, DAM, RMS and standard Desktop applications.

3. Vertical Enterprise Portals vs. Horizontal Enterprise Portals

Vertical Enterprise Portals:
Son portales especializados que tratan una cierta temática y orientado a un público muy concreto.

Ejemplos:

Horizontal Enterprise Portals:
Son portales que tratan o muestran información de diferentes tipos y están orientados a todos los públicos.

Ejemplos:

¿Qué tipo de Portal quieres construir?

Por lo visto, a partir de los tipos de portal, una página web personal es un portal y una página de Facebook también.
Entonces, lo más conveniente es identificar el portal que queramos implementar y ver si encaja en las definiciones.

Web Dashboard:

  • Mostrar información en tiempo real financiera de la Bolsa de Valores.
  • Sacar reportes.
  • Ver histórico de ciertos indicadores.

Web para formación online:

  • Definir cursos, asociarle un temario, contenidos, pruebas, etc.
  • Ver actividad de los alumnos de las aulas virtuales.
  • Permitir la colaboración: en la edición de contenidos, organización, realización de pruebas, etc.
  • Permitir la comunicación: a través de chat, instant messaging, email, llamadas VoIP, etc.
  • Poder evaluar.

Web para vender productos de manera online:

  • Definir catálogo de productos.
  • Poder efectuar el pago.
  • Poder hacer un pedido, un regalo, etc.
  • Realizar una orden de entrega.
  • Notificaciones.

Web de trámites administrativos:

  • Definir el catálogo de trámites.
  • Tener un “inbox” donde recibiré mis notificaciones con el estado de mis trámites.
  • Tener una carpeta con todos los trámites que puedo realizar.
  • Tener una carpeta para poder guardar mis documentos que pueden ser usados en los trámites.

Web blog:

  • Definir categorías, tags relacionados a temas.
  • Editor que permita componer artículos en mi blog.
  • Tener elementos que me permita valorar la calidad, su aceptación, su importancia o simplemente que permita indicar si le gusta o no a alguien.
  • Tener herramientas que permitan hacer difusión de los artículos publicados en el blog.

Intranet:

  • Poder acceder al respositorio documental de la organización.
  • Poder acceder al correo electrónico, instant messaging, al chat, al blog, etc.
  • Poder acceder a algunas aplicaciones corporativas como SAP, CRM, ERP, etc.

Web corporativa:

  • Poder crear una estructura de información: quiénes somos, servicios/productos, noticias, contacto, etc.
  • Es la “carta de presentación” de mi organización en internet y como tal debe poderse encontrar a través de los motores de búsqueda o directorios de internet.

Red Social:

  • Poder tener un Wall, al estilo de Facebook, donde publicar toda mi actividad.
  • Publicar fotos, videos, documentos, ….
  • Añadir miembros a la Red
  • Tener herramientas de rápida comunicación y colaboración.

…sí, la lista es infinita, lo importante es definir el alcance de tu web y luego ver si existe tecnología para implementarlo.
De eso se trata el siguiente punto.

¿Qué Software de Portal puedo usar?

Existen muchos productos/software/tecnología para crear el Portal que querramos.
Hay 2 líneas de productos bien marcados, la diferencia es si están alineados o no a los estándares de Portales:

Los estándares de portales son:

  • JSR-168 (Java Portlet Specification v1.0)
  • JSR-286 (Java Portlet Specification v2.0)
  • WSRP (Web Services for Remote Portlets).

Entre los que están alineados a estos estándres son (orden alfabético):

1. Alfresco ECM (http://www.alfresco.com)
Es un Enterprise Content Management, Document Management, tiene funcionalidades de trabajo colaborativo, Record Management, Knowledge Management, Web Content Management y posee elementos sociales.

2. Apache Pluto (http://portals.apache.org/pluto)
De su página web:
“Pluto is the Reference Implementation of the Java Portlet Specification. The current version (2.0) of this specification is known as JSR-286. The previous specification version, JSR-168, covers version 1.0 of the specification. Pluto implements and is fully compliant with both the 1.0 and 2.0 specifications.”

Sí, es cierto, es una implementación de referencia de JSR-168 y JSR-286. Las librerias de Apache Pluto es embebido en implementaciones más especializadas como Apache JetSpeed, Sakai (para e-learning), etc.

3. Apache Jetspeed-2 (http://portals.apache.org/jetspeed-2)
Está basado en Apache Pluto.
De su web: “Jetspeed is an Open Portal Platform and Enterprise Information Portal, written entirely in open source under the Apache license in Java and XML and based on open standards”.

4. eXo Platform (http://www.exoplatform.com)
De su web: “eXo Platform 3.5 will enable social intranets and websites to be accessible in new ways, by adding cloud-readiness and mobile apps to the only User Experience Platform (UXP) for Java. Enterprise Java organizations will be able to more easily develop, extend and deploy modern enterprise portals, gadgets and mashups within a private cloud or in Platform-as-a-Service (PaaS) environments.”

5. Hippo Portal 2 (http://www.onehippo.com/en/products/portal)
De su web: “With Hippo Portal you can give secure and personalized access to content and business applications.”

Está basado en Apache Jetspeed-2, tiene una fácil integración con Hippo CMS, dotándole de funcionalidades de gestión de contenidos.

6. IBM WebSphere Portal (http://www-01.ibm.com/software/websphere/portal)
De su web: “IBM® WebSphere® Portal Server is the foundation offering of the WebSphere Portal product family, with enterprise portal capabilities that enable you to quickly consolidate applications and content into role-based applications, complete with search, personalization, and security capabilities.”

7. InfoGlue (http://www.infoglue.org)
Es una Plataforma que integra CMS y Portal. Está basado en apache Pluto.
De su web sacamos: “InfoGlue have step by step matured into one of the most advanced, scalable and robust Open Source content management / portal platforms available. Our increased focus on usability together with flexibibility in every area makes it suitable for a wide range of applications and organisations.”

8. Jahia (http://www.jahia.com)
Basado en Apache Pluto, es un software muy similar a Alfresco ECM.
Y de su web sacamos: “Jahia 6.5 is the comprehensive platform to meet these expectations: It is much more than a simple WCM, it helps your organization build cutting edge user experiences and virtually any type of web applications.” y
“Jahia includes an embedded portal server, which is based on the Apache Pluto reference implementation of the JCR Portlet API specification. The goal of this implementation is to offer support for integrators who need to embed portlets on content pages.”

9. JBoss GateIn (http://www.jboss.org/gatein)
De su web sacamos: “GateIn is a set of projects revolving aroung the main project called ‘GateIn Portal’.
GateIn portal is a merge of two mature projects that have been around for a while, JBoss Portal and eXo Portal.
It takes the best of both into a single new project.
The aim is to provide both an intuitive portal to use as-is and a portal framework to build upon depending on your needs.”

10. Liferay Portal (http://www.liferay.com)
De su web: “Liferay Portal is an enterprise web platform for building business solutions that deliver immediate results and long-term value.”

11. OpenPortal (http://en.wikipedia.org/wiki/OpenPortal)
De la Wikipedia: “OpenPortal is an open-source web portal project. The code was donated by Sun Microsystems and was initially based on the Sun Java System Portal Server 7.1 update 1 release.”
Es un proyecto abandonado.

12. Oracle Portal (http://www.oracle.com/technetwork/middleware/portal/overview)
De su web: “Oracle Portal 11g Release 1 offers a complete and integrated framework for building, deploying, and managing enterprise portals running on Oracle WebLogic Server. Oracle Portal’s unified and secure point of access to vital enterprise information and services improves business visibility and collaboration, reduces integration costs, and ensures investment protection.”

13. Sakai (http://sakaiproject.org)
Tiene 2 productos, Sakai CLE (Collaboration and Learning Environment) y Sakai OAE (Open Academic Environment) lanzado como un pre-release y en versión 0.1.
Sakai CLE está bsado en Apache Pluto.

De su web, Sakai CLE: “A full-featured system supporting technology-enabled teaching, learning, research and collaboration for education.” y
Sakai OAE: “The Sakai Open Academic Environment is a new system that embraces a new vision for academic collaboration.”

14. uPortal (http://www.jasig.org/uportal)
Basado en Apache Pluto, de su web:”uPortal is the leading open source enterprise portal framework built by and for the higher education community.”

¿Qué pasa con el software o los productos basados en PHP, Python, Ruby, … ?

Sí, lo hay, y muy buenos, en un siguiente artículo hablaremos de ellos y veremos su grado de madurez.

Entonces, ¿el Software de Portal está listo para ser usado?

Depende del tipo de Portal que quieras implementar, por lo general con los productos de la lista anterior podríamos implementar casi todo con un poco de esfuerzo en personalización y desarrollando algunos componentes a medida.
Los Portlets (componentes funcionales que se despliegan en los Portales JSR-168) dotan al portal de algún comportamiento propio del tipo de portal.
Por ejemplo, si quiero tener mi propia red social al estilo Facebook, pues primero tendré que instalar la solución de Portal (el contenedor) y luego añadir el/los Portlet/s propios de una red social tales como:
Wall Portlet, RSS Reader Portlet, Chat Portlet, YouTube Portlet, etc.

¿Qué características debería tener un software de Portal?

Existen diferentes características, entre ellas están:

1. Content Management
– Document Library
– Themes and Layout
– Web & webspace publishing
– Language support
– Knowledge management: taxonomy, categories, WCM, Wiki, etc.
– Indexing/Searching: Lucene/Solr

2. Collaboration
– Wiki
– Blogs
– Message boards
– Instant messaging
– Calendar
– Knowledgebase: versioning, creation of docs, print to PDF, file attachment, integration with OpenSearch, rating system, etc.
– Webmail client

3. Social
– Presence & Social: chat, friend list, activity tracker, etc.
– Alerts & announcements
– Mashup & integration: Facebook, iGoogle, OpenSocial, etc.

4. Security
– Authentication methods: LDAP, JAAS, NTLM, Facebook, etc.
– Authorization based on roles (Role-Based Authorization Control – RBAC)
– Signgle Sign On with CAS, CA SiteMinder, OpenSSO, OpenID, etc.
– Identity Management: LDAP sync, Oracle Access Manager, Facebook, etc.

5. Integration Platform
– UI Integration Platform: AlloyUI, jQuery, …
– Enterprise Integration Platform: Workflow Engine, Reporting Engine, SOAP, JSon, RMI over HTTP, …
– Site Integration Platform: XSLT/XML, iFrame, WSRP, …

6. Extendibility and easy Development
– SDK and/or API
– IDE for developing
– Support for portlets frameworks: JSF, Wicket, Spring MVC, ICEfaces, Vaading, …

7. Ready for Mobility
– Aplicación móvil nativa
– Usar el móvil como un client liviano.

¿Cuál es el grado de madurez de cada software de Portal?

Otra vez, depende mucho de las necesidades y los recursos con que se disponen, algunas soluciones de Portal tienen una buena base tecnológica pero carecen de funcionalidades especiales para WCM, por ejemplo.
Mientras que otras carecen de funcionalidades relacionadas a Redes Sociales, por lo que hay que crearlas desde cero.

Entonces, valoraré cada una de estas soluciones y añadiré aspectos relacionados a la fuerza de la comunidad y el tipo de licenciamiento (Free/Open Source, Commercial Open Source, Proprietary).
Esto no es una valoración técnica exhaustiva de cada software de Portal, es simplemente una revisión generalista donde trato de identificar quién es el más adecuado para cada necesidad.

Los aspectos a considerar serán:

1. Content Management
2. Collaboration
3. Social
4. Security
5. Integration Platform
6. Extendibility and easy Development
7. Ready to Mobility
8. Community (user forums, documentation, wiki, etc.)
9. License type (Free Open Source, Commercial Open Source, Proprietary)

Valoración:

No tiene:   0
Baja:       1
Media:      2
Suficiente: 3
Buena: 	    4
Excelente:  5

Finalmente el resultado es este:

Enterprise Portals - Valoración

Enterprise Portals - Valoración

Haciendo una rápida revisión del software para Portales el producto ganador es Liferay Portal.
Con Liferay puedes construir cualquier tipo de Portal, inclusive redes sociales, portales de e-learning y portales de e-commerce, etc., sin embargo, su punto débil es que aun no dispone de ninguna aplicación nativa para android o iphone, sólo es posible usar el browser del móvil y esperar que se use el liferay theme para iphone.

eXo Platform está en una segunda posición y realmente es un producto muy potente, tiene aplicaciones nativas para iPad, iPhone y Android.
Su punto débil comparado a Liferay es la fuerza de su comunidad.

Si mi propósito es crear un Portal de e-learning con todos los elementos sociales y colaborativos, pues la primera opción es usar Sakai. Hay iniciativas de coger los Portlets de e-learning de Sakai y llevarlos a otro contenedor como Liferay, pero esto no es necesario.
Sakai está basado en Apache Pluto y éste a su vez implementa WSRP (invocación remota de Portlets vía webservice) con lo que no es necesario migrarlos, basta con invocarlos remotamente.

Si queremos crear una Intranet Corporativa, pues todas las opciones son buenas, pero si queremos que tenga funcionalidades de Gestión Documental, pues Alfresco ECM es nuestra mejor opción.
Tampoco debemos olvidarnos de Jahia, Hippo y eXo, todas son buenas opciones.

uPortal destaca por la fuerza de su comunidad, detrás de él se encuentran el grueso de universidades y redes académicas norte americanas.
Como producto, pues a nivel tecnológico tiene de todo, sobretodo tiene una perfecta integración con CAS (solución de autenticación, autorización y SSO) que también es producto resultado del esfuerzo de su comunidad.
Particularmente a mi me ha agradado mucho porque es una alternativa muy ligera de Portal, en comparación con Liferay por ejemplo. Lo es también Hippo Portal (Optimized for low memory footprints and modest hardware requirements: Light-weight Installer 38MB including Tomcat 6, Light-weight Spring Portal Framework) y Apache JetSpeed-2.

Finalmente, si queremos crear una solución de Portal más potente y no queremos crearlo desde cero, pues una buena alternativa es usar como base Apache Pluto, Apache JetSpee-2 o JBoss GateIn. Estos tres son buenas implementaciones de los estándares de portales y muchos fabricantes suelen embeber dichos productos en sus productos avanzados.
Como es el caso de Pentaho (solución de Business Intelligence), el producto embebe JBoss Portal y sobre esto crean un Dashboard.

Conclusiones:

  1. Si quieres crear un Portal Corporativo, una Red Social, etc. que sepas que existe software para hacerlo de manera rápida y fácil.
  2. Si quieres crear tu propia solución de Portal, puedes embeber uno existente como Apache Pluto.
  3. Si tu objetivo es tener un portal especializado (portal vertical) inmediatamente, pues lo mejor es usar alguno ya existente para dicho propósito, por ejemplo: Alfresco ECM, Sakai para e-learning, etc.
    Pero si dispones de todo los recursos necesarios, lo mejor es elegir aquel que nos provea de herramientas para desarrollar o personalizar rápidamente funcionalidades que no tenía antes, ejemplos: Liferay, eXo, WebSphere Portal, Oracle Portal, etc.

  4. Si tu organización está alineada al espíritu Free/Open Source y no necesitas funcionalidades avanzadas, pues las mejores alternativas son Apache JetSpeed-2, Jahia, Hippo, etc.

Referencias:

**** English version here. ****

@Chilcano

Tagged with: , , , , , , , , , , ,
Posted in Portal
4 comments on “¿Qué solución de Portal debería usar?
  1. Magic Quadrant for Horizontal Portals (2010)
    http://www.gartner.com/technology/media-products/reprints/liferay/206214.html

    Liferay y JBoss Portal (GateIn) son las únicas soluciones FOSS presentes en el cuadrante.

  2. Chua Wen Ching says:

    Any english version of this one?

  3. […] Spanish version here. **** Posted by Roger Carhuatocto Filed in PORTAL Tags: Alfresco, eXo, GateIn, Hippo, InfoGlue, […]

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Archives
%d bloggers like this: