Uno de los términos ampliamente en boga en nuestro campo hoy en día es el “cómputo en la nube”. Tan en boga que me parece que se ha convertido en una palabra mágica, bastante hueca y sintomática de querer parecer en sintonía con los últimos desarrollos tecnológicos, sin comprenderlos en realidad. Además, al ser una frase que de golpe comenzó a escucharse con tanta insistencia, asumimos que es una estrategia nueva, una idea posibilitada por los nuevos avances tecnológicos — Y esto dista de ser el caso. En esta columna busco clarificar los conceptos y tipos básicos de cómputo en la nube, sus principales ventjas y desventajas, y brevemente encontrar paralelos con casos documentados de estos ”novedosos” conceptos.
Sin lugar a dudas, la computación en la nube (cloud computing) y las nuevas tendencias en comunicaciones, como la videoconferencia, las comunicaciones unificadas o las aplicaciones de colaboración, representan oportunidades para el sector corporativo, tanto grandes corporaciones como pequeñas y medianas empresas. Correctamente implementados, estos recursos aportan un avance importante en la productividad de los trabajadores y las empresas. Tanto las aplicaciones de computación en la nube como las nuevas herramientas de comunicación están teniendo un auge importante en el presente.
Fin de año, tiempo para la reflexión. Este fin de año en particular he estado trabajando mucho en la definición de diferenciadores de negocio, ¿qué hace que una compañía sea mejor que otra?, ¿cómo podemos diferenciar nuestro servicio al de nuestra competencia?
Después de varios diálogos con compañeros y amigos, me inclino a pensar que una empresa de servicios sólo tiene dos posibles diferenciadores:
El desarrollo global de software, conocido también como desarrollo y entrega global, no es un concepto nuevo. El primer libro bajo este título fue publicado en 1998 [1]. La definición simple de lo que es el Desarrollo Global de Software habla de desarrollo entre varios equipos en localidades distribuidas geográficamente. Los equipos pueden ser de la misma organización o pertenecer a distintas organizaciones.
En entregas previas de esta sección, nos hemos enfocado en aspectos relativos a los requerimientos que influyen a la arquitectura, y a la manera de diseñar la arquitectura con el fin de satisfacer estos requerimientos. Para ser útil, este diseño necesita ser comunicado de forma adecuada. Así que en esta ocasión abordamos aspectos de comunicación del diseño y más particularmente en la actividad de documentación de la arquitectura.
Como ustedes saben, Scrum es una metodología ágil para la gestión del desarrollo de software, que está basada en un proceso iterativo e incremental. Debido a la importancia de la arquitectura de software, es primordial definir claramente su papel en scrum. Es por esto que en el presente artículo se describe una propuesta del papel de la arquitectura de software en el ciclo de desarrollo de Scrum y de las responsabilidades del arquitecto de software en esta metodología.
En la actualidad, es fundamental mantener un nivel aceptable de calidad en los datos que gestionan las compañías, sobre todo en las aplicaciones Web. Para asegurar esos niveles de calidad de datos (DQ), es imprescindible llevar a cabo una gestión de los requisitos específicos de DQ durante todo el ciclo de desarrollo de la aplicación Web. Sin embargo, en el ámbito de desarrollo de aplicaciones Web no existen propuestas que contemplen artefactos para la gestión de este tipo de requisitos de calidad de datos. El objetivo de este trabajo es dotar a los analistas y desarrolladores de aplicaciones Web de las herramientas necesarias para especificar e implementar de forma clara e intuitiva los requisitos de DQ mediante distintos elementos de modelado.
NYCE, organismo nacional de normalización en Tecnologías de la Información y e-Quallity, consorcio especializado en prueba de software, han sellado recientemente una alianza para impulsar el Laboratorio Nacional de Pruebas de Software aplicando estándares NYCE armonizados con estándares internacionales, con lo que se podrá acelerar el acceso a los mercados internacionales de los productos de software desarrollados en el país.