Documentos de Académico
Documentos de Profesional
Documentos de Cultura
CONTENIDO
MÓDULO 1: ANÁLISIS Y DISEÑO ORIENTADO A OBJETOS 2
Requerimientos 5
Diseño 5
Compensaciones (Trade-offs) 9
Contexto y Consecuencias 9
Cualidades satisfactorias 10
Compromiso 11
Prototipado y Simulación 13
MÓDULO 1: ANÁLISIS Y DISEÑO ORIENTADO A OBJETOS
Al finalizar este módulo, podrá:
(a) Explique el pensamiento orientado a objetos.
(b) Comprender el papel del diseño y la comunicación en el proceso del
software, así como el vínculo entre estos conceptos y el uso de diagramas.
(c) Diseño para atributos de calidad.
(d) Modelo de tarjetas Class Responsibility Collaborator (CRC).
Los objetos pueden tener detalles específicos asociados con ellos, que son
relevantes para los usuarios. Por ejemplo, un objeto de persona puede tener
detalles como nombre, edad, sexo y ocupación. Un objeto de lugar puede
tener un tamaño o un nombre. Un objeto inanimado puede tener
dimensiones o un color.
¿SABÍAS?
Un buen ejercicio para ayudarlo a comenzar el pensamiento orientado a
objetos es mirar la habitación que lo rodea e identificar qué podrían ser
objetos. Por ejemplo, puede ver una computadora, una persona o algún
tipo de mueble. Todos estos tienen sus propios detalles específicos y
pueden tener comportamientos o responsabilidades que serían relevantes
para un usuario de ese objeto. Para un sistema informático, los detalles
pueden incluir el software operativo o la resolución de pantalla. Las
responsabilidades pueden incluir encender y apagar, o mostrar una
pantalla.
¡Incluso la habitación en sí es un objeto! Puede tener una capacidad de
asientos, un número de sala o un propósito que brinde detalles y
responsabilidades específicas a la sala como objeto. ¿Qué objetos hay a tu
alrededor? ¿Qué tipo de detalles y comportamientos podrían tener?
Diseño Conceptual
Para lograr esto, los diseños técnicos comienzan por dividir los componentes
en componentes cada vez más pequeños que son lo suficientemente
específicos para diseñarse en detalle. Al desglosar los componentes cada vez
más en más componentes, cada uno con responsabilidades específicas, llega
a un nivel en el que puede hacer un diseño detallado de un componente en
particular. El resultado final es que cada componente tendrá sus detalles
técnicos especificados.
Contexto y Consecuencias
El contexto proporciona información importante al decidir sobre el equilibrio
de cualidades en el diseño. Por ejemplo, el software que almacena
información personal, a la que el público puede acceder, puede tener
diferentes requisitos de seguridad que el software que solo usan los
empleados corporativos. Para establecer el contexto, es importante hablar
con las partes interesadas.
Una buena práctica es buscar otras perspectivas sobre los diseños técnicos
para una implementación más completa. Esto se puede hacer preguntando a
otros desarrolladores por su opinión, o teniendo una sesión de revisión de
diseño. También es una buena práctica probar un sistema cuidadosamente
antes de implementarlo por completo. Durante el proceso de diseño, puede
considerar crear prototipos de ideas alternativas y realizar pruebas para ver
qué funciona mejor. Las pruebas pueden ayudar a detectar consecuencias no
deseadas. Por ejemplo, probar con cantidades de datos pequeñas y grandes
en el ejemplo anterior podría revelar las limitaciones del sistema.
Cualidades satisfactorias
Compromiso
¿SABÍAS?
Las tarjetas CRC se utilizan para registrar, organizar y refinar los componentes
del diseño del sistema. Se pueden comparar con tarjetas de notas, que se
utilizan para organizar puntos de conversación. Las tarjetas CRC están
diseñadas con tres secciones: el nombre de la clase en la parte superior de la
tarjeta, las responsabilidades de la clase en el lado izquierdo de la tarjeta y
los colaboradores en el lado derecho de la tarjeta. Vea la imagen a
continuación para ver un ejemplo de cómo se vería una tarjeta CRC,
aproximadamente del tamaño de una tarjeta de índice física.
Nombre de la clase
Responsabilidades Colaboradores
Prototipado y Simulación
El uso de las tarjetas CRC es un sistema sencillo que tiene muchas ventajas.
Son baratos, editables y ampliamente disponibles. Ayudan a clasificar la
información en piezas manejables.
Cuando desarrolla diseños, a veces se los denomina modelos CRC. Las tarjetas
CRC deben organizarse colocando juntos los componentes que colaboran
estrechamente. Esto facilita la comprensión de las relaciones o conexiones
entre clases o componentes.
Las tarjetas CRC son excelentes herramientas para llevar a las reuniones del
equipo de desarrollo de software. Todas las tarjetas se pueden colocar sobre
la mesa y facilitar una discusión o una simulación con el equipo de cómo estas
clases trabajan junto con otras clases para lograr sus responsabilidades. Esto
le permite explicar visualmente su sistema y obtener información potencial
de otras partes.
Las tarjetas CRC son herramientas útiles, pero son más poderosas cuando se
utilizan para la creación de prototipos y la simulación para el diseño
conceptual. Se han desarrollado muchas otras técnicas para ayudarlo a
diseñar de manera más efectiva. El resto de esta especialización se centrará
en algunas de estas diversas técnicas de diseño.