Este documento presenta sugerencias para optimizar el desarrollo y mantenimiento de software. Propone reforzar roles como el Project Manager y Arquitecto, promover la sinergia a través de comunidades de práctica, optimizar activos tecnológicos mediante la reutilización de conocimientos y frameworks, y comparar metodologías ágiles y predictivas según las condiciones del proyecto y organización para seleccionar la apropiada.
Desarrollo y Metodología: Una visión para optimizar el desarrollo y el mantenimiento de procesos de software
1. Practical Visionaries
:: Desarrollo & Metodologías
Una visión para Optimizar el Desarrollo y Mantenimiento de Software
Junio 2009
Confidential // Neoris 1
Confidential // Do Not Reproduce without prior written permission from Neoris
2. Objetivo de la Presentación
Compartir un conjunto de sugerencias e ideas a partir de
experiencias de nuestra organización, con el fin de brindar a las
organizaciones de IT de las compañías, elementos que le permitan
optimizar el Desarrollo y Mantenimiento de soluciones.
Confidential // Neoris 2
4. Personas: Optimización de Roles y Capacidades
Reforzar figuras claves como las de Project Manager y Arquitecto
Project Manager
Alcanzar los objetivos de Proyecto
mediante una serie de hitos y actividades
de gestión dentro de los límites de tiempo y
dinero, haciendo uso eficiente de recursos y
produciendo en marco de calidad aceptable.
El Project Manager debe expandir el
alcance y las capacidades de su Rol:
Evolucionar desde los procesos instrumentales de planificación y control (papel de
1 “controler” y experto) hacia procesos de integración (papel de facilitador e integrador).
El Project Manager debe enfocar y gestionar sus proyectos como si dirigiese su propia empresa.
Pensar y gestionar los proyectos no como sistemas de creación de productos/servicios sino
2 como sistemas de creación de valor.
Confidential // Neoris 4
5. Personas: Optimización de Roles y Capacidades
Reforzar figuras claves como las de Project Manager y Arquitecto
Project Manager
Alcanzar los objetivos de Proyecto
mediante una serie de hitos y actividades
de gestión dentro de los límites de tiempo y
dinero, haciendo uso eficiente de recursos y
produciendo en marco de calidad aceptable.
El Project Manager debe expandir el
alcance y las capacidades de su Rol:
El Project Manager debe enfocar y gestionar sus proyectos como si dirigiese su propia empresa.
Confidential // Neoris 5
6. Personas: Optimización de Roles y Capacidades
Reforzar figuras claves como las de Project Manager y Arquitecto
Arquitecto
La función de un arquitecto (de IT) es
resolver un problema mediante la definición
de un sistema que se pueda implementar
con el uso de tecnología.
El Arquitecto debe tomar una
posición de importancia estratégica
dentro de la organización de IT
posicionándose como arquitecto de
Soluciones:
Desarrollar habilidades claves: Compresión del dominio del problema (Negocio); Capacidad
1 de Conceptualización; Visión Técnica; Capacidad para aplicar patrones.
Dotar al Arquitecto de Habilidades de Liderazgo, Gestión y comunicación de manera que lo
2 conviertan en el líder tecnológico de la Solución.
Confidential // Neoris 6
7. Personas: Optimización de Roles y Capacidades
Reforzar figuras claves como las de Project Manager y Arquitecto
Arquitecto
La función de un arquitecto (de IT) es
resolver un problema mediante la definición
de un sistema que se pueda implementar
con el uso de tecnología.
El Arquitecto debe tomar una
posición de importancia estratégica
dentro de la organización de IT
posicionándose como arquitecto de
Soluciones:
Desarrollar habilidades claves: Compresión del dominio del problema (Negocio); Capacidad
1
Centrar elde Conceptualización; Visión la construcción de una Solución de Negocio y no en la resolución
esfuerzo de Arquitectura en Técnica; Capacidad para aplicar patrones.
de una problemática tecnológica.
Definición del Problema Definición de la Solución
Dotar al Arquitecto de Habilidades de Liderazgo, Gestión y comunicación de manera que lo
2Conocimiento del Dominio elCapacidad de Conceptualizar
conviertan en + líder tecnológico de la Solución. Técnica + Capacidad de aplicar patrones
Visión
Confidential // Neoris 7
8. Personas: Optimización de Roles y Capacidades
Promover la sinergia a través de Comunidades de Prácticas
Generar una red de comunicaciones y Discusión de tendencias, Estilos
contactos para: arquitectónicos, Arquitecturas,
Buenas Prácticas de
• Difundir el valor que puede obtenerse al
utilizar procesos, técnicas y herramientas Conceptualización y Diseño,
que optimizan el rendimiento de los recursos. Laboratorios, Patrones, Productos.
• Colaborar con el crecimiento y madurez de
los Project Managers y ayudar a resolver las
urgencias que se presenten.
Confidential // Neoris 8
9. Tecnología: Optimización de Activos Tecnológicos
Promover las formas de reutilización priorizando:
Conocimientos
• Conocimiento y Experiencias como un activo reutilizable.
• Introducción de Hitos de Intercambio de Conocimientos en la
Metodología, Lecciones Aprendidas, etc.
• Enterprise 2.0 (Web 2.0): Sociabilización, Externalización, Combinación
e internalización.
Frameworks
• Desarrollo y mejora contínua de Frameworks empresariales que
incluyan aspectos tecnológicos, metodológicos, buenas prácticas
reflejando la forma de hacer las cosas de cada organización.
• Promover la adquisición y el uso de Activos existentes en el mercado
o disponibilizados por la comunidad.
Confidential // Neoris 9
10. Procesos: Optimización de Metodologías y Buenas Prácticas
Sentido de las Metodologías
Adecuación Metodología
• Satisfacer las expectativas del usuario.
• Facilidad de trabajo utilizado para estructurar,
Marco para realizar cambios una vez
Mantenibilidad que el sistema estáel proceso de desarrollo de
planificar y controlar funcionando.
un sistema de información.
• Capacidad de realizar su cometido con el
Eficiencia mínimo consumo de recursos necesario.
¿Predictivas o Agiles?
• Capacidad de un sistema de funcionar
Fiabilidad correctamente durante un tiempo dado.
Corrección • Densidad de defectos del sistema.
• Grado de dificultad en aprender a manejar
Usabilidad el sistema.
Confidential // Neoris 10
11. Procesos: Comparando Metodologías
Características centrales de las Metodologías mas conocidas
Procesos formales y estrictos que Procesos flexibles e informales, con
1 capacidad natural de adaptarse para
organiza el trabajo del proyecto en
Definición flujos de trabajo, actividades y comprender y responder a las
artefactos, segmentando en fases . necesidades del cliente.
Asume el cambio como un hecho
2 Centra su estrategia en la planificación
minimizando la necesidad a priori de
de tiempos y presupuesto con fuerte
Estrategia identificar plenamente los requisitos
gestión.
y el modelo final de arquitectura.
Basado en: Prevalece:
3 • Arquitectura basada en componentes • Interacciones sobre procesos
• Comunicación por tareas y DOCs. • Resultados sobre documentación
Características
• Cambios acotados a alcance inicial • Colaboración sobre negociaciones
claves
• Gestión Estricta • Adaptación al cambio sobre plan
Confidential // Neoris 11
12. Procesos: Comparando según las condiciones del Proyecto
Las características de los proyectos condicionan la elección de una metodología
1 Prioridad del Valor
Cumplimiento
Negocio
2 Estabilidad de Entorno Inestable
Entorno Estable
Requerimientos
3 Rigidez del Concebido para cambiar
Complejo para Modificar
producto
4 Uso del Alto
Bajo
Prototipado
5 Criticidad del Media / Baja
Alta
Sistema
6 Tamaño del Mediano / Pequeño
Grande
Equipo
7 Participación Mucha
Poca
del Cliente
Confidential // Neoris 12
13. Procesos: Comparando según las condiciones de la Organización
Las características de la Organización condicionan la elecciona de una metodología
1 Nivel
Medio / Junior / Semi Sr. Avanzado / Senior
Profesional
2 Cultura
Vertical / Rígida Horizontal / Flexible
Organizativa
3 Modelo de
Procesos Personas
Desarrollo
Confidential // Neoris 13
14. Procesos: Optimización de Metodologías y Buenas Prácticas
Sugerencias
Cada metodología disponible tiene un
conjunto de características que la hacen más
o menos adecuadas para cada tipo de
proyecto de software según las
consideraciones organizacionales, de
proyecto, tecnológicas y de equipo que se
tengan sobre cada tipo de proyecto.
Asimismo, seleccionada la metodología, es
esencial definir cuáles son los procesos que
conformarán los lineamientos de trabajo del
proyecto según características particulares
del mismo.
Confidential // Neoris 14
15. Gracias!
Martín Serra
CTO Argentina
Judith Borsato
Gerente de Calidad y Procesos
Confidential // Neoris 15 15