Está en la página 1de 10

Actividad 1 “Análisis de casos de éxito de incorporación de métodos formales en el desarrollo de software”.

Ortega Martinez, Jose Hermilo.

INSTITUTO DE ESTUDIOS UNIVERSITARIOS


CAMPUS ONLINE
MAESTRIA EN DIRECCION DE INGENIERIA DE SOFTWARE

MATERIA

Actividad 1 “Análisis de casos de éxito d


incorporación de métodos formales en el desarrollo de
software”

ALUMNO(A): JOSE HERMILO ORTEGA MARTINEZ


FACILITADOR: DRA. FABIOLA SERNA HERNÁNDEZ
SAN BUENAVENTURA, COAHUILA, A domingo, 04 de diciembre de 2016.

IEU campus Online. Maestría en Dirección de Ingeniería de Software


Métodos formales de ingeniería de software. Diciembre de 2016. Pág. 1
Actividad 1 “Análisis de casos de éxito de incorporación de métodos formales en el desarrollo de software”.
Ortega Martinez, Jose Hermilo.

INDICE
INTRODUCCION .................................................................................................................................. 3
DESARROLLO ...................................................................................................................................... 4
TEMA 1: METODOS FORMALES ................................................................................................... 4
1.1.- Definición de métodos formales .......................................................................................... 4
TEMA 2: CASO DE ÉXITO DE METODOS FORMALES .............................................................. 6
2.1.- Nombre del proyecto ............................................................................................................ 6
2.2.- Fase de diseño en donde se incorporó el método formal de software ............................ 6
2.3.- Información sobre el método formal obtenida de una fuente confiable ........................... 7
2.4.- Ventajas y desventajas de la incorporación del método formal ....................................... 8
CONCLUSION ...................................................................................................................................... 9
FUENTES DE INFORMACION.......................................................................................................... 10

IEU campus Online. Maestría en Dirección de Ingeniería de Software


Métodos formales de ingeniería de software. Diciembre de 2016. Pág. 2
Actividad 1 “Análisis de casos de éxito de incorporación de métodos formales en el desarrollo de software”.
Ortega Martinez, Jose Hermilo.

INTRODUCCION

La industria del software cada vez busca mejores maneras, herramientas o


métodos de poder hacer que el desarrollo del software pueda ser llevado de maneras
más agiles, confiables y seguras tanto para los usuarios finales como para los mismos
ingenieros de software que gracias a estas pueden dar un mejor servicio y un mejor
trabajo garantizando mejores resultados con los cuales poder cumplir los principales
objetivos de un software como lo es la mantenibilidad, la fiabilidad y su fácil uso.

El uso de métodos formales es una de estas herramientas que han ayudado a los
ingenieros de software en el desarrollo de sistemas y que hoy en día aunque es un
tema del cual poco se ha hablado pero aun así ha existido una gran variedad de casos
de éxito que puedan dar fe y confiabilidad del uso de estos.

En el presente ensayo se define que es un método formal así como sus principales
características, ventajas y desventajas para posteriormente expone un caso real de un
proyecto reconocido internacionalmente en el cual fue utilizado un método formal.

IEU campus Online. Maestría en Dirección de Ingeniería de Software


Métodos formales de ingeniería de software. Diciembre de 2016. Pág. 3
Actividad 1 “Análisis de casos de éxito de incorporación de métodos formales en el desarrollo de software”.
Ortega Martinez, Jose Hermilo.

DESARROLLO

TEMA 1: METODOS FORMALES

1.1.- Definición de métodos formales

De acuerdo con Wing, Jeannette M. (1990). Un método formal es una técnica


que se basa en las matemáticas con la cual se pueden representar, diseñar y verificar
especificaciones de un software o hardware mediante nociones matemáticas, además
con estos métodos se puede dar de una manera más clara que es lo que debe de hacer
un sistema para posteriormente probarse que realmente se cumpla con lo que se dice
en la etapa de obtención de requerimientos y especificaciones.

Si bien estos métodos suenan como una gran herramienta de ayuda para los
desarrolladores, son métodos que poco se han venido hablando por grandes empresas
y esto es algo que día a día se busca ir aumentando ya que en base a cada vez más
proyectos que han venido utilizando estos métodos, se ha comprobado que pueden ser
de gran ayuda tanto para pequeños como grandes proyectos de niveles locales,
nacionales o hasta internacionales.

Son muchas las utilidades que tienen estos métodos como lo pueden ser:
 Políticas de requisitos
 Pruebas entre código máquina y fuente
 Pruebas entre especificaciones y requerimientos

3 de las principales ventajas y mejoras que tiene el uso de estos métodos son:

Especificaciones Verificacion Validacion

IEU campus Online. Maestría en Dirección de Ingeniería de Software


Métodos formales de ingeniería de software. Diciembre de 2016. Pág. 4
Actividad 1 “Análisis de casos de éxito de incorporación de métodos formales en el desarrollo de software”.
Ortega Martinez, Jose Hermilo.

Entre las desventajas de estos métodos principalmente podemos decir que es poco
conocido por investigadores o desarrolladores lo cual hace que al momento de querer
iniciar un desarrollo implementando estos métodos pueda llegar a ser algo complejo y
tardado porque es necesario conocer más del tema además de que estos métodos son
un tanto incomodos para los usuarios por la complejidad que pudieran llegar a tener.

Además, existen 7 mitos los cuales han sido dichos desde la creación de estos métodos
por los cuales muchas personas con solo escucharlos optan por no hacer uso de estos
por creer que dichos mitos puedan ser verdad y puedan llegar a llevar al fracaso un
proyecto.

A continuación se exponen los 7 mitos de los métodos formales:


1. Los métodos formales pueden garantizar la corrección del software a la
perfección
2. Todos los métodos formales se refieren a la corrección de programas
3. Son de utilidad solamente para sistemas de altas prestaciones
4. Su uso requiere un alta cualificación o entrenamiento matemático
5. Incremento de coste de desarrollo
6. Son inadecuados y no serán aceptados por los clientes
7. No se usan en la realidad en proyectos de gran escala

Como se observa existen ciertos puntos buenos como malos pero eso no ha sido
impedimento para que empresas grandes como son IBM o hasta la NASA hayan
apostado por el uso de estos métodos para el desarrollo de proyectos que hoy en día
han sido claro ejemplo de que pese a la complejidad que puedan llegar a tener aun así
pueden ser de gran ayuda en proyectos grandes.

IEU campus Online. Maestría en Dirección de Ingeniería de Software


Métodos formales de ingeniería de software. Diciembre de 2016. Pág. 5
Actividad 1 “Análisis de casos de éxito de incorporación de métodos formales en el desarrollo de software”.
Ortega Martinez, Jose Hermilo.

TEMA 2: CASO DE ÉXITO DE METODOS FORMALES

2.1.- Nombre del proyecto

Verificación formal del AAMP5.

Este proyecto ha sido uno de los más reconocidos en cuanto a la utilización de métodos
formales ya que fue un proyecto llevado acabo por NASA langley y ejecutado por SRI
International y Rockwell Collins. Este proyecto tenía como objetivo el evaluar la
viabilidad de utilizar la verificación formal con PVS para comprobar el micro-código del
microprocesador AAMP5.

Este procesador ha tenido una serie de predecesores los cuales han sido venidos
desarrollados por Rockewell Collins quien en esta ocasión optó por evaluar el utilizar la
verificación formal antes mencionada.

2.2.- Fase de diseño en donde se incorporó el método formal de software

La fase en que se incorporó el método formal fue en la verificación formal de


comprobación del micro código. En la figura 1 se puede observar el enfoque de
verificación del micro-código del AAMP5.

Las especificaciones que se llevaron a cabo fueron las siguientes:


1. Se especificó al AAMP5 para los niveles d micro-arquitectura o registro de
transferencia y la macro-arquitectura o conjunto de instrucciones.
2. Se definió una función de abstracción para mapear los estados del micro en la
macro-arquitectura.

IEU campus Online. Maestría en Dirección de Ingeniería de Software


Métodos formales de ingeniería de software. Diciembre de 2016. Pág. 6
Actividad 1 “Análisis de casos de éxito de incorporación de métodos formales en el desarrollo de software”.
Ortega Martinez, Jose Hermilo.

Figura 1.- Enfoque para la verificación del micro-código del AAMP5

Fuente: Revista Antioqueña de las ciencias computacionales y la Ingeniería de Software ISSN:2248-7441

2.3.- Información sobre el método formal obtenida de una fuente confiable

Uno de los principales aprendizajes que dejo este proyecto fue que es técnicamente
posible demostrar la exactitud de un micro-código.

Los ingenieros son capaces de poder leer o escribir especificaciones formales que
posteriormente puede llegar a crear, modificar o eliminar más especificaciones que
sean necesarias para más pruebas en este u otros proyectos que puedan llegar a
llevarse a cabo en el futuro.

Uno de los mayores problemas en este proyecto fue que el costo fue muy elevado al
llevarse más de 300 horas hombre para poder realizarse las instrucciones que eran
analizadas más a detalle por ser la primer versión de uso de este método formal que
posteriormente en la siguiente versión del AAMP-FV fue reducido considerablemente al
ya contar el personal con experiencia y con conocimientos que pudieran ayudar a
realizar tareas o actividades de una manera más rápida y fácil.

IEU campus Online. Maestría en Dirección de Ingeniería de Software


Métodos formales de ingeniería de software. Diciembre de 2016. Pág. 7
Actividad 1 “Análisis de casos de éxito de incorporación de métodos formales en el desarrollo de software”.
Ortega Martinez, Jose Hermilo.

2.4.- Ventajas y desventajas de la incorporación del método formal

La principal ventaja que se observa en este proyecto con la utilización del método
formal es que técnicamente se puede tener una exactitud del micro-código pero a su
vez la gran desventaja que tuvo esta primera utilización del método fue el elevado costo
de horas hombres pero que a su vez se convierte en ventaja para futuros proyectos.

IEU campus Online. Maestría en Dirección de Ingeniería de Software


Métodos formales de ingeniería de software. Diciembre de 2016. Pág. 8
Actividad 1 “Análisis de casos de éxito de incorporación de métodos formales en el desarrollo de software”.
Ortega Martinez, Jose Hermilo.

CONCLUSION

Desde un punto de vista muy personal al igual que muchos de las personas que
nos dedicamos al desarrollo de software, desconocemos de estos métodos por la poca
expansión y usabilidad que ha venido teniendo esta herramienta de ayuda que si bien
nos puede ayudar mucho en un desarrollo también puede llegar a complicarse en un
principio por tener que entrar en una curva de aprendizaje poco conocida y que puede
llegar a ser necesario la experiencia y la enseñanza de personal con mayor habilidad
que pueda no solo explicar la parte teórica de este tema sino contar con experiencias
que puedan hacer que el aprendizaje pueda ser más rápido y de fácil entendimiento.

Los métodos formales como otras herramientas día a día se irán dando más a conocer
y se irán perfeccionando con el paso de los años para poder ofrecer maneras de hacer
ciertas tareas.

IEU campus Online. Maestría en Dirección de Ingeniería de Software


Métodos formales de ingeniería de software. Diciembre de 2016. Pág. 9
Actividad 1 “Análisis de casos de éxito de incorporación de métodos formales en el desarrollo de software”.
Ortega Martinez, Jose Hermilo.

FUENTES DE INFORMACION

1. Fernandez, F.A. et al (2011)


2. Pressman, R.S. (2002)
3. Bastarrica, C. (2001)
4. Garcia, D.J. y Pazos, A, J. (2000)
5. Serna, M. E. (2010)
6. Capel, I. M. (2005)
7. Microcódigo. (2016, 10 de febrero).
8. RACCIS. (2012). Los Métodos Formales en la Industria. Medellín - Antioquia:

RACCIS.
9. Natalia Herrera Rey, . (2014). Métodos Formales. 10/Mar/2014, de

slideshare.net Sitio web: http://es.slideshare.net/nataliahrey/diapositivas-


mtodos-formales
10. http://www-2.dc.uba.ar/charladeborrachos/presentaciones/charla_2004-29-10.pdf

IEU campus Online. Maestría en Dirección de Ingeniería de Software


Métodos formales de ingeniería de software. Diciembre de 2016. Pág. 10

También podría gustarte