SlideShare una empresa de Scribd logo
S
Ingeniando el software
  en tiempos de crisis
             Francisco Sánchez Cid
               Jefe de Proyectos
    Área de Desarrollos y Arquitectura Software




                                                  S
Ingeniando el      1.   El Instituto Tecnológico
SW en tiempos           de Informática
de crisis          2.   Venturas y desventuras
                        del sector IT
     Contenido     3.   Ingeniería del Software
                        en la práctica

                   4.   Consejos



                 El Instituto:
                            www.iti.es
                 El ponente:
                   Web: http://web.iti.upv.es/~fsanchez/
                   Correo: cid@iti.es
1. El Instituto Tecnológico de
                Informática
                        Qué somos

S Centro Tecnológico especializado en Investigación, Desarrollo
  e Innovación en Tecnologías de la Información y
  Comunicación.

S Somos una asociación sin ánimo de lucro y pertenecemos a la
  Red de Institutos Tecnológicos de la Comunidad Valenciana
  (junto al del Juguete, el Cerámico, el de la Madera..)

S El ITI desarrolla una labor de I+D+I transfiriendo a las
  empresas la posibilidad de incorporar a sus productos las
  tecnologías y capacidades desarrolladas en proyectos de
  I+D+I
1. El Instituto Tecnológico de
                  Informática
                      Recursos del ITI
S 94% titulados superiores y
  34% doctores.                  S Personal: 100 personas

S El 93% de las empresas TIC     S Instalaciones: 1700 m2 (V)
  de la CV de más de 8
  empleados son asociadas al     S Laboratorios de testeo y
  ITI                              usabilidad

S Más de 110 proyectos de        S Laboratorios de prototipado
  I+D+I cofinanciados en
  convocatoria pública o         S Aula de formación
  contratados directamente por
  empresas en 2009               S Salas especialmente
                                   equipadas
S Más de 100 artículos
  científicos publicados en      S Unidad técnica en Alcoy
  2009
Departamentos I+D+I
                      Visión Artificial y
                         Biometría




    Informática                                Reconocimiento
Industrial, Comunic                               de voz y
     aciones y                                 Tecnologías del
    Automática                                    Lenguaje




                                             Sistemas
   Optimización, Lo                         Distribuidos
       gística y
     Producción
1. El Instituto Tecnológico de
          Informática
     Departamentos I+D+I
Departamentos Tecnología y
        Servicios
                    Área de Software
                          Libre




Área de Sistemas
  Empotrados y                             Área de Sistemas
    Movilidad




      Área de
    Desarrollos y                          Área de
    Arquitecturas                      Integración de
        SW                              Tecnologías
1. El Instituto Tecnológico de
          Informática
    Tecnología y Servicios



            Área de
          Desarrollos y
          Arquitecturas
            Software
Ingeniando el      1.   El Instituto Tecnológico
SW en tiempos           de Informática
de crisis          2.   Venturas y desventuras
                        del sector IT
     Contenido     3.   Ingeniería del Software
                        en la práctica

                   4.   Consejos



                 El Instituto:
                            www.iti.es
                 El ponente:
                   Web: http://web.iti.upv.es/~fsanchez/
                   Correo: cid@iti.es
2. Venturas y desventuras del
      sector IT en la CV
         La situación




                   Fuente: Observatorio Valenciano para la
                   Sociedad Tecnológica y del Conocimiento
2. Venturas y desventuras del
      sector IT en la CV
         La situación




                   Fuente: Observatorio Valenciano para la
                   Sociedad Tecnológica y del Conocimiento
2. Venturas y desventuras del
      sector IT en la CV
         La situación




                   Fuente: Observatorio Valenciano para la
                   Sociedad Tecnológica y del Conocimiento
2. Venturas y desventuras del
      sector IT en la CV
         La situación




                   Fuente: Observatorio Valenciano para la
                   Sociedad Tecnológica y del Conocimiento
2. Venturas y desventuras del
           sector IT en la CV
                   La problemática

S Estamos en crisis

S Mucho trabajo, poco producto

S Mucha subvención, poca iniciativa

S Poco nivel de madurez

S Directivos con escasos conocimientos de la Ing. del Software

S Aún investigando, no hay un plan de explotación claro
2. Venturas y desventuras del
          sector IT en la CV
           Por qué vienen a nosotros

S Pongamos por caso…
  S Una empresa del sector de la alimentación
  S Fabrica máquinas que clasifican aceitunas
  S Procesando imágenes
  S Y usando expulsores de aire comprimido



                         Es decir, algo así…
2. Venturas y desventuras del
      sector IT en la CV
    Por qué vienen a nosotros


                    Cámara



 ANI y ADI




  ACO
2. Venturas y desventuras del
           sector IT en la CV
           Por qué vienen a nosotros

S Todo iba bien.

S Tenían su máquina funcionando y las aceitunas y los
  aceituneros eran felices.

S Pero entonces llegaron los malvados comerciales
  S ¿Y si en vez de aceitunas queremos cocos?
  S ¿Y si en lugar de cámaras de vídeo queremos espectrógrafos?
  S ¿Y si en lugar de aire comprimido queremos compuertas de
     derivación?
2. Venturas y desventuras del
          sector IT en la CV
           Por qué vienen a nosotros

S Qué pasó:
  S Cada situación una nueva máquina, cada máquina, un nuevo
    equipo y un nuevo mantenimiento.
  S Cada máquina su servicio técnico, y una evolución particular
  S Los fallos de una, se repetían en el resto
  S Se duplicaba información de configuración y control de errores
2. Venturas y desventuras del
          sector IT en la CV
           Por qué vienen a nosotros

S Razones:
  S Arquitectura NO modular
  S Código repetido
  S Sin control de versionado
  S Sin control de errores
  S Sin documentación de la arquitectura
  S Con documentación anárquica del código
  S …


  En resumen, no aplicaban técnicas de Ingeniería del Software
2. Venturas y desventuras del
          sector IT en la CV
          Por qué vienen a nosotros

S Hasta que no estás muy mal, no vas al médico…
2. Venturas y desventuras del
           sector IT en la CV
           Por qué vienen a nosotros

S Y hasta que el software no es inmanejable… no vienen al ITI
2. Venturas y desventuras del
          sector IT en la CV
                Problemas del sector

S En general, nos encontramos con empresas que:
  S No tienen una metodología de desarrollo software clara
  S No tienen una metodología de gestión de proyectos clara

S Empresas que no usan herramientas estándar para:
  S Diseño (ni un triste modelo UML)
  S Control de Versiones (el SVN no es tan complicado)
  S Gestión de la documentación (ni siquiera plantillas)
  S Testeo (¿qué es eso del testeo unitario?)
  S Control de bugs y Errores
2. Venturas y desventuras del
           sector IT en la CV
                 Problemas del sector

S Estamos en crisis:
  S No puedo perder el tiempo en documentación
  S ¿Testeo? ¿Para qué? Mis programadores son muy buenos

S La realidad:
  S Sólo las empresas maduras sobreviven a la crisis
  S Sólo las que tienen procesos y procedimientos claros
  S Sólo las que aplican patrones y reutilizan código y conocimiento
  S Sólo las que se mueven con la tecnología
Ingeniando el      1.   El Instituto Tecnológico
SW en tiempos           de Informática
de crisis          2.   Venturas y desventuras
                        del sector IT
     Contenido     3.   Ingeniería del Software
                        en la práctica

                   4.   Consejos



                 El Instituto:
                            www.iti.es
                 El ponente:
                   Web: http://web.iti.upv.es/~fsanchez/
                   Correo: cid@iti.es
3. Ingeniería del Software práctica
    Metodologías de Desarrollo
3. Ingeniería del Software práctica
          Metodologías de Desarrollo


S Hay normas generales:
  S En general, los extremos no son buenos: ni Cascada, ni Extreme
    Programming.
  S En general, los enfoques incrementales o iterativos son buenos:
    RUP, SCRUM

S Pero todo depende del proyecto:
  S Un proyecto de envergadura requiere un buen análisis de
    requisitos y un buen diseño
  S Un pequeño proyecto (100 horas), se atasca con un análisis y
    diseño excesivos
3. Ingeniería del Software práctica
          Metodologías de Desarrollo


S Caso SCRUM:
  S Extremadamente útil y productivo (bien)
  S Muy exigente para el grupo de trabajo (no tan bien)
3. Ingeniería del Software práctica
               Problemas Generales


S Cambian los requisitos:
  S Caso XXX y su documentación inicial tras un año de desarrollo

S La tecnología no lo permite:
  S Caso Google Calendar y su control de acceso por calendario

S El equipo no es competente:
  S El famoso caso del departamento desmantelado
3. Ingeniería del Software práctica
               Soluciones Generales


S Cambian los requisitos:
  S No especifiques todos los requisitos en detalle.
  S La documentación crecerá junto al desarrollo

S La tecnología no lo permite:
  S Rol de Arquitecto Software
  S Desarrolla elementos críticos antes de los no críticos

S El equipo no es competente:
3. Ingeniería del Software práctica
              Soluciones Generales




S El equipo no es competente:
  S Huyeeeeeee!!!!
Hasta aquí todo bien, ¿no?
Ya sabemos gestionar un proyecto

 Ahora vamos a remangarnos la
          camisa…
3. Ingeniería del Software práctica
    Arquitectura y Diseño de Sistemas


S Aprende a modelar
  S Muchos dibujan, pocos modelan
  S Es la forma más rápida de documentar
  S La forma más fácil de relacionarte con el cliente

S No existe el diagrama perfecto, sí el correcto
  S No intentes representar todo en un único diagrama
  S Haz sólo los absolutamente necesarios
3. Ingeniería del Software práctica
      Arquitectura y Diseño de Sistemas

S Lo más usado en las empresas: Diagramas de Estructura




                                          Fuente: www.agilemodeling.com
3. Ingeniería del Software práctica
      Arquitectura y Diseño de Sistemas

S Lo más usado en las empresas: Diagramas de
  Comportamiento




                                         Fuente: www.agilemodeling.com
3. Ingeniería del Software práctica
      Arquitectura y Diseño de Sistemas

S Lo más usado en las empresas: Diagramas de Interacción




                                          Fuente: www.agilemodeling.com
3. Ingeniería del Software práctica
      Arquitectura y Diseño de Sistemas

S Y por supuesto, el mock-up:
Y es fundamental:
Aplicación de Patrones
3. Ingeniería del Software práctica
           La importancia de los patrones


S Es lo que llevará a nuestra carrera a ser una INGENIERÍA:
  S Singleton, para crear una clase de una única instancia
  S Factory, para crear clases sin especificar la clase exacta a crear
  S Adapter, para permitir a dos clases con interfaces incompatibles
      comunicarse encapsulándolas

S Patrones específicos de seguridad como:
  S Encrypted Storage
  S Password Authentication
  S Authentication Session

S Repetidos una y otra vez, pero por fin con una implementación de
   referencia
3. Ingeniería del Software práctica
         La importancia de los patrones


S A un nivel más arquitectónico, son fundamentales los EAI
  (Enterprise Integration Patterns):
  S Estilos de integración: mensajería, BBDD compartida, …
  S Sistemas de Mensajería: Router, Translator, …
  S Canales de Mensajería: Publish-Subscribe, Message Bus, …


                            Y muchos más
3. Ingeniería del Software práctica
         La importancia de los patrones

S Lo importante:
  S Saber dónde encontrarlos y aplicarlos correctamente
  S Respetar la nomenclatura
                                                 Fuente: http://www.eaipatterns.com/
Ingeniando el      1.   El Instituto Tecnológico
SW en tiempos           de Informática
de crisis          2.   Venturas y desventuras
                        del sector IT
     Contenido     3.   Ingeniería del Software
                        en la práctica

                   4.   Consejos



                 El Instituto:
                            www.iti.es
                 El ponente:
                   Web: http://web.iti.upv.es/~fsanchez/
                   Correo: cid@iti.es
4. Consejos para moldear tu camino
            tecnológico


S Todos empezamos desde abajo, así que…
  S Hazte un buen programador
  S Pero no lo olvides:
    S Eres Ingeniero, aunque tu rol sea programador
  S Hazte un buen tecnólogo
    S No es sólo programar, es conocer la tecnología
  S Internacionalízate
4. Consejos para moldear tu camino
            tecnológico

S Maneja el MVC con soltura:




S Y encapsula, siempre encapsula:
  S ¿Cómo construirías tu BBDD remota?
4. Consejos para moldear tu camino
            tecnológico
4. Consejos para moldear tu camino
            tecnológico

S Respecto a la programación:
  S   Ingenia, busca, no des nada por seguro: duda de todo.
  S   Sé maduro: aplica patrones
  S   Sé limpio: aplica formatos estándar
  S   Consulta (o participa) en proyectos de SW libre

S Respecto a la tecnología:
  S   No sólo programes, conoce la tecnología
  S   Aprende a crear tu propio criterio: busca y compara
  S   No es Java, sino Struts, Hibernate, Spring…
  S   No es .NET, sino SQLServer, Sharepoint, Visual Studio…
4. Consejos para moldear tu camino
            tecnológico


S Respecto a ti:
   S Sé humilde, pero intrépido
   S Saca todo el partido de los que saben
   S Procura estar al día en tecnología

                Y entre nosotros…
           Aquello que hagas, hazlo bien
Y eso es todo…
    ¿preguntas?
     Francisco Sánchez Cid
            cid@iti.es
Área de Desarrollos y Arquitectura
           Software

Más contenido relacionado

PDF
Mta presentación pro
PDF
ICT computación y tecnologías de información
PDF
IIT innovación y transformación
PDF
Ensamble de un cable VGA macho a macho de 15 pines
PPTX
Web 2.0 hector recalde
PPTX
Presentacion maltrato infantil 2011 23
PDF
Modulo bloq
PPS
Mta presentación pro
ICT computación y tecnologías de información
IIT innovación y transformación
Ensamble de un cable VGA macho a macho de 15 pines
Web 2.0 hector recalde
Presentacion maltrato infantil 2011 23
Modulo bloq

Destacado (20)

PPTX
Taller de etica.
PPT
Curso taller de_animacion_y_recreacion_2010
PPT
Código de Ética
PDF
Boletin 9690-21__proyecto_sag
PPS
Anios60 70 80
PDF
Laboratorio 3
PPTX
Tiendas virtuales
PPT
Casilla de verificacion
PPTX
Scratch
DOCX
Contenido de Vitamina C en Pimiento por Voltámperometría
PPT
Elementos de la visión 2020.
DOCX
Historial de conversación de messenger plus
PPTX
PPT
MediatónGDL: un maratón para desarrollar aplicaciones para periodistas
PDF
Circulartecnicaparcial2 lengua de señas
PDF
54905079 codigo-penal-aleman
PDF
Díptico lista c eleccion anef 2014
PPTX
Formasenquesepresentalamateria
PPTX
Tema
PPTX
Multimedia nickoll rodriguez (2)
Taller de etica.
Curso taller de_animacion_y_recreacion_2010
Código de Ética
Boletin 9690-21__proyecto_sag
Anios60 70 80
Laboratorio 3
Tiendas virtuales
Casilla de verificacion
Scratch
Contenido de Vitamina C en Pimiento por Voltámperometría
Elementos de la visión 2020.
Historial de conversación de messenger plus
MediatónGDL: un maratón para desarrollar aplicaciones para periodistas
Circulartecnicaparcial2 lengua de señas
54905079 codigo-penal-aleman
Díptico lista c eleccion anef 2014
Formasenquesepresentalamateria
Tema
Multimedia nickoll rodriguez (2)
Publicidad

Similar a Ingeniando el software en tiempos de crisis (20)

PPT
Calidad del Software para futuros ingenieros en tiempos de crisis
PPT
Exposicion unidad 1 ing software
PDF
Retos oportunidades ingeniería Software 2010
PPTX
ciclo de vida del software, evolución y características
PDF
El estado actual y futuro del Software en España 2013, elaborado por www.Busc...
PDF
Ingenieria de Software-Somerville.pdf
PPT
03 Tecsidel VII Semana CMMI
PDF
La mejora en una organización veterana en CMMI - Software Factory de Tecsidel...
PDF
Presentacion Inteco
PDF
Sistemas
PDF
Presentacion corporativa de Mildmac
PPT
Presentación Cast Info - Soluciones tecnologicas
PDF
J. del Valle. Nuevos modelos de negocio, el gran universo de las Aplicaciones...
PPTX
Ingeniería del Software: Nuestro producto debe funcionar
PPTX
U1T1 - Conceptos Básicos de Ingeniería del Software
PPTX
Exposicion12(1)
PPTX
Ingeniria del sofware
PDF
Inbformatico 2020 y tendencias v9
XLSX
Empresas participantes
Calidad del Software para futuros ingenieros en tiempos de crisis
Exposicion unidad 1 ing software
Retos oportunidades ingeniería Software 2010
ciclo de vida del software, evolución y características
El estado actual y futuro del Software en España 2013, elaborado por www.Busc...
Ingenieria de Software-Somerville.pdf
03 Tecsidel VII Semana CMMI
La mejora en una organización veterana en CMMI - Software Factory de Tecsidel...
Presentacion Inteco
Sistemas
Presentacion corporativa de Mildmac
Presentación Cast Info - Soluciones tecnologicas
J. del Valle. Nuevos modelos de negocio, el gran universo de las Aplicaciones...
Ingeniería del Software: Nuestro producto debe funcionar
U1T1 - Conceptos Básicos de Ingeniería del Software
Exposicion12(1)
Ingeniria del sofware
Inbformatico 2020 y tendencias v9
Empresas participantes
Publicidad

Último (20)

DOCX
Trabajo grupal.docxjsjsjsksjsjsskksjsjsjsj
PPTX
CLAASIFICACIÓN DE LOS ROBOTS POR UTILIDAD
PPTX
Mecanismos-de-Propagacion de ondas electromagneticas
PDF
CyberOps Associate - Cisco Networking Academy
PPTX
El uso de las TIC en la vida cotidiana..
PDF
ADMINISTRACIÓN DE ARCHIVOS - TICS (SENA).pdf
PDF
TRABAJO DE TECNOLOGIA.pdf...........................
DOCX
TRABAJO GRUPAL (5) (1).docxsjjsjsksksksksk
PDF
Documental Beyond the Code (Dossier Presentación - 2.0)
PPTX
Sesion 1 de microsoft power point - Clase 1
DOCX
TRABAJO GRUPAL (5) (1).docxsjsjskskksksksks
PPTX
ccna: redes de nat ipv4 stharlling cande
PDF
informe_fichas1y2_corregido.docx (2) (1).pdf
PPTX
Power Point Nicolás Carrasco (disertación Roblox).pptx
DOCX
TRABAJO GRUPAL (5) (1).docxjesjssjsjjskss
PPTX
la-historia-de-la-medicina Edna Silva.pptx
PPTX
unidad 3 tecnología 8° básico: planificación y elaboración de un objeto
PDF
Estrategia de Apoyo de Daylin Castaño (5).pdf
DOCX
TRABAJO GRUPAL (5) (1).docxjsjsjskskksksk
PDF
Distribucion de frecuencia exel (1).pdf
Trabajo grupal.docxjsjsjsksjsjsskksjsjsjsj
CLAASIFICACIÓN DE LOS ROBOTS POR UTILIDAD
Mecanismos-de-Propagacion de ondas electromagneticas
CyberOps Associate - Cisco Networking Academy
El uso de las TIC en la vida cotidiana..
ADMINISTRACIÓN DE ARCHIVOS - TICS (SENA).pdf
TRABAJO DE TECNOLOGIA.pdf...........................
TRABAJO GRUPAL (5) (1).docxsjjsjsksksksksk
Documental Beyond the Code (Dossier Presentación - 2.0)
Sesion 1 de microsoft power point - Clase 1
TRABAJO GRUPAL (5) (1).docxsjsjskskksksksks
ccna: redes de nat ipv4 stharlling cande
informe_fichas1y2_corregido.docx (2) (1).pdf
Power Point Nicolás Carrasco (disertación Roblox).pptx
TRABAJO GRUPAL (5) (1).docxjesjssjsjjskss
la-historia-de-la-medicina Edna Silva.pptx
unidad 3 tecnología 8° básico: planificación y elaboración de un objeto
Estrategia de Apoyo de Daylin Castaño (5).pdf
TRABAJO GRUPAL (5) (1).docxjsjsjskskksksk
Distribucion de frecuencia exel (1).pdf

Ingeniando el software en tiempos de crisis

  • 1. S
  • 2. Ingeniando el software en tiempos de crisis Francisco Sánchez Cid Jefe de Proyectos Área de Desarrollos y Arquitectura Software S
  • 3. Ingeniando el 1. El Instituto Tecnológico SW en tiempos de Informática de crisis 2. Venturas y desventuras del sector IT Contenido 3. Ingeniería del Software en la práctica 4. Consejos El Instituto: www.iti.es El ponente: Web: http://web.iti.upv.es/~fsanchez/ Correo: cid@iti.es
  • 4. 1. El Instituto Tecnológico de Informática Qué somos S Centro Tecnológico especializado en Investigación, Desarrollo e Innovación en Tecnologías de la Información y Comunicación. S Somos una asociación sin ánimo de lucro y pertenecemos a la Red de Institutos Tecnológicos de la Comunidad Valenciana (junto al del Juguete, el Cerámico, el de la Madera..) S El ITI desarrolla una labor de I+D+I transfiriendo a las empresas la posibilidad de incorporar a sus productos las tecnologías y capacidades desarrolladas en proyectos de I+D+I
  • 5. 1. El Instituto Tecnológico de Informática Recursos del ITI S 94% titulados superiores y 34% doctores. S Personal: 100 personas S El 93% de las empresas TIC S Instalaciones: 1700 m2 (V) de la CV de más de 8 empleados son asociadas al S Laboratorios de testeo y ITI usabilidad S Más de 110 proyectos de S Laboratorios de prototipado I+D+I cofinanciados en convocatoria pública o S Aula de formación contratados directamente por empresas en 2009 S Salas especialmente equipadas S Más de 100 artículos científicos publicados en S Unidad técnica en Alcoy 2009
  • 6. Departamentos I+D+I Visión Artificial y Biometría Informática Reconocimiento Industrial, Comunic de voz y aciones y Tecnologías del Automática Lenguaje Sistemas Optimización, Lo Distribuidos gística y Producción
  • 7. 1. El Instituto Tecnológico de Informática Departamentos I+D+I
  • 8. Departamentos Tecnología y Servicios Área de Software Libre Área de Sistemas Empotrados y Área de Sistemas Movilidad Área de Desarrollos y Área de Arquitecturas Integración de SW Tecnologías
  • 9. 1. El Instituto Tecnológico de Informática Tecnología y Servicios Área de Desarrollos y Arquitecturas Software
  • 10. Ingeniando el 1. El Instituto Tecnológico SW en tiempos de Informática de crisis 2. Venturas y desventuras del sector IT Contenido 3. Ingeniería del Software en la práctica 4. Consejos El Instituto: www.iti.es El ponente: Web: http://web.iti.upv.es/~fsanchez/ Correo: cid@iti.es
  • 11. 2. Venturas y desventuras del sector IT en la CV La situación Fuente: Observatorio Valenciano para la Sociedad Tecnológica y del Conocimiento
  • 12. 2. Venturas y desventuras del sector IT en la CV La situación Fuente: Observatorio Valenciano para la Sociedad Tecnológica y del Conocimiento
  • 13. 2. Venturas y desventuras del sector IT en la CV La situación Fuente: Observatorio Valenciano para la Sociedad Tecnológica y del Conocimiento
  • 14. 2. Venturas y desventuras del sector IT en la CV La situación Fuente: Observatorio Valenciano para la Sociedad Tecnológica y del Conocimiento
  • 15. 2. Venturas y desventuras del sector IT en la CV La problemática S Estamos en crisis S Mucho trabajo, poco producto S Mucha subvención, poca iniciativa S Poco nivel de madurez S Directivos con escasos conocimientos de la Ing. del Software S Aún investigando, no hay un plan de explotación claro
  • 16. 2. Venturas y desventuras del sector IT en la CV Por qué vienen a nosotros S Pongamos por caso… S Una empresa del sector de la alimentación S Fabrica máquinas que clasifican aceitunas S Procesando imágenes S Y usando expulsores de aire comprimido Es decir, algo así…
  • 17. 2. Venturas y desventuras del sector IT en la CV Por qué vienen a nosotros Cámara ANI y ADI ACO
  • 18. 2. Venturas y desventuras del sector IT en la CV Por qué vienen a nosotros S Todo iba bien. S Tenían su máquina funcionando y las aceitunas y los aceituneros eran felices. S Pero entonces llegaron los malvados comerciales S ¿Y si en vez de aceitunas queremos cocos? S ¿Y si en lugar de cámaras de vídeo queremos espectrógrafos? S ¿Y si en lugar de aire comprimido queremos compuertas de derivación?
  • 19. 2. Venturas y desventuras del sector IT en la CV Por qué vienen a nosotros S Qué pasó: S Cada situación una nueva máquina, cada máquina, un nuevo equipo y un nuevo mantenimiento. S Cada máquina su servicio técnico, y una evolución particular S Los fallos de una, se repetían en el resto S Se duplicaba información de configuración y control de errores
  • 20. 2. Venturas y desventuras del sector IT en la CV Por qué vienen a nosotros S Razones: S Arquitectura NO modular S Código repetido S Sin control de versionado S Sin control de errores S Sin documentación de la arquitectura S Con documentación anárquica del código S … En resumen, no aplicaban técnicas de Ingeniería del Software
  • 21. 2. Venturas y desventuras del sector IT en la CV Por qué vienen a nosotros S Hasta que no estás muy mal, no vas al médico…
  • 22. 2. Venturas y desventuras del sector IT en la CV Por qué vienen a nosotros S Y hasta que el software no es inmanejable… no vienen al ITI
  • 23. 2. Venturas y desventuras del sector IT en la CV Problemas del sector S En general, nos encontramos con empresas que: S No tienen una metodología de desarrollo software clara S No tienen una metodología de gestión de proyectos clara S Empresas que no usan herramientas estándar para: S Diseño (ni un triste modelo UML) S Control de Versiones (el SVN no es tan complicado) S Gestión de la documentación (ni siquiera plantillas) S Testeo (¿qué es eso del testeo unitario?) S Control de bugs y Errores
  • 24. 2. Venturas y desventuras del sector IT en la CV Problemas del sector S Estamos en crisis: S No puedo perder el tiempo en documentación S ¿Testeo? ¿Para qué? Mis programadores son muy buenos S La realidad: S Sólo las empresas maduras sobreviven a la crisis S Sólo las que tienen procesos y procedimientos claros S Sólo las que aplican patrones y reutilizan código y conocimiento S Sólo las que se mueven con la tecnología
  • 25. Ingeniando el 1. El Instituto Tecnológico SW en tiempos de Informática de crisis 2. Venturas y desventuras del sector IT Contenido 3. Ingeniería del Software en la práctica 4. Consejos El Instituto: www.iti.es El ponente: Web: http://web.iti.upv.es/~fsanchez/ Correo: cid@iti.es
  • 26. 3. Ingeniería del Software práctica Metodologías de Desarrollo
  • 27. 3. Ingeniería del Software práctica Metodologías de Desarrollo S Hay normas generales: S En general, los extremos no son buenos: ni Cascada, ni Extreme Programming. S En general, los enfoques incrementales o iterativos son buenos: RUP, SCRUM S Pero todo depende del proyecto: S Un proyecto de envergadura requiere un buen análisis de requisitos y un buen diseño S Un pequeño proyecto (100 horas), se atasca con un análisis y diseño excesivos
  • 28. 3. Ingeniería del Software práctica Metodologías de Desarrollo S Caso SCRUM: S Extremadamente útil y productivo (bien) S Muy exigente para el grupo de trabajo (no tan bien)
  • 29. 3. Ingeniería del Software práctica Problemas Generales S Cambian los requisitos: S Caso XXX y su documentación inicial tras un año de desarrollo S La tecnología no lo permite: S Caso Google Calendar y su control de acceso por calendario S El equipo no es competente: S El famoso caso del departamento desmantelado
  • 30. 3. Ingeniería del Software práctica Soluciones Generales S Cambian los requisitos: S No especifiques todos los requisitos en detalle. S La documentación crecerá junto al desarrollo S La tecnología no lo permite: S Rol de Arquitecto Software S Desarrolla elementos críticos antes de los no críticos S El equipo no es competente:
  • 31. 3. Ingeniería del Software práctica Soluciones Generales S El equipo no es competente: S Huyeeeeeee!!!!
  • 32. Hasta aquí todo bien, ¿no? Ya sabemos gestionar un proyecto Ahora vamos a remangarnos la camisa…
  • 33. 3. Ingeniería del Software práctica Arquitectura y Diseño de Sistemas S Aprende a modelar S Muchos dibujan, pocos modelan S Es la forma más rápida de documentar S La forma más fácil de relacionarte con el cliente S No existe el diagrama perfecto, sí el correcto S No intentes representar todo en un único diagrama S Haz sólo los absolutamente necesarios
  • 34. 3. Ingeniería del Software práctica Arquitectura y Diseño de Sistemas S Lo más usado en las empresas: Diagramas de Estructura Fuente: www.agilemodeling.com
  • 35. 3. Ingeniería del Software práctica Arquitectura y Diseño de Sistemas S Lo más usado en las empresas: Diagramas de Comportamiento Fuente: www.agilemodeling.com
  • 36. 3. Ingeniería del Software práctica Arquitectura y Diseño de Sistemas S Lo más usado en las empresas: Diagramas de Interacción Fuente: www.agilemodeling.com
  • 37. 3. Ingeniería del Software práctica Arquitectura y Diseño de Sistemas S Y por supuesto, el mock-up:
  • 39. 3. Ingeniería del Software práctica La importancia de los patrones S Es lo que llevará a nuestra carrera a ser una INGENIERÍA: S Singleton, para crear una clase de una única instancia S Factory, para crear clases sin especificar la clase exacta a crear S Adapter, para permitir a dos clases con interfaces incompatibles comunicarse encapsulándolas S Patrones específicos de seguridad como: S Encrypted Storage S Password Authentication S Authentication Session S Repetidos una y otra vez, pero por fin con una implementación de referencia
  • 40. 3. Ingeniería del Software práctica La importancia de los patrones S A un nivel más arquitectónico, son fundamentales los EAI (Enterprise Integration Patterns): S Estilos de integración: mensajería, BBDD compartida, … S Sistemas de Mensajería: Router, Translator, … S Canales de Mensajería: Publish-Subscribe, Message Bus, … Y muchos más
  • 41. 3. Ingeniería del Software práctica La importancia de los patrones S Lo importante: S Saber dónde encontrarlos y aplicarlos correctamente S Respetar la nomenclatura Fuente: http://www.eaipatterns.com/
  • 42. Ingeniando el 1. El Instituto Tecnológico SW en tiempos de Informática de crisis 2. Venturas y desventuras del sector IT Contenido 3. Ingeniería del Software en la práctica 4. Consejos El Instituto: www.iti.es El ponente: Web: http://web.iti.upv.es/~fsanchez/ Correo: cid@iti.es
  • 43. 4. Consejos para moldear tu camino tecnológico S Todos empezamos desde abajo, así que… S Hazte un buen programador S Pero no lo olvides: S Eres Ingeniero, aunque tu rol sea programador S Hazte un buen tecnólogo S No es sólo programar, es conocer la tecnología S Internacionalízate
  • 44. 4. Consejos para moldear tu camino tecnológico S Maneja el MVC con soltura: S Y encapsula, siempre encapsula: S ¿Cómo construirías tu BBDD remota?
  • 45. 4. Consejos para moldear tu camino tecnológico
  • 46. 4. Consejos para moldear tu camino tecnológico S Respecto a la programación: S Ingenia, busca, no des nada por seguro: duda de todo. S Sé maduro: aplica patrones S Sé limpio: aplica formatos estándar S Consulta (o participa) en proyectos de SW libre S Respecto a la tecnología: S No sólo programes, conoce la tecnología S Aprende a crear tu propio criterio: busca y compara S No es Java, sino Struts, Hibernate, Spring… S No es .NET, sino SQLServer, Sharepoint, Visual Studio…
  • 47. 4. Consejos para moldear tu camino tecnológico S Respecto a ti: S Sé humilde, pero intrépido S Saca todo el partido de los que saben S Procura estar al día en tecnología Y entre nosotros… Aquello que hagas, hazlo bien
  • 48. Y eso es todo… ¿preguntas? Francisco Sánchez Cid cid@iti.es Área de Desarrollos y Arquitectura Software