
06/09/2005, 14:58
|
 | Colaborador | | Fecha de Ingreso: julio-2005
Mensajes: 4.352
Antigüedad: 19 años, 7 meses Puntos: 24 | |
Segun tengo entendido, son metodos basados en la matematica (por algo se llaman formales) en donde su potencial se centra en que la matematica no es ambigua y esta libre de errores, por lo que desarrollar software mediante estos metodos, genera programas libres de errores(solo en teoria), el problema es que el costo de expresar un modelo de software en terminos logicos, formales y matematicos, es mucho mas caro que el costo de usar por ejemplo UML, y realizar un buen mantenimiento y desarrollo del software con un buen enfoque de calidad. El alto costo es consecuencia del tiempo necesario para desarrollar el modelo del programa. Ademas esto posee una falencia, no cualquier software se puede expresar formalmente.
Para que te des una idea de lo que hablo, hace lo siguiente:
Trata de escribir un programa que calcule la serie de fibonacci de un numero. Primero en cualquier lenguaje que conozcas y que pertenezca al paradigma "imperativo" pj: C/C++, JAVA, JAvasrcipt, Pascal, ADA, PHP, el que quieras.
Despues trata de escribirlo en Prolog (este lenguajhe pertenece al paradigma logico, en el cual no se programa diciendo el "como", sino esxcribiendo "cual" es el problema).
Si lo haces, te vas a dar cuenta lo dificil que es llevar algo muy tonto a un razonamiento logico. |