Metodologia Booch y RUP
Metodologia Booch y RUP
Metodologia Booch y RUP
TECNOLÓGICO DE
TAPACHULA ALUMNO:
ALEXANDER MENDEZ ESCOBAR
DOCENTE:
CABRERA GOMEZ TERESA DEL CARMEN
MATERIA:
TALLER DE ANALISIS Y DISEÑO DE SOFTWARE
TRABAJO:
INTODUCCION AL DISEÑO DE SOFTWARE
CARRERA:
ING. EN SISTEMAS COMPUTACIONALES
SEMESTRE:
7°
Nada más lejos de la intención de este artículo que realizar la descripción de ningún
modelo de ciclo de vida del software, ya que para este fin el lector puede recurrir a
cualquiera de los textos clásicos sobre ingeniería del software, por ejemplo [1] y [2],
donde encontrará una información más amplia y precisa. Pero, dado que se ha
comenzado el artículo criticando la construcción de las aplicaciones que empiezan
directamente por la codificación, se va a dar un marco muy general de lo que sería
un desarrollo software, marco que en su generalidad es perfectamente válido para
cualquier tipo de desarrollo, independientemente que sea orientado a objeto o no.
El marco de desarrollo de una aplicación software estaría formado por las tres fases
tradicionales: análisis, diseño e implementación. El análisis es la fase cuyo objetivo
es estudiar y comprender el dominio del problema, es decir, el análisis se centra en
responder al interrogante ¿QUÉ HACER? El diseño, por su parte, dirige sus
esfuerzos en desarrollar la solución a los requisitos planteados en el análisis, esto
es, el diseño se haya centrado en el espacio de la solución, intentando dar respuesta
a la cuestión ¿CÓMO HACERLO? Por último, la fase de implementación sería la
encarga de la traducción del diseño de la aplicación al lenguaje de programación
elegido, adaptando por tanto la solución a un entorno concreto.
Desarrollos estructurados
Que este marco de desarrollo sea válido tanto para los desarrollos tradicionales
(desarrollos estructurados) como para los desarrollos orientados a objeto, no
significa que la realización de las actividades propias de cada fase se lleve a cabo
de la misma manera. De hecho, en los desarrollos estructurados hay mucha
distancia entre las fases de análisis de diseño, e incluso entre los diferentes modelos
generados en una misma fase. Esta separación se conoce con el nombre de gap
semántico, y es la barrera que la orientación a objeto intenta eliminar difuminando
la frontera entre las diferentes fases.
Por su parte, en los desarrollos orientados al objeto se tiene una mayor continuidad
entre las diferentes fases, con unas fronteras entre fases muy poco marcadas que
dan lugar a desarrollos más iterativos e incrementales. Todo esto es posible gracias
a una característica de vital importancia, el modelo subyacente a todas las fases es
el mismo, el modelo objeto, que tiene como elemento central al objeto, que es la
entidad que encapsula elementos estructurales y de comportamiento. De esta
forma, los objetos semánticos identificados en la fase de análisis se refinarán
durante la fase de diseño e implementación, a la vez que se añaden objetos de
interfaz y de utilidad para constituir la aplicación final.
La Metodología de booch
Para Booch el Diseño Orientado a Objetos (DOO) "es el método que lleva a una
descomposición Orientado a Objetos. Aplicando DOO, se crea software resistente
al cambio y escrito con economía de expresión. Se logra un mayor nivel de
confianza en la corrección del software a través de la división inteligente de su
espacio de estados. En última instancia, se reducen los riesgos inherentes al
desarrollo de sistemas".
En su libro Análisis y Diseño Orientado a Objetos con Aplicaciones, Grady Booch
señala que: "Los métodos son importantes por varias razones. En primer lugar,
inculcan una disciplina en el desarrollo de sistemas de software complejos. Definen
los productos que sirven como vehículo común para la comunicación entre los
miembros de un equipo de desarrollo. Además, los métodos definen los hitos que
necesita la dirección para medir el progreso y gestionar el riesgo".
Booch en esencia plantea que para trabajar con su método es conveniente trabajar
en dos partes fundamentales: un microproceso y un macroproceso. Ambas partes
incluyen varios pasos como son la identificación de clases y objetos a un nivel de
abstracción dado, la identificación de la semántica de esas clases y objetos, la
identificación de las relaciones entre esas clases y objetos, la selección de la
estructura de datos y algoritmos para la implantación de estas clases y objetos, la
conceptualización del sistema, etc. El microproceso de desarrollo del AOO de Booch
incluye: