La pregunta que en principio es técnica, realmente termina volviéndose en casi que filosófica, ¿en que casos sería mejor realizar un desarrollo a la medida con ASP.Net y no utilizar SharePoint?
Mi primer impulso es contestar que SharePoint representa una excelente alternativa todo terreno para implementar casi cualquier tipo de solución empresarial a nivel de intranet o web publica, de acuerdo a como se realice el esquema de desarrollo y programación al respecto.
Pero ¿qué representa implementar SharePoint?
Lo cierto es que para implementar SharePoint, incluso su versión gratuita (WSS en el caso de SP 2007 o la Foundation para SP 2010) se debe contar con una plataforma de servidor preferiblemente integrada a un dominio, esto representa que al menos se debe tener una máquina en la que se pueda montar todo esto (Dominio, Base de datos y SharePoint).
Dejándome llevar por mi primer impulso, diría que al igual que el lado oscuro de la fuerza, SharePoint es más rápido, más fácil, más seductor, pues puedo integrarme fácilmente con el paquete de office o con el directorio activo, incluso como un manejador de contenidos, integrando un versionamiento de documentos, flujos de trabajo, posibilidad de crear un portal de la nada en unas pocas semanas, manejo de roles de usuarios, audiencias, posibilidad de integrar un espacio tipo red social, y un montón de etcéteras que para un adepto a esta plataforma como yo, la frase sería “montémoslo sobre SharePoint”.
Pero no siempre lo que consideramos lo mejor no necesariamente representa la opción más viable. Pensemos en lo que mencioné antes: implementar SharePoint requiere servidores propios, que pasa si lo que deseo es montar mi aplicación en un hosting alquilado, o si mi aplicación va a ser comercializable, o si es una integración a plataformas no Microsoft (Aunque SharePoint permite ciertas integraciones con otras plataformas), o si mi aplicación es de tipo solamente requiere un simple login y password para acceder a ciertas funcionalidades no muy elaboradas, en esos casos es algo que necesitaríamos replantearnos si sería más recomendable crear nuestro propio código, con sus respectivos servicios y librerías.
A la hora de realizar una consultoría o de ver la viabilidad de un desarrollo la recomendación siempre es ver la relación Costo – Beneficio que existe en implementar SharePoint o desarrollar independiente a SharePoint, si en el momento de ver las alternativas, pasa por nuestra cabeza la posibilidad de utilizar ésta plataforma, quiere decir que probablemente sea una buena opción, más aún si el desarrollo es para una empresa que por lo general busca ciertos esquemas estandarizados.
Si en el planteamiento de la solución SharePoint no aparece opcionada, probablemente es por que los requerimientos son simples o por que económicamente no es viable.
Para finalizar expongo un caso de la vida diaria: En un punto específico me fue necesario diseñar y desarrollar una aplicación que permitiera a un equipo de trabajo registrar el número de horas por día, lo que realizó y la fecha, esto asociado a un proyecto que a su vez estaba asociado a una empresa y una serie de usuarios que tenían diferentes niveles de acceso ya sea para registrar información o revisar reportes, ocurrió lo siguiente:
Al hacerlo sobre ASP.Net me tomó cerca de 3 semanas tener una versión trabajable ya que necesité crear el esquema de la base de datos, los formularios, las páginas maestras, las librerías y los demás elementos que requiere la aplicación.
Hice la prueba, implementando este mismo esquema a punta de listas de SharePoint y un par de formularios personalizados utilizando SharePoint Designer, eso me tomó cerca de 4 días y ya estaba funcional, probado y listo para ser usado.
Hasta ahí SharePoint podría parecer la mejor opción y sí sería la mejor opción si el esquema debe ser implementado dentro de una intranet empresarial, o asociado con los parámetros y políticas restringidas de una empresa.
Volviendo a este ejemplo, en mi caso deseaba utilizar esta aplicación fuera de este ambiente y darle acceso a usuarios de diferentes empresas y de diferentes proyectos, es más tener un producto que pudiera ser un activo propio y tal vez pulirlo mejor, dejarlo madurar y luego comercializarlo, en ese punto lo mejor era continuar con mi proyecto elaborado en ASP.Net.
Espero que este ejemplo ilustre un poco la duda que se presenta de si utilizar o no SharePoint, en donde la respuesta realmente es tan simple como queramos y es: Depende de los alcances que tengamos en el desarrollo que deseemos realizar.
Lo demás realmente son posiciones técnicas, de si los servicios, de si las plataformas, de si los servidores, etc.
Para finalizar quiero dejar en claro que más que una respuesta quiero dar una posición de trabajo, en donde la conclusión esta dirigida a quienes vemos el desarrollo y las implementaciones más allá de las líneas de código.
Una posicion bastante imparcial y practica que seguramente orientara mucho a los que somos novatos en Sharepoint, Muchas gracias por el aporte!
Me gustaMe gusta
No hay que olvidar las opciones de software libre. A mí me tomó poco tiempo encontrar una aplicación gratuita para reportar horas, algunos clics instalándola y listo! No siempre comprar un software robusto como Sharepoint o hacer un desarrollo a la medida es lo mejor para nuestros clientes.
Me gustaMe gusta