Rol Arquitecto Software

6,345 views

Published on

:-)

Published in: Technology
0 Comments
7 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
6,345
On SlideShare
0
From Embeds
0
Number of Embeds
226
Actions
Shares
0
Downloads
0
Comments
0
Likes
7
Embeds 0
No embeds

No notes for slide

Rol Arquitecto Software

  1. 1. JUAN PABLO GARCÍA GONZÁLEZ SOFTWARE DEVELOPER MANAGER DATCO CHILE [email_address] HTTP://LIARJO.SPACES.LIVE.COM Rol del Arquitecto de Software
  2. 2. Agenda <ul><li>Introducción </li></ul><ul><li>Competencias de un Arquitecto de Software </li></ul><ul><li>Selft – Assessment </li></ul><ul><li>Preguntas y Respuestas </li></ul><ul><li>Referencias </li></ul>
  3. 3. Contexto de trabajo <ul><li>El mundo se ha vuelto más complejo </li></ul><ul><ul><li>Globalización </li></ul></ul><ul><ul><li>Cambio constante </li></ul></ul><ul><ul><li>Medio ambiente </li></ul></ul><ul><li>Los problemas informáticos que debemos resolver también </li></ul><ul><li>Requerimos de niveles de abstracción mayores para afrontar adecuadamente estos problemas </li></ul><ul><li>La actividad Informática es una área nueva </li></ul><ul><ul><li>+40 años vs. varios siglos de otras actividades como la construcción </li></ul></ul>
  4. 4. La definición de Arquitectura <ul><li>Según el Diccionario de la Lengua Española </li></ul><ul><ul><li>arquitectura. (Del lat. architectūra). </li></ul></ul><ul><ul><ul><li>f. Arte de proyectar y construir edificios. </li></ul></ul></ul><ul><ul><ul><li>f. Inform. Estructura lógica y física de los componentes de un computador. </li></ul></ul></ul><ul><ul><ul><li>~ civil. f. Arte de construir edificios y monumentos públicos y particulares no religiosos. </li></ul></ul></ul><ul><ul><ul><li>~ hidráulica. f. Arte de conducir y aprovechar las aguas, o de construir obras debajo de ellas. </li></ul></ul></ul><ul><ul><ul><li>~ militar. f. Arte de fortificar. </li></ul></ul></ul><ul><li>A excepción de la informática la arquitectura es un arte </li></ul>
  5. 5. Claves de la definición de arquitectura en informática <ul><li>Estructura </li></ul><ul><ul><li>Trabaja con aspectos fundamentales de la obra </li></ul></ul><ul><li>Lógica y física </li></ul><ul><ul><li>Trabaja a varios niveles; cada uno de estos es estructural </li></ul></ul><ul><li>Componentes </li></ul><ul><ul><li>Por definición un componente es algo de granularidad gruesa. Hace pensar que no se ocupa de los detalles </li></ul></ul>
  6. 6. <ul><li>IEEE 1471 [1] </li></ul><ul><li>Software Architecture in Practice – Kazman [2] </li></ul><ul><li>El nivel conceptual más alto de un sistema en su ambiente. </li></ul><ul><li>Arquitectura es la organización fundamental de un sistema descrita en: </li></ul><ul><ul><li>Sus componentes. </li></ul></ul><ul><ul><li>Relación entre ellos y con el ambiente. </li></ul></ul><ul><ul><li>Principios que guían su diseño y evolución. </li></ul></ul><ul><li>“ La estructura de estructuras de un sistema, la cual abarca componentes de software, propiedades externas visibles de estos componentes y sus relaciones” </li></ul>Otras definiciones
  7. 7. Arquitectura Versus Diseño Arquitectura Diseño Nivel de abstracción Alto nivel, el problema en su contexto Bajo nivel, pone foco en los detalles. Entregables Planear subsistemas, interfaces con sistemas externos, servicios horizontales, frameworks, componentes reutilizables, prototipo arquitectónico Diseño detallado componentes. Especificaciones de codificación Áreas de Enfoque Selección de tecnologías, Requerimientos no funcionales (QoS), Manejo de riesgos Requerimientos funcionales
  8. 8. El Rol del Arquitecto de SW <ul><li>Este es un rol nuevo en las empresas. </li></ul><ul><li>No hay todavía un consenso en la definición de Arquitecto </li></ul><ul><li>Una definición simplista es que el rol del arquitecto es crear arquitecturas: </li></ul><ul><ul><li>Visión de la arquitectura </li></ul></ul><ul><ul><li>Conceptualización y experimentación aproximaciones arquitectónicas </li></ul></ul><ul><ul><li>Definición de modelos y componentes de alto nivel </li></ul></ul><ul><ul><li>Validar la arquitectura candidata contra los requerimientos </li></ul></ul>
  9. 9. <ul><li>Rational Unified Process [3] </li></ul><ul><li>SUN SL-425 [4] </li></ul><ul><li>Arquitecto es un rol en un proyecto de desarrollo de software el cual es responsable de: </li></ul><ul><ul><li>Liderar el proceso de arquitectura. </li></ul></ul><ul><ul><li>Producir los artefactos necesarios: Documento de descripción de arquitectura </li></ul></ul><ul><ul><li>Modelos y prototipos de arquitectura </li></ul></ul><ul><li>El arquitecto: </li></ul><ul><ul><li>Visualiza el comportamiento del sistema. </li></ul></ul><ul><ul><li>Crea los planos del sistema. </li></ul></ul><ul><ul><li>Define la forma en la cual los elementos del sistema trabajan en conjunto. </li></ul></ul><ul><ul><li>Responsable de integrar los requerimientos no-funcionales (NRFs) en el sistema </li></ul></ul>El Rol del Arquitecto de SW
  10. 10. Competencias del Arquitecto SW [5]
  11. 11. Tecnología Que sabes Que haces Que Eres Conocimiento en profundidad del dominio y las tecnologías pertinentes Entender cuales puntos técnicos son claves para el éxito Desarrollar métodos y técnicas de modelamiento <ul><li>Modelar </li></ul><ul><li>Análisis de TradeOff </li></ul><ul><li>Prototipos / experimentos / simulaciones </li></ul><ul><li>Preparar documentos y presentaciones de arquitectura </li></ul><ul><li>Análisis de tendencias tecnológicas y RoadMap </li></ul><ul><li>Tener un punto de vista de sistemas </li></ul>Creativo Investigador / Curioso Práctico / Pragmático Perspicaz Tolerante a la ambigüedad Bueno trabajando en abstracto
  12. 12. Estrategia de Negocios Que sabes Que haces Que Eres La estrategia de negocio y justificación de la organización La competencia (productos, estrategias y procesos) La práctica de negocio de tú compañía Influenciar en la estrategia de Negocio Traducir la estrategia de Negocio en una visión y estrategia Técnica Capturar los requerimientos de clientes, la organización y el negocio en la arquitectura Visionario Empresarial / Emprendedor
  13. 13. Política Organizacional Que sabes Que haces Que Eres Quienes son los personajes claves en la organización Que es lo que ellos quieren, desde el punto de vista del negocio y agenda privada Donde está el “ Poder Real ” en la organización Comunicar, Comunicar , Comunicar Escuchar, influenciar y hacer redes de apoyo Vender la visión y mantener esa visión viva Hacerse cargo de los críticos del proyecto de arquitectura Capas de ver y vender diferentes puntos de vista Articulador y confidente Conductor Ser paciente / No ser paciente Perseverante Perceptivo de cómo el poder se ejerce
  14. 14. Evangelizador (Consulting) Que sabes Que haces Que Eres Técnicas de difusión Frameworks de consultoría / asesoría / evangelizaicón Construir relaciones de Confianza Entender que es lo que los Developer necesitan y esperan de la Arquitetcura Ayduar a los developer a ver el valor de la AQR y entender como usarla exitosamente Mentor de arquitectos Juniors Comprometido con el éxito de otros Empático / Abordable Agente de cambio efectivo, con un proceso “astuto” Buen Mentor y Tutor
  15. 15. Liderazgo Que sabes Que haces Que Eres Ser tú mismo Dar contexto al equipo, es decir una visión Tomar decisiones y que te sigan Armar equipos de trabajo Motivar Tu y otros te ven como líder Carismático y creíble Usted cree que puede y debe ser hecho, y que puede liderar el esfuerzo Comprometido / dedicado y apasionado Capaz de ver el esfuerzo completo, tanto de negocio como personal
  16. 16. Competencias del Arquitecto SW Que sabes Que Haces Que eres Liderazgo Evangelizador Política Organizacional Estrategia de Negocio Tecnología
  17. 17. Competencias del Arquitecto SW Que sabes Que Haces Que eres Liderazgo Evangelizador Política Organizacional Estrategia de Negocio Tecnología Verdadero Desafío
  18. 18. <ul><li>Riesgos </li></ul><ul><li>Recompensas </li></ul><ul><li>Tu no disfrutas del trabajo no técnico </li></ul><ul><li>Más responsabilidades con menos control </li></ul><ul><li>Dirección insuficiente para la reticencia al cambio </li></ul><ul><li>Pocas posibilidades de éxito </li></ul><ul><li>Todo el mundo tiene una mejor idea </li></ul><ul><li>Problemas mas interesantes y complejos </li></ul><ul><li>Reconocimiento y promoción profesional </li></ul><ul><li>Mayor contribución y alcance de tus actividades </li></ul>Riesgos y Recompensas del Rol
  19. 19. Selft - Assessment <ul><li>¿Cómo soy percibido? </li></ul><ul><ul><li>Por los Gerentes </li></ul></ul><ul><ul><li>Por los pares arquitectos </li></ul></ul><ul><ul><li>Por los desarrolladores </li></ul></ul><ul><ul><li>Por los clientes </li></ul></ul><ul><li>En cada grupo Preguntar: </li></ul><ul><ul><li>¿Soy creíble? </li></ul></ul><ul><ul><li>¿Piensan que estoy en contacto con sus problemas? </li></ul></ul><ul><ul><li>¿Soy un influenciador? </li></ul></ul>
  20. 20. Selft - Assessment
  21. 21. Selft - Assessment
  22. 22. Preguntas y Respuestas ?
  23. 23. Referencias <ul><li>IEEE, IEEE Std 1471-2000 IEEE Recommended Practice for Architectural Description of Software-Intensive Systems –Description , 2004. http://standards.ieee.org/reading/ieee/std_public/description/se/1471-2000_desc.html </li></ul><ul><li>LEN BASS, PAUL CLEMENTS, RICK KAZMAN, SOFTWARE ARCHITECTURE IN PRACTICE . Addison-Wesley, 2003 </li></ul><ul><li>  Philippe Kruchten. The rational Unified Process , Pearson Education, 1999 </li></ul><ul><li>  Sun, Developing Architectures for Enterprise Java Applications (SL-425) , http://www.sun.com/training/catalog/courses/SL-425.xml </li></ul><ul><li>Malan, R., and D. Bredemeyer. “ The Role of the Architect. ” Bredemeyer Consulting Software Architecture Resources, June 28 2000. </li></ul>
  24. 24. Información Complementaria <ul><li>Lewis R., Architect? A Candid Guide to the profession . MTI Press, 1998 </li></ul><ul><li>Rechtin, E. Systems Architecting: Creating and Building Complex Systems . Prentice-Hall, 1991 </li></ul><ul><li>Seliger, R. An Approach to Architecting Enterprise Solutions . HP Journal, Feb 1997 </li></ul><ul><li>Malan, R., and D. Bredemeyer. “ Less is More with Minimalist Architecture .” IEEE IT Professional, September/ October, 2003. </li></ul><ul><li>Malan, R., and D. Bredemeyer. “ Strategy Competency Elaboration .” Bredemeyer Consulting Software Architecture Resources, 2002 </li></ul>
  25. 25. JUAN PABLO GARCÍA GONZÁLEZ SOFTWARE DEVELOPER MANAGER DATCO CHILE [email_address] HTTP://LIARJO.SPACES.LIVE.COM Rol del Arquitecto de Software

×