“Año de la inversión para el desarrollo rural y la seguridad alimentaria”
UNIVERSIDAD NACIONAL DE UCAYALI
FACULTAD DE INGENIERÍA DE SISTEMAS Y DE INGENIERÍA CIVIL
ESCUELA ACADÉMICA PROFESIONAL DE INGENIERÍA DE SISTEMAS
PLAN DE TRABAJO
TÍTULO: “IMPLEMENTACION DE UN SISTEMA WEB CON TECNOLOGÍA
PHP PARA MEJORAR EL CONTROL DEL PERSONAL EN LA DIRECCIÒN
REGIONAL DE SALUD - UCAYALI”
PRÁCTICA PRE-PROFESIONAL II
ASESOR(A) : Ing. Mg. JORGE LUIS HILARIO RIVAS
ESTUDIANTE : KASSANDRA ELIZABETH FLORES
TUANAMA
PUCALLPA – PERÚ
2013
VºBº
Del asesor de la práctica
……………………………………………………… Ing. Mg. Jorge Luis Hilario Rivas
Asesor de la Práctica
Tabla de Contenido
1. TÍTULO DEL TRABAJO .................................................................................. 1
2. INSTITUCIÓN ................................................................................................... 2
3. DESCRIPCIÓN DE LA SITUACIÓN ACTUAL ................................................. 3
4. MARCO TEÓRICO ........................................................................................... 5
4.1. Lenguaje de programación php .............................................................. 5
4.2. Gestor de base de datos MySQL ............................................................ 6
4.3. Control de personal ................................................................................. 7
4.4. Lenguaje de modelo unificado ................................................................ 7
5. METODOLOGÍA DE SOLUCIÓN ................................................................... 13
6. CRONOGRAMA DE ACTIVIDADES .............................................................. 18
7. REFERENCIAS .............................................................................................. 20
7.1. Referencias bibliográficas ..................................................................... 20
7.2. Referencias electrónicas ....................................................................... 21
1
PLAN DE TRABAJO
1. TÍTULO DEL TRABAJO
“IMPLEMENTACION DE UN SISTEMA WEB CON
TECNOLOGÍA PHP PARA MEJORAR EL
CONTROL DEL PERSONAL EN LA DIRECCIÒN
REGIONAL DE SALUD - UCAYALI”
Dirección de blog: www.kassandraflorestuanama.blogspot.com
2
2. INSTITUCIÓN
Figura 1: Ubicación geográfica de la Dirección Regional de Salud
Fuente: Google Maps
Nombre de la empresa: Dirección Regional de Salud de Ucayali.
Director: Dr. Juan Carlos Salas Suarez.
Jirón: Agustín Cauper N° 225
Teléfono: (061) 571446.
DIRESA
3
3. DESCRIPCIÓN DE LA SITUACIÓN ACTUAL
En la Dirección Regional de Salud de Ucayali, hoy en día llevan un control
de asistencia por medio de la huella dactilar, que en realidad facilita mucho
y de tal manera se pueden evitar los papeleos, obteniendo así resultados
más factibles al momento de procesar la información de los trabajadores.
En la actualidad, la Dirección Regional de Salud de Ucayali, como en toda
institución, los trabajadores tienen distintos motivos para salir del plantel
como:
Comisión de servicio.
Permisos particulares.
Consulta essalud.
Refrigerios.
Hora de salida.
Hora de retorno.
Total horas.
Pero en realidad, no hay un control, un manejo adecuado de éstas
papeletas de salida, siendo un trabajo manual, que muchas veces toma
mucho tiempo y en ocasiones pérdida de tiempo, ya que el jefe de esa área
también puede estar de comisión, de tal manera ya no hay quien firme la
papeleta del trabajador.
De tal manera los trabajadores estarán más controlados, serán mucho más
responsables y se aplicará las sanciones necesarias si en caso no cumplen
con las horas establecidas para cada función respectiva de cada trabajador.
4
• El manejo de la información es manual.
• No hay control de todas las papeletas.
SÍNTOMAS
• “Necesidad de
implantar un software en los
procesos administrativos
para el control de los trabajadores”
PROBLEMA
• Todas la papeletas que se emiten en la DIRESA es de forma manual, es un papel respectivamente sellado dan a conocer sus datos y que comisión tienen que realizar
• INADECUADO control de las papeletas AL PERSONAL.
CAUSAS
5
4. MARCO TEÓRICO
4.1. Lenguaje de programación php
PHP es un lenguaje de script que se ejecuta del lado del servidor, el
código PHP se incluye en una página HTML normal. Por lo tanto, se
puede comparar con otros lenguajes de script que se ejecutan según
el mismo principio: ASP (Active Server Pages), JSP (Java Server
Pages) o PL/SQL Server Pages (PSP). (Heurtel, PHP 5.3
DESARROLLAR UN SITIO WEB DINAMICO E INTERACTIVO, 2011)
PHP es uno de los lenguajes de programación más utilizados en la
actualidad (se utiliza mayormente para desarrollo de sitios web pero
para muchos es ya un lenguaje de propósito general). (Minera, 2008)
El PHP es un lenguaje de programación utilizado para crear páginas
web dinámicas. El PHP necesita que un servidor web con capacidad
PHP sea instalado y funcionando para poder ejecutar las páginas
PHP. El servidor va a compilar el código PHP y tratarlo en tiempo
real, con la información viniendo del cliente web, para regresarle una
página web adaptada, en tiempo real.
El servidor tiene también capacidad de seguir el camino de un
usuario, así como de identificarlo. (Simon, 2006)
PHP es un lenguaje de alto nivel que se ejecuta en el servidor.
¿Qué quiere decir que se ejecuta en el servidor? Un lenguaje de
servidor es aquel que se ejecuta en el servidor donde están alojadas
6
las páginas, al contrario que otros lenguajes que son ejecutados en
el propio navegador. (Puertas, 2007)
PHP es uno de los lenguajes de programación más populares y más
extensos en internet. Y tiene motivos para serlo: es flexible, es
potente, y es de código abierto. De hecho es la base de
innumerables proyectos que siguen ese mismo espíritu, como
muchos de los sistemas de gestión de contenidos, por ejemplo
WordPress. (Hanke, 2005)
El lenguaje PHP es un lenguaje de programación de estilo clásico, es
decir que es un lenguaje de programación con variables, sentencias
condicionales, bucles, funciones, etc. No es un lenguaje de etiquetas
como podría ser HTML, XML o WML. Está más cercano a JavaScript
o a C, para aquellos que conocen estos lenguajes. (ROSSELOTT,
2003)
PHP (acrónimo de "PHP: Hypertext Preprocessor") es un lenguaje
"open source" interpretado de alto nivel embebido en páginas HTML
y ejecutado en el servidor. (Stig Sæther Bakken, 2002)
4.2. Gestor de base de datos MySQL
MySQL es el sistema de administración de bases de datos
relacionales (RDBMS) de código abierto más extendida del mundo.
Está desarrollada por MySQL AB, una empresa sueca. (Heurtel, PHP
7
y MySQL Domine el desarrollo de un sitio Web dinamico e interactivo,
2009)
MySQL es, por otro lado, la base de datos elegida por la gran
mayoría de programadores en PHP. Soporta el lenguaje SQL y la
conexión de varios usuarios, pero, en general, se utiliza para
aplicaciones de tamaño pequeño-medio. (Puertas, 2007)
4.3. Control de personal
El Control Interno fue ejercido en las organizaciones por los primeros
gobernantes, jefes religiosos y dirigentes empresariales, quienes lo
utilizaban dada la necesidad de dirigir y supervisar las actividades,
por lo que podemos plantear que la necesidad del control está unida
al nacimiento de la Contabilidad, siendo que la función contable es
también una función de control. (Ávila, 2012)
4.4. Lenguaje de modelo unificado
UML es una técnica para la especificación de sistemas en todas sus
fases. Nació en 1994 y la versión 1.0 fue liberada en 1997. Desde
entonces se ha utilizado con éxito en sistemas construidos para toda
clase de industrias.
Este Lenguaje es una herramienta fundamental de la metodología de
desarrollo orientada a objetos.
Algunas de las ventajas son:
Tiempos totales de desarrollo más cortos.
8
Modela sistemas (y no solo de software) utilizando conceptos
orientados a objetos. (Heredero, 2006)
La notación UML utilizada para describir los modelos de máquina de
estados está diseñada para modelar el comportamiento de los
objetos. Sin embargo, es una notación de propósito general que se
puede utilizar para cualquier tipo de modelado de máquina de
estados. (Sommerville, 2005)
El lenguaje Unificado de Modelado es ahora el esquema de
representación gráfica más utilizado para modelar sistemas
orientados a objetos. Evidentemente ha unificado los diversos
esquemas de notación populares. Una de las características más
atractivas de UML, es su flexibilidad. UML es extensible e
independiente de los diversos procesos. Los modeladores de UML
tienen la libertad de diseñar sistemas utilizando varios procesos, pero
todos los desarrolladores pueden ahora expresar esos diseños con
un conjunto de notaciones estándar. (Deitel, Deitel, & Trujano
Mendoza, 2005)
El lenguaje de Modelado Unificado (UML) (OMG 2007) es un
lenguaje de propósito general reconocido como la notación estándar
para la especificación de artefactos software (Bezivin 1998) en el
seno de propuestas MDD (Bezivin, 2006). Precisamente debido a su
generalidad, en algunas ocasiones es útil especializar UML para
contextos particulares. En este sentido los perfiles UML,
9
proporcionan un mecanismo intuitivo para permitir que otras
notaciones sean encajadas en este núcleo general. (CALERO,
MORAGA, & PIATTINI VELTHUIS, 2007)
El Lenguaje Unificado de Modelado (UML) es un lenguaje estándar
para escribir planos de software. UML puede utilizarse para
visualizar, especificar, construir y documentar los artefactos de un
sistema que involucre una gran cantidad de software.
UML es sólo un lenguaje y, por tanto, es tan solo una parte de un
método de desarrollo de software, UML es independiente del
proceso, aunque para utilizarlo óptimamente se debería usar en un
proceso que fuese dirigido por los casos de uso, centrado en la
arquitectura, iterativo e incremental. (Grady Booch, 2006)
El UML (Lenguaje Unificado de Modelado) es una de las
herramientas más emocionantes del mundo actual del desarrollo de
sistemas. Esto se debe a que permite a los creadores de sistemas
generar diseños que capturen sus ideas en una forma convencional y
fácil de comprender para comunicarlas a otras personas. (Schmuller,
Aprendiendo UML en 24 horas)
El lenguaje unHicado de modelado o UML es el sucesor de la oleada
de métodos de análisis y diseño orientados a objetos (OOA&D) que
surgió a finales de la década de 1980 y principios de la siguiente. El
UML unifica, sobre todo, los métodos de 800ch, Rumbaugh (OMT) y
10
Jacobson, pero su alcance llegará a ser mucho más amplio. En estos
momentos el UML está en pleno proceso de estandarización con el
OMG (Object Mallagemell' Group o Grupo de administración de
objetos) y estoy seguro de que se convertirá en el lenguaje de
modelado estándar del futuro. (Martin Fouler, 1999)
Figura 2: Lenguaje unificado de modelado
Los casos de uso
Los casos de uso son un fenómeno interesante. Durante mucho
tiempo, tanto en el desarrollo orientado a objetos como en el
tradicional, las personas se auxiliaban de escenarios típicos que les
ayudaban a comprender los requerimientos. Estos escenarios, sin
embargo, se trataban de modo muy informal siempre se construían,
pero pocas veces se documentaban. Ivar Jacobson es ampliamente
conocido por haber cambiado esto con su método Objectory y su
primer libro sobre el tema. (Martin Fouler, 1999)
11
Diagrama de clases
El diagrama de clase, además de ser de uso extendido, también está
sujeto a la más amplia gama de conceptos de modelado. Aunque los
elementos básicos son necesarios para todos, los conceptos
avanzados se usan con mucha menor frecuencia. (Martin Fouler,
1999)
Diagrama de colaboración
En los ctiagramas de colaboración, los objetos ejemplo se muestran
como iconos. Las flechas indican, corno en los diagramas de
secuencia, los mensajes enviados dentro del caso de uso dado. Sin
embargo, en esta ocasión la secuencia se indica numerando los
mensajes. (Martin Fouler, 1999)
Diagramas de estado
Los diagramas de estados son una técnica conocida para describir el
comportamiento de un sistema. Describen todos los estados posibles
en los que puede entrar un objeto particular y la manera en que
cambia el estado del objeto, como resultado de los eventos que
llegan a él. En la mayor parte de las técnicas 00, los diagramas de
estados se dibujan para una 50la clase, mostrando el
comportamiento de un solo objeto durante todo su ciclo de vida.
(Martin Fouler, 1999)
12
Diagrama de actividades
El diagrama de actividades, a diferencia de la mayor parte de las
demás térnicas del UML, no tiene su origen evidente en los trabajos
anteriores de los tres amigos. El diagrama de actividades combina
ideas de varias técnicas: el diagrama de eventos de Jim Odelt las
técnicas de modelado de estados de SOL y las redes de retri. Estos
diagramas son particularmente útiles en conexión con el nujo de
trabajo y para la descripción del comportamiento que tiene una gran
cantidad de proceso paralelo. (Martin Fouler, 1999)
13
5. METODOLOGÍA DE SOLUCIÓN
La metodología de desarrollo de software se describe como el conjunto de
herramientas, técnicas, procedimientos y soporte documental para el diseño
de Sistemas de información.
En Ingeniería de software cuando se habla de desarrollo de software se
habla de desarrollo de programas y por lo tanto se considera como una
tarea de ingeniería, en el cuál se debe ejecutar una serie de fases, etapas
para obtener un programa que funcione de acuerdo con métodos ya
establecidos en otras disciplinas de ingeniería. Las actividades que los
ingenieros de software realizan se encuentran asociadas a un proceso de
software donde intervienen diferentes elementos (fases, actividades,
producto, roles, agentes) que permiten la definición del software a producir
(producto), el desarrollo o el diseño del software, la validación del software
tanto lo interno (requerimientos específicos)como lo externo(expectativas
del cliente), y la evolución del software donde se modifica para adaptarlo a
los cambios.
Por otro lado, (Sommerville, 2005) define que “un método de ingeniería de
software es un enfoque estructurado para el desarrollo de software cuyo
propósito es facilitar la producción de software de alta calidad de una forma
costeable”, cabe destacar que para usar este enfoque se debe manejar
conceptos fundamentales tales como; procesos, métodos, tareas,
procedimientos, técnicas, herramientas, productos, entre otros.
14
Particularmente, una metodología se basa en una combinación de los
modelos de proceso genéricos para obtener como beneficio un software
que soluciones un problema. Adicionalmente una metodología debería
definir con precisión los artefactos, roles y actividades, junto con prácticas,
técnicas recomendadas y guías de adaptación de la metodología al
proyecto. Sin embargo, la complejidad del proceso de creación de software
es netamente dependiente de la naturaleza del proyecto mismo, por lo que
el escogimiento de la metodología estará acorde al nivel de aporte del
proyecto, ya sea pequeño, mediano o de gran nivel.
Se podrían clasificar en dos grandes grupos:
Las metodologías orientadas al control de los procesos,
estableciendo rigurosamente las actividades a desarrollar,
herramientas a utiliza notaciones que se usarán. Estas metodologías
son llamadas METODOLOGÍAS ROBUSTAS.
Las metodologías orientadas a la interactuación con el cliente y el
desarrollo incremental del software, mostrando versiones
parcialmente funcionales del software al cliente en intervalos cortos
de tiempo, para que pueda evaluar y sugerir cambios en el producto
según se va desarrollando. Estas son llamadas METODOLOGÍAS
LIGERAS/ÁGIL.
15
METODOLOGÍAS ROBUSTA: RUP
El Proceso Unificado Racional, Rational Unified Process en inglés, y sus
siglas RUP, es un proceso de desarrollo de software y junto con el Lenguaje
Unificado de Modelado UML, constituye la metodología estándar más
utilizada para el análisis, implementación y documentación de sistemas
orientados a objetos. El RUP no es un sistema con pasos firmemente
establecidos, sino que trata de un conjunto de metodologías adaptables al
contexto y necesidades de cada organización, donde el software es
organizado como una colección de unidades atómicas llamados objetos,
constituidos por datos y funciones, que interactúan entre sí.
RUP es un proceso para el desarrollo de un proyecto de un software que
define claramente quien, cómo, cuándo y qué debe hacerse en el proyecto
Fases:
Fase de inicio
Durante la fase del inicio, se establece el caso de negocio para el sistema y
delimita el alcance del proyecto. Para lograr esto debe identificar todas las
entidades externas con las cuales el sistema interactúe (los actores) y
definir la naturaleza de esta interacción a un nivel alto. Esto implica
identificar todos los casos de uso y describir sólo los más significativos. El
caso de negocio incluye criterios de éxito, la evaluación de riesgos, y la
estimación de los recursos necesarios, y un plan de la fase que muestre las
fechas previstas e hitos importantes.
16
Fase de elaboración
El propósito de la fase de elaboración es analizar el dominio del problema,
establecer una fundación arquitectónica sana, desarrollar el plan del
proyecto, y eliminar los elementos del riesgo más alto del proyecto. Para
lograr estos objetivos, usted debe tener una visión completa del sistema.
Las decisiones arquitectónicas tienen que tomarse con una comprensión
cabal del sistema: su alcance, funcionalidad importante y requerimientos no
funcionales tales como requerimientos de performance.
La fase de la construcción
Durante la fase de la construcción, todos los componentes y características
restantes se desarrollan, se integran en el producto, y se prueban a fondo.
La fase de la construcción es, en cierto sentido, un proceso de fabricación
donde el énfasis se pone en manejar los recursos y controlar las
operaciones para optimizar costos, tiempos y calidad. Una arquitectura
robusta y un plan comprensible están íntimamente relacionados. Es decir,
una de las cualidades críticas de la arquitectura es su facilidad de la
construcción. Ésta es una razón por la que durante la fase de
elaboración.se pone el énfasis en el desarrollo equilibrado de la arquitectura
y del plan.
Fase de la transición
El propósito de la fase de la transición es justamente la transición del
producto de software al ambiente de producción. Una vez que el producto
17
se haya entregado al usuario final, surgen algunos temas que llevan al
desarrollo de nuevas versiones, a corregir errores, o a terminar algunas
características que habían sido pospuestas.
Figura 3: Fases del RUP
18
6. CRONOGRAMA DE ACTIVIDADES
Fecha de inicio: 01 de Julio del 2013.
Fecha de término: 01 de Setiembre del 2013.
Numero de semanas: 12 semanas.
Número de horas diarias: 8 horas.
Número de horas semanales: 40 horas.
Número total de horas: 480 horas.
19
Cuadro 1: Cronograma de actividades
Nº ACTIVIDADES
Julio Agosto Setiembre
1 al 15 16 al 30 01 al 15 16 al 31 01 al 15 15 al 30
1 MODELAMIENTO DEL NEGOCIO
2 REQUERIMIENTOS
3 ANÁLISIS Y DISEÑO
4 IMPLEMENTACIÓN
5 PRUEBA
6 DESPLIEGUE
7 ELABORACIÓN DEL INFORME FINAL
20
7. REFERENCIAS
7.1. Referencias bibliográficas
Ávila, Y. C. (2012). Procedimiento a seguir para la aplicación práctica del control
interno en las entidades cubanas. Chaparra: Eumed.
CALERO, C., MORAGA, M. A., & PIATTINI VELTHUIS, M. G. (2007). Calidad Del
Producto Y Proceso Software. Madrid: Ra-Ma.
Deitel, H. M., Deitel, P. J., & Trujano Mendoza, G. (2005). Como programar en
Java. Madrid: Pearson Educación.
Grady Booch, J. R. (2006). El lenguaje unificado de modelado. Guia del usuario.
Madrid: Pearson Educacion.
Hanke, J.-C. (2005). PHP 5. Barcelona: KnowWare EURL.
Heredero, C. d. (2006). Dirección y gestión de los sistemas de información en la
empresa. Madrid: ESIC.
Heurtel, O. (2009). PHP y MySQL Domine el desarrollo de un sitio Web dinamico e
interactivo. Barcelona: ENI.
Heurtel, O. (2011). PHP 5.3 DESARROLLAR UN SITIO WEB DINAMICO E
INTERACTIVO. Barcelona: ENI.
Martin Fouler, K. S. (1999). UML gota a gota. Mexico: Addison Wa fer longman de
México. S.A. de C.V.
Minera, F. (2008). Curso de programación PHP. Usershop.
21
Puertas, J. P. (2007). Creación de un portal con PHP y MySQL, 3a edición.
México: RA-MA Editorial.
ROSSELOTT, M. M. (2003). Manual de Programación en PHP. Valparaiso.
Schmuller, J. (Aprendiendo UML en 24 horas). Aprendiendo UML en 24 horas.
Simon, C. (2006). Curso de programación en PHP con MySQL. Cédric Simon.
Sommerville, I. (2005). Ingeniería del software. Madrid: Pearson Educación.
Stig Sæther Bakken, A. A. (2002). Manual de PHP. Grupo de documentación de
PHP.
7.2. Referencias electrónicas
http://wiki.monagas.udo.edu.ve/index.php/Metodolog%C3%ADas_para_el_desarro
llo_de_software
http://fabianbermeop.blogspot.com/2010/12/metodologia-rup-desarrollo-de-
software.html