Documente Academic
Documente Profesional
Documente Cultură
Proyecto
Creacin de un Sistema Informtico para la empresa INTECSO-IT
CIA LTDA.
ORIENTADO A OBJETOS
Autores:
Claus Chocho
Manuel Loayza
Profesor:
PHD. Juan Pablo Carvallo Vega
22 de Enero de 2015
NDICE
INTRODUCCIN....................................................................................................................... 1
ANTECEDENTES ...................................................................................................................... 2
ALCANCE ................................................................................................................................... 3
1. Descomposicin de tareas ................................................................................................... 4
- Ciclo de vida del proyecto ................................................................................................ 4
2. Estimaciones de esfuerzo/costo .......................................................................................... 6
3. Asignacin de Recursos ...................................................................................................... 8
4. Ligar actividades con el tiempo.......................................................................................... 9
5. Riesgos .................................................................................................................................... 12
Lista de riesgos ...................................................................................................................... 12
Priorizacin e impacto de los riesgos ................................................................................... 12
Planes de contingencia .......................................................................................................... 14
INTRODUCCIN
Actualmente los sistemas informticos son muy importantes ya que la empresas deben
mantener todos los datos, informacin y registros de sus actividades realizadas bien
documentadas y accesibles; para esto utilizar un sistema informtico es lo ms prctico
porqu estos suelen ser ms veloces y ms seguros y adems con la tecnologa que
tenemos a nuestro alcance en esta poca, an es ms fcil de conseguir un sistema
eficaz.
ANTECEDENTES
Debido a la naturaleza de la empresa INTECSO-IT, cada vez que se realiza un nuevo
trabajo se realiza un listado de materiales que sern utilizados en dicho trabajo, el
listado de materiales es un registro fsico y cuando se necesita saber la cantidad exacta
de materiales utilizados en un determinado trabajo se debe realizar una revisin en este
registro.
El proceso para generar el rol de pagos de los empleados, se ejecuta cada vez de manera
manual, la contadora se basa en el sueldo determinado para cada empleado y ejecuta los
clculos de descuento de seguro social, multas u otros. El sistema deber permitir
gestionar todos estos rubros que interactan en el clculo del rol para cada empleado de
la empresa de forma individual y as poder generar un rol de pagos de una manera
rpida.
ALCANCE
Una vez desarrollado el sistema, este entregar varios programas que nos permita
realizar varias tareas para el manejo de nuestra informacin, aqu unas de las tareas
principales:
Orden de servicios
Registro de materiales usados en cada trabajo
Generacin automtica de roles de pago a empleados
PLAN DE PROYECTO
1. Descomposicin de tareas
- Ciclo de vida del proyecto
1. Anlisis de Requerimientos
1.1 Identificacin de las reas en la que el sistema ayudara
1.2 Preparacin material para elicitacin requerimientos
1.3 Planificacin entrevistas
1.3.1 entrevista para el Jefe de la empresa
1.3.2 entrevista para la contadora de la empresa
1.3.3 entrevista para los empleados de la empresa
1.4 Realizar las entrevistas
1.4.1 entrevista al Jefe de la empresa
1.4.2 entrevista a la contadora de la empresa
1.4.3 entrevista a los empleados de la empresa
1.5 Anlisis de informacin obtenida
1.6 Identificar los requerimientos globales
1.7 Definir alcance
1.8 Priorizar requerimientos
1.9 Definir documento de especificaciones
1.10 Actualizacin documentacin plan de proyecto
2. Diseo
2.1 Construccin DFD 0
2.2 Descomposicin DFD 0
2.3 Construccin de flujogramas para los distintos procesos
2.4 Diccionario de datos
2.5 Entidad Relacin
2.6 Documentacin plan de proyectos
2.7 Eleccin de herramientas de desarrollo
2.7.1 base de datos
2.7.2 lenguaje de programacin
2.7.3 IDE de desarrollo
3. Desarrollo
3.1 Asignacin de mdulos
3.2 Desarrollo de clases de los mdulos
3.3 Desarrollo de las interfaces de usuario (GUIS)
3.4 Pruebas individuales
3.5 Correccin de errores
3.6 Integracin de mdulos
3.7 Pruebas de mdulos integrados
3.8 Correccin de errores
4
4. Pruebas
4.1 Pruebas generales usando datos reales
4.2 Pruebas con empleados de la empresa
4.3 Correccin de errores encontrados en las pruebas
5. Implementacin
5.1 Implementacin del sistema en la empresa
5.2 Pruebas de implementacin
6. Capacitacin de personal
6.1 Uso del sistema
6.2 Entrega de manuales de usuario
6.3 Capacitacin al gerente
6.4 Capacitacin a la contadora
6.5 Capacitacin a los empleados
7. Mantenimiento
2. Estimaciones de esfuerzo/costo
Para el Anlisis de Requerimientos se necesita de dos analistas que sern las encargadas
de realizar las tareas de elaboracin de entrevistas, de llevarlas a cabo y de analizar la
informacin obtenida, utilizando cmaras fotogrficas, grabadoras de sonido y
filmadores para las entrevistas y PCs, hojas de clculo, editores de texto, carpetas, hojas
para el anlisis de datos, esta tarea tiene un costo estimado de $700 y se llevara a cabo
en 6 das.
En el Diseo se utilizara PCs, software diagramadores (DFD, entidad-relacin),
software para la construccin de flujogramas, software de desarrollo (BD, Lenguajes de
programacin, IDE), esta actividad ser llevada a cabo en 9 das y ser realizada por 2
personas con un costo estimado de $1300.
Para la realizacin del Desarrollo se necesitara de PCs, software de desarrollo (BD,
lenguajes de programacin, IDE de desarrollo), oficina (lugar de trabajo de los
programadores), Servicio de internet, la elaboracin de esta tarea tiene como costo
$2000 y su duracin es de 20 das.
Al igual que la tarea anterior la Tarea 4(PRUEBA) ocupara los mismos elementos, en
esta tarea se requerir la participacin de los usuarios involucrados (gerente, contadora
y empleados) para probar el funcionamiento del sistema y analizar los nuevos errores y
en caso de que estos errores surjan buscar una solucin, la duracin de esta tarea es de 4
das y su costo total es de $450.
Para la IMPLEMENTACION (Tarea 5) se necesitara las computadoras (PCs,
servidores) propias de la empresa en donde funcionara el sistema, software que necesita
el sistema informtico y tambin un dispositivo de almacenamiento (Disco duros
externos) para el traslado del sistema informtico, se realizara en 3 das, con un costo
de $200.
En la tarea 6, se realizara la capacitacin a los usuarios para el correcto uso del sistema,
se utilizara proyectores, PCs, manuales, software de presentacin de Diapositivas, esta
tarea se ejecutara en un tiempo de 2 das con un costo de $ 150.
Los elementos a utilizarse en la tarea 7 (Mantenimiento) dependern del problema que
se presente, o de alguna necesidad que surja, es por eso que en esta tarea no se puede
estimar un tiempo y mucho menos un costo, ya que depender de los parmetros antes
indicados.
Tarea
Recursos
Tiempo Costo
Recursos
Humanos
Cmara fotogrfica
Grabadoras de sonido
Filmadoras
PCs
1 Anlisis de requerimientos
Software:
6 das
$ 700
2 personas
9 das
$ 1.300
2 personas
20 das $ 2.000
2 personas
4 das
$ 450
2 personas +
usuarios
3 das
$ 200
2 personas
2 das
$ 150
2 personas
Hojas de calculo
Editores de texto
Carpetas
Hojas
PCs
Software:
Diagramador DFD
Diseo
Diagramador E-R
Diagramador Flujogramas
BD
Lenguaje de programacin
IDE de desarrollo
PCs
Software:
BD
Desarrollo
Lenguaje de programacin
IDE de desarrollo
Servicio de internet
Oficina
PCs
Software:
BD
Pruebas
Lenguaje de programacin
IDE de desarrollo
Servicio de internet
Oficina
Implementacin
Capacitacin
Manuales de usuario
PCs
Diapositivas
Mantenimiento
7
7
3. Asignacin de Recursos
T: 1.1, P: P1, Ti: 1 da
T: 1.2, P: P2, Ti: 1/2
da
T: 1.3.1, P: P1, Ti: 2 Horas
T: 1.3.2, P: P2, Ti: 2H
T: 1.3.3, P: P1-P2, Ti: 4H
T: 1.4.1, P: P1, Ti: 3H
T: 1.4.2, P: P2, Ti: 3H
T: 1.4.3, P: P1-P2, Ti: 4H
T: 1.5, P: P1-P2, Ti: 1 da
T: 1.6, P: P1-P2, Ti: 1 da
T: 1.7, P: P1, Ti: 1 da
T: 1.8, P: P2, Ti: 1 da
T: 1.9, P: P1, Ti: 1 da
T: 1.10, P: P2, Ti: 1/2 da
T: 2.1, P:P1, Ti: 2 DIAS
T:2.2 , P:P2, Ti: 3 DIAS
T:2.3 , P:P1, Ti: 1 DIA
T:2.4 , P:P2, Ti: 1 DIA
T: 2.5, PP1:, Ti: 1/2 DIA
T: 2.6, P:P2, Ti: 1 DIA
T:2.7.1 , P:P1, Ti: 1/2 DIA
T: 2.7.2, P:P2, Ti: 1/2 DIA
T: 2.7.3, P:P1-P2, Ti: 1 DIA
T:3.1 , P:P1-P2, Ti: 1 DIA
T:3.2 , P:P1-P2, Ti: 8
DIAS
T:3.3 , P:P1-P2, Ti: 8
DIAS
T:6.1,
T:6.2,
T:6.3,
T:6.4,
T:6.5,
Fecha inicio
22/09/2014
22/09/2014
22/09/2014
23/09/2014
24/09/2014
24/09/2014
24/09/2014
25/09/2014
26/09/2014
26/09/2014
27/09/2014
28/09/2014
01/10/2014
03/10/2014
05/10/2014
07/10/2014
08/10/2014
13/10/2014
15/10/2014
24/10/2014
29/10/2014
31/10/2014
02/11/2014
05/11/2014
08/11/2014
12/11/2014
14/11/2014
16/11/2014
17/11/2014
17/11/2014
18/11/2014
18/11/2014
18/11/2014
19/11/2014
20/11/2014
Duracin Das
1
1
1
1
1
1
1
1
1
1
1
3
2
2
2
1
5
2
9
8
2
2
2
3
3
2
2
2
1
3
1
1
1
1
1
De entre todas las actividades, existe una ruta crtica que es de la cual depende si el
proyecto se cumplir o no en el tiempo establecido, esta ruta crtica empieza en la tarea
2.7 Eleccin de Herramientas de desarrollo, esta actividad depender de los equipos
informticos con los que la empresa INTECSO-IT CIA TLDA cuente, es por eso que
se ha designado 5 das para que esta tarea se cumpla, si esta tarea se retrasa har que el
proyecto se retrase, ya que de esta actividad depende todas las actividades concernientes
a la etapa de desarrollo.
Si observamos la ruta desde la tarea 2.7 nos daremos cuenta que las tareas ms
importantes depende de esta, y entre dichas tareas esta la tarea 3.2 Desarrollo de
mdulos, que es una de las tareas ms largas del proyecto con una duracin de 9 das.
De igual manera si esta tarea se retrasa habra un impacto muy grande de retraso para el
proyecto, es por eso que se defini a esta ruta como Critica.
10
11
5. Riesgos
Lista de riesgos
12
Cada del sistema: El impacto que tendra este riesgo es muy alto ya que al
caerse el sistema, significara que no ser posible realizar ningn tipo de
transaccin, esto conllevara a parar los trabajos, ya que no se puede dejar una
constancia de lo que se est haciendo y los recursos que se estn utilizando. La
probabilidad de que esto suceda es pequea.
Fallo en los registros, registros incompletos: Este riesgo tambin es de grande
impacto, ya que al realizar registros mal hechos o incompletos, se guardaran
mal los datos y al realizar las consultas no cuadraran los datos ingresados con
los que en realidad deban ser. La probabilidad de que esto suceda es media.
Fallo en los equipos y/o programas: Tendra un impacto muy significante ya
que esto impedira el uso del sistema y no se podra registrar los datos de los
trabajos que se van a realizar o estn siendo realizados. La probabilidad que
suceda es pequea.
Corte en el sistema elctrico: Es de un impacto significante ya que sin haber
energa elctrica no habra como usar el sistema y por lo tanto no habra como
guardar la informacin y datos. La probabilidad es media.
Ingeniera Social: Es de impacto significante ya que al perder informacin
sobre accesos al sistema, contraseas y diversos datos importantes que se
manejen en la empresa corremos el riesgo de robo de informacin. La
probabilidad es muy alta.
13
Planes de contingencia
14
Riesgo
Fallo en los equipos y/o programas
Equivocaciones en el uso del sistema
Mala instalacin del sistema
Falla en los registros, registros incompletos
Propagacin de virus
Escapes de informacin
Accesos no autorizados al sistema
Prdida de informacin
Modificacin no autorizada de informacin
Incendios
Manipulacin de programas
Cada del sistema
Ingeniera social
Cortes en el sistema elctrico
15
Magnitud de
dao
3
2
3
4
3
1
2
2
3
2
3
4
3
3
Especificacin de requisitos de
software
Proyecto: Sistema Informtico para la empresa
INTESCO-IT CIA LTDA
Enero de 2015
22/01/2015
Revisin
Autor
Claus Chocho
Manuel Loayza
Pg. 3
Contenido
FICHA DEL DOCUMENTO
CONTENIDO
1
INTRODUCCIN
2
3
4
1.1
1.2
1.3
1.4
1.5
1.6
4
4
4
5
5
5
2
2.1
2.2
2.3
2.4
2.5
3
Propsito
Alcance
Personal involucrado
Definiciones, acrnimos y abreviaturas
Referencias
Resumen
DESCRIPCIN GENERAL
5
5
6
7
7
ERROR! MARCADOR NO DEFINIDO.
3.1
Requisitos comunes de las interfaces
3.1.1 Interfaces de usuario
3.1.2 Interfaces de hardware
3.1.3 Interfaces de software
3.1.4 Interfaces de comunicacin
3.2
Requisitos funcionales
3.2.1 Requisito funcional 1
3.2.2 Requisito funcional 2
3.2.3 Requisito funcional 3-7
3.2.4 Requisito funcional 8-9
3.2.5 Requisito funcional 10-11
3.2.6 Requisito funcional 12-13
3.2.7 Requisito funcional 14
3.2.8 Requisito funcional 15-17
3.3
Requisitos no funcionales
3.3.1 Seguridad
3.3.2 Disponibilidad
3.3.3 Mantenibilidad
3.3.4 Rendimiento
Pg. 4
1 Introduccin
Este documento es una Especificacin de Requisitos Software para Sistema
Informtico para la empresa INTESCO-IT CIA LTDA. Esta especificacin se ha
estructurado basndose en el anlisis de las entrevistas y encuestas realizadas a las
partes que intervienen en la creacin del sistema y en las directrices dadas por el estndar
IEEE 830.
1.1
Propsito
1.2
Alcance
Esta especificacin de requisitos est dirigida a los usuarios del sistema, para
automatizar procesos y registros que faciliten las actividades diarias de dichos usuarios,
la cual tiene por objetivo principal el gestionar los distintos procesos administrativos
(registro de lugares de trabajos, registro de elementos/materiales usados en cada lugar
de trabajo, registro de empleados, registro de ingresos/egresos y multas para cada
empleado).
1.3
Personal involucrado
Nombre
Rol
Categora Profesional
Responsabilidad
Informacin de contacto
Claus Chocho
Analista, diseador y programador
Informtica
Anlisis de informacin, diseo y programacin del SIS-I
klauscj@hotmail.es
Nombre
Rol
Categora Profesional
Responsabilidad
Informacin de contacto
Manuel Loayza
Analista, diseador y programador
Informtica
Anlisis de informacin, diseo y programacin del SIS-I
Marnuel2009@hotmail.com
1.4
1.5
Descripcin
Persona que usar el sistema para gestionar procesos
Sistema Informtico para la empresa INTESCO-IT CIA
LTDA
Especificacin de Requisitos Software
Requerimiento Funcional
Requerimiento No Funcional
Usuario Gerente
Usuario Contador/a
Usuario Empleado
Referencias
Ttulo del Documento
Standard IEEE 830 1998
1.6
Pg. 5
Referencia
IEEE
Resumen
2 Descripcin general
2.1
2.2
Pg. 6
2.3
Tipo de usuario
Formacin
Actividades
Gerente
Informtica y Telecomunicaciones
Control y manejo del sistema en general
Tipo de usuario
Formacin
Actividades
Contador(a)
Administracin de empresas
Ingreso de egresos/ingresos, consulta de elementos
Tipo de usuario
Formacin
Actividades
Empleado
Tcnico Sistemas y Comunicaciones
Consulta de roles de pagos, instalacin de
elemento/materiales
Pg. 7
2.4
Restricciones
El sistema trabajara esta optimizado a trabajar bajo Plataformas Windows.
Lenguajes y tecnologas en uso: JAVA.
La computadora principal (servidor) donde estar instalado el sistema deber
poder responder con eficacia a consultas concurrentes.
El sistema se disear segn un modelo cliente/servidor.
El sistema deber tener un diseo e implementacin sencilla, independiente de
la plataforma o del lenguaje de programacin.
El sistema deber otorgar permisos especiales para cada usuario
(GRT,CTD,EMP)
2.5
Suposiciones y dependencias
Se asume que los requisitos aqu descritos son estables y no cambiaran
repentinamente.
Los equipos en los que se vaya a ejecutar el sistema deben cumplir los
requisitos antes indicados para garantizar una ejecucin correcta del SIS-I
Cada usuario tendr accesos restringidos a procesos que no le incumban
Pg. 8
3 Casos de uso
Cdigo
Nombre
Resumen
Actores
Personal Involucrado e
Intereses
Pre-Condiciones
Post-Condiciones
Escenario Principal
Extensiones
CU1
Cotizacin de productos
La contadora elije realiza la cotizacin de productos que
la empresa necesita
Contadora (principal)
Proveedores (secundarios)
Contadora: requiere adquirir los productos a el
menor precio posible
Proveedor: desea vender sus productos y tener
ms clientes
Actores
Personal Involucrado e
Intereses
CU2
Compra de productos
Caso de uso donde la contadora realiza la compra de
productos pedidos por el gerente
Pre-Condiciones
Post-Condiciones
Escenario Principal
Extensiones
Pg. 9
Contadora (principal)
Gerente (secundarios)
Contadora: requiere adquirir los
Proveedor: desea vender sus productos y tener
ms clientes
Gerente: est interesado en tener a disposicin
los productos que sus tcnicos necesitan
Cdigo
Nombre
Resumen
CU3
Mantenimiento de inventario
Caso de uso donde la contadora realiza el mantenimiento
del inventario de productos con el que cuenta la empresa
Contadora (principal)
Actores
Personal Involucrado e
Intereses
Pre-Condiciones
Post-Condiciones
Escenario Principal
Pg. 10
1.
2.
3.
4.
5.
Extensiones
Cdigo
Nombre
Resumen
Actores
Personal Involucrado e
Intereses
Pre-Condiciones
Post-Condiciones
Escenario Principal
CU4
Facturacin fsica
Caso de uso donde la contadora emite la factura fsica al
cliente
Contadora (principal)
Cliente (secundarios)
Contadora: interesada en emitir la factura con
los datos correctos
Cliente: desea obtener la factura de forma fsica
con los detalles de su compra u orden de
servicio tcnico
1.
2.
3.
4.
5.
6.
7.
8.
Extensiones
Pg. 11
Cdigo
Nombre
Resumen
Actores
Personal Involucrado e
Intereses
Pre-Condiciones
Post-Condiciones
Escenario Principal
Pg. 12
CU5
Pago al proveedor
Esto sirve para reflejar el procedimiento de pago a un
proveedor
Contadora (principal)
Proveedor
Contadora: desea cancelar las facturas pendientes por
compras a proveedores
Proveedor: desea recibir pago por los
productos/servicios ofrecidos
Se debe tener con precisin los datos de la compra a un
proveedor en especifico
Se debe tener la mquina arreglada.
Extensiones
Cdigo
Nombre
Resumen
Actores
CU6
Pago de Sueldo
Caso de uso que refleja el proceso de pago de sueldo a
un empleado
Contadora(primario)
empleado(secundario)
Personal Involucrado e
Intereses
Pre-Condiciones
Post-Condiciones
Escenario Principal
Pg. 13
1.
2.
3.
4.
5.
6.
7.
8.
9.
Extensiones
Cdigo
Nombre
Resumen
Actores
CU7
Soporte tcnico
Caso de uso que refleja el proceso de brindar el soporte
tcnico a un cliente que lo requiera
Tcnico (Principal)
Cliente (Secundario)
Personal Involucrado e
Intereses
Pre-Condiciones
Post-Condiciones
Escenario Principal
Extensiones
Pg. 14
Cdigo
Nombre
Resumen
Actores
CU8
Soporte va telefnica
Caso de uso que refleja el proceso de brindar el soporte
tcnico a un cliente que lo requiera mediante
comunicacin telefnica
Tcnico (Principal)
Cliente (Secundario)
Personal Involucrado e
Intereses
Pre-Condiciones
Post-Condiciones
Escenario Principal
Extensiones
Pg. 15
Cdigo
Nombre
Resumen
Actores
CU9
Soporte mediante acceso remoto
Caso de uso que refleja el proceso de brindar el soporte
tcnico a un cliente que lo requiera mediante acceso
remoto
Tcnico (Principal)
Cliente (Secundario)
Personal Involucrado e
Intereses
Pre-Condiciones
Post-Condiciones
Escenario Principal
Extensiones
Pg. 16
Cdigo
Nombre
Resumen
Actores
CU10
Realizar Trabajo
Caso de uso que refleja el proceso de realizar o llevar a
cabo un trabajo
Tcnico (Principal)
Cliente (Secundario)
Personal Involucrado e
Intereses
Pre-Condiciones
Post-Condiciones
Escenario Principal
Pg. 17
1.
2.
3.
4.
5.
Extensiones
Pg. 18
CASOS DE
USO DE
SISTEMA
Descripcin de requisitos del sofware
Cdigo
Nombre
Resumen
Actores
Personal Involucrado e
Intereses
Pre-Condiciones
Post-Condiciones
CU11
Registrar Servicio Tcnico
Caso de uso donde el cliente pide a la secretaria una
orden de servicio tcnico.
1.
2.
3.
4.
5.
Escenario Principal
6.
7.
8.
9.
Extensiones
Pg. 19
Cdigo
Nombre
Resumen
Pg. 20
CU12
Validaciones
Caso de uso que contendr mtodos para la validacin de
datos de todo el sistema
Actores
Personal Involucrado e
Intereses
Pre-Condiciones
Post-Condiciones
Escenario Principal
1.
2.
3.
4.
Extensiones
Cdigo
Nombre
Resumen
Pg. 21
CU13
Aprobacin material
Caso de uso para
Gerente (principal)
Actores
Personal Involucrado e
Intereses
Pre-Condiciones
Post-Condiciones
Escenario Principal
Extensiones
Cdigo
Nombre
Resumen
Actores
Personal Involucrado e
Intereses
Pre-Condiciones
Post-Condiciones
Escenario Principal
Extensiones
Pg. 22
CU14
Registro de empleado
CU para el caso de uso de registro de empleado de la
empresa.
Secretaria
Empleado
Secretaria: Requiere almacenar los datos del empleado
Empleado: Requiere ingresar al sistema
1.
2.
3.
4.
Cdigo
Nombre
Resumen
CU15
Registrar material de trabajo
El empleado debe registra en el sistema un material
usado en algn trabajo especificado
Empleado (principal)
Actores
Personal Involucrado e
Intereses
Pre-Condiciones
Post-Condiciones
Escenario Principal
Extensiones
1.
2.
3.
4.
Pg. 23
Cdigo
Nombre
Resumen
Actores
Personal Involucrado e
Intereses
Pre-Condiciones
Post-Condiciones
Escenario Principal
Extensiones
CU16
Bonos y multas a empleados
La secretaria registrara las multas y/o bonos que se
impongan a cada empleado
Secretaria (principal)
Empleado (secundario)
Empleado: est interesado en que se registre sus
bonos
Contadora: desea registrar las multas a cada
empleado que as lo amerite
Pg. 24
Cdigo
Nombre
Resumen
Actores
Personal Involucrado e
Intereses
Pre-Condiciones
Post-Condiciones
Escenario Principal
Extensiones
CU17
Generar roles de trabajo
La contadora utiliza el sistema para generar los roles de
trabajo de los empleados de la empresa
Secretaria (principal)
Empleado (secundario)
Empleado: est interesado en conocer su sueldo
mensual incluyendo bonos y multas
Contadora: desea generar los roles de manera
rpida
Pg. 25
Cdigo
Nombre
Resumen
Actores
Personal Involucrado e
Intereses
Pre-Condiciones
Post-Condiciones
Escenario Principal
Extensiones
CU18
Ingreso Trabajo a realizar
Caso de uso para el ingreso del trabajo a realizar
Contadora (principal)
Cliente (secundario)
Contadora: desea registrar en el sistema los datos del
trabajo a realizar
Se deben conocer los datos del cliente
El trabajo quedara registrado en el sistema
1.
2.
3.
4.
5.
Pg. 26
Cdigo
Nombre
Resumen
CU19
Facturacin de orden de servicio tcnico
La contadora emitir registrar en el sistema la factura
sobre la orden de servicio tcnico, para su posterior
consulta
Contadora (principal)
Actores
Personal Involucrado e
Intereses
Pre-Condiciones
Post-Condiciones
Escenario Principal
Extensiones
Pg. 27
Pg. 28
CU20
Reportes
Caso de uso que presentara reportes determinados en la
empresa con el fin de conocer datos importantes de la
misma
Actores
Personal Involucrado e
Intereses
Pre-Condiciones
Post-Condiciones
Escenario Principal
Extensiones
DIAGRAMA
DE CASOS
DE USO
Descripcin de requisitos del sofware
Pg. 29
Compra de
productos
Cotizacin de
productos
Aprobacin Material
RegistrasrEmpleado
Gerente
{extended}
Ingreso trabajo a
realizar
Pago al Proovedor
{extended}
{extended}
Mantenimiento de
inventario
Validacin de
cdula
Ingreso servicio tcnico a
realizar
Contadora
{extended}
Facturacin Fsica
{include}
Bonos y multas
Tcnico
Visita al cliente
Cliente
{include}
{include}
Soporte Tcnico
Llamada al
cliente
Ingreso de material usado
Mantenimiento de
equipo
Realizacin del
Trabajo
{include}
DIAGRAMA
DE CLASES
Material
-precio: double = 0.0
-cantidad: double = 0.0
-descripcion: String = ""
-aprobado: Boolean = false
+getPrecio(): double
+getCantidad(): double
+getDescripcion(): String
+getAprobado(): boolean
+material(precio:double,cantidad:double,
descripcion:String,aprob:boolean): void
+aprobacionMaterial(): void
+modificarMaterial(): void
+eliminarMaterial(): void
+registrarServicioTecnico(): void
+obtenerMaterial(): void
COMPRA DE PRODUCTOS
tiene
1..*
1..*
Persona
Direccion
+Persona(nombre:String="",apellido:String="",
cedula:String="",fecha:Date=null)
Tiene
Telefono
1..*
+getCiudad(): String
+getCalle1(): String
+getCalle2(): String
+getNumeracion(): String
+getLatitud(): double
+getLongitud(): double
+direccion(ciudad:String,calle1:String,calle2:String,
numeracion:String,latitud:double,
longitud:double): void
{incompleta,disjunta}
Proveedor
1..*
Empleado
-salario: double = 0.0
-puesto: String = ""
-fechaContratacion: Date = null
-usuario: String = ""
-password: String = ""
1..*
tiene
1..*
+Empleado(salario:double=0.0,fechaCon:Date=null,
usua:String="",pass:String="")
Cotizacion
-costo: double = 0.0
+getCosto(): double
+cotizacion(costo:double): void
1..*
{completo,disjunto}
0..*
realiza
Material
-precio: double = 0.0
-cantidad: double = 0.0
-descripcion: String = ""
Contadora
+getPrecio(): double
+getCantidad(): double
+getDescripcion(): String
+material(precio:double,cantidad:double,
descripcion:String): void
1..*
Compra
+FechaCompra: Date = null
+CantidadComprada: integer = 0
+estadoCompra: String = pendiente
+getCantidadComprada(): integer
+getFechaCompra(): Date
+getEstadoCompra(): String
+Compra(cantidad:integer,fecha:date,estado:string): void
1..*
1..*
COTIZACIN DE PRODUCTO
tiene
1..*
Telefono
Persona
1..*
Tiene
1
+Persona(nombre:String="",apellido:String="",
cedula:String="",fecha:Date=null)
1..*
Direccion
-Ciudad: String = null
-calle 1: String = ""
-calle2: String = ""
-numeracion: string = ""
-latitud: double = 0.0
-longitud: double = 0.0
{incompleta,disjunta}
Proveedor
1..*
Empleado
+Empleado(salario:double=0.0,fechaCon:Date=null,
usua:String="",pass:String="")
+getNombreComercial(): String
+proveedor(nombreC): void
1
+getCiudad(): String
+getCalle1(): String
+getCalle2(): String
+getNumeracion(): String
+getLatitud(): double
+getLongitud(): double
+direccion(ciudad:String,calle1:String,calle2:String,
numeracion:String,latitud:double,
longitud:double): void
+Empleado(salario:double=0.0,fechaCon:Date=null,
usua:String="",pass:String="")
tiene
1..*
Cotizacion
1..*
+getCosto(): double
+cotizacion(costo:double): void
1..*
{completo,disjunto}
realiza
0..*
Material
Contadora
1..*
FACTURACIN ELECTRNICA
Telefono
1..*
Persona
-nombres: String = ""
-apellidos: String = ""
-cedula: String = ""
-fechaNacimiento: Date = null
Tiene
1
+Persona(nombre:String="",apellido:String="",
cedula:String="",fecha:Date=null)
1
+guardarPersona()
+modificarPersona()
tiene
1..*
Direccion
1..*
Tiene
{incompleta,junta}
Cliente
0..*
FacturaC
-subtotal: double = 0.0
-fecha: Date = null
-iva: double = 0.0
-total: double = 0.0
+obtenerDatos()
Empleado
+FacturaC(subtotal:double=0.0,fecha:Date=null,
iva:double=0.0,total:double=0.0): void
+getSubtotal(): double
+getIva(): double
+getTotal(): double
+getFecha(): Date
+enviarFacturaCorreo(): void
+registrarFactura()
+agregarProducto()
Posee
1
1..*
+getCiudad(): String
+getCalle1(): String
+getCalle2(): String
+getNumeracion(): String
+getLatitud(): double
+getLongitud(): double
+direccion(ciudad:String,calle1:String,calle2:String,
numeracion:String,latitud:double,
longitud:double): void
FacturaD
{completo,disjunto}
Contadora
-cantidad: int = 0
-valor: double = 0.0
+FacturaD(cantidad:int=0,valor:double=0.0): void
+getCantidad(): int
+getValor(): double
1
Tiene
Tiene
0..*
0..*
Trabajo
-precio: double = 0.0
-fecha: Date = null
+getPrecio(): double
+getFecha(): Date
+trabajo(precio:double,fecha:date): void
ServicioTecnico
-fechaEntrada: Date = null
-problema: Sring = ""
-observaciones: String = ""
+ServicioTecnico(fechaEntrega:Date=null,
problema:String="",observaciones:String=""): void
+getFechaEntrada(): Date
+getProblema(): String
+getObservaciones(): String
FACTURACIN FSICA
Telefono
-numTelefonico: String = "9999-999-999"
1..*
+tipoTelefono: String = "Casa"
Persona
-nombres: String = ""
-apellidos: String = ""
-cedula: String = ""
-fechaNacimiento: Date = null
+Telefono(numTelef:String="9999-999-999",
tipo:String="")
+registrarTelefono()
+modificarTelefono()
Tiene
1
+Persona(nombre:String="",apellido:String="",
cedula:String="",fecha:Date=null)
1
+guardarPersona()
+modificarPersona()
tiene
1..*
Direccion
1..*
FacturaC
Tiene
{incompleta,junta}
Cliente
Empleado
-salario: double = 0.0
-puesto: String = ""
-fechaContratacion: Date = null
-usuario: String = ""
-password: String = ""
+Empleado(salario:double=0.0,fechaCon:Date=null,
usua:String="",pass:String="")
+FacturaC(subtotal:double=0.0,fecha:Date=null,
iva:double=0.0,total:double=0.0): void
+getSubtotal(): double
+getIva(): double
+getTotal(): double
+getFecha(): Date
+imprimirFactura(): void
1
Posee
+getCiudad(): String
+getCalle1(): String
+getCalle2(): String
+getNumeracion(): String
+getLatitud(): double
+getLongitud(): double
+direccion(ciudad:String,calle1:String,calle2:String,
numeracion:String,latitud:double,
longitud:double): void
Realiza
1..*
FacturaD
{completo,disjunto}
Contadora
-cantidad: int = 0
-valor: double = 0.0
+FacturaD(cantidad:int=0,valor:double=0.0): void
+getCantidad(): int
+getValor(): double
1
Tiene
Tiene
0..*
0..*
Trabajo
-precio: double = 0.0
-fecha: Date = null
+getPrecio(): double
+getFecha(): Date
+trabajo(precio:double,fecha:date): void
ServicioTecnico
-fechaEntrada: Date = null
-problema: Sring = ""
-observaciones: String = ""
+ServicioTecnico(fechaEntrega:Date=null,
problema:String="",observaciones:String=""): void
+getFechaEntrada(): Date
+getProblema(): String
+getObservaciones(): String
GENERAL ROL
tiene
Telefono
1..*
1..*
Persona
Tiene
1..*
Direccion
-Ciudad: String = null
-calle 1: String = ""
-calle2: String = ""
-numeracion: string = ""
-latitud: double = 0.0
-longitud: double = 0.0
+Telefono(numTelef:String="9999-999-999",
tipo:String="")
+Persona(nombre:String="",apellido:String="",
cedula:String="",fecha:Date=null)
+getCiudad(): String
+getCalle1(): String
+getCalle2(): String
+getNumeracion(): String
+getLatitud(): double
+getLongitud(): double
+direccion(ciudad:String,calle1:String,calle2:String,
numeracion:String,latitud:double,
longitud:double): void
{incompleta,disjunta}
Rol
-cantidad: double = 0.0
-fechaDeRol: Date = null
1..*
+seguro: double = 0.0
+getcantidad(): double
+getFechadeRol(): Date
+getSeguro(): double
+cantidad(precio:double,fechaRol:date,seguro:double): void
+generarRol(): void
+registrarRol()
1..*
Empleado
-salario: double = 0.0
-puesto: String = ""
-fechaContratacion: Date = null
-usuario: String = ""
-password: String = ""
tiene
+Empleado(salario:double=0.0,fechaCon:Date=null,
usua:String="",pass:String="")
tiene
1..*
MultaBono
-valor: double = 0.0
-fechaMulta: Date = null
-concepto: String = ""
-tipo: int = 0
{completo,disjunto}
+MultaBono(valor:double=0.0,fechaMulta:Date=null,
concepto:String="",tipo:int=0)
+calcularMulta()
+calcularBono()
+registrarMultaBono()
+obtenerMulta()
Tecnico
+obtenerDatos()
Contadora
genera
MANTENIMIENTO DE INVENTARIO
tiene
1..*
Telefono
Persona
Tiene
1..*
+Telefono(numTelef:String="9999-999-999",
tipo:String="")
+Persona(nombre:String="",apellido:String="",
cedula:String="",direccion:String="",
fecha:Date=null)
1..*
Direccion
-Ciudad: String = null
-calle 1: String = ""
-calle2: String = ""
-numeracion: string = ""
-latitud: double = 0.0
-longitud: double = 0.0
{incompleta,disjunta}
+getCiudad(): String
+getCalle1(): String
+getCalle2(): String
+getNumeracion(): String
+getLatitud(): double
+getLongitud(): double
+direccion(ciudad:String,calle1:String,calle2:String,
numeracion:String,latitud:double,
longitud:double): void
Empleado
-salario: double = 0.0
-puesto: String = ""
-fechaContratacion: Date = null
-usuario: String = ""
-password: String = ""
Material
+Empleado(salario:double=0.0,fechaCon:Date=null,
usua:String="",pass:String="")
{completo,disjunto}
cuenta
Contadora
+getPrecio(): double
+getCantidad(): double
+getDescripcion(): String
+material(precio:double,cantidad:double,
descripcion:String): void
+contarMaterialez(): integer
PAGO DE PROVEEDOR
tiene
1..*
Persona
Telefono
Tiene 1..*
+Persona(nombre:String="",apellido:String="",
cedula:String="",fecha:Date=null)
+guardarPersona()
+modificarPersona()
1..*
Direccion
-Ciudad: String = null
-calle 1: String = ""
-calle2: String = ""
-numeracion: string = ""
-latitud: double = 0.0
-longitud: double = 0.0
{incompleta,disjunta}
+getCiudad(): String
+getCalle1(): String
+getCalle2(): String
+getNumeracion(): String
+getLatitud(): double
+getLongitud(): double
+direccion(ciudad:String,calle1:String,calle2:String,
numeracion:String,latitud:double,
longitud:double): void
Empleado
Proveedor
+Empleado(salario:double=0.0,fechaCon:Date=null,
usua:String="",pass:String="")
+Empleado(salario:double=0.0,fechaCon:Date=null,
usua:String="",pass:String="")
+getNombreComercial(): String
+proveedor(nombreC): void
1
Se hace a un
{completo,disjunto}
1
Pago
Contadora
Realiza
1..*
Compra
+FechaCompra: Date = null
+CantidadComprada: integer = 0
+estadoCompra: String = pendiente
+getCantidadComprada(): integer
+getFechaCompra(): Date
+getEstadoCompra(): String
+Compra(cantidad:integer,fecha:date,estado:string): void
PAGO DE SUELDO
tiene
1..*
Persona
Telefono
Tiene 1..*
+Persona(nombre:String="",apellido:String="",
cedula:String="",fecha:Date=null)
+guardarPersona()
+modificarPersona()
1..*
Direccion
-Ciudad: String = null
-calle 1: String = ""
-calle2: String = ""
-numeracion: string = ""
-latitud: double = 0.0
-longitud: double = 0.0
{incompleta,disjunta}
+getCiudad(): String
+getCalle1(): String
+getCalle2(): String
+getNumeracion(): String
+getLatitud(): double
+getLongitud(): double
+direccion(ciudad:String,calle1:String,calle2:String,
numeracion:String,latitud:double,
longitud:double): void
Empleado
-salario: double = 0.0
-puesto: String = ""
-fechaContratacion: Date = null
-usuario: String = ""
-password: String = ""
+Empleado(salario:double=0.0,fechaCon:Date=null,
usua:String="",pass:String="")
{completo,disjunto}
Pago
Tecnico
1..*
recibe
1..*
REALIZAR TRANAJO
tiene
1..*
Telefono
Persona
-nombres: String = ""
-apellidos: String = ""
-cedula: String = ""
-fechaNacimiento: Date = null
Tiene
1..*
+Telefono(numTelef:String="9999-999-999",
tipo:String="")
+Persona(nombre:String="",apellido:String="",
cedula:String="",fecha:Date=null)
tiene
1..*
Direccion
1..*
Trabajo
{incompleta,junta}
Empleado
-salario: double = 0.0
-puesto: String = ""
-fechaContratacion: Date = null
-usuario: String = ""
-password: String = ""
Realiza
+Empleado(salario:double=0.0,fechaCon:Date=null,
usua:String="",pass:String="")
{completo,disjunto}
Tecnico
tiene
1..*
Telefono
Persona
Tiene
+Persona(nombre:String="",apellido:String="",
cedula:String="",fecha:Date=null)
+guardarPersona()
+modificarPersona()
1..*
+Telefono(numTelef:String="9999-999-999",
tipo:String="")
+registrarTelefono()
+modificarTelefono()
1..*
Direccion
-Ciudad: String = null
-calle 1: String = ""
-calle2: String = ""
-numeracion: string = ""
-latitud: double = 0.0
-longitud: double = 0.0
{incompleta,junta}
Empleado
-salario: double = 0.0
-puesto: String = ""
-fechaContratacion: Date = null
-usuario: String = ""
-password: String = ""
+Empleado(salario:double=0.0,fechaCon:Date=null,
usua:String="",pass:String="")
{completo,disjunto}
Tecnico
+getCiudad(): String
+getCalle1(): String
+getCalle2(): String
+getNumeracion(): String
+getLatitud(): double
+getLongitud(): double
+direccion(ciudad:String,calle1:String,calle2:String,
numeracion:String,latitud:double,
longitud:double): void
tiene
1..*
Telefono
Persona
+Persona(nombre:String="",apellido:String="",
cedula:String="",fecha:Date=null)
+guardarPersona()
+modificarPersona()
Tiene
1..*
+Telefono(numTelef:String="9999-999-999",
tipo:String="")
+registrarTelefono()
+modificarTelefono()
tiene
1..*
Direccion
{incompleta,junta}
1..*
Trabajo
-precio: double = 0.0
0..* -fecha: Date = null
+getPrecio(): double
+getFecha(): Date
+trabajo(precio:double,fecha:date): void
+realizaTrabajo()
*
Empleado
-salario: double = 0.0
-puesto: String = ""
-fechaContratacion: Date = null
-usuario: String = ""
-password: String = ""
+Empleado(salario:double=0.0,fechaCon:Date=null,
usua:String="",pass:String="")
Realiza
Material
-precio: double = 0.0
-cantidad: double = 0.0
-descripcion: String = ""
+getPrecio(): double
+getCantidad(): double
+getDescripcion(): String
+material(precio:double,cantidad:double,
descripcion:String): void
+registrarMaterial(): void
{completo,disjunto}
Tecnico
+getCiudad(): String
+getCalle1(): String
+getCalle2(): String
+getNumeracion(): String
+getLatitud(): double
+getLongitud(): double
+direccion(ciudad:String,calle1:String,calle2:String,
numeracion:String,latitud:double,
longitud:double): void
Telefono
Persona
+Persona(nombre:String="",apellido:String="",
cedula:String="",direccion:String="",
fecha:Date=null)
+guardarPersona()
+modificarPersona()
Tiene
1..*
+Telefono(numTelef:String="9999-999-999",
tipo:String="")
+registrarTelefono()
+modificarTelefono()
{incompleta,junta}
MultaBono
-valor: double = 0.0
-fechaMulta: Date = null
0..*
-concepto: String = ""
-tipo: int = 0
Empleado
-salario: double = 0.0
-puesto: String = ""
-fechaContratacion: Date = null
-usuario: String = ""
-password: String = ""
+Empleado(salario:double=0.0,fechaCon:Date=null,
usua:String="",pass:String="")
+guardarEmpleado()
+modificarEmpleado()
{completo,disjunto}
Contadora
Tecnico
+MultaBono(valor:double=0.0,fechaMulta:Date=null,
concepto:String="",tipo:int=0)
+calcularMulta()
+registrarMulta()
+modificarMulta()
PuedeTener
tiene
Telefono
1..*
1..*
Persona
Tiene
1..*
Direccion
-Ciudad: String = null
-calle 1: String = ""
-calle2: String = ""
-numeracion: string = ""
-latitud: double = 0.0
-longitud: double = 0.0
+Telefono(numTelef:String="9999-999-999",
tipo:String="")
+Persona(nombre:String="",apellido:String="",
cedula:String="",fecha:Date=null)
+getCiudad(): String
+getCalle1(): String
+getCalle2(): String
+getNumeracion(): String
+getLatitud(): double
+getLongitud(): double
+direccion(ciudad:String,calle1:String,calle2:String,
numeracion:String,latitud:double,
longitud:double): void
{incompleta,disjunta}
ServicioTecnico
-precio: double = 0.0
-fechaIngreso: Date = null
0..*
-estado: Boolean = false
-fechaSalida: Date = null
Empleado
Cliente
+obtenerDatos()
tiene
+Empleado(salario:double=0.0,fechaCon:Date=null,
usua:String="",pass:String="")
Mquina
-Codigo: String = null
-Marca: String = null
-Modelo: String = null
-DescripcionDao: String = null
+Empleado(codigo:string=null,marca:string=null,
modelo:String=null,descrip:String=null)
{completo,disjunto}
Tcnico
+obtenerDatosTecnico()
hace
tiene
Telefono
1..*
1..*
Persona
Tiene
1..*
Direccion
-Ciudad: String = null
-calle 1: String = ""
-calle2: String = ""
-numeracion: string = ""
-latitud: double = 0.0
-longitud: double = 0.0
+Telefono(numTelef:String="9999-999-999",
tipo:String="")
+Persona(nombre:String="",apellido:String="",
cedula:String="",fecha:Date=null)
{incompleta,disjunta}
+getCiudad(): String
+getCalle1(): String
+getCalle2(): String
+getNumeracion(): String
+getLatitud(): double
+getLongitud(): double
+direccion(ciudad:String,calle1:String,calle2:String,
numeracion:String,latitud:double,
longitud:double): void
1..*
Trabajo
-precio: double = 0.0
-fechaIngreso: Date = null
0..*
-estado: Boolean = false
Empleado
Cliente
+getPrecio(): double
tiene +getFechaIngreso(): Date
+serciviciotecnico(precio:double,fechaI:date,
estado:boolean=false): void
+registrarTrabajo(): void
0..*
+obtenerDatos()
+Empleado(salario:double=0.0,fechaCon:Date=null,
usua:String="",pass:String="")
{completo,disjunto}
Tcnico
+obtenerDatosTecnico()
hace
tiene
Reportes
Reportes
+reporteEmpleados(): void
+reporteCliente(): void
+reporteServicioTecnico(fechaInicio:Date,
fechaFin:Date): void
+reporteMaterialTrabajo(): void
+reporteTrabajos(fechaInicio:Date,fechaFinal:Date): void
+()
+reporteFacturacion(fechaInicio:Date,fechaFinal:Date): void
Telefono
-numTelefonico: String = "9999-999-999"
1..*
+tipoTelefono: String = "Casa"
Persona
Tiene
+Telefono(numTelef:String="9999-999-999",
tipo:String="")
+registrarTelefono()
+modificarTelefono()
+Persona(nombre:String="",apellido:String="",
cedula:String="",fecha:Date=null)
+guardarPersona()
+modificarPersona()
tiene
1..*
Solicita
{incompleta,junta}
Cliente
Direccion
Empleado
-salario: double = 0.0
-puesto: String = ""
-fechaContratacion: Date = null
-usuario: String = ""
-password: String = ""
SoporteTecnico
-fecha: Date = null
-problema: Sring = ""
-observaciones: String = ""
+SoporteTecnico(fechaEntrega:Date=null,problema:String="",
observaciones:String=""): void
+getFecha(): Date
+getProblema(): String
+getObservaciones(): String
+Empleado(salario:double=0.0,fechaCon:Date=null,
usua:String="",pass:String="")
{completo,disjunto}
Tecnico
1
Contadora
1
Recibe
0..*
SoporteAccesoRemoto
-medioUtilizado: String = ""
-observaciones: String = ""
-duracionConexion: double = 0.0
+SoporteAccesoRemoto(medioUtilizado:String="",
observaciones:String="",
duracion:double=0.0): void
+getDuracionConexion(): double
+getMedioUtilizado(): String
+getObservacion(): String
0..*
Realiza
SOPORTE TCNICO
Telefono
1..*
Persona
Tiene
+Persona(nombre:String="",apellido:String="",
cedula:String="",fecha:Date=null)
+guardarPersona()
+modificarPersona()
tiene
Direccion
-Ciudad: String = null
-calle 1: String = ""
-calle2: String = ""
-numeracion: string = ""
-latitud: double = 0.0
-longitud: double = 0.0
Solicita
{incompleta,junta}
Cliente
Empleado
SoporteTecnico
{completo,disjunto}
Tecnico
Contadora
Recibe
1
Realiza
1..*
+getCiudad(): String
+getCalle1(): String
+getCalle2(): String
+getNumeracion(): String
+getLatitud(): double
+getLongitud(): double
+direccion(ciudad:String,calle1:String,calle2:String,
numeracion:String,latitud:double,
longitud:double): void
SOPORTE TELEFNICO
Telefono
1..*
Persona
Tiene
+Persona(nombre:String="",apellido:String="",
cedula:String="",fecha:Date=null)
+guardarPersona()
+modificarPersona()
tiene
Solicita
{incompleta,junta}
Cliente
Empleado
SoporteTecnico
+Empleado(salario:double=0.0,fechaCon:Date=null,
usua:String="",pass:String="")
{completo,disjunto}
Tecnico
Contadora
1
Recibe
0..*
SoporteTelefonico
-duracion: double = 0.0
+SoporteTelefonico(duracion:double=0.0): void
+getDuracion(): double
0..*
Realiza
1..*
Direccion
-Ciudad: String = null
-calle 1: String = ""
-calle2: String = ""
-numeracion: string = ""
-latitud: double = 0.0
-longitud: double = 0.0
+getCiudad(): String
+getCalle1(): String
+getCalle2(): String
+getNumeracion(): String
+getLatitud(): double
+getLongitud(): double
+direccion(ciudad:String,calle1:String,calle2:String,
numeracion:String,latitud:double,
longitud:double): void
VALIDACIN
Validar
+getDato(): String
+validar(dato:String): void
+validacionCedula(): boolean
+existecliente(): boolean
+validacionCorreo(): boolean
+validacionTelefono(): boolean
+existeMaterial(): boolean
+existeDireccion(): boolean
+existeTelefono(): boolean
+existecliente()
Direccion
-Ciudad: String = null
-calle 1: String = ""
-calle2: String = ""
-numeracion: string = ""
-latitud: double = 0.0
-longitud: double = 0.0
1..*
+getCiudad(): String
+getCalle1(): String
+getCalle2(): String
1..*
+getNumeracion(): String
+getLatitud(): double
+getLongitud(): double
+direccion(ciudad:String,calle1:String,calle2:String,
numeracion:String,latitud:double,
longitud:double): void
+modificarDireccion(): void
+eliminarDireccion(): void
1..*
tiene
usa
Validar
1..*
+getDato(): String
+validar(dato:String): void
+validacionCedula(): boolean
1..*
+existecliente(): boolean
+validacionCorreo(): boolean
+validacionTelefono(): boolean
+existeMaterial(): boolean
1..*
+existeDireccion(): boolean
+existeTelefono(): boolean
1..*
usa
1..*
Telefono
1..*
usa
Tiene
FacturaC
1..*
1..*
1..*
Persona
-nombres: String = ""
-apellidos: String = ""
-cedula: String = ""
-fechaNacimiento: Date = null
+FacturaC(subtotal:double=0.0,fecha:Date=null,
iva:double=0.0,total:double=0.0): void
+getSubtotal(): double
+getIva(): double
+getTotal(): double
+getFecha(): Date
+enviarFacturaCorreo(): void
+registrarFacturaSistema(): void
+imprimirFactura(): void
1
+Persona(nombre:String="",apellido:String="",
cedula:String="",direccion:String="",
fecha:Date=null)
+modificarPersona()
+eliminarPersona(): void
tiene
tiene
ServicioTecnico
1..*
0..*
tiene 1..*
{incompleta,disjunta}
tiene
Empleado
-salario: double = 0.0
-puesto: String = ""
-fechaContratacion: Date = null
-usuario: String = ""
-password: String = ""
usa
Cliente
-cantidad: int = 0
-valor: double = 0.0
+Empleado(salario:double=0.0,fechaCon:Date=null,
usua:String="",pass:String="")
+modificarEmpleado(): void
+eliminarEmpleado(): void
tiene
1
+FacturaD(cantidad:int=0,valor:double=0.0): void
+getCantidad(): int
+getValor(): double
1
Proveedor
FacturaD
tiene
+ServicioTecnico(fechaEntrega:Date=null,
problema:String="",observaciones:String=""): void
+getFechaEntrada(): Date
+getProblema(): String
+getObservaciones(): String
+modificarSTecnico(): void
+eliminarSTecnico(): void
+realizarSTecnico(): void
1..*
1
1..*
Cotizacion
1..*
realiza
1..*
tiene
+getCosto(): double
+cotizacion(costo:double): void
+modificarCoti(): void
+eliminarCoti(): void
1..*
0..1
realiza
tiene
{completo,disjunto}
Trabajo
Tecnico
1
1
realiza
tiene
1..*
Contadora 1
Material
1..2
1
se hace a un
Rol
1
+getcantidad(): double
+getFechadeRol(): Date
+getSeguro(): double
+cantidad(precio:double,fechaRol:date,seguro:double): void
+generarRol(): void
+modificarRol(): void
+eliminarRol(): void
1..*
+getPrecio(): double
+getCantidad(): double
+getDescripcion(): String
+material(precio:double,cantidad:double,
descripcion:String): void
1..*
+contarMaterialez(): integer
+aprobacionMaterial(): void
+modificarMaterial(): void
+eliminarMaterial(): void
1..*
cuenta
genera
1..*
0..*
1..*
Pago
1..*
+SoporteTecnico(fechaEntrega:Date=null,problema:String="",
observaciones:String=""): void
+getFecha(): Date
+getProblema(): String
+getObservaciones(): String
+modificarSoporteTecnico(): void
+eliminarSoporteTecnico(): void
recibe
+getTipoPago(): String
+getFechaPago(): Date
+Pago(tipoPago:String,fechaPAGO:Date): void
+modificarPago(): void
+eliminarPago(): void
+realizarPago(): void
MultaBono
-valor: double = 0.0
-fechaMulta: Date = null
-concepto: String = ""
-tipo: int = 0
+MultaBono(valor:double=0.0,fechaMulta:Date=null,
concepto:String="",tipo:int=0)
+calcularMulta()
+modificarMulta()
+calcularBono()
+eliminarMulta()
+modificarBono(): void
+eliminarBono(): void
{completo, disjunto}
1..*
SoporteTelefonico
-duracion: double = 0.0
SoporteAccesoRemoto
+SoporteTelefonico(duracion:double=0.0): void
+getDuracion(): double
+modificarSTelefonico(): void
+eliminarSTelefonico(): void
+SoporteAccesoRemoto(medioUtilizado:String="",
observaciones:String="",
duracion:double=0.0): void
+getDuracionConexion(): double
+getMedioUtilizado(): String
+getObservacion(): String
+modificarSARemoto(): void
+eliminarSARemoto(): void
1..*
solicita
+trabajo(precio:double,fecha:date,estado:boolean=false): void
+getPrecio(): double
+getFecha(): Date
+realizarTrabajo(estado:boolean): void
+registrartrabajo()
+modificarTrabajo(): void
+eliminarTrabajo(): void
1..*
tiene
SoporteTecnico
Mquina
+Empleado(codigo:string=null,marca:string=null,
modelo:String=null,descrip:String=null)
+modificarMaquina(): void
+eliminarMaquina(): void
1..*
Compra
+FechaCompra: Date = null
+CantidadComprada: integer = 0
+estadoCompra: String = pendiente
+getCantidadComprada(): integer
+getFechaCompra(): Date
+getEstadoCompra(): String
+Compra(cantidad:integer,fecha:date,estado:string): void
+modificarCompra(): void
+eliminarCompra(): void
+realizarCompra(): void
DIAGRAMAS
DE
SECUENCIA
APROBACION DE MATERIAL
Material
Trabajo
Gerente
registrarServicioTecnico()
obtenerMaterial()
aprovarMaterial()
material en el trabajo
FACTURACION ELECTRONICA
FacturaC
FacturaD
Contadora
registrarFactura()
obtenerDatos()
datos cliente
agregarProducto()
actualizarTotal()
Cliente
SERVICIO TECNICO
Cliente
Servicio Tenico
Contadora
registrarServicioTecnico()
obtenerDatos()
datos cliente
obtenerDatosTecnico()
datos tecnico
impresionRecibo()
Tecnico
REGISTRO DE TRABAJO
Cliente
Trabajo
Contadora
registrarTrabajo()
obtenerDatos()
datos cliente
obtenerDatosTecnico()
datos tecnico
impresionDeRecibo()
Tecnico
REGISTRO DE TECNICO
Tecnico
Secretaria
obtenerDatos()
datos tecnico
validarDatos()
validos
Validacion
REGISTRAR MATERIAL
Trabajo
Material
Tcnico
realizaTrabajo()
actualizarListadeMateriales()
MULTA BONO
Tcnico
MultaBono
Contadora
registrarMultaBono()
obtenerDatos()
datosTenico
Rol
Tcnico
MultaBono
Contadora
registrarRol()
obtenerMulta()
obtenerDatos()
datosMulta
datosTenico
REPORTES
Empleado
Reporte
FacturaC
Cliente
Contadora
listadoEmpleados()
listadoClientes()
facturasRealizadas()
listadoServiciosTecnicos()
listadoTrabajos()
ServicioTecnico
Trabajo
VALIDACION
Validacion
Gerente-Contadora-Tecnico
validarCedula()
validacion
existeCliente()
validacion
DIAGRAMAS BPMN
DIAGRAMA
DE
ACTIVIDADES
SECRETARIA
Validacion de datos
No
Datos correctos
Si
Se registra la factura
SECRETARIA
Validacion de datos
No
Datos correctos
Si
Selecciona el empleado
Se cancela el sueldo
TECNICO
Registrar Material
Validacion de datos
Datos correctos
No
Si
Selecciona el trabajo
SECRETARIA
validacion de datos
Se elije el empleado
Registro de bono/multa
Emisin de verificacion
GERENTE
Registrar Empleado
Validacion de datos
No
Datos correctos
Si
Ingreso de datos
SECRETARIA
Registro de Trabajo
Validacion de datos
No
Datos correctos
Si
Se registra el trabajo
GERENTE
Reportes
Validacion de datos
No
Datos correctos
Si
Se muestra el reporte
SECRETARIA
Servicio Tecnico
IniciarProcesoRegistro
Recepcion de maquina
Se registra la orden
Se imprime el recibo
SISTEMA
VALIDACION
Entra en el proceso
Enviar el resultado
GERENTE
Aprovacion de material
Seleccin de trabajo
Registro de aprobacion
DIAGRAMA
DE ESTADO
Cancelado
FACTURA
Inicializacion
a
cel
an
Detalle
Mas
detall
e
Procesando
Ingr.
detall
e
VerificarDetalle
Finalizado
SERVICIOTECNICO
Cancelado
Ca
Inicializacion
Almacenamiento
guardar
la
nce
Detalle S. Tecnico
Cambia estado
Recepcion
Revisado
gua
rda
r
Por
revisar
Finalizado
Trabajo
Cancelado
Ca
Inicializacion
Almacenamiento
guardar
la
nce
Cambia estado
Procesando
Terminado
gua
Detalle S. Tecnico
rda
r
g.
Re
l
ia
er
at
M
Por
revisar
IngresoMaterial
Finalizado
guardar
Almacenamiento
COMPRA
Inicializacion
s
uisito
le req
Cump
Completa
No
req cump
uis le
ito
s
Incompleta
autorizada
No desea
Aprobacion
comprar
Aprobada
Inicializacion
uisito
le req
Cump
Procesando
Cancelado
Realizada
No
req cump
uis le
ito
s
Cancelado
autorizada
Verificado
registrar
Almacenamiento
Validacion
<<subsistema>>
DatosDemograficos
Telefonos
Validar
Direcciones
import
import
<<subsistema>>
Entidades
Facturacin
Empleados
access
<<subsistema>>
Comercializacion
<<subsistema>>
EgresosEmpleados
Tecnico
Trabajo
Gerente
Contador
Servicio
Rol
MultaBono
Clientes
access
access
<<subsistema>>
ayuda
<<subsistema>>
Obligaciones
Soporte
import
SoporteFisico
SoporteVirtual
Compra
Pagos
Cotizacin