Upload
atilio-miguel
View
239
Download
0
Embed Size (px)
Citation preview
Tendencias de la Tendencias de la Ingeniería de Software Ingeniería de Software EmbebidoEmbebido
Loayza Soloisolo, JorgeRamirez Ticona, Jorge ThonyCoaquira Ugarte, Lucas
IntroductionIntroductionSe desarrolla para reducir los
costos de realizar tareas laboriosas.
dispositivos embedded utilizan arquitecturas SoC.
Los SO embedded son compactos y altamente eficientes.
Los lenguajes utilizados para desarrollar sistemas embedded son de alto nivel.
IntroductionIntroductionDiseñado para realizar una o
algunas pocas funciones dedicadas.
Problemas de tiempo real.computación en tiempo real.Dos de las diferencias principales
son el precio y el consumo.Software para hardware
especifico.
Software EmbebidoSoftware EmbebidoComo el término lo sugiere, es
solo una parte de un “todo” más grande que consiste en muchos componentes, no sólo módulos de computadora, sino también sensores y actuadores.
CarasteristicasCarasteristicas
DemandaDemanda de de requerimientosrequerimientosSeguridad.Confiabilidad.Eficiencia.Costos Bajos.Realizar Tareas laboriosas.
Desafíos y DificultadesDesafíos y DificultadesCONSIDERACIONES
ECONÓMICAS: El consumo de potencia o energía de un procesador, es decisivo en la selección del mismo.
CONFIABILIDAD Y ESTABILIDAD: Desempeña un papel mucho más pesado que en aplicaciones de cálculo puras. Un fracaso a este nivel, ya no causa por ejemplo, un número incorrecto.
Principales Tendencias del Principales Tendencias del Desarrollo de Software Desarrollo de Software EmbeddedEmbeddedCircuitos dedicados > Hardware
de propósito general.Lenguaje ensamblador >
Lenguajes de alto nivel y ambientes virtuales de ejecución.
Tiempo real físico > Tiempo real lógico.
Sistemas operativos compactos > Sistemas operativos modulares.
Objetivos del Desarrollo de Objetivos del Desarrollo de Software Embedded Software Embedded
Dificultades ActualesDificultades ActualesCompañías con software
embebido de baja calidad.No existen plataformas comunes.Hardware y Software para
sistemas embebidos.Necesidad de sistemas Críticos y
Seguros.
Model-Driven Engineering Model-Driven Engineering Los MDE son intuitivos, más
expresivo, con notaciones gráficas que proporcionan un mayor nivel de abstracción que los lenguajes de programación nativo.
Genera automáticamente el código de implementación.
Model-driven architectureModel-driven architectureMDD y MDA fueron
estandarizados. MDA son herramientas de
modelado de la aplicación de lenguajes de programación específicos del fabricante.
model-driven model-driven developmentdevelopmentModelo Iterativo de desarrollo de
sofware embebido.
Aseguramiento de la Aseguramiento de la calidcalidadadAunque las pruebas no pueden
demostrar la corrección de software, las pruebas sistemáticas pueden alcanzar la calidad del software suficiente.
Modelo basado en análisis de Modelo basado en análisis de confiabilidad y seguridadconfiabilidad y seguridadProbabilidad de Fallas y/o la
Confiabilidad, (Confiabilidad = 1 – Probabilidad de Fallas), y de las Consecuencias.
Crecimiento continuo de la Crecimiento continuo de la inteligenciainteligenciaDirección para la inteligencia
incrustada en los distintos dispositivos
El aumento en la complejidad del software inherente a dicha inteligencia seguirá sin duda la misma tendencia.
En esta perspectiva, es importante comenzar a preocuparse desde ya a formalizar la metodología de desarrollo de software, utilizando posiblemente los distintos marcos que para ello existen, para asegurar la necesaria calidad de los productos del futuro.
ReferenciasReferencias 1. IEC 61508, Functional Safety of
Electrical/Electronical/ Programmable Electronic Safety-Related Systems, Int’l Ele
2. H. Giese and S. Henkler, “A Survey of Approaches for the Visual Model-Driven Development of Next Generation Software-Intensive Systems,” J. Visual Languages and Computing, vol. 17, no. 6, 2006, pp. 528–550.
3. R. Alur et al., “Hierarchical Hybrid Modeling of Embedded Systems,” Proc. 1st Int’l Workshop Embedded Software (EMSOFT 01), LNCS 2211, Springer, 2001, pp. 14–31.
4. K. Berkenktter et al., “Executable HybridUML and Its Application to Train Control Systems,” Integration of Software Specification Techniques for Applications in Eng., LNCS 3147, Springer, 2004, pp. 145–173.
5. R. Grosu, I. Krger, and T. Stauner, “Hybrid Sequence Charts,” Proc. 3rd IEEE Int’l Symp. Object-Oriented Real-Time Distributed Computing (ISORC 00), IEEE Press, 2000, p. 104.
ReferenciasReferencias 6. B.P. Douglass, Real Time UML: Advances in the
UML for Real-Time Systems, Addison-Wesley, 2004. 7. B.W. Boehm, “A Spiral Model of Software
Development and Enhancement,” Computer, vol. 21, no. 5, 1988, pp. 61–72.
8. B.W. Boehm, “Guidelines for Verifying and Validating Software Requirements and Design Specification,” Proc. European Conf. Applied Information Technology (Euro IFIP), North-Holland, 1979.
9. P. Kruchten, “The 4 + 1 View Model of Architecture,” IEEE Software, vol. 12, no. 6, 1995, pp. 42–50.
10. S. Kelly and J.-P. Tolvanen, Domain-Specific Modeling: Enabling Full Code Generation, Wiley-IEEE CS Press, 2008.
11. IEC 61025, Fault Tree Analysis (FTA), Int’l Electrotechnical Commission, 1990.
12. RTCA DO-178B, Software Considerations in Airborne Systems and Equipment Certification, Radio Technical Commission for Aeronautics, 1992.ctrotechnical Commission, 1998.