Академический Документы
Профессиональный Документы
Культура Документы
UNIVERSIDAD DE PANAMÁ
CENTRO REGIONAL UNIVERSITARIO DE VERAGUAS
FACULTAD DE INFORMÁTICA, ELECTRÓNICA Y COMUNICACIÓN
LICENCIATURA EN INFORMÁTICA PARA LA GESTIÓN EDUCATIVA Y EMPRESARIAL
“Programación IV Inf._212”
“Proyecto # 1”
ESTUDIANTE:
PROFESOR:
DIEGO SANTIMATEO
SEMESTRE:
II SEMESTRE – II AÑO
FECHA DE ENTREGA:
5-OCTUBRE-2007
-1-
Análisis y Diseño con Orientación a Objetos
Índice
A CONTINUACIÓN PRESENTAMOS UNA PROPUESTA UML DE UN MODELO ORIENTADO A OBJETOS, DE UN
SISTEMA DE ADMINISTRACIÓN ESCOLAR DE SECUNDARIA, ENFOCADO AL DESEMPEÑO ACADÉMICO. PARA EL
DESARROLLO DE ESTA PROPUESTA HEMOS REALIZADO CADA UNA DE LAS ETAPAS QUE INVOLUCRA LA PARTE DE
ANÁLISIS ORIENTADA A OBJETOS Y LA DOCUMENTACIÓN UML CORRESPONDIENTE. ...................................4
.....................................................................................................................................................4
EL DOCUMENTO CONTEMPLA LOS SIGUIENTES PUNTOS: OBJETIVOS DEL PROYECTO, ORGANIZACIÓN Y
RESULTADOS DE LA ENTREVISTA, UTILIDAD DE LA INFORMACIÓN, DESCRIPCIÓN DEL PROBLEMA O DOMINIO,
ANÁLISIS ORIENTADO A OBJETOS (SE DESARROLLAN LAS ETAPAS DEL ANÁLISIS OO), REFLEXIONES FINALES,
BIBLIOGRAFÍA Y WEBGRAFÍA, ALGUNOS ANEXOS. ...................................................................................4
OBJETIVOS.............................................................................................. ...........5
- OBJETIVO GENERAL DEL PROYECTO .................................................................................................5
- OBJETIVOS ESPECÍFICOS..................................................................................................................5
1. MAPA CONCEPTUAL DE LA FASE DE ANÁLISIS .................................................7
2. ORGANIZACIÓN E INFORME DE LOS DATOS RECABADOS DE LA ENTREVISTA....10
2.1. UTILIDAD DE LA INFORMACIÓN..................................................................................................13
ANÁLISIS Y DISEÑO ORIENTADO A OBJETOS ................................................................14
3. DESCRIPCIÓN DEL PROBLEMA O DOMINIO......................................................15
3.1 DEFINICIÓN DEL DOMINIO...........................................................................................................15
4. OBJETIVOS DEL SISTEMA...............................................................................15
4.1. OBJETIVO GENERAL................................................................................................................15
4.2. OBJETIVOS ESPECÍFICOS:..........................................................................................................15
5. LISTA DE REQUISITOS DEL SISTEMA...............................................................15
6. ANÁLISIS ORIENTADO A OBJETOS .................................................................17
6.1. IDENTIFICACIÓN DE LAS CLASES DEL DOMINIO ..............................................................................18
6.2.1. Descripción de las clases del dominio: .....................................................................19
Class Puestohonor.................................................................................................................21
6.3. IDENTIFICACIÓN DE LAS RELACIONES O ASOCIACIONES ENTRE CLASES...............................................22
6.3.1. Diagrama de relación de las clases. ...........................................................................22
6.4. IDENTIFICACIÓN DE LOS ATRIBUTOS Y PROPIEDADES DE LAS CLASES..................................................23
6.4.1. Diagrama UML...........................................................................................................24
DIAGRAMA DE CASO DE USO ..........................................................................................25
7. DIAGRAMA DE CASO DE USO DEL SISTEMA.....................................................26
7.1 CASO DE USO: CONTROL DE CALIFICACIONES...............................................................................26
7.2 CASO DE USO: ESTADÍSTICAS POR SALÓN .....................................................................................27
7.3 CASO DE USO: PUESTO DE HONOR .............................................................................................28
..................................................................................................... .................28
METODOLOGÍA UTILIZADA:..............................................................................29
BIBLIOGRAFÍAS - WEBGRAFIAS.........................................................................30
ANEXOS................................................................................................. ..........31
-2-
Análisis y Diseño con Orientación a Objetos
-3-
Análisis y Diseño con Orientación a Objetos
INTRODUCCIÓN
-4-
Análisis y Diseño con Orientación a Objetos
OBJETIVOS
- Objetivos Específicos
-5-
Análisis y Diseño con Orientación a Objetos
-6-
Análisis y Diseño con Orientación a Objetos
Pág. 1 de 2 -7-
Análisis y Diseño con Orientación a Objetos
Pág. 2 de 2
-8-
Análisis y Diseño con Orientación a Objetos
-9-
Análisis y Diseño con Orientación a Objetos
- 10 -
Análisis y Diseño con Orientación a Objetos
manualmente.
Los Boletines: Son realizados por la administración, y entregados a los
estudiantes por bimestre.
Créditos: Son documentos realizadas por la administración, y
entregados a solicitud de la parte interesada.
- 11 -
Análisis y Diseño con Orientación a Objetos
- 12 -
Análisis y Diseño con Orientación a Objetos
- 13 -
Análisis y Diseño con Orientación a Objetos
- 14 -
Análisis y Diseño con Orientación a Objetos
- 15 -
Análisis y Diseño con Orientación a Objetos
- 16 -
Análisis y Diseño con Orientación a Objetos
- 17 -
Análisis y Diseño con Orientación a Objetos
Grupo
Class Profesor
Class
Estudiante
consejería;
nomProf;
nombre;
matricula;
código;
calificaciones;
estudiantes;
asignatura;
grado;
consejería;
prom_asignatura;
cedula;
bachillerato; );
laborDocente(
desempeñoSalon
( );
desempAcademic
laborAdministrativ
( ););
a(
historial ( );
Class Funciones
Class
Calificaciones
PuestoHonor
nombr_est;
nombre; );
captura(
cedula;
cédula;
despliega( );
grado;
calificaciones;
ordena();
calAsignatura;
materias;
suma();
promedioBimestral
puestosHonor(
promedioFinal(););
Class
Asignatura
nombreAsig;
grado;
calificaciones;
coordinador;
matricula;
areasDeficiecias(
);
totalReprob( ); - 18 -
Análisis y Diseño con Orientación a Objetos
- 19 -
Análisis y Diseño con Orientación a Objetos
- 21 -
Análisis y Diseño con Orientación a Objetos
Class
Obtien
Calificacionesnombr_
en est;
Entreg
cédula; an
grado;
calAsignatura;
Class Class
Estudiantenombre; ProfesornomProf;
calificaciones; código;
grado; asignatura;
cédula; consejería;
bachillerato;
Determina
n
Determina
n
tienen Atienden
diferentes
Se calcula Calculan
promedios
Class Asignatura
Class
nombreAsig;
Grupoconsejería;
grado;
matricula;
calificaciones; estudiantes;
coordinador; prom_asignatura;
matricula;
Class
PuestoHonornombr
e;
cédula;
calificaciones;
materias;
- 22 -
Análisis y Diseño con Orientación a Objetos
- 23 -
Análisis y Diseño con Orientación a Objetos
Class Public
Class Funciones
captura( ); Sistema de
Administración
Despliega( ); Escolar
Ordena();
Suma(); Main
- 24 -
Análisis y Diseño con Orientación a Objetos
- 25 -
Análisis y Diseño con Orientación a Objetos
<<exte
Desempeño académico
<<exte
Obtiene Calificaciones <<uses
Anuales
Obtiene calificaciones
bimestrales Lleva el control de
calificaciones
Estudiante
Generar un historial
<<uses
Profesor
<<exte
Calificaciones
<<exte
Entrega
Nota Anual
- 26 -
Análisis y Diseño con Orientación a Objetos
<<uses
<<uses
Desempeño
por salón <<uses
Coordinador
asignatura
Consejero
Genera promedio –
asignatura
<<uses Profesor
asignatura
Obtiene calificaciones
Estudiante
del grupo
- 27 -
Análisis y Diseño con Orientación a Objetos
Obtiene calificaciones
Estudiante
<<uses
Comisión
profesores
Historial de
calificaciones
<<uses
Calcula Puestos de
honor
- 28 -
Análisis y Diseño con Orientación a Objetos
METODOLOGÍA UTILIZADA:
- 29 -
Análisis y Diseño con Orientación a Objetos
BIBLIOGRAFÍAS - WEBGRAFIAS
- 30 -
Análisis y Diseño con Orientación a Objetos
ANEXOS
- 31 -
Análisis y Diseño con Orientación a Objetos
8. REFLEXIONES FINALES
(Amanda Ortega)
- 32 -
Análisis y Diseño con Orientación a Objetos
- 33 -
Análisis y Diseño con Orientación a Objetos
Reflexión individual:
(Daniel Ballesteros):
Como siempre pienso que con la dirección de la joven Amanda Ortega siempre culminamos
por lo menos para mi persona los trabajos de forma satisfactoria, cada parte del grupo
aporta elementos con los cuales logramos cumplir con los requerimientos del trabajo en
grupo; para mi persona la parte más difícil de este trabajo fue la elaboración de los
diagramas de casos de usos, es fácil ponerse a pensar lo que hacen los elementos de un
sistema desde el punto de vista de un observador externo, pero no fue tarea nada fácil
llevar esas ideas a un diagrama de casos de uso donde es más importante lo que hacen los
elementos que como lo hacen y en donde las ideas de qué forma interactúan los elementos
en un sistema deben ser transformadas en escenarios. Los conocimientos nuevos que
fueron adquiridos por mi persona fue que es importante el análisis orientado a objeto como
primera fase para crear cualquier sistema, informático o no, el tiempo que le dediquemos a
los diferentes pasos del análisis, nos permitirá tener una mejor comprensión de lo que
debemos hacer en las fases subsiguientes. Como conocimiento previo para realizar este
trabajo fue necesario leer y analizar la documentación que nos fue dada y tratar de
comprender de forma muy clara como deberíamos trabajar para lograr los objetivos del
mismo. Este trabajo que hemos realizado tiene gran importancia en nuestro desarrollo como
profesionales porque hemos aprendido a hacer un análisis orientado a objeto que es de vital
importancia para la aplicación de la programación moderna en la resolución de los
problemas que se nos propongan resolver como profesionales que aspiramos a ser.
- 34 -
Análisis y Diseño con Orientación a Objetos
Entre los principales objetivos de la creación de UML esta el de posibilitar el intercambio de modelos entre las
distintas herramientas CASE orientadas a objetos del mercado.
• Modelos
Un modelo representa a un sistema software desde una perspectiva específica. Cada modelo nos permite fijarnos en
un aspecto distinto del sistema.
• Elementos Comunes a Todos los Diagramas
• Notas
Una nota sirve para añadir cualquier tipo de comentario a un diagrama o a un elemento de un diagrama. Una
nota se representa como un rectángulo con una esquina doblada con texto en su interior.
• Dependencias
La relación de dependencia entre dos elementos de un diagrama significa que un cambio en el elemento
destino implica un cambio en el elemento origen.
Una dependencia se representa por medio de una línea de trazo discontinuo entre los dos elementos con una
flecha en su extremo.
• Diagramas de Estructura Estática
Estos se utilizan para representar tanto Modelos Conceptuales, como Diagramas de Clases de Diseño.
Estos diagramas son distintos conceptualmente.
Clases
Las Clases se representan como una caja subdividida en tres partes en la primera el nombre de la
Clase, en la segunda los atributos y en la tercera los métodos.
Objetos
Un objeto se representa de la misma forma que una clase. En la parte superior de la caja
aparece el nombre del objeto junto con el nombre de la clase subrayada
Herencia
La relación de herencia se representa mediante un triángulo en el extremo de la relación que
corresponde a la clase más general o clase “padre”.
• Diagramas de caso de uso
Este diagrama muestra la relación entre los actores y los casos de uso del sistema. Representa la
funcionalidad que ofrece el sistema en lo que se refiere a su interacción externa.
Elementos
Entre los elementos que aparecen en el diagrama casos se uso están: actores, casos de uso y
relaciones entre casos de uso.
Casos de Uso
Un caso de uso es una descripción de la secuencia de interacciones que se producen entre un actor
y el sistema.
• Diagramas de Interacción
En los diagramas de interacción se muestra un patrón de interacción entre objetos, existen dos tipos
Diagramas de Secuencia y Diagramas de Colaboración.
• Diagramas de Secuencia
Un diagrama de Secuencia muestra una interacción ordenada según la secuencia temporal de
eventos.
• Diagramas de Colaboración
Un Diagrama de Colaboración muestra una interacción organizada basándose en los objetos
que toman parte en la interacción y los enlaces entre los mismos (en cuanto a la interacción se
refiere), los Diagramas de Colaboración muestran las relaciones entre los roles de los objetos.
- 35 -
Análisis y Diseño con Orientación a Objetos
• Diagramas de Estado
Este diagrama muestra la secuencia de estados por los que pasa bien un caso de uso, bien un objeto a lo
largo de su vida, o bien todo el sistema, en este se indican que eventos hacen que se pase de un estado a
otro y cuáles son las respuestas y acciones que genera.
• Modelado Dinámico
• Diagramas De Actividades
Estos diagramas sirven fundamentalmente para modelar el flujo de control entre actividades.
Transiciones
Las transiciones reflejan el paso de un estado a otro, ya sea actividad o de acción. Esta transición se
produce como resultado de la finalización del estado del que parte el arco dirigido que marca la transición.
El flujo debe empezar y terminar en algún momento
Bifurcaciones
Bifurcaciones quiere decir caminos alternativos, se utilizará como símbolo el rombo. Tendrá una
transición de entrada y dos o más de salida.
División y unión
Existen algunos casos que se requieren tareas concurrentes. UML representa gráficamente el proceso de
división, que representa la concurrencia, y el momento de la unión de nuevo al flujo de control secuencial,
por una línea horizontal ancha.
SEMEJANZAS DIFERENCIAS
Ambos tienen nombre Pueden tener atributos y operaciones
directamente accesibles. Sólo tienen
operaciones y estas son alcanzables a través
de la interfaz del componente.
o Interfaces
Los servicios propios de una clase como los de un componente, se especifican a través de una
Interfaz. Las interfaces se usan como un lazo de unión entre unos componentes y otros. La
relación se puede representar de dos maneras: de forma icónica y expandida.
o Despliegue, Nodos
Los nodos pertenecen al mundo material, un nodo existe en tiempo de ejecución y representa un
recurso computacional que generalmente tiene alguna memoria y, a menudo, capacidad de
procesamiento
Nodos y componentes
Cuadro comparativo de las semejanzas y diferencias de los nodos y los componentes.
SEMEJANZAS DIFERENCIAS
Ambos tienen nombre Los Nodos Los Componentes Son los elementos
donde se ejecutan los componentes.
Pueden participar en relaciones de dependencia, La relación entre un nodo y los componentes que
generalización y asociación. despliega se pueden representar mediante una
relación de dependencia
Existen dos tipos de diagramas: diagramas de Componentes y diagramas de Despliegue.
• Diagrama de Componentes
- 36 -
Análisis y Diseño con Orientación a Objetos
Casos de Uso
Un Caso de Uso es un documento narrativo que describe a los actores utilizando un sistema para satisfacer un
objetivo. Es una historia o una forma particular de usar un sistema. Los casos de uso son requisitos, en
particular requisitos funcionales.
Fase de Construcción: Diseño de Alto Nivel
En esta fase de Diseño de Alto Nivel de un ciclo de desarrollo se investiga sobre el problema, sobre los
conceptos relacionados con el subconjunto de casos de uso que se esté tratando. Se pretende llegar a una
buena comprensión del problema por parte del equipo de desarrollo.
Modelo Conceptual
En el Modelo Conceptual se tiene una representación de conceptos del mundo real, no de componentes
software.
El objetivo de la creación de un Modelo Conceptual es aumentar la comprensión del problema.
• Diagramas de Secuencia del Sistema
En cada caso de uso se muestra una interacción de actores con el sistema. Los casos de uso representan una
interacción genérica. Una instancia de un caso de uso se denomina escenario, y muestra una ejecución real
del caso de uso, con las posibles bifurcaciones y alternativas resueltas de forma particular.
Un Diagrama de Secuencia de Sistema se representa usando la notación para diagramas de secuencia de
UML. En él se muestra para un escenario particular de un caso de uso los eventos que los actores generan, su
orden, y los eventos que se intercambian entre sistemas.
• Diagramas de Estados
Se puede aplicar un Diagrama de Estados al comportamiento de los siguientes elementos: una clase software,
un concepto y un caso de uso.
Para los casos de uso complejos se puede construir un Diagrama de Estados. El Diagrama de Estados del
sistema sería una combinación de los diagramas de todos los casos de uso. El uso de Diagramas de Estados es
opcional.
- 37 -
Análisis y Diseño con Orientación a Objetos
• Diagramas de Interacción
Ellos muestran el intercambio de mensajes entre instancias del modelo de clases para cumplir las post-
condiciones establecidas en un contrato
Hay dos clases de Diagramas de Interacción: diagramas de Colaboración y diagramas de Secuencia.
• Diagramas de Clase de Diseño
Este diagrama muestra la especificación para las clases software de una aplicación. Incluye la siguiente
información:
• Clases, asociaciones y atributos.
• Interfaces, con sus operaciones y constantes.
• Métodos.
Fases de Implementación y Pruebas
El programa obtenido se depura y prueba, y ya se tiene una parte del sistema funcionando que se puede probar con
los futuros usuarios, e incluso poner en producción si se ha planificado una instalación gradual.
Una vez se tiene una versión estable se pasa al siguiente ciclo de desarrollo para incrementar el sistema con los
casos de uso asignados a tal ciclo.
- 38 -
Análisis y Diseño con Orientación a Objetos
- 39 -
Análisis y Diseño con Orientación a Objetos
public : Indica que el atributo será visible tanto dentro como fuera de la clase.
private : sólo sus métodos lo pueden accesar.
protected : Indica que el atributo no será accesible desde fuera de la clase, pero si podrá ser
accesado por métodos de la clase además de las subclases que se deriven.
Métodos: • public (): Indica que el método será visible tanto dentro como fuera de la clase, es decir, es
accsesible desde todos lados.
• private (): Indica que el método sólo será accesible desde dentro de la clase (sólo otros mé-
todos de la clase lo pueden accesar).
• protected (): Indica que el método no será accesible desde fuera de la clase, pero si podrá
ser accesado por métodos de la clase además de métodos de las subclases que se deriven
(ver herencia).
RELACIONES
Forma en que se pueden interrelacionar dos o más clases (cada uno con características y objetivos diferentes).
Herencia Indica que una subclase hereda los métodos y atributos especificados por una Super Clase, por
ende la Subclase además de poseer sus propios métodos y atributos, poseerá las características
y atributos visibles de la Super Clase
Agregación Por Valor: Es un tipo de relación estática, en donde el tiempo de vida del objeto incluido esta
condicionado por el tiempo de vida del que lo incluye.
Por Referencia: Es un tipo de relación dinámica, en donde el tiempo de vida del objeto in-
cluido es independiente del que lo incluye.
Asociación La relación entre clases conocida como Asociación, permite asociar objetos que colaboran en-
tre si. Cabe destacar que no es una relación fuerte, es decir, el tiempo de vida de un objeto no
depende del otro.
Dependencia Representa un tipo de relación muy particular, en la que una clase es instanciada (su instancia-
ción es dependiente de otro objeto/clase). El uso más particular de este tipo de relación es
para denotar la dependencia que tiene una clase de otra
CASOS PARTICULARES
Clase Abstracta Una clase abstracta se denota con el nombre de la clase y de los métodos con letra "itálica".
Esto indica que la clase definida no puede ser instanciada pues posee métodos abstractos
Clase parametri- Una clase parametrizada se denota con un subcuadro en el extremo superior de la clase, en
zada donde se especifican los parámetros que deben ser pasados a la clase para que esta pueda ser
instanciada
- 40 -
Análisis y Diseño con Orientación a Objetos
DIAGRAMA DE INTERACCIÓN
El diagrama de interacción, representa la forma en como un Cliente (Actor) u Objetos (Clases) se comunican entre si
en petición a un evento
Objeto/Actor El rectángulo representa una instancia de un Objeto en particular, y
la línea punteada representa las llamadas a métodos del objeto.
Mensaje a Otro Objeto: Se representa por una flecha entre un objeto y otro, representa la
llamada de un método (operación) de un objeto en particular.
Mensaje al Mismo Obje- Se pueden visualizar llamadas a métodos desde el mismo objeto en
to: estudio.
- 41 -
Análisis y Diseño con Orientación a Objetos
Actor:
Caso de Uso:
Relaciones
Asociación
Dependencia o Instanciación
Es una forma muy particular de relación entre clases, en la cual una clase
depende de otra, es decir, se instancia (se crea). Dicha relación se denota
con una flecha punteada
Generalización
Este tipo de relación es uno de los más utilizados, cumple una doble fun-
ción dependiendo de su estereotipo, que puede ser de Uso (<<uses>>) o
de Herencia (<<extends>>).
- 42 -
Análisis y Diseño con Orientación a Objetos
(Daniel Ballesteros)
Resumen Recursos Ofrecidos (UML):
- 43 -
Análisis y Diseño con Orientación a Objetos
Actividades
En el proyecto que realizamos, pudimos observar que son tres los diagramas
(modelos) que estudiamos con detenimiento para la realización del mismo y
estos son:
Modelo de Clases:
- 44 -
Análisis y Diseño con Orientación a Objetos
Modelo de Interacción:
- 45 -
Análisis y Diseño con Orientación a Objetos
Dicho diagrama puede ser obtenido de dos partes, desde el Diagrama Estáti-
co de Clases o el de Casos de Uso (son diferentes).
• Un Objeto o Actor.
• Mensaje de un objeto a otro objeto.
• Mensaje de un objeto a si mismo.
- 46 -
Análisis y Diseño con Orientación a Objetos
RESUMEN DE UML
CONCENSO
- 47 -
Análisis y Diseño con Orientación a Objetos
- 48 -
Análisis y Diseño con Orientación a Objetos
Asociación
Dependencia o Instanciación
Es una forma muy particular de relación entre clases, en la cual una clase
Rela- depende de otra, es decir, se instancia (se crea). Dicha relación se denota
ciones con una flecha punteada
Generalización
Este tipo de relación es uno de los más utilizados, cumple una doble fun-
ción dependiendo de su estereotipo, que puede ser de Uso (<<uses>>) o
de Herencia (<<extends>>).
Mensaje a Otro Objeto: Se representa por una flecha entre un objeto y otro, re-
presenta la llamada de un método (operación) de un objeto en particular.
- 49 -