Método de diseño de software de catálisis.


Catalysis es un método de diseño de software para la especificación y el diseño de sistemas informáticos basados ​​en componentes desarrollado originalmente por Desmond D'Souza y Alan Cameron Wills en su libro de 1999. [1]

Catalysis se enfoca en cómo hacer abstracciones precisas y enfatiza la especificación formal de casos de uso utilizando condiciones previas y posteriores y cláusulas de 'garantías'. También hace hincapié en la especificación de protocolos de colaboración para que los kits de componentes puedan interactuar de manera coherente y 'conectable'. Esto elimina gran parte de la necesidad de crear código de traducción o 'mapeo'.

Por lo tanto, Catalysis mejora el Lenguaje de modelado unificado (UML) con un método definido, que muestra cómo los diversos diagramas UML se relacionan entre sí y ofrece muchas heurísticas de diseño y patrones de proceso y diseño . Catalysis se basa en el método Syntropy y las ideas clave de ambos influyeron en el desarrollo de UML 2.0 .

Más recientemente, basándose en el trabajo de D'Souza, Wills y el de John Cheesman y John Daniels, [2] Derek Andrews de la consultora Trireme International ha desarrollado Catalysis II, que amplía Catalysis para abordar los problemas clave de la arquitectura orientada a servicios (SOA). ). También sobre la misma base, Ian Graham desarrolló Catalysis Conversation Analysis, [3] un método de modelado de procesos comerciales con raíces en la semiótica y la idea de un caso de uso ( cf. Graham, 2008).