Retos en la Ingeniería de Software
Automotriz
1 de Octubre del 2012
Agenda
• Introducción
• Estado del Arte
• El Futuro
• Retos
– Competencia y procesos mejorados
– Innovación en la arquitectura
– Desarrollo y mantenimiento de procesos
– La problemática del costo
• Investigación
– Arquitectura comprensiva de vehículos
– Mejorando los procesos
– Desarrollo de actuadores
– Mejoramiento de la calidad y la confiabilidad
• Conclusiones
• Referencias
2
Introducción
• Autos crecen exponencialmente → desarrollo
poderoso a bajo costo
• Nueva Demanda:
– Competencias clave
– Procesos
– Métodos
– Herramientas
– Estructuras
– División del trabajo
– Logística
– Mantenimiento
– Estrategias de largo plazo 3
Introducción
• Software-autos factor dominante
– 10 millones de Líneas de Código
• Win 3.11 = 3 millones, Win 98 = 18 millones, Vista = 50 millones
• Historia
– Módulos Aislados, no interconectados.
• Presente
– Controladores dedicados
– Redes de comunicaciones seriales
4
Estado del Arte
• Rol de software en los autos:
– 70 Módulos
– 5 Redes de comunicaciones
– 40% costo total electrónica-desarrollo de software
– 2000 Funciones
5
El Futuro
• Innovación en Funcionalidad
– Prevención de choques → Prevención y aminoramiento
– Administración de Energía → Carros híbridos, el comienzo.
– Asistencia avanzada de conducción → Mantenerse en línea,
planeación de viajes. (GPS)
– Interfase Hombre-Maquina (MMI) Avanzada → Contexto
adaptativo
– El auto programable → Actuadores y Sensores
– Personalización e individualización
6
El Futuro
• Innovación en Funcionalidad
– Telematica, MTPs, sistemas de navegacion
– Control automatico de vehiculos → Radares, GPS, freno
asistido
– Control de autos con la vista → Sensores en un casco del
usuario indican cambios en el sistema nervioso y reconoce si la
vista es hacia la derecha/izquierda para dar una vueltas.
– Sistemas operativos en tiempo real
7
El Futuro
• Reducción de Costos
• Arquitecturas de Innovación
– Centralización
– Nuevas técnicas de ingeniería de software
8
Retos: Competencia y procesos
mejorados
– Del Software a la ingeniería de sistemas
• Desarrolladores deben comprender intensivamente
– Oportunidades y riesgos
• Velocidad de desarrollo
• Complejos requerimientos
• Presión del costo
• Insuficientemente competente en el campo
9
Retos: Innovación en la
arquitectura
– Funcionalidad
• Sistemas (confort, información,
entretenimiento) no están aislados
• Mejores modelos para estructuras
multifuncionales
10
Retos: Innovación en la
arquitectura (continúa)
– Interfaces hombre-maquina (MMI)
• BMW iDrive (touch pads, mouse)
• Sistema Ford para estacionamiento
automático
– Modelos de datos complejos
• Diferentes módulos manejan datos
separadamente
11
Retos: Desarrollo y mantenimiento
de procesos
– Ingeniería de Requerimientos
• Funciones completamente nuevas
– Diseño
• Módulos, redes, dispositivos de comunicaciones, sensores,
actuadores, interfaces hombre-máquina
– Codificación
• Generación de código no explota los módulos al máximo
– Integración de software y sistemas
• Diferentes proveedores
– Aseguramiento de la calidad
• Errores pasan a menudo sin detectarse
– Mantenimiento
• Compatibilidad entre generaciones
• Diagnóstico de defectos y reparación
• Hardware cambiante → Descontinuado
12
Retos: El costo
– Costo de Control de Software
• Máximo aprovechamiento → no reutilizable
– Los Nuevos involucrados
• Nuevos proveedores
– Inversión a largo plazo
• El jugador dominante
13
Retos: El costo (continúa)
– Reuso y líneas de producto
• No usado sistemáticamente
– Innovación constante y con un tiempo de
desarrollo corto
• Inversión en equipamiento y recursos
14
Investigación: Arquitectura
comprensiva de vehículos
– Nivel de Funcionalidad - Vista de usuario
(una familia de servicios)
– Nivel de Diseño - Arquitectura Lógica de software
(un sistema distribuido)
– Nivel de Hardware - Arquitectura de Hardware
– Despliegue - Diseño de código Software/Hardware
(interacción)
– Modelado y descripción de la arquitectura
(suficientemente expresiva)
15
Investigación: Arquitectura
comprensiva de vehículos
16
Investigación: Reducir
complejidad y mejorar los
procesos
– Un apropiado nivel de arquitectura
– Orientación de modelos
– Niveles de Madurez/Calidad/Técnicas
• CMM
• Spice
• Agile
17
Investigación: Mejoramiento de la
calidad y la confiabilidad
– Generación automática de casos de prueba
• Simulación limitada por complejidad
combinatoria
– Diagnostico de errores y recuperación
– Confiabilidad
• Modelos comprensivos de errores
• Redundancia
18
Conclusión
• Software en autos, relativamente nuevo
• Vasto campo de aprendizaje
• Investigaciones deben realizarse bien
enfocadas
• Embebido automotriz un reto de la ingeniería
de software
19
Referencias
ACM, International Conference on Software Engineering
Proceedings of the 28th international conference on Software engineering
Shanghai, China
Challenges in automotive software engineering
Manfred Broy
Technische Universität München, München, Germany
Pages: 33 - 42
Year of Publication: 2006
ISBN:1-59593-375-1
20
Gracias !
Sesión de Preguntas