Manuel Dávila Sguerra mdavila@uniminuto Bogotá

37
Manuel Dávila Sguerra [email protected] Bogotá Estrategia del software para el 2015 en los EEUU y aprendizaje para el software Colombiano

description

Estrategia del software para el 2015 en los EEUU y aprendizaje para el software Colombiano. Manuel Dávila Sguerra [email protected] Bogotá. Origen del estudio. SOFTWARE 2015: A NATIONAL SOFTWARE STRATEGY TO ENSURE U.S. SECURITY AND COMPETITIVENESS - PowerPoint PPT Presentation

Transcript of Manuel Dávila Sguerra mdavila@uniminuto Bogotá

Page 1: Manuel Dávila Sguerra mdavila@uniminuto Bogotá

Manuel Dávila Sguerra

[email protected]

Bogotá

Estrategia del software para el 2015 en los EEUU y aprendizaje para el software Colombiano

Page 2: Manuel Dávila Sguerra mdavila@uniminuto Bogotá

Origen del estudio

SOFTWARE 2015: A NATIONAL SOFTWARE STRATEGY TO ENSURE U.S. SECURITY AND

COMPETITIVENESS

Report of the 2nd National Software Summit Center for National Software Studies

Page 3: Manuel Dávila Sguerra mdavila@uniminuto Bogotá

XXVII Salón de Informática - Septiembre'2007

3

Contenido

• Introducción

• Riesgos por software defectuoso

• Oportunidades

• La estrategia nacional de software

• Mejorar el mecanismo de producir software “digno de confianza” Trustworthy

• Educación y enfoque de la fuerza de trabajo del software

• Re energización de la investigación y el desarrollo de software

• Enfrentar la Innovación dentro de la Industria del Software

Page 4: Manuel Dávila Sguerra mdavila@uniminuto Bogotá

XXVII Salón de Informática - Septiembre'2007

4

Introducción

• Las naciones son altamente dependientes de las tecnologías de la información

• El punto central es el software

• Se encuentra en todos los elementos de la vida cotidiana

• EEUU es una nación bajo riesgo de consecuencias inaceptables por las fallas del software

Importancia

Page 5: Manuel Dávila Sguerra mdavila@uniminuto Bogotá

XXVII Salón de Informática - Septiembre'2007

5

Riesgos

Fallas en la Infraestructura

Perdidas económicas inesperadas

Pérdida de vidas

Pérdida de la confianza pública

Pérdida de identidad y de liderazgo

Page 6: Manuel Dávila Sguerra mdavila@uniminuto Bogotá

XXVII Salón de Informática - Septiembre'2007

6

Oportunidades (1)

• Direccionar esfuerzos pertinentes a lograr un software seguro y de calidad que sea Digno de confianza “trustworthiness.”

• “Trustworthiness” significa: Digno de confianza para cumplir con los requerimientos necesarios en cualquiera de los componentes de software, aplicación, sistema o red. Tiene atributos de seguridad, garantía, confianza, fiabilidad, rendimiento, supervivencia con un amplio espectro de adversidades y compromisos. Se requiere en el hardware, el software, las comunicaciones, componentes de potencia asi como de los desarrolladores y los que hacen el mantenimiento

Page 7: Manuel Dávila Sguerra mdavila@uniminuto Bogotá

XXVII Salón de Informática - Septiembre'2007

7

Oportunidades (2)

– Las características del software como una industria intensiva en trabajo requiere que su fuerza de trabajo sea educada y que exista una estructura salarial competitiva

– Una investigación y desarrollo bien orientada ofrece la oportunidad de mejorar el desarrollo del estado del arte en software entre la industria y la academia

– La industria orientada hacia la aplicación y la academia hacia objetivos de largo plazo.

– Contribución del gobierno a traves de laboratorios y soporte como el de National Science Foundation.

– Hay un reto para sostenerse en un liderazgo relacionado con la innovación

Page 8: Manuel Dávila Sguerra mdavila@uniminuto Bogotá

XXVII Salón de Informática - Septiembre'2007

8

La estrategia nacional de software

Para convertir esas oportunidades a soluciones reales es hora de elevar el software a un asunto de política nacional en compañía del estado, la industria y la academia.La visión se orienta a dos logros: adquirir la habilidad de desarrollar y liberar productos y sistemas de software Digno de confianza (trustworthy) de manera rutinaria y asegurar la continuidad de la competitividad de los EEUU en la industria del software

Los 4 programas de la estrategia son:

A. Mejorar el mecanismo de producir software Digno de confianza (trustworthy)B. Educar y caracterizar la fuerza de trabajo en el softwareC. Re energizar la investigación y el desarrolloD. Enfrentar la innovación dentro de la industria del software

Page 9: Manuel Dávila Sguerra mdavila@uniminuto Bogotá

XXVII Salón de Informática - Septiembre'2007

9

A. Mejorar el mecanismo de producir software Digno de confianza (1)

Como sociedad basada en la información los EEUU es ireversiblemente dependiente de los sistemas de softwareEl software controla:

La infraestructura energética Las comunicaciones La manufactura, Las finanzas El gobierno y la Defensa nacional entre otras

El Software es un elemento dominante Sus fallas trae enormes riesgos que provienen de hacer software no Digno de confianza (trustworthiness)

Page 10: Manuel Dávila Sguerra mdavila@uniminuto Bogotá

XXVII Salón de Informática - Septiembre'2007

10

A. Mejorar el mecanismo de producir software trustworthy (2)Seguridad:

Muchos productos están expuestos a problemas de seguridadno intencionada por mala Ingeniería de software y malas prácticas en la programación

O codigo malicioso y malintencionado como virus, Troyanos, puertas traseras

Hay demasiada pérdida de tiempo en el control de virus, spam que podría utilizarse en tareas productivas

Confianza: El software no debe hacer daño a las personas ni a la propiedad:

aviación, medicina, exploración espacial, banca, transporte Fiabilidad:

No debe afectar a los actores por fallas a gran escala en defensa, telecomunicaciones, energía, espacio y sistemas financieros

Supervivencia: Debe mantener un continuo funcionamiento aun en situaciones

adversas y no solo en ambientes benignos.

Page 11: Manuel Dávila Sguerra mdavila@uniminuto Bogotá

XXVII Salón de Informática - Septiembre'2007

11

A. Mejorar el mecanismo de producir software trustworthy (3)

Logros

El software Digno de confianza en las sociedade basadas en la información no es una opción sino una necesidadLa Ingeniería de software ha alcanzado sus límites de los primeros 50 años No son las buenas intenciones ni el cuidado lo que permitirá desarrollar los complejos sistemas del futuro

Para que las nuevas tecnologías sean Dignas de confianza requieren:Identificar y analizar las propiedadesDesarrollar software bajo el contexto Expandir la consciencia y la educación en estos aspectos Incentivar a los desarrolladores de software para producir software bajo estas característicasIncrementar la investigación y el desarrollo en software Digno de confianza

IniciativasAnálisis de software Digno de ConfianzaDesarrollar métodos de medidas para una métrica de calidad para un indice de calidad nacional de softwareInvestigar la factibilidad de crear organizaciones independientes para evaluar software Digno de ConfianzaDesarrolar métodos para alcanzar los objetivos en productos de software, familias de productos, sistemas y sistemas de sistemas

Page 12: Manuel Dávila Sguerra mdavila@uniminuto Bogotá

XXVII Salón de Informática - Septiembre'2007

12

A. Mejorar el mecanismo de producir software trustworthy (4)

TareasDesarrollo de software Digno de confianzaCrear evidencias empíricas para determnar cómo los procesos de la ingeniería de software están relacionados con Software Digano de Confianza Desarrollar nuevas tecnologías y procesos para la siguiente Ingeniería de software

Educación y conscientización de TSMejorar y extender el tratamiento de los conceptos de SDC y de los métodos en Ingeniería de software y programas de Computer Science Mejorar la habilidad para comunicar los conceptos a los involucrados

Investigación y desarrollo en SDCIncrementar las inversiones en investigación y desarrolloPromover transferencia de tecnologías de SDC

Page 13: Manuel Dávila Sguerra mdavila@uniminuto Bogotá

XXVII Salón de Informática - Septiembre'2007

13

Proceso tradicional en el desarrollo de software

Complejidad del software = N*I*(O elevado a la potencia p)

N = Tipo de programa

I = Nro de entradas

O = Nro de salidas

p = una potencia

Page 14: Manuel Dávila Sguerra mdavila@uniminuto Bogotá

XXVII Salón de Informática - Septiembre'2007

14

Modelo Construir y mejorar

1950 – 1960Utilizado por la Volskwagen en la producción y venta de sus vehículos

Úselo, informe fallas que nosotros lo mejoramos !

El más usado en el desarrollo de software aunque de pena admitirlo !

Page 15: Manuel Dávila Sguerra mdavila@uniminuto Bogotá

XXVII Salón de Informática - Septiembre'2007

15

Método en cascada1970

La época en que Edsger Dijkstra prohibó el “go to” al margen de la creación de la programación estructuradaFunciona si cada fase está perfectamente desarrollada lo cual nunca es verdad !

Page 16: Manuel Dávila Sguerra mdavila@uniminuto Bogotá

XXVII Salón de Informática - Septiembre'2007

16

Modelo Prototipo Rápido

Basado en el modelo de las plantas piloto de los

Ingenieros Químicos.

Produce un programa que realiza funciones

esenciales que se mejora en el transcurso del

desarrollo en la medida en que el usuario lo acepta

Page 17: Manuel Dávila Sguerra mdavila@uniminuto Bogotá

XXVII Salón de Informática - Septiembre'2007

17

Modelo Incremental

Mezcla del modelo en cascada y del prototipo Rápido

Reconoce que los pasos en el desarrollo no son discretos y

va creando construcciones paulatinas

Tiene el peligro que el proceso de aprendizaje exceda al de

la productividad y se de el “síndrome de la investigación

Page 18: Manuel Dávila Sguerra mdavila@uniminuto Bogotá

XXVII Salón de Informática - Septiembre'2007

18

Modelo Extreme Programming1996

Basado en el desarrollo del sistema de nómina de Chrysler

El cliente se se coloca en el asiento del chofer....

Basado en su discurso él es parte del desarrollo el cual se hace de manera incremental

Page 19: Manuel Dávila Sguerra mdavila@uniminuto Bogotá

XXVII Salón de Informática - Septiembre'2007

19

Modelo Round Tripping

Se soporta en generadores de código basado en diseño de patrones

Muy orientado a Programación orientada a objetos

Page 20: Manuel Dávila Sguerra mdavila@uniminuto Bogotá

XXVII Salón de Informática - Septiembre'2007

20

Modelo IterativoRUP

El más realista de los modelo tradicionalesHace seguimiento entre cada estado y el anterior

Page 21: Manuel Dávila Sguerra mdavila@uniminuto Bogotá

XXVII Salón de Informática - Septiembre'2007

21

Modelo de software seguro

Page 22: Manuel Dávila Sguerra mdavila@uniminuto Bogotá

XXVII Salón de Informática - Septiembre'2007

22

7 Puntos de análisis1. Revisión de código con herramientasArtefacto: códigoEjemplo de riesgo encontrado: Buffer overflow en la linea 10Comentario: Es el análisis estático del código que ayuda en parte, no en todo, a descubrir instruccones no seguras

2. Análisis de riesgo de la arquitecturaArtefacto: Diseño y especificaciónEjemplo de riesgo encontrado: pobre protección de datos críticos, fallas en web services al auntenticar código Comentario: los diseñadores, asquitectos y analistas deben documentar las asunciones e identificar los posibles ataques

3. Pruebas de penetraciónArtefacto: Sistema y ambienteEjemplo de riesgo encontrado: manejo pobre del interfaz de webComentario: las pruebas de penetración en la red no son suficientes mecanismosde seguridad. El software debe pasar pruebas de “cajas negras” fabricadas por otrasaplicaciones

Page 23: Manuel Dávila Sguerra mdavila@uniminuto Bogotá

XXVII Salón de Informática - Septiembre'2007

23

7 Puntos de análisis

4. Operacion de seguridad o pruebas de seguridad basadas en riesgosArtefacto: Ejemplo de riesgo encontrado: Comentario:

Page 24: Manuel Dávila Sguerra mdavila@uniminuto Bogotá

XXVII Salón de Informática - Septiembre'2007

24

Aspectos a tener en cuenta (1)

•Los problemas de la seguridad: defectos como buffer overflow, mal manejo de

detección de errores

•Conectividad, ubicuidad, web services y Soa saben que muchas aplicaciones no

diseñadas para trabjar en red se han publicado como servicios web

•Plataformas antiguas que no soportan ssl

•Integración middleware en que la autenticación y los protocolos del nivel

de aplicación no están alineados.

•Sistemas que tienen código móvil a través de APIS como los plugins de los

navegadores y los Web services y SOA

•Complejidad en software de grandes extensiones en donde no es posible abolir

los bugs

Page 25: Manuel Dávila Sguerra mdavila@uniminuto Bogotá

XXVII Salón de Informática - Septiembre'2007

25

Aspectos a tener en cuenta (2)

•La seguridad hoy en día se trabaja más al nivel de la red con firewalls, ssl, ids's etc

•Está en manos de expertos operativos en la red más no en los desarrolladores

de software

•La noción de defender el perímetro no es suficiente ya que si bien los firewalls

intentan proteger el “sistema” del “exterior” no sirve cuando hay tunneling y

el software del exterior entra inpunemente

•3 Pilares: administración del riesgo, touchpoints o mejores prácticas que deben

ir en todo el ciclo de desarrollo y Conocimiento

•Memo de Bill Gates Enero 15 del 2002:

“En los años anteriores hemos aclarado que asegurar que la plataforma .NET sea

Digna de confianza es más importante que cualquier parte de nuestro trabajo”

“La computación Digna de confianza es aquella que está disponible, es fiable

y segura como los servicios de agua, energía electrica teléfono”

“DIgno de confianza va más allá que seguridad”

“Entre añadir funcionalidades al software y hacerlo sguro, preferimos hacerlo seguro”

Page 26: Manuel Dávila Sguerra mdavila@uniminuto Bogotá

XXVII Salón de Informática - Septiembre'2007

26

B. Educando y enfocando la fuerza de trabajo del software

Nueve de las diez firmas multinacionales de software en utilidades son de EEUUSon el 90% de las ventas a nivel mundialEl software y su innovación son de una importancia imcremental en las industrias automotriz, manufactura, telecomunicaciones entre otrasDesde la perspectiva de la defensa nacional sistemas militares como jets de combate, tanques, inteligencia militar y tácticas de guerraLa seguridad de la infraestructura como represas, puentes, potencia electrica, sistema de transporte, suministro de agua son dependientes del softwareEl énfasis de paises como India, China, Malasia, Filipinas y Rusia para covertirse en economías del conocimiento que atrae fuerzas de trabajo externo es un tema abierto de debateEducación continua para mantener a los trabajadores en tecnología al dia de los avancesEl outsourcing con el exterior ofrece ventajas de corto plzo pero decrece el número de profesionales propios, lo cual debe ser balanceado que al menos sean buenos compradores de desarrollos externos.

Page 27: Manuel Dávila Sguerra mdavila@uniminuto Bogotá

XXVII Salón de Informática - Septiembre'2007

27

Colombia - Estadística de nuevos estudantes en Ingeniería de sistemas

Número de Graduados por Año (Pregrado y Postgrado - TI)

3,000

4,000

5,000

6,000

7,000

8,000

9,000

10,000

11,000

2001 2002 2003 2004 2005 2006 2007

Postgrado

Pregrado

Page 28: Manuel Dávila Sguerra mdavila@uniminuto Bogotá

XXVII Salón de Informática - Septiembre'2007

28

El dominio de la Ingeniería de sistemas

Page 29: Manuel Dávila Sguerra mdavila@uniminuto Bogotá

XXVII Salón de Informática - Septiembre'2007

29

Page 30: Manuel Dávila Sguerra mdavila@uniminuto Bogotá

XXVII Salón de Informática - Septiembre'2007

30

B. Educando y enfocando la fuerza de trabajo del software

Iniciativa educativa en Ingeniería de software•Ensanchar la habilidad de universidades y otros proveedores de

educación y entrenamiento para cumplir con las necesidades de los

estudiantes incitando a estudiar carreras de software así como para

actualizar a los profesionales para que se mantengan al día en las nuevas

tecnologías. •Certificaciones•Entender el impacto real del outsorcing•Entender lo que significa a largo plazo la demanda de la fuerza de trabajo

de los EEUU por el incremento de los niveles de tecnología de la India

y China

Page 31: Manuel Dávila Sguerra mdavila@uniminuto Bogotá

XXVII Salón de Informática - Septiembre'2007

31

Colombia - Actividad de ACIS en formación en Tecnologías de punta

Acis Informe de los cursos Asamblea 2009 – IArea Excelente BuenoBases de datos 1 16 25,40% 74,60% 25,40%Ingeniería de software 12 222 39,44% 60,56% 75,00%Lenguajes 6 81 36,66% 63,34% 44,40%Mejores prácticas 12 212 32,22% 67,78% 72,73%Plataformas 4 67 9,32% 90,68% 27,28%Seguridad 1 16 18,75% 81,25% 18,75%

36 614Deloitte 20

Nro cursos

Nro asistentes

Máxima excelente

Nro de cursos por área temática

Bases de datosIngeniería de softwareLenguajes

Mejores prácticasPlataformas

Seguridad

Page 32: Manuel Dávila Sguerra mdavila@uniminuto Bogotá

XXVII Salón de Informática - Septiembre'2007

32

C. Re energizar la investigación y el desarrollo de software

El Software es una construcción de Ingeniería con materiales simbólicos y conceptuales cuyas manifestaciones físicas son relativamente intrascendentesLa habilidad de moldearlo está limitada por la capacidad intelectual de los humanosCada vez tiene más influencia en el trabajo de los demásYa es usual hablar de software con 50 millones de lineas de códigoEs dificil de producir software industrialmente y a veces es dificil entender el software hecho por nosotros mismos.La Ingeniería de software sigue siendo una disciplina inmadura acompañada de un incremento en la complejidad de los sistemas que bajo las nuevas tecnologías que aparecen en el mercado

Page 33: Manuel Dávila Sguerra mdavila@uniminuto Bogotá

XXVII Salón de Informática - Septiembre'2007

33

C. Re energizar la investigación y el desarrollo de software

Por eso:La investigación y la innovación el desarrollo de software tiene una especial significanciaEl estado debe tener un rol más fuerte para apoyar la investigación y el desarrolloLa investigación más importante debe permear a la sociedad y no solo a los ámbitos de las empresas particularesLa tecnología influencia a las comunidades y a la sociedad en general, casos como TCP/IP, HTTP, HTML fueron diseñados bajo el patrocinio del estado a través de la IETFMuchos estados del arte para mejorar la calidad en el desarrollo de software fueron patrocinados por la National Science Foundation (NSF), Defense Advanced Research Projects Agency (DARPA) en conjunto con Universidades y empresas del sectorLa investigación universitaria patrocinada por el estado da dividendos adicionales por el apoyo a la labor académica de las Universidades

Page 34: Manuel Dávila Sguerra mdavila@uniminuto Bogotá

XXVII Salón de Informática - Septiembre'2007

34

El Banco de Innovación Tecnológica - BIT

Diseñar, desarrollar y dar mantenimiento a un sistema de información, que permita administrar, impulsar y dar seguimiento a todos los proyectos de investigación que puedan ser conjuntamente ejecutados entre el sector empresarial de base tecnológica y el sector académico, a través de procesos de investigación aplicada, prácticas profesionales, pasantías u otras modalidades por parte de las universidades y los requerimientos y necesidades del sector productivo del software nacional.

Page 35: Manuel Dávila Sguerra mdavila@uniminuto Bogotá

XXVII Salón de Informática - Septiembre'2007

35

C. Re energizar la investigación y el desarrollo de software

El 90 % de cyber incidentes significativos se deben a software defectuoso según CERT - Computer Emergency Response Team (CERT) por lo cual no se debe admitir la tolerancia en la calidad del softwareNo se debe confiar de las mejores prácticas adoptadas tan solo por estadísticas de resultados porque se debe producir software seguro y digno de confianzaNo solo es un proceso de capacitación sino de crear tecnologías anexas para ese propósito.

Page 36: Manuel Dávila Sguerra mdavila@uniminuto Bogotá

XXVII Salón de Informática - Septiembre'2007

36

D. Enfrentar la Innovación dentro de la Industria del Software delos EEUU

Innovación tiene que ver con nuevas ideas para mejorar el nivel de vida de las personasLa medida de la productividad debe ser tenida en cuenta:

?Lineas de código por persona/mes? ¿Funcionalidades en lugar de número de instrucciones?

Creación de patentes: IBM: 3415 en el 2003, 3248 en el 2004, 29019 en los últimos 12 años

Triplicando al siguiente competidor La United States Patent and Trademark Office (USPTO) recibe 1000

Aplicaciones de patentes por día para 18 meses de revisión por patente

5% del Producto interno Bruto de los EEUU sale de licencias de propiedad intelectual liderando a otros Paises como Japón y Alemania

40-60 o ciento en el número de patentes por millón de habitantesAcelerar la innovaciónEstudio de descripción de trabajos calificados por el potencial de innovación

Page 37: Manuel Dávila Sguerra mdavila@uniminuto Bogotá

Fortalecer la industria del

software

Aumentar la demanda en

tecnologías de información

Cerrar brechas en talento humano,

administrativas y técnicas

Sector Público

Gobierno en línea

Tercerización funciones

de TI Territorios Digitales

SECOP Comercio Electrónic

o

Sector Privado

Mipyme

Digital

Fomento Comercio Electrónic

o

Líneas Crédito

Fomentar la inversión de empresas de base en

TI

Crear entorno que favorezca el desarrollo de la industria en TI, incluyendo desarrollo de

parques tecnológicos

Desarrollo sistema de información: Identificar actores y roles (definir claramente quien hace que), sistema de inteligencia competitiva y de vigilancia tecnológica (oficina de

aviso temprano de nuevas tecnologías - Gartner,Forrester), sistema de talento humano (demanda y oferta) y capacitación

Fomentar desarrollo

de soluciones

para sectores

económicos estratégicos

Gerencia en

proyectos, estándares de calidad

y gerenciales

Identificar / desarrollar soluciones y empresas

de talla mundial

Fomentar la asociativida

d y consolidació

n

Líneas Crédito

Fomento I&D

Incentivo tributario

Colciencias

Fondo capital riesgo

Levantar línea base (empresas, soluciones, herramientas desarrollo)

Apoyar la exportación de soluciones y

servicios

Programa

Proexport

Fortalecer relación

industria, universidad y centros de Investigació

n (CDTs)

Expertos en calidad, arquitectur

a etc.Formació

n formadore

s

Número egresados con competencias requeridas por

la industria

Fortalecer relación

industria, universidad, centros de

Investigación y

asociacionesLíneas

créditos

ICETEX

Formación formadores

Fortalecer la asociación de empresarios

Desarrollo proyecto de Ley para el Software

Dónde pode-mos

Jugar

Fomento capacitación no formal y

certificaciones