Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Transacciones electrónicas
Grupo 301403_60
Presentado por:
Grupo 301403_60
Presentado por:
Tutor:
Cesar Orlando Jiménez Angarita
Listado de Tablas.........................................................................................................4
Listado de figuras.........................................................................................................6
Capítulo 1. Introducción................................................................................................
Capítulo 2 Objetivos.....................................................................................................
Capítulo 3 Justificación...............................................................................................
Capítulo 11 Conclusiones............................................................................................
Capítulo 12 Recomendaciones....................................................................................
Capitulo 13 Bibliografía................................................................................................
Listado de Tablas
Tabla 11 Actores.............................................................................................................27
...............................................................................................................................................33
accidentado.........................................................................................................................33
Por medio del desarrollo y aplicación de estos conceptos se pretende dar una
guía o herramienta para la puesta en práctica del conocimiento adquirido por
medio de un estudio de caso, brindando al lector una estructura funcional que le
permita llevar una secuencia de los temas más relevantes al momento de brindar
una solución sistemática a un problema y desarrollar un software por medio de la
Programación Orientada a Objetos.
Capítulo 4 Delimitación
Programación OO.
Clases.
10 }
11 }
Objeto.
Los objetos representan una entidad concreta o abstracta del mundo real, en
programación básicamente se le conoce como la instancia de una clase en si es lo
que da el sentido a estas.
4 miObjeto.metodo();
Herencia.
En Java solo se puede heredar de una sola clase padre y se representa mediante
la palabra extends (Ver Ejemplo...)
4
public void comer(){
5
/**Comportamiento.....*/
6
}
7
class Perro extends Animal
8
public int dientes;
9
10
public void correr(){
11
/**Comportamiento.....*/
12
}
13
}
14
15
class Paloma extends Animal{
16
public int plumas;
17
public void volar(){
18
/**Comportamiento.....*/
19
}
Encapsulamiento.
2
public class Principal{
3
public String atributo1;
4
private String atributo2;
5
protected String atributo3
6
/**Métodos Set y Get para trabajar con las variables*
7
public String getAtributo2() {
8
return atributo2;
9
}
10
public void setAtributo2(String atributo2) {
11
this.atributo2 = atributo2;
12
}
13
14
Clases Abstractas.
La abstracción permite resaltar la parte mas representativa de algo, ignorando
detalles para centrarse en lo principal.
La imagen es muy fácil de identificar, con base a ella podemos crear una clase
persona, o la
La Abstracción en java solo tiene lógica mediante la Herencia, ya que una clase
abstracta posee al menos un método abstracto el cual no tiene implementación, el
comportamiento de estos métodos lo definen las clases concretas que lo hereden.
Podemos usarlos cuando existan varias clases con características o acciones
comunes pero con diferentes comportamientos..............mediante el uso de la
herencia y componentes abstractos hacemos mas óptima y organizada nuestra
aplicación. (hay que tener en cuenta que a diferencia de las clases concretas, las
clases abstractas no se pueden instanciar). (Ver Ejemplo...)
5
6 }
10 @Override
13 }
14
15 }
Interfaces.
las interfaces definen lo que la clase que la implemente deberá hacer, mas no la
forma como lo hará.
al decir que las interfaces son clases completamente abstractas significa que
todos sus métodos lo son y por ende no poseen implementación, no requieren el
uso de la palabra reservada abstract, ya que al ser completamente abstracta todo
dentro de ella lo es, al igual que las clases abstractas la implementación de
los métodos depende de las clases concretas que las usen.
1
interface InterfacePrincipal
2
public void metodoAbstracto();
3
public String otroMetodoAbstracto();
4
}
5
public class Principal implements InterfacePrincipal{
6
public void metodoAbstracto() {
7
/**Implementación definida por la clase concreta*/
8
}
9
public String otroMetodoAbstracto() {
10
/**Implementación definida por la clase concreta*/
11
return "retorno";
12
}
13
}
Polimorfismo.
Este tal vez sea uno de los conceptos de la programación orientada a objetos
mas usados pero muchas veces sin saber que se aplica ya que el concepto
inicialmente puede ser un poco confuso, básicamente mediante el polimorfismo
programamos de forma general en lugar de hacerlo de forma especifica, se usa
cuando se trabajen con la herencia y objetos de características comunes los
cuales comparten la misma superClase y árbol jerárquico, al trabajar con este
concepto optimizamos y simplificamos en gran medida nuestro trabajo.
básicamente podemos definirlo como la capacidad que tienen los objetos de
comportarse de múltiples formas sin olvidar que para esto se requiere de la
herencia, en si consiste en hacer referencia a objetos de una clase que puedan
tomar comportamientos de objetos descendientes de esta.
1 class FiguraGeometrica{
4 }
11
13
14 }
15
17
18 }
19
class Circulo extends FiguraGeometrica{
20
public class Principal{
21
22
public void metodo(){
23
/**Puedo crear objetos concretos*/
24
FiguraGeometrica miFiguraGeometrica = new FiguraGeometrica();
25
Cuadrado miCuadro=new Cuadrado();
26
27
/**Puedo crear objetos polimorficos*/
28
miFiguraGeometrica=miCuadro;
29
30
/**Objeto Cuadrado de tipo FiguraGeometrica*/
31
FiguraGeometrica miCuadrado= new Cuadrado();
32
/**Objeto Circulo de tipo FiguraGeometrica*/
33
FiguraGeometrica miCirculo=new Circulo();
34
/**Objeto Triangulo de tipo FiguraGeometrica*/
Iniciaremos la obtención de los diferentes casos de uso del sistema, así como el
modelado conceptual y las demás etapas del modelado de requisitos y nos
ayudarán en la comprensión del funcionamiento del sistema de atención pacientes
de la ACOS.
Descripción de los casos de uso esenciales del sistema atención pacientes en
el cual se describirán las distintas actividades que son posibles realizar por el
sistema para los distintos actores.
Con su médico tratante, mientras éste no le dé el alta.
Personal Involucrado:
Secretaria Departamento Clínico: Ingresa los exámenes del paciente a su
historial de atención (Ficha).
Precondiciones: El
Precondiciones: El paciente
paciente debe
debe estar
estar en
en el
el sistema
sistema dede atención
atención.
Poscondiciones: El sistema está listo para solicitar
Poscondiciones: El sistema está listo para emitir nueva receta. nuevos exámenes.
Flujo Básico:
Flujo Básico:
. El doctor
1El doctor ingresa
ingresa sussus datos
datos al
al sistema.
sistema.
2. El
2. El Sistema
Sistema verifica
verifica los
los datos
datos ingresados.
ingresados.
3. El
3. El doctor
doctor ingresa
ingresa los
los datos
datos del
del paciente.
paciente.
4. El
4. El Sistema
Sistema verifica
verifica los
los datos
datos del
del paciente.
paciente.
5. El
5. El Sistema
Sistema pondrá
pondrá a a disposición
disposición la la receta
solicitud de exámenes
a rellenar por losque ha de realizar
distintos
el paciente.
medicamentos.
6. El
6. El doctor
doctor selecciona
selecciona losexámenes a realizar
medicamentos el paciente.
para el paciente.
7. Repetir 5 hasta terminar la solicitud de exámenes
7. Repetir 4 hasta terminar de registrar las recetas médicas. al paciente.
8. Fin
8. Fin emisión
solicitar exámenes.
receta.
Flujo Alternativo:
Flujo Alternativo:
2.1 Si
2.1 Si los
los datos
datos del
del doctor
usuariono noson
sonválidos.
válidos.
2.1.1 Ir
2.1.1 Ir al
al paso
paso 1
1oo salir
salir del
del sistema
sistema paso
paso 8.8.
4.1 Si
4.1 Si los
los datos
datos del
del paciente
paciente nono son
son validos
validos
4.1.1 Ir
4.1.1 Ir al
al paso
paso 3
3oo salir
salir del
del sistema
sistema paso
paso 8.8
Requisitos Especiales:
Requisitos Especiales:
- Losmedicamentos
Los exámenes deberán indicar
deberán si son realizados
ser ordenados en alfabético.
en orden el laboratorio clínico de la
ACOS.
Lista de Tecnologías y Variaciones de Datos:
Lista de Tecnologías
Cuestiones y Variaciones
Pendientes: de Datos:
Se deberá ingresar a cada receta la firma digital del
Cuestiones
doctor. Pendientes: Registro de exámenes pendientes del paciente.
Flujo Alternativo:
2.1 Si los datos del laboratorio clínico no son válidos.
2.1.1 Ir al paso 1 o salir del sistema paso 8.
4.1 Si los datos del paciente no son validos
4.1.1 Ir al paso 3 o salir del sistema paso 8.
Requisitos Especiales:
Los exámenes deben estar ordenados por fecha de resultados.
Lista de Tecnologías y Variaciones de Datos:
Cuestiones Pendientes:
6.3. Modelo de Interfaces
Página 88
Proyecto de Investigación Curso Académico de Programación Orientada a Objetos
Tabla 11 Actores
Actor Usuario
Casos de Consultar su valor
uso
Tipo Primario
Descripción Es el actor principal y representa a la persona que desee utilizar
el sistema.
Página 89
Proyecto de Investigación Curso Académico de Programación Orientada a Objetos
La interfaz para cada usuario estará determinada por la función que ocupa en
el sistema, este le permitirá acceder a toda la gama de opciones que le son
propias en la interacción con el sistema de atención al paciente.
Página 90
Proyecto de Investigación Curso Académico de Programación Orientada a Objetos
Página 91
Proyecto de Investigación Curso Académico de Programación Orientada a Objetos
Página 92
paciente
Proyecto de Investigación Curso Académico de Programación Orientada a Objetos
Ingresar
Examen solicitado
Página 93
Proyecto de Investigación Curso Académico de Programación Orientada a Objetos
Arquitectura sistema
Página 94
Proyecto de Investigación Curso Académico de Programación Orientada a Objetos
Agregar Exámenes
Agregar_examenes( rut_paciente, Nombre_examen, tipo_Examen,
Fecha_Examen, resultados)
Eliminar Reserva Hora
Eliminar_Hora( rut_paciente, nombre_medico, fecha, hora)
Emitir Exámenes
Emitir_examen( rut_paciente, nombre_examen, tipo_examen)
Cambiar Historial Paciente
Agregar_al_Historial_Paciente(rut_paciente,medico_tratante, datos_nuevos,
fecha)
Eliminar_del_Historial_Paciente(rut_paciente,Nombre_medico,
fecha_a_eliminar)
Emitir Receta
Emitir_Receta(rut_paciente, datos_receta)
Imprimir_Receta(rut_paciente, datos_receta)
Fijar Horario Disponible
Fijar_Horario(rut_medico, horario)
Ingresar Resultado Examen
Ingresar_Resultado_Examen(rut_paciente, nombre_examen, tipo_examen,
fecha_examen, resultado)
Ingresar Examen solicitado
Ingresa_Solicitud_Examen(rut_paciente, nombre_examen,tipo_examen,
fecha_solicitud)
Página 95
Proyecto de Investigación Curso Académico de Programación Orientada a Objetos
accidentado
Página 96
Proyecto de Investigación Curso Académico de Programación Orientada a Objetos
Página 97
Proyecto de Investigación Curso Académico de Programación Orientada a Objetos
Página 98
Proyecto de Investigación Curso Académico de Programación Orientada a Objetos
Agregar Exámenes
Emitir Exámenes
Página 99
Proyecto de Investigación Curso Académico de Programación Orientada a Objetos
Página 100
Proyecto de Investigación Curso Académico de Programación Orientada a Objetos
Emitir Receta
Página 101
Proyecto de Investigación Curso Académico de Programación Orientada a Objetos
Página 102
Proyecto de Investigación Curso Académico de Programación Orientada a Objetos
Tipo Sistema
Página 103
Proyecto de Investigación Curso Académico de Programación Orientada a Objetos
Tipo: Sistema
Notas:
Página 104
Proyecto de Investigación Curso Académico de Programación Orientada a Objetos
Página 105
Proyecto de Investigación Curso Académico de Programación Orientada a Objetos
Página 106
Proyecto de Investigación Curso Académico de Programación Orientada a Objetos
Página 107
Proyecto de Investigación Curso Académico de Programación Orientada a Objetos
Nombre Agregar_al_Historial_Paciente(rut_paciente,medico_tratante
,
datos_nuevos, fecha)
Tipo Sistema
Caso de Uso Cambiar Historial Paciente
Notas Los datos son guardados por fecha y se ordenan desde el
más
Excepciones El rut del paciente no existe o esta errado
salida Confirmación de que los datos se agregaron al historial, el
historial es desplegado por pantalla
precondiciones Exista el rut del paciente, exista el historial
pos condiciones Los datos son ingresados al historial, guardados en la base
de
datos y desplegados por pantalla
Página 108
Proyecto de Investigación Curso Académico de Programación Orientada a Objetos
Nombre Eliminar_del_Historial_Paciente(rut_paciente,Nombre_medico
,
fecha_a_eliminar)
Responsabilidad Elimina una parte del historial que se encuentre errado
Tipo Sistema
Caso de Uso Cambiar Historial Paciente
Notas
Excepciones No existe datos registrados en el historial solo los básicos
salida Confirmación de la eliminación exitosa y despliegue del
historial modificado
precondiciones Exista el rut del paciente, exista el historial
pos condiciones Los datos son eliminados del historial y la base de datos.
Los datos del historial desplegados por pantalla.
Tipo Sistema
Caso de Uso Emitir Receta
Notas
Excepciones Rut del paciente no existe o esta errado, no
existen datos
salida Confirmación de que los datos fueron guardados
precondiciones Rut y datos existan
pos condiciones Datos guardados y disponibles para imprimir.
Página 109
Proyecto de Investigación Curso Académico de Programación Orientada a Objetos
Notas
Excepciones Rut médico no valido o no existe, no se eligió
horario
salida Una tabla con las fechas y horas disponibles
precondiciones Exista el rut del médico, y los datos de los
horarios
pos condiciones : Horario fijado guardado el la base de datos.
Página 110
Proyecto de Investigación Curso Académico de Programación Orientada a Objetos
Tipo Sistema
Caso de Uso Ingresar Resultado Examen
Notas
Excepciones Los resultados no son válidos, el Rut del paciente
no existe o
es errado
salida Confirmación de que los datos fueron guardados
precondiciones Datos guardados en base de datos y el historial.
pos condiciones : Horario fijado guardado en la base de datos.
Página 111
Proyecto de Investigación Curso Académico de Programación Orientada a Objetos
Página 112
Proyecto de Investigación Curso Académico de Programación Orientada a Objetos
Página 113
Proyecto de Investigación Curso Académico de Programación Orientada a Objetos
Página 114
Proyecto de Investigación Curso Académico de Programación Orientada a Objetos
Página 115
Proyecto de Investigación Curso Académico de Programación Orientada a Objetos
Paquetes de Secretaria
Paquete de Funcionario_Clinica_Externa
Paquete de Medico
Página 116
Proyecto de Investigación Curso Académico de Programación Orientada a Objetos
Paquete ACOS
Capa de Presentación
Página 117
Proyecto de Investigación Curso Académico de Programación Orientada a Objetos
Capa de Negocio
Los servicios de negocio son los que procesan las peticiones del usuario permiten a
los usuarios acceder a los servicios de datos o sea permiten la interacción de los
usuarios no los datos. Responden a peticiones del usuario (u otros servicios de
negocio) para ejecutar una tarea. Cumplen con las distintas tareas aplicando
procedimientos formales y las reglas de negocio previamente establecidas. Cuando los
datos necesarios residen en un servidor de bases de datos, garantizan los servicios de
datos indispensables para cumplir con la tarea de negocio. Esto aísla al usuario de la
interacción directa con la base de datos.
Capa de Datos
Página 118
Proyecto de Investigación Curso Académico de Programación Orientada a Objetos
Página 119
Proyecto de Investigación Curso Académico de Programación Orientada a Objetos
Página 120
Proyecto de Investigación Curso Académico de Programación Orientada a Objetos
Página 121
Proyecto de Investigación Curso Académico de Programación Orientada a Objetos
Pendiente.
Actividad: Al paciente se le deben
realizar exámenes.
Origen: Solicita exámenes a
paciente.
Agente: Doctor.
Precondiciones:
El doctor tiene una lista de
exámenes a solicitar al
paciente.
Poscondiciones:
Poscondiciones:
Precondiciones:
El doctor tiene una lista
medicamentos a recetar al
paciente.
Poscondición:
El paciente se le indican los
medicamentos a tomar.
El paciente se le emite una
receta médica.
Caso de uso del sistema: Emitir
receta.
Página 122
Proyecto de Investigación Curso Académico de Programación Orientada a Objetos
Precondiciones:
El doctor tiene una lista de los
exámenes solicitado al
paciente
Poscondición:
Se ha actualizado el historial
clínico del paciente
El sistema está listo para
ingresar más actualizaciones
del historial clínico de los
pacientes.
Caso de uso del sistema:
Cambiar Historial Paciente.
Página 123
Proyecto de Investigación Curso Académico de Programación Orientada a Objetos
Página 124
Proyecto de Investigación Curso Académico de Programación Orientada a Objetos
Página 125
Proyecto de Investigación Curso Académico de Programación Orientada a Objetos
Página 126
Proyecto de Investigación Curso Académico de Programación Orientada a Objetos
Agregar Exámenes
Página 127
Proyecto de Investigación Curso Académico de Programación Orientada a Objetos
Emitir Exámenes
Página 128
Proyecto de Investigación Curso Académico de Programación Orientada a Objetos
Página 129
Proyecto de Investigación Curso Académico de Programación Orientada a Objetos
Página 130
Proyecto de Investigación Curso Académico de Programación Orientada a Objetos
Página 131
Objetivo de información: Actividad: Asignación de hora de
fecha
hora Precondiciones:
corresponde.
Agente:
Precondiciones:
Poscondición: El paciente se le
solicita exámenes.
realizar exámenes.
Objetivo de información:
Atributos:
Actividad:
rut_paciente.
Ingreso al sistema paciente
nombre
accidentado
empresa
fecha_ingreso
Origen: Solicitud paciente.
datos_accidente
Agente: Recepcionista ACOS.
Restricciones:
Precondiciones:
El rut de paciente es único para el Poscondiciones:
sistema, por lo que permitirá identificar
completamente.
Para cada ingreso de pacientes se
El accidentado es solo ingresado al ingresa al sistema de atención.
sistema por la recepcionista ACOS
El paciente está activo en el
El paciente debe estar ingresado sistema hasta que se le dé el alta.
previamente en el sistema.
Se puede atender en un bloque de
El paciente tiene al menos horario con el médico tratante.
registrado su historial de enfermedades Caso de uso del sistema:
preexistentes, como los medicamentos
que no pueden ser aplicados, así como sus Ingresa datos paciente accidentado.
alergias.
Clase del dominio: Funcionario
Página 133
Proyecto de Investigación Curso Académico de Programación Orientada a Objetos
fecha
hora Preconiciones:
por el médico.
corresponde.
Agente:
Precondiciones:
Poscondición: El paciente se le
solicitan exámenes.
Pendiente.
Página 134
Proyecto de Investigación Curso Académico de Programación Orientada a Objetos
realizar exámenes.
paciente.
Agente: Doctor.
Precondiciones:
Poscondiciones:
Poscondiciones:
exámenes.
medicamento.
Agente: Doctor
Precondiciones:
Poscondición:
Página 135
Proyecto de Investigación Curso Académico de Programación Orientada a Objetos
receta.
Agente: Doctor
Precondiciones:
Poscondición:
Se ha actualizado el historial
clínico del paciente
El sistema está listo para
ingresar más actualizaciones del
historial clínico de los pacientes.
Caso de uso del sistema: Cambiar
Historial Paciente.
nombre_examen
tipo_de_examen Precondiciones:
Página 136
Proyecto de Investigación Curso Académico de Programación Orientada a Objetos
Restricciones: Poscondiciones:
exámenes al sistema.
Clase del dominio: Laboratorio
Origen: Verifica si existen exámenes
Clínico.
hechos al paciente.
Precondiciones:
Los exámenes del paciente debe
haber sido ingresado al
laboratorio.
Poscondiciones:
El médico tiene acceso al
resultado de los exámenes por
medio del historial clínico del
paciente.
Se actualiza el historial Clínico
del paciente.
Caso de uso del sistema: Ingresar
Resultado exámenes.
clínica externa” .
Página 137
Proyecto de Investigación Curso Académico de Programación Orientada a Objetos
id_clinica sistema.
Restricciones:
Lo primero que hay que hacer es crear una fuente de datos en Windows. Para ello, desde el menú
Página 138
Proyecto de Investigación Curso Académico de Programación Orientada a Objetos
crear
Página 139
Proyecto de Investigación Curso Académico de Programación Orientada a Objetos
Aceptar
Página 140
Proyecto de Investigación Curso Académico de Programación Orientada a Objetos
Página 141
Proyecto de Investigación Curso Académico de Programación Orientada a Objetos
Página 142
Proyecto de Investigación Curso Académico de Programación Orientada a Objetos
Para este modelo la mayor vulnerabilidad que puede presentar es la del error
humano ya sea por un error al digitar los datos de los pacientes o por cruzar
información de los mismos.
Como primera medida los tipos de pruebas serán de verificación y validación, para
esto se deben tener ciertos requisitos para garantizar su funcionamiento, estos son
fundamentales porque sin ellos tenemos la certeza de que nuestro sistema no cumpliría
las expectativas requeridas por el usuario:
Ingresar paciente, Tratamiento del paciente, Gestionar Citas médicas, Alta Paciente
Requisitos de Interfaces:
TÉCNICA DE PRUEBAS
Prueba de Casos de Uso: se probara por medio de modelos de casos de uso como
por ejemplo
Página 143
Proyecto de Investigación Curso Académico de Programación Orientada a Objetos
Descripción de los casos de uso esenciales del sistema atención pacientes en el cual
se describirán las distintas actividades que son posibles realizar por el sistema para los
distintos actores.
PROCESO DE PRUEBAS
Página 144
Proyecto de Investigación Curso Académico de Programación Orientada a Objetos
A su vez esto aplica también a las técnicas de pruebas como guía para las pruebas
de Casos de Uso.
Página 145
Proyecto de Investigación Curso Académico de Programación Orientada a Objetos
Capítulo 11 Conclusiones
Página 146
Proyecto de Investigación Curso Académico de Programación Orientada a Objetos
Capítulo 12 Recomendaciones
Como se expone al inicio de este trabajo, se brinda una breve orientación para el
desarrollo de software con la Programación Orientada a Objetos, no se busca
implementar esta guía si no al contrario se da un abrebocas para que el lector se
pueda orientar.
Página 147
Proyecto de Investigación Curso Académico de Programación Orientada a Objetos
Capítulo 13 Bibliografía
Holzner, Steven. Java. Phoenix, AZ, USA: Paraglyph Press, 2001. p 254.
http://site.ebrary.com/lib/unad/Doc?id=5003060&ppg=288Copyright © 2001.
Paraglyph Press. All rights reserved.
Mastering Zukowski, John. Mastering Java 2, J2SE 1.4. Alameda, CA, USA: Sybex,
2002. p (1). http://site.ebrary.com/lib/unad/Doc?id=10152550&ppg=1 Copyright ©
2002. Sybex. All rights reserved.
http://datateca.unad.edu.co/contenidos/301403/2015_1/Presaberes_Teorico/Capitulo
_5/5.1._Introducci_n_a_Java.PDF
Página 148
Proyecto de Investigación Curso Académico de Programación Orientada a Objetos
Página 149