PDA

Ver la Versión Completa : Diseño por contrato


JF Sebastian
16-01-2007, 17:13:14
Sabeis si exite alguna utilidad para Delphi para implementar este tipo de metodologia de programacion de ingenieria del software??

Ñuño Martínez
17-01-2007, 10:16:12
Disculpa a mi ignorancia pero, ¿qué metodología de programación es "Diseño por contrato"? ???

JF Sebastian
17-01-2007, 11:07:27
Te copio un breve resumen del tema.
La construcción de software confiable es uno de los desafíos de la Ingeniería de Software. En este trabajo se presentan los conceptos principales del diseño por contratos. Las técnicas del diseño por contratos afectan todas las actividades del desarrollo de software: desde el análisis hasta la implementación: corrección, reuso, depuración, testeo, documentación y administración. Si bien el lenguaje de programación Eiffel es el lenguaje comercial que actualmente tiene el soporte nativo para contratos, sus ideas y conceptos pueden ser aplicados en diferentes lenguajes (JAVA, C++, C#, etc.).

Ñuño Martínez
17-01-2007, 12:37:41
Y tan breve: sigo igual que antes. Afortunadamente me ha dado por buscar y he encontrado esto (http://jms32.eresmas.net/tacticos/UML/UML04/UML0403.html). Y si he entendido bien tu pregunta y lo que esplican en el artículo la respuesta es... ¿Sí? :confused: Vamos, que siempre se pueden implementar las precondiciones y las poscondiciones con un par de IFs. Siguiendo el ejemplo del programa "Cuadrado" del mencionado artículo:

PROGRAM Cuadrado;

VAR
Numero, Resultado: LONGINT;
BEGIN
ReadLN (Numero);
{ Precondición }
IF Numero >= 0 THEN
BEGIN
Resultado := Numero * Numero;
{ Poscondición }
IF Resultado = Numero * Numero THEN
BEGIN
WriteLN (Resultado);
END
ELSE
WriteLN ('La poscondición no se cumplió');
END
ELSE
WriteLN ('La precondición no se cumplió');
END;

O eso o yo me he perdido por el camino...

Ñuño Martínez
17-01-2007, 20:10:38
Rectifico: Curiosamente he llegado hasta este comenario (http://www.allegro.cc/forums/thread/354471/354693#target) acerca del diseño por contrato, y creo que lo he entendido mejor.

Así, con la nueva información, en respuesta a tu pregunta: Sabeis si exite alguna utilidad para Delphi para implementar este tipo de metodologia de programacion de ingenieria del software??

No: no existe. Sin embargo tal vez pueda programarse algo, como una INTERFACE por ejemplo, que pueda servir. (No me pidas que ponga un ejemplo, porque me veo incapaz de tal azaña ;) pero tal vez sea posible).