Guia 5 DS Poo
Guia 5 DS Poo
Guia 5 DS Poo
GUÍA 5 DE APRENDIZAJE
Desarrollo de Software.
Diagrama de clases.
NORMA DE COMPETENCIA
220501033
Diseñar el sistema de acuerdo con los requerimientos del cliente.
RESULTADO DE APRENDIZAJE
220501033 02
Diseñar la arquitectura del software, mediante la interpretación de las clases, objetos y
mecanismos de colaboración, utilizando herramientas tecnológicas de diseño, de
acuerdo con las tendencias de las tecnologías de la información y la comunicación.
DURACIÓN
16 HORAS
FECHA DE ENTREGA
NOVIEMBRE 30 DE 2017
1. Presentación
El ejercicio antes descrito debe ser aplicado en el proyecto de cada grupo de manera
que puedan con solvencia:
Página 1 de 19
SERVICIO NACIONAL DE APRENDIZAJE SENA Versión: 02
GUÍA DE APRENDIZAJE
Fecha: 30/09/2013
SISTEMA INTEGRADO DE GESTIÓN
Proceso Gestión de la Formación Profesional Integral Código: F004-P006-GFPI
Procedimiento Ejecución de la Formación Profesional Integral
2. Profundización.
En general, todos los problemas se pueden dividir en estos tres aspectos. Por una
parte, se debe identificar lo que el cliente espera de la solución. Esto se denomina un
requerimiento funcional. En el caso de la programación, un requerimiento funcional
hace referencia a un servicio que el programa debe proveer al usuario. El segundo
aspecto que conforma un problema es el mundo o contexto en el que ocurre el
problema. Si alguien va a escribir un programa para una empresa, no le basta con
entender la funcionalidad que éste debe tener, sino que debe entender algunas cosas
de la estructura y funcionamiento de la empresa. Por ejemplo, si hay un
requerimiento funcional de calcular el salario de un empleado, la descripción del
problema debe incluir las normas de la empresa para calcular un salario. El tercer
Página 2 de 19
SERVICIO NACIONAL DE APRENDIZAJE SENA Versión: 02
GUÍA DE APRENDIZAJE
Fecha: 30/09/2013
SISTEMA INTEGRADO DE GESTIÓN
Proceso Gestión de la Formación Profesional Integral Código: F004-P006-GFPI
Procedimiento Ejecución de la Formación Profesional Integral
aspecto que hay que considerar al definir un problema son los requerimientos no
funcionales, que corresponden a las restricciones o condiciones que impone el cliente
al programa que se le va a construir.
Fíjese que estos últimos se utilizan para limitar las soluciones posibles. En el caso del
programa de una empresa, una restricción podría ser el tiempo de entrega del
programa, o la cantidad de usuarios simultáneos que lo deben poder utilizar.
EJEMPLO
Objetivo: Identificar los aspectos que hacen parte de un problema.
Evidencias:
TAREA 1:
Objetivo: Identificar los aspectos que forman parte de un problema.
El problema: un banco quiere crear un programa para manejar sus cajeros automáticos. Dicho
programa sólo debe permitir retirar dinero y consultar el saldo de una cuenta. Identifique y discuta
Página 3 de 19
SERVICIO NACIONAL DE APRENDIZAJE SENA Versión: 02
GUÍA DE APRENDIZAJE
Fecha: 30/09/2013
SISTEMA INTEGRADO DE GESTIÓN
Proceso Gestión de la Formación Profesional Integral Código: F004-P006-GFPI
Procedimiento Ejecución de la Formación Profesional Integral
los aspectos que constituyen el problema. Si el enunciado no es explícito con respecto a algún
punto, intente imaginar la manera de completarlo.
Especificación del problema
Cliente
Usuario
Requerimiento Funcional
Requerimiento NO Funcional
Desde el programa se debe poder realizar las siguientes operaciones: (1) calcular la
edad actual del empleado, (2) calcular la antigüedad en la empresa, (3) calcular las
prestaciones a las que tiene derecho en la empresa, (4) cambiar el salario del
empleado, y (5) cambiar el empleado.
Página 4 de 19
SERVICIO NACIONAL DE APRENDIZAJE SENA Versión: 02
GUÍA DE APRENDIZAJE
Fecha: 30/09/2013
SISTEMA INTEGRADO DE GESTIÓN
Proceso Gestión de la Formación Profesional Integral Código: F004-P006-GFPI
Procedimiento Ejecución de la Formación Profesional Integral
El saldo total de la cuenta es la suma de lo que el cliente tiene en cada uno de dichos
productos. En la cuenta corriente, el cliente puede depositar o retirar dinero. Su
principal característica es que no recibe ningún interés por el dinero que se encuentre
allí depositado. En la cuenta de ahorros, el cliente recibe un interés mensual del 0,6%
sobre el saldo. Cuando el cliente abre un CDT, define la cantidad de dinero que
quiere invertir y negocia con el banco el interés mensual que va a recibir. A diferencia
de la cuenta corriente o la cuenta de ahorros, en un CDT no se puede consignar ni
retirar dinero.
La única operación posible es cerrarlo, en cuyo caso, el dinero y sus intereses pasan
a la cuenta corriente. Se quiere que el programa permita a una persona simular el
manejo de sus productos bancarios, dándole las facilidades de: (1) hacer las
Página 5 de 19
SERVICIO NACIONAL DE APRENDIZAJE SENA Versión: 02
GUÍA DE APRENDIZAJE
Fecha: 30/09/2013
SISTEMA INTEGRADO DE GESTIÓN
Proceso Gestión de la Formación Profesional Integral Código: F004-P006-GFPI
Procedimiento Ejecución de la Formación Profesional Integral
operaciones necesarias sobre los productos que conforman la cuenta, y (2) avanzar
mes por mes en el tiempo, para que el cliente pueda ver el resultado de sus
movimientos bancarios y el rendimiento de sus inversiones.
- Con el botón marcado como "Avanzar mes" el usuario puede avanzar un mes
en la simulación y ver los resultados de sus inversiones.
- Con los seis botones de la parte derecha de la ventana, el usuario puede
simular el manejo que va a hacer de los productos que forman parte de su
cuenta bancaria.
- En la parte media de la ventana, aparecen el saldo que tiene en cada producto
y el interés que está ganando en cada caso.
Página 6 de 19
SERVICIO NACIONAL DE APRENDIZAJE SENA Versión: 02
GUÍA DE APRENDIZAJE
Fecha: 30/09/2013
SISTEMA INTEGRADO DE GESTIÓN
Proceso Gestión de la Formación Profesional Integral Código: F004-P006-GFPI
Procedimiento Ejecución de la Formación Profesional Integral
- Con los tres botones de la izquierda, el usuario puede cambiar los puntos que
definen el triángulo, el color de las líneas y el color del fondo.
- En la zona marcada como "Medidas en pixeles", el usuario puede ver el
perímetro, el área y la altura del triángulo (en píxeles).
- En la parte derecha aparece dibujado el triángulo descrito por sus tres puntos.
Requerimientos Funcionales
Un requerimiento funcional es una operación que el programa que se va a construir
debe proveer al usuario, y que está directamente relacionada con el problema que se
quiere resolver. Un requerimiento funcional se describe a través de cuatro elementos:
- Un identificador y un nombre.
- Un resumen de la operación.
- Las entradas (datos) que debe dar el usuario para que el programa pueda
realizar la operación.
- El resultado esperado de la operación. Hay tres tipos posibles de resultado en
un requerimiento funcional: (1) una modificación de un valor en el mundo del
problema, (2) el cálculo de un valor, o (3) una mezcla de los dos anteriores.
EJEMPLO
Objetivo: Ilustrar la manera de documentar los requerimientos funcionales de un
problema.
Solución: En este ejemplo se documenta uno de los requerimientos funcionales del
Página 7 de 19
SERVICIO NACIONAL DE APRENDIZAJE SENA Versión: 02
GUÍA DE APRENDIZAJE
Fecha: 30/09/2013
SISTEMA INTEGRADO DE GESTIÓN
Proceso Gestión de la Formación Profesional Integral Código: F004-P006-GFPI
Procedimiento Ejecución de la Formación Profesional Integral
caso de estudio del empleado. Para esto se describen los cuatro elementos que lo
componen.
- ¿Poder realizar esta operación es una de las razones por las cuales el cliente
necesita construir un programa? Esto descarta todas las opciones que están
relacionadas con el manejo de la interfaz ("poder cambiar el tamaño de la
ventana", por ejemplo) y todos los requerimientos no funcionales, que no
corresponden a operaciones sino a restricciones.
Página 8 de 19
SERVICIO NACIONAL DE APRENDIZAJE SENA Versión: 02
GUÍA DE APRENDIZAJE
Fecha: 30/09/2013
SISTEMA INTEGRADO DE GESTIÓN
Proceso Gestión de la Formación Profesional Integral Código: F004-P006-GFPI
Procedimiento Ejecución de la Formación Profesional Integral
Evidencias:
TAREA 2:
Objetivo: Crear habilidad en la identificación y especificación de requerimientos funcionales. Para
el caso de estudio 2, un simulador bancario, identifique y especifique tres requerimientos
funcionales.
Requerimiento Funcional 1
Nombre
Resumen
Entradas
Resultado
Requerimiento Funcional 2
Nombre
Resumen
Entradas
Resultado
Página 9 de 19
SERVICIO NACIONAL DE APRENDIZAJE SENA Versión: 02
GUÍA DE APRENDIZAJE
Fecha: 30/09/2013
SISTEMA INTEGRADO DE GESTIÓN
Proceso Gestión de la Formación Profesional Integral Código: F004-P006-GFPI
Procedimiento Ejecución de la Formación Profesional Integral
Requerimiento Funcional 3
Nombre
Resumen
Entradas
Resultado
TAREA 3
Objetivo: Crear habilidad en la identificación y especificación de requerimientos funcionales.
Para el caso de estudio 3, un programa para manejar un triángulo, identifique y especifique tres
requerimientos funcionales.
Requerimiento Funcional 1
Nombre
Resumen
Entradas
Resultado
Requerimiento Funcional 2
Página 10 de 19
SERVICIO NACIONAL DE APRENDIZAJE SENA Versión: 02
GUÍA DE APRENDIZAJE
Fecha: 30/09/2013
SISTEMA INTEGRADO DE GESTIÓN
Proceso Gestión de la Formación Profesional Integral Código: F004-P006-GFPI
Procedimiento Ejecución de la Formación Profesional Integral
Nombre
Resumen
Entradas
Resultado
Requerimiento Funcional 3
Nombre
Resumen
Entradas
Resultado
Página 11 de 19
SERVICIO NACIONAL DE APRENDIZAJE SENA Versión: 02
GUÍA DE APRENDIZAJE
Fecha: 30/09/2013
SISTEMA INTEGRADO DE GESTIÓN
Proceso Gestión de la Formación Profesional Integral Código: F004-P006-GFPI
Procedimiento Ejecución de la Formación Profesional Integral
Este modelo será utilizado en la etapa de diseño para definir los elementos básicos
del programa. Esta actividad está basada en un proceso de "observación" del mundo
del problema, puesto que los elementos que allí aparecen ya existen y nuestro
objetivo no es opinar sobre ellos (o proponer cambiarlos), sino simplemente
identificarlos y describirlos para que esta información sea utilizada más adelante.
Para el primer caso de estudio, hay dos entidades en el mundo del problema: la clase
Empleado y la clase Fecha. Esta última se emplea para representar el concepto de
fecha de nacimiento y fecha de ingreso a la empresa. Si lee con detenimiento el
enunciado del caso, se podrá dar cuenta de que éstos son los únicos elementos del
mundo del problema que se mencionan. Lo demás corresponde a características de
dichas entidades (el nombre, el apellido, etc.) o a requerimientos funcionales.
EJEMPLO
Objetivo: Ilustrar la manera de identificar las entidades (llamadas también clases) del
Página 12 de 19
SERVICIO NACIONAL DE APRENDIZAJE SENA Versión: 02
GUÍA DE APRENDIZAJE
Fecha: 30/09/2013
SISTEMA INTEGRADO DE GESTIÓN
Proceso Gestión de la Formación Profesional Integral Código: F004-P006-GFPI
Procedimiento Ejecución de la Formación Profesional Integral
TAREA 4:
Objetivo: Identificar las entidades del mundo para el caso de estudio 3: un programa que maneje
un triángulo.
Lea el enunciado del caso y trate de guiarse por los sustantivos para identificar las entidades del
mundo del problema.
Página 13 de 19
SERVICIO NACIONAL DE APRENDIZAJE SENA Versión: 02
GUÍA DE APRENDIZAJE
Fecha: 30/09/2013
SISTEMA INTEGRADO DE GESTIÓN
Proceso Gestión de la Formación Profesional Integral Código: F004-P006-GFPI
Procedimiento Ejecución de la Formación Profesional Integral
SOLUCIÓN
Punto de reflexión: ¿Qué pasa si no identificamos bien las entidades del mundo?
Punto de reflexión: ¿Cómo decidir si se trata efectivamente de una entidad y no sólo de una
característica de una entidad ya identificada?
En el lenguaje UML, una clase se dibuja como un cuadrado con tres zonas (ver
ejemplo 5): la primera de ellas con el nombre de la clase y, la segunda, con los
atributos de la misma. El uso de la tercera zona la veremos más adelante, en la etapa
de diseño.
EJEMPLO
Objetivo: Mostrar la manera de identificar y modelar los atributos de una clase.
Página 14 de 19
SERVICIO NACIONAL DE APRENDIZAJE SENA Versión: 02
GUÍA DE APRENDIZAJE
Fecha: 30/09/2013
SISTEMA INTEGRADO DE GESTIÓN
Proceso Gestión de la Formación Profesional Integral Código: F004-P006-GFPI
Procedimiento Ejecución de la Formación Profesional Integral
Página 15 de 19
SERVICIO NACIONAL DE APRENDIZAJE SENA Versión: 02
GUÍA DE APRENDIZAJE
Fecha: 30/09/2013
SISTEMA INTEGRADO DE GESTIÓN
Proceso Gestión de la Formación Profesional Integral Código: F004-P006-GFPI
Procedimiento Ejecución de la Formación Profesional Integral
Clase: Fecha
Con las tres características anteriores queda completamente definida una fecha. Esa
es la pregunta que nos debemos hacer cuando estamos en esta etapa: ¿es
necesaria más información para describir la entidad que estamos representando? Si
encontramos una característica cuyos valores posibles no son simples, como
números, cadenas de caracteres, o una lista de valores, nos debemos preguntar si
dicha característica no es más bien otra entidad que no identificamos en la etapa
anterior. Si es el caso, simplemente la debemos agregar.
Es importante que antes de agregar un atributo a una clase, verifiquemos que dicha
Página 16 de 19
SERVICIO NACIONAL DE APRENDIZAJE SENA Versión: 02
GUÍA DE APRENDIZAJE
Fecha: 30/09/2013
SISTEMA INTEGRADO DE GESTIÓN
Proceso Gestión de la Formación Profesional Integral Código: F004-P006-GFPI
Procedimiento Ejecución de la Formación Profesional Integral
característica forma parte del problema que se quiere resolver. Podríamos pensar,
por ejemplo, que la ciudad en la que nació el empleado es uno de sus atributos.
¿Cómo saber si lo debemos o no agregar? La respuesta es que hay que mirar los
requerimientos funcionales y ver si dicha característica es utilizada o referenciada
desde alguno de ellos.
TAREA 5:
Para cada una de las cuatro entidades identificadas en el caso de estudio del simulador bancario,
identifique los atributos, sus valores posibles, y escriba la clase en UML. No incluya las relaciones
que puedan existir entre las clases, ya que eso lo haremos en la siguiente etapa del análisis. Por
ahora trate de identificar las características de las entidades que son importantes para los
requerimientos funcionales.
SOLUCIÓN
Clase: SimuladorBancario
ATRIBUTO VALORES POSIBLES
Diagrama UML:
Clase: CuentaCorriente
ATRIBUTO VALORES POSIBLES
Página 17 de 19
SERVICIO NACIONAL DE APRENDIZAJE SENA Versión: 02
GUÍA DE APRENDIZAJE
Fecha: 30/09/2013
SISTEMA INTEGRADO DE GESTIÓN
Proceso Gestión de la Formación Profesional Integral Código: F004-P006-GFPI
Procedimiento Ejecución de la Formación Profesional Integral
Diagrama UML:
Clase: CuentaAhorros
ATRIBUTO VALORES POSIBLES
Diagrama UML:
Clase: CDT
ATRIBUTO VALORES POSIBLES
Página 18 de 19
SERVICIO NACIONAL DE APRENDIZAJE SENA Versión: 02
GUÍA DE APRENDIZAJE
Fecha: 30/09/2013
SISTEMA INTEGRADO DE GESTIÓN
Proceso Gestión de la Formación Profesional Integral Código: F004-P006-GFPI
Procedimiento Ejecución de la Formación Profesional Integral
Diagrama UML:
3. BIBLIOGRAFÍA
Página 19 de 19