• No se han encontrado resultados

UNIVERSIDAD NACIONAL DEL CENTRO DEL PERÚ

N/A
N/A
Protected

Academic year: 2024

Share "UNIVERSIDAD NACIONAL DEL CENTRO DEL PERÚ"

Copied!
80
0
0

Texto completo

(1)

UNIVERSIDAD NACIONAL DEL CENTRO DEL PERÚ

FACULTAD DE INGENIERÍA DE SISTEMAS TESIS

“IMPLEMENTACIÓN DE SOFTWARE PARA EL REGISTRO Y PROCESAMIENTO DE ATENCIONES DE SALUD EN LAS ACTIVIDADES DE RESPONSABILIDAD SOCIAL – CASO MINA

CORIHUARMI”

PRESENTADA POR:

MENDOZA RICALDI, LUIS ANGEL.

PARA OPTAR EL TÍTULO PROFESIONAL DE:

INGENIERO DE SISTEMAS

HUANCAYO – PERÚ 2014

(2)

ii

ASESOR:

Mg. Richard Mercado Rivas.

(3)

iii

AGRADECIMIENTOS:

Deseo expresar muestras de agradecimiento:

A MIS PADRES

Por su ejemplo, amor y apoyo incondicional y constante.

A MI ALMA MATER

Por haber propiciado mi formación profesional.

A MI ASESOR

Por su gran apoyo y por compartir su vasto conocimiento.

A MIS MAESTROS DE LA FIS

Por su dedicación a la enseñanza a mi paso por la Universidad.

A MIS AMIGOS Y COLEGAS DE LA FIS

Por compartir experiencias dentro y fuera de las aulas universitarias A LA GERENCIA DE RELACIONES COMUNITARIAS MINA CORIHUARMI

Por darme la oportunidad de desarrollar esta tesis desde sus filas.

(4)

iv

DEDICATORIA:

A mi familia, mi madre Basilia, mi padre Luis y mis hermanos; quienes en todo momento me acompañan en este transcurrir de la vida.

(5)

v

RESUMEN

La presente tesis titulada “Implementación de Software para el Registro y Procesamiento de Atenciones de Salud en las Actividades de Responsabilidad Social – Caso Mina Corihuarmi”, se desarrolla en el ámbito de la actividad minera en el país.

La Mina Corihuarmi desarrolla las actividades de Responsabilidad Social Empresarial mediante la Oficina de Relaciones Comunitarias que, entre otras, cuenta con un área de Salud con las especialidades de: Medicina General, Enfermería, Obstetricia y Odontología; las mismas que prestan sus servicios a la población de la zona de influencia del proyecto minero de manera gratuita. Las atenciones médicas generan unos registros físicos que son muy difíciles de procesar por la redundancia de información y requerir largos periodos de tiempo por no contar con un mecanismo computarizado. El problema descrito es abarcado con la implementación de un software para el registro y procesamiento de la información utilizando la metodología de desarrollo ágil Extreme Programming, y herramientas tecnológicas de desarrollo de software libre, ya que otros mecanismos computarizados para la mejora de la situación, como la utilización de herramientas ofimáticas, no resultan del todo satisfactorias o presentan dificultades operativas. La metodología Extreme Programming adoptada se enfoca en la satisfacción del usuario, poniendo poco énfasis a una documentación rigurosa utilizada en otras metodologías, además de una comunicación constante con el cliente, lo cual hizo que se pueda obtener información de la organización de primera mano y en todo momento. De esta manera se logró el desarrollo del software, la escritura del código, modificaciones a la misma así como las pruebas de aceptación. Después de la implementación del software se resolvieron los problemas de redundancia de información y se disminuyeron considerablemente los lapsos de tiempo en el procesamiento y la consolidación de datos, de este modo quedó demostrado que la alternativa adoptada ofrece una solución viable al problema planteado.

(6)

vi

ABSTRACT

The present thesis entitled "Implementation of Software for Recording and Processing Hospitality Health Activities in Social Responsibility - Case Corihuami Mine" , is developed in the field of mining activity in the country. Mine Corihuarmi develops its Enterprise Social Responsibility activities through the Office of Community Relations , among others, has an area of Health specialties such as: General Medicine, Nursing, Midwifery and Dentistry ; providing the same services to the population of the area of influence of the mining project for free. Medical care creates a lot of physical records that are very difficult to process due to the information redundancy and require long periods of time by not having a computerized mechanism. The problem described is covered with the implementation of a software for recording and processing information using agile development methodology Extreme Programming, and technological tools of free software development , because other computerized mechanisms to improve the situation, as the use of office tools , are not entirely satisfactory or present operational difficulties. The methodology adopted Extreme Programming focuses on user satisfaction, placing little emphasis to rigorous documentation used in other methodologies, furthermore constant communication with the client, which made the organization of the firsthand information all the time.

Thus software development, code writing, modifications and acceptance testing was achieved. After implementation of the software problems of information redundancy were resolved and time lapses in processing and data consolidation were significantly decreased, so it was demonstrated that the option chosen offers a viable solution to the problem.

(7)

vii

INDICE

Pág.

ASESOR: ii

AGRADECIMIENTOS: iii

DEDICATORIA: iv

RESUMEN v

ABSTRACT vi

ÍNDICE DE FIGURAS ix

ÍNDICE DE TABLAS x

INTRODUCCION 1

CAPÍTULO I 3

GENERALIDADES 3

1.1. PLANTEAMIENTO DEL PROBLEMA 3

1.1.1. Mina Corihuarmi 3

1.1.2. La Problemática 6

1.2. FORMULACION DEL PROBLEMA 8

1.3. OBJETIVO GENERAL 8

1.4. JUSTIFICACIÓN 8

1.5. HIPÓTESIS 9

1.5.1. Hipótesis General 9

1.6. OPERACIONALIZACIÓN DE VARIABLES 9

1.7. DISEÑO METODOLÓGICO 10

1.7.1. TIPO DE INVESTIGACIÓN 10

1.7.2. NIVEL DE LA INVESTIGACIÓN 10

1.8. SISTEMA DE REFERENCIA 11

CAPÍTULO II 12

MARCO DE REFERENCIA 12

2.1. ANTECEDENTES 12

A1. 12

A2. 12

A3. 13

A4. 13

A5. 14

2.2. MARCO TEÓRICO 14

2.2.1. Metodología de Desarrollo Ágil 14

2.2.2. Manifiesto Ágil 15

2.2.3. Costo de los Cambios en Proyectos de Software 16

2.2.4. Extreme Programming (XP) 17

(8)

viii 2.2.5. Reglas, Pautas, Normas de un Proyecto Extreme Programming 18

2.2.6. Roles XP 31

2.2.7. Valores de un Proyecto Extreme Programming 32

2.2.8. Sistema Gestor de Base de Datos. 33

2.2.9. Plataforma Tecnológica 35

2.2.10. Modelo Aplicativo 37

2.3. MARCO CONCEPTUAL 38

CAPÍTULO III 40

INTERVENCIÓN METODOLÓGICA 40

3.1. ADMINISTRACIÓN 40

3.2. PLANIFICACION 40

3.2.1. Establecimiento de las Historias de Usuario 41

3.2.2. Planificación de los Lanzamientos 45

3.2.3. Iteraciones 46

3.2.4. Architectural Spike 46

A. Definición de Herramientas y Tecnologías 46

3.3. DISEÑO 47

A. Modelación de la Base De Datos 47

3.4. CODIFICACIÓN 49

A. Implementación en el Sistema Gestor de Base De Datos 49

B. Hibernate 50

C. Mapeo de la Base de Datos 51

D. Creación de Clases 53

E. Diseño de Interfaces de Usuario 53

3.5. RUEBAS Y LANZAMIENTOS 54

CAPITULO IV 63

ANALISIS Y DISCUSIÓN DE RESULTADOS 63

4.1. RESULTADOS DE LA IMPLEMENTACION DEL SOFTWARE 63

4.2. RESULTADOS DEL REGISTRO Y PROCESAMIENTO DE LA ATENCIONES EN

SALUD 64

CONCLUSIONES 67

RECOMENDACIONES 68

REFERENCIAS 69

REFERENCIAS BIBLIOGRÁFICAS 69

REFERENCIAS ELECTRÓNICAS 69

(9)

ix

ÍNDICE DE FIGURAS

Pág.

Figura 1.1: Ubicación de la Mina Corihuarmi. 4

Figura 1.2: Estructura Orgánica de la Oficina de Relaciones Comunitarias - Mina Corihuarmi. 6 Figura 2.1: Comparación de costos del cambio usando metodologías tradicionales y método- logías ágiles en proyectos de software. 16

Figura 2.2: Diagrama de flujo de un proyecto con la metodología Extreme Programming 17

Figura 2.3: Reglas, pautas, normas de un Proyecto Extreme Programming. 18

Figura 2.4: Formato para la elaboración de las Historias de Usuario. 19

Figura 2.5: Iteración Extreme Programming 21

Figura 2.6: Tarjetas CRC 26 Figura 2.7: Propiedad colectiva del código 27 Figura 2.8 Contexto de Hibérnate en una aplicación Java 36 Figura 2.9 Modelo Aplicativo 37 Figura 3.1: Modelo Entidad Relación 47 Figura 3.2: Diagrama del Modelo Relacional de Base de Datos 48

Figura 3.3: Implementación del Modelo Relacional de Base de Datos 49 Figura 3.4: Definición de tablas del modelo relacional 50 Figura 3.5: Configuración de Hibernate 50

Figura 3.6: Mapeo de Base de Datos 52 Figura 3.7: Mapeo de base de datos, implementación de autoincremento 53 Figura 3.8: Codificación de la página de inicio 54

Figura 3.9: Interfaz de la página de inicio 54 Figura 3.10: Página de bienvenida 55 Figura 3.11: Padrón de beneficiarios 55 Figura 3.12: Exportación del padrón de beneficiarios 56 Figura 3.12: Exportación del padrón de beneficiarios 56 Figura 3.14: Selección de beneficiario para nuevo registro de atención 57

Figura 3.15: Detalles de atención 57 Figura 3.16: Inserción de diagnósticos 58

Figura 3.17: Diagnóstico agregado al registro de atención 58 Figura 3.18: Inserción de la medicación 59 Figura 3.19: Medicación agregada al registro de atención 59 Figura 3.20: Inserción de tratamientos 60

Figura 3.21: Historial de atenciones 60

Figura 3.22: Exportación de registros del historial de atenciones 61

Figura 3.23: Consolidado de atenciones 61

Figura 3.24: Consolidado de atenciones 62

(10)

x

ÍNDICE DE TABLAS

Pág.

Tabla 1.1: Características de la información generada por la organización 7 Tabla 1.2: Ventajas y desventajas de las opciones para registro y procesamiento de

la información. 8

Tabla 1.3: Operacionalización de variables 9

Tabla 3.1: Historia de usuario Nº 01 41

Tabla 3.2: Historia de usuario Nº 02 41

Tabla 3.3: Historia de usuario Nº 03 42

Tabla 3.4: Historia de usuario Nº 04 42

Tabla 3.5: Historia de usuario Nº 05 43

Tabla 3.6: Historia de usuario Nº 06 43

Tabla 3.7: Historia de usuario Nº 07 44

Tabla 3.8: Historia de usuario Nº 08 44

Tabla 3.9: Historia de usuario Nº 09 45

Tabla 3.10: Plan de lanzamientos 45

Tabla 3.11: Iteraciones 46

Tabla 4.1: Resultado de la implementación del software 63

Tabla 4.2: Nivel de aceptación del software 64

Tabla 4.3: Resultados del registro y procesamiento de las atenciones de salud 64 Tabla 4.4: Tiempo de obtención y procesamiento de información 65

Tabla 4.5: Redundancia de información 66

Tabla 4.6: Comparación de la situación inicial y final. 66

(11)

1

INTRODUCCION

El mundo actual exige la disponibilidad de información en tiempo real para la ayuda en toma la toma de decisiones en todos los niveles de una organización, entonces es necesario contar con los mecanismos adecuados para ello. Estos mecanismos son generalmente soportados en la implementación de Sistemas de Información y Comunicación, las cuales, dependiendo del giro del negocio pueden solo ser de soporte hasta formar la parte principal del mismo. La implementación de estos Sistemas de Información y Comunicación tiene aplicación diversa, casi no encontramos algún campo en el cual no se haya implementado, motivo por el cual se desarrollaron diversas maneras, métodos para su la implementación en las organizaciones. Entre estos encontramos la metodología de desarrollo ágil denominada Extreme Programming o Programación Extrema la cual nos ayuda a la implementación de estos Sistemas de Información en un entorno cambiante como el caso de la Oficina de Relaciones Comunitarias – Mina Corihuarmi en sus atenciones de salud.

La presente tesis se divide en cuatro capítulos, en el capítulo primero denominado:

Generalidades; nos avocaremos a precisar las condiciones que propiciaron la presente investigación, describiendo la situación problemática en el contexto de las actividades de Mina Corihuarmi. Se realizará la formulación del problema, el planteamiento de la hipótesis, se definirán los objetivos y las variables que tendremos en consideración para validarla.

En el capítulo segundo denominado: Marco Teórico; se realiza la descripción de los fundamentos, las investigaciones similares, herramientas tecnológicas y paradigmas que apoyarán la realización de la presente investigación y que nos permitan definir el modelo aplicativo que regirá su desarrollo.

El capítulo tercero, Intervención Metodológica, muestra la aplicación de los conceptos descritos en capítulos anteriores lo cual resulta en la consecución del Software o Sistema de Información para el registro y procesamiento de atenciones de salud en las actividades de responsabilidad social para la Mina Corihuarmi.

En el capítulo cuarto, Análisis de y Discusión de Resultados se muestra la comparativa de la situación inicial y la situación después de la intervención metodológica para la validación de la hipótesis planteada en el capítulo primero en cuanto a la mejora en los

(12)

2 tiempos para la obtención de información y la disminución de redundancia de información.

De este modo se concluye que la investigación abordada mediante la adopción de la metodología Extreme Programming, las herramientas y plataformas tecnológicas adoptadas resuelven la situación planteada, también se precisan recomendaciones para la investigaciones similares.

L.A.M.R.

(13)

3

CAPÍTULO I GENERALIDADES

En el presente capítulo se abarca el planteamiento del problema, los objetivos y los supuestos de la investigación. Se definen los métodos, herramientas y técnicas que se utilizarán en esta investigación.

1.1. PLANTEAMIENTO DEL PROBLEMA 1.1.1. Mina Corihuarmi

Minera IRL es una empresa que se dedica a la explotación de recursos minerales con operaciones en país y otros como: Argentina y Chile. La Mina Corihuarmi es uno de sus proyectos que se vienen desarrollando en la región. La Oficina de Relaciones Comunitarias es la encargada de llevar a cabo las actividades de responsabilidad social con las comunidades del área de influencia (directa en indirecta) que comprende diversas comunidades de la zona del Canipaco como:

Chongos Alto, Pititayo, Huasicancha, Palaco y de la sierra de Lima como: Atcas y Huantán. Para tal fin la Oficina cuenta con diversas áreas como: Salud, Social, Pecuario, Sanidad Animal y Social Educativo, las cuales aportan al desarrollo de la calidad de vida de los pobladores con la prestación de servicios, asistencia técnica para el desarrollo de sus actividades económicas y el apoyo en el desarrollo de proyectos productivos autosustentables en las diversas actividades del poblador de la zona. Las atenciones médicas se desarrollan, ya sea en campañas o de manera regular y permanente en las diversas comunidades y en las diferentes especialidades que son Medicina General, Odontología, Enfermería y Obstetricia.

En cada una de estas atenciones se registra los datos de las personas atendidas, el tratamiento, la medicación, el diagnostico. El área de Sanidad Animal se encarga

(14)

4 de brindar asistencia técnica en las actividades ganaderas de las comunidades, para el mejoramiento de la producción y productividad, El área Forestal es el encargado de producir especies forestales y frutícolas para la forestación y reforestación de suelos, además de la implementación de viveros en las comunidades para introducir a los pobladores en esta actividad económica. El área Pecuaria se encarga de brindar capacitaciones y asistencia técnica a los pobladores en la crianza de animales menores, como un programa de seguridad alimentaria. El área Social y Social Educativo se encarga de promover un ambiente de fraternidad y colaboración con los pobladores mediante el desarrollo de actividades de apoyo social y capacitaciones en temas diversos.

A. Ubicación1

En la espectacular cordillera de los Andes, a una altitud de casi 5,000 metros, se encuentra nuestra Mina de Oro Corihuarmi.

El acceso a Corihuarmi es a través de 330 kilómetros en una carretera principal asfaltada al este de Lima, la capital de Perú, por la división en los Andes a Yauli, luego al sureste a la ciudad de Huancayo, la capital de la región Junín. Desde Huancayo se llega a través del altiplano viajando al suroeste en caminos de grava por 115 kilómetros pasando por las comunidades de Chupuro y Vista Alegre hasta la mina. En la Figura 1.1 siguiente se muestra la ubicación de Mina Corihuarmi.

Figura 1.1: Ubicación de la Mina Corihuarmi.

Fuente: Minera IRL S.A.

Elaboración: Minera IRL S.A.

1 Ubicación tomada de la pagína web de la empresa Minera IRL S.A. Disponible en: http://www.minera- irl.com/es/minas/mina-de-oro-corihuarmi/icacion

(15)

5 B. Relaciones Comunitarias – Mina Corihuarmi

“Además del rendimiento económico generado por la Mina de Oro Corihuarmi, estamos muy orgullosos de la notable mejora en la calidad de vida de las comunidades cercanas originada por la presencia de nuestras actividades mineras.

Brindamos muchos programas de salud y educación, impulsamos iniciativas de desarrollo sostenible y patrocinamos eventos culturales y tradicionales.

La mina también brinda cientos de oportunidades de empleo directo y ayudó a crear diversos pequeños negocios que ahora brindan muchos de los bienes y servicios de los que dependemos para nuestras operaciones diarias” 2.

C. Visión de la Organización

“Las comunidades campesinas del área de influencia se verán fortalecidas con el apoyo técnico en el desarrollo de sus actividades productivas llegando a un carácter empresarial, que tiendan a mejorar sus niveles de vida y de ingresos económicos de su población, participando en forma conjunta en las acciones que desarrollará la Oficina de Relaciones Comunitarias – Mina Corihuarmi de la Minera IRL S.A.”.

D. Misión de la Organización

“Que la Mina Corihuarmi favorezca a la economía de las comunidades campesinas ubicadas dentro del área de influencia, y beneficie igualmente a la economía peruana en términos macroeconómicos, mediante el impulso e implementación de actividades productivas y socio económicas sostenibles durante la vida útil de la mina”.

E. Estructura Orgánica

En la figura 1.2, se muestra el Organigrama Estructural de la Oficina de relaciones Comunitarias - Mina Corihuarmi.

2 Tomado de la página web de Minera IRL S.A. – Mina Corihuarmi. Disponible en: http://www.minera- irl.com/es/minas/mina-de-oro-corihuarmi/laciones-comunitarias

(16)

6 Figura 1.2: Estructura Orgánica de la Oficina de Relaciones Comunitarias - Mina Corihuarmi.

Fuente: Oficina de Relaciones Comunitarias Mina Corihuarmi.

Elaboración: Propia.

1.1.2. La Problemática

La situación problemática que se presenta en la Oficina de Relaciones Comunitarias – Mina Corihuarmi es que los registros de datos de las actividades de responsabilidad social de cada área se realizan de manera independiente, esto hace que los registros sean en muchos casos incongruentes cuando se necesita realizar informes consolidados, de esta manera se crean registros innecesarios que hacen la tarea muy tediosa y que hacen que sea muy costosa.

El caso más saltante se da en el área Salud ya que las atenciones que realizan tienen un registro físico llamado “Registro de Atención” o “Ficha de Atención”3, en estas se consignan los siguientes datos: Nombres y Apellidos, número de DNI, edad, comunidad a la cual pertenece el paciente, diagnóstico, medicación, tratamiento y antecedentes. Inclusive el registro de estos datos no se realiza de manera estricta y existen variaciones para referirse a cierto diagnóstico dado que cada profesional especialista lo realiza a su manera (por ejemplo: Rinofaringitis Aguda y Resfrio Común4, se utiliza dos o más nombres para referirse a un mismo diagnóstico), lo mismo sucede para con los nombres. La Tabla 1.1 siguiente muestra las características de la información generada por la organización.

3 Anexos I al IV

4 Anexos V al XV

COORDINACIÓN GENERAL

AREA SALUD AREA SOCIAL

ODONTOLOGIA

AREA SOCIO EDUCATIVO AREA PECUARIA MEDICINA GENERAL

ENFERMERIA OBSTETRICIA

FORESTAL SANIDAD ANIMAL

(17)

7 Tabla. 1.1: Características de la información generada por la organización.

DESCRPCION

VALOR APROXIMADO

Consulta de Atenciones 10 minutos.

Consulta de Datos de

Beneficiarios. 15 minutos.

Reporte por grupo etario. 30 minutos.

Reporte de Enfermedades

atendidas más recurrentes. 30 minutos.

Consolidado de Atenciones por

persona. 03 horas.

Consolidado de Atenciones indeterminado

Redundancia 20 %

Fuente: Oficina de Relaciones Comunitarias Mina Corihuarmi.

Elaboración: Propia.

El tiempo indeterminado para consolidar la información de las atenciones en salud depende de los costes en los que se incurre, además de afectar la productividad de los profesionales responsables de las cuatro especialidades.

Se realizan informes mensuales de actividades en las cuales se incluyen el número de atenciones realizadas, los diagnósticos más recurrentes, la distribución etaria, etc. Esta actividad mensual requiere de un tiempo que va de dos a tres días, el mayor inconveniente es la realización de un registro consolidado que haría las veces de “Historial Médico” ya que resulta muy tedioso agrupar los datos de las personas por no usar un criterio homogéneo para el registro por las sub áreas y que no se realizó anteriormente por la complejidad y los costos que implica.

Un caso similar sucede en todas las áreas de la Oficina de Relaciones Comunitarias, además que se dificulta la realización de un registro consolidado general que abarque las atenciones y participaciones de las personas en todas las áreas para cuenta de las actividades de responsabilidad social y de tiempos prolongados de espera para la búsqueda de registros. En la situación descrita anteriormente se plantearon solo mecanismos computarizados para el registro y procesamiento de información, a las cuales se realizó una evaluación de las ventajas y desventajas que se muestra en la tabla 1.2 siguiente.

(18)

8 Tabla. 1.2: Ventajas y desventajas de las opciones para registro y procesamiento de la

información.

Ventajas Desventajas

Herramientas ofimáticas

 Inicio inmediato en el registro y procesamiento de información.

 No se garantiza la disminución de la redundancia de información.

 Requiere conocimientos intermedios o avanzados de ofimática por parte de todo el personal.

Implementación de software

 Se espera una gran disminución de la

redundancia de

información.

 No requiere conocimientos especializados por parte de los usuarios finales.

 El registro y procesamiento de información se realiza después de iniciado la implementación del software.

Fuente: Oficina de Relaciones Comunitarias Mina Corihuarmi.

Elaboración: Propia.

Visto el mayor número de desventajas del uso de las herramientas ofimáticas y la mayor cantidad de ventajas de la implementación del software, se toma esta última.

1.2. FORMULACION DEL PROBLEMA

¿Cómo influye la implementación de software en el registro y procesamiento de atenciones de salud en las actividades de responsabilidad social – caso Mina Corihuarmi?

1.3. OBJETIVO GENERAL

Determinar la influencia de la implementación de software en el registro y procesamiento de atenciones de salud en las actividades de responsabilidad social – caso Mina Corihuarmi.

1.4. JUSTIFICACIÓN

1.4.1. Justificación Teórica

En el desarrollo del software es necesario la creación de na Base de Datos que es básicamente un sistema computarizado cuyo propósito es mantener información y hacer que se encuentre disponible oportunamente. Esto a su vez constituye una importante herramienta para el tratamiento de datos, pues permite ordenar los datos de manera que estén relacionados y estructurados acorde a las especificaciones que se planteen.

(19)

9 La importancia de una base de datos radica en que permite ordenar la información de tal forma que acelere la búsqueda de la misma, además una base de datos bien elaborada permite dar servicio a muchas aplicaciones al mismo tiempo, siendo por esta razón imprescindible en una institución que maneja cantidades considerables de datos.

Una vez culminado e implementado el proyecto, este beneficiará directamente a los responsables de la Oficina, teniendo una base de datos actualizada y disponible, con ayuda del software para administración y respaldo de su información.

1.4.2. Justificación Metodológica

La aplicación de la metodología de desarrollo ágil Extreme Programming, el uso de las herramientas y la secuencia propuesta para la intervención resuelven el problema planteado con suficiencia y respaldo de una base de conocimientos lograda a través de la aplicación de los mismos en otros proyectos.

1.4.3. Justificación Práctica

El proyecto finalizado cumple con solucionar el problema planteado, satisfaciendo a los usuarios y dotándoles de un mecanismo de interacción con el software de manera simple, amigable y familiar.

1.5. HIPÓTESIS

1.5.1. Hipótesis General

La implementación de software influye de forma positiva en el registro y procesamiento de atenciones de salud en las actividades de responsabilidad social – caso mina Corihuarmi.

1.6. OPERACIONALIZACIÓN DE VARIABLES

En la Tabla 1.3 siguiente se muestra las variables consideradas para la presente investigación.

Tabla. 1.3: Operacionalización de variables.

Variable Indicador

V. Independiente

Implementación de Software

Número de requerimientos implementados.

Nivel de aceptación del software.

(20)

10 V. Dependiente

Registro y procesamiento de atenciones de salud

Tiempo de obtención de información.

Nivel de redundancia de datos.

V. Interviniente

Extreme Programming Tiempo

Calidad

Fuente: Desarrollo de la investigación.

Elaboración: Propia.

Esta investigación pretende medir de qué manera influye la implementación de software en el registro y procesamiento de atenciones de salud en las actividades de responsabilidad social – caso Mina Corihuarmi, por tal motivo la variable independiente será definida como la Implementación de Software, de la cual se necesita obtener información respecto de sus características más importantes que son: el nivel de aceptación del software y el número de requerimientos implementados satisfactoriamente; del mismo modo es necesario conocer acerca de la variable dependiente para poder medir el efecto sobre esta. También es necesario conocer acerca de la variable interviniente que corresponde a la utilización de la metodología Extreme Programming, que es la que regirá la implementación del software.

1.7. DISEÑO METODOLÓGICO 1.7.1. TIPO DE INVESTIGACIÓN

Por la naturaleza de la situación y la propuesta de solución planteada el tipo de investigación es aplicativa porque se busca la utilización de los conocimientos adquiridos para observar sus consecuencias prácticas, es decir medir el efecto de la implementación del software en el registro y procesamiento de información.

1.7.2. NIVEL DE LA INVESTIGACIÓN

El nivel de investigación será explicativa y descriptiva, explicativa porque se establecerá la relación de causa y efecto en la intervención a realizar y se tendrá la posibilidad de verificar los posibles efectos de la implementación del software en la Oficina de Relaciones Comunitarias – Mina Corihuarmi y

(21)

11 descriptiva porque se realizará la identificación de sus características más sobresalientes.

1.8. SISTEMA DE REFERENCIA

El sistema de referencia lo conforman registros físicos generados por las atenciones en salud de la Oficina de Relaciones Comunitarias, específicamente de las especialidades de Medicina General, Obstetricia, Enfermería y Odontología desde el año 2008 en adelante, fecha desde la cual se viene brindando el servicio.

De lo descrito hasta ahora se puede observar dos características que son de relevancia y en la cual se ha de intervenir para propiciar una situación que comparativamente sea mejor a la situación descrita en el planteamiento del problema, las cuales son mejorar los tiempos de obtención de información y disminuir la redundancia de información mediante la implementación de un software o sistema informático.

(22)

12

CAPÍTULO II

MARCO DE REFERENCIA

El presente capitulo explora los conocimientos necesarios para la consecución de una solución factible al problema planteado en el capítulo anterior, para lo cual se inicia con una revisión de trabajos de investigación similares y puedan respaldar la alternativa adoptada.

2.1. ANTECEDENTES

A1. Universidad Politécnica de Valencia. Desarrollo De Un Sistema De Gestión de una Empresa de Confecciones (2004). Ejemplo de Desarrollo de Software Utilizando la Metodología XP.

El proyecto consiste en el desarrollo de un sistema de gestión para una empresa de confecciones. En dicha gestión de la empresa se incluyen gestión de pedidos, gestión de clientes (tanto principal como los de temporada), facturación, gestión de productos, gestión de materias primas, etc. El proyecto se divide en las siguientes partes: Gestión del Proyecto, Implementación y Pruebas.

A2. Echeverry Tobón, Luís Miguel, Delgado Carmona, Luz Elena (2007).

Caso práctico de la metodología ágil XP al desarrollo de software.

Universidad Tecnológica de Pereira.

“En el proyecto se plantea realizar una experiencia real en la aplicación de XP al desarrollo de software con el fin de determinar, para unas circunstancias específicas, que tan bien se ajusta la metodología. El proceso inició en una

(23)

13 revisión bibliográfica de la metodología y otros aspectos relacionados a esta.

A continuación se contactó con un posible cliente al cual se hizo una presentación de los objetivos iniciales del proyecto. Una vez acorados todos los detalles se procedió a su ejecución al final del cual se redactó el informe final documentando la experiencia. El documento cuenta con siete capítulos distribuidos de la siguiente forma. En el primer capítulo se hace un recorrido teórico por XP y se esbozan elementos importantes de las metodologías ágiles. En el segundo capítulo se hace una presentación del proyecto en términos del entorno que lo rodea, una breve descripción del cliente y el tipo de negocio para el cual se desarrolló. En los capítulos tercero a sexto se realizó una comparación entre los enunciados teóricos expuestos en el capítulo primero y la aplicación que los autores hicieron en la ejecución del proyecto. Finalmente en el último capítulo se hace una serie de comentarios relevantes acerca de situaciones especiales que surgieron durante la ejecución del proyecto. En el recorrido teórico se realiza una introducción breve de las metodologías ágiles resaltando el manifiesto ágil como su punto de partida, seguido de una exposición de los principios sobre los cuales se basa XP. La parte central del documento consta de los capítulos tercero al sexto correspondiendo a cada una de las fases de desarrollo en XP:

planeación, diseño, codificación y pruebas. En cada uno de estos capítulos se discute como se aplicaron los aspectos de la correspondiente etapa al proyecto, así como el resultado obtenido”.

A3. Cruz Acosta Santiago David. Sistema de diagnóstico de líneas telefónicas de ANDINATEL S.A. (2009). Facultad de Ingeniería de Sistemas, Escuela Politécnica Nacional, Ecuador.

El proyecto se desarrolla adoptando la metodología Extreme Programming en una empresa de prestación de servicios de telefonía fija que sufre averías a nivel operacional que afectan la disponibilidad del servicio, por ende la calidad de servicio y disminuyen el nivel de satisfacción de los clientes. Los resultados obtenidos tras la implementación del sistema muestran una gran aceptación por parte delos usuarios derivados de las características de la metodología, es decir su enfoque en la satisfacción del cliente.

A4. Mindy Sanchez y Erick Torres. Desarrollo de un Sistema web basado en ADO.net para el control de la gestión de inscripción y logística de cursos en la empresa Enfoque Directo Aplicado Consultores (2011).

(24)

14 Escuela de Computación, Facultad de Ciencias de la Informática, Caracas.

La tesis “…se enfoca en la presentación de una aplicación web que servirá para optimizar el control tanto de la gestión de inscripciones como la logística de los cursos impartidos por la empresa Enfoque Directo Aplicado Consultores, C.A. con el objetivo de simplificar sus procesos administrativos y mejorar la eficiencia del personal al tiempo que se satisfacen sus necesidades de control y gestión. El desarrollo de este sistema siguió la metodología conocida como Extreme Programming XP, misma que se compone de cuatro (4) fases: planificación, diseño, desarrollo y pruebas. En la fase de planificación se realizó la investigación e identificación de los requerimientos de la empresa, en esta etapa se llevó a cabo el levantamiento de información tanto documental y bibliográfica como de campo dentro y fuera de la empresa.

Con la información obtenida, se procede al análisis de la misma, al diseño de la estructura y al desarrollo del sistema que atenderá los requerimientos de forma óptima, el desarrollo concluyó con pruebas y ajustes finales al sistema.

En conclusión, cabe destacar que la aplicación desarrollada cubrió las expectativas de la empresa, y que esta manifestó que realizará las gestiones administrativas necesarias para procurar los recursos económicos que requiere a efecto de implementarla en su plataforma tecnológica”.

A5. Paola Plancarte Solórzano. Diseño de un sistema como estrategia para incrementar el rendimiento académico del alumno: caso Liceo Anglo Pedagógico. (2011). Instituto Politécnico Nacional, Unidad Profesional Interdisciplinaria de Ingeniería y Ciencias Sociales y Administrativas, Mexico.

“…en esta tesis se muestra el desarrollo de la aplicación Web, que proporciona el apoyo que demandan los profesores y directivos para lograr un óptimo desempeño de sus actividades, principalmente el incremento en el rendimiento académico de los alumnos”. La implementación de la aplicación web se realiza adoptando la metodología Extreme Programming utilizando plataformas de desarrollo Microsoft.

2.2. MARCO TEÓRICO

2.2.1. Metodología de Desarrollo Ágil

El 17 de febrero de 2001 diecisiete críticos de los modelos de mejora del desarrollo de software basados en procesos, convocados por Kent Beck,

(25)

15 quien había publicado un par de años antes Extreme Programming Explained, libro en el que exponía una nueva metodología denominada Extreme Programming, se reunieron en Snowbird, Utah para tratar sobre técnicas y procesos para desarrollar software. En la reunión se acuñó el término

“Métodos Ágiles” para definir a los métodos que estaban surgiendo como alternativa a las metodologías formales (CMMI, SPICE) a las que consideraban excesivamente “pesadas” y rígidas por su carácter normativo y fuerte dependencia de planificaciones detalladas previas al desarrollo.

Los integrantes de la reunión resumieron los principios sobre los que se basan los métodos alternativos en cuatro postulados, lo que ha quedado denominado como Manifiesto Ágil.

2.2.2. Manifiesto Ágil

Los propulsores de las metodologías ágiles firmaron un manifiesto donde se expresaban las ideas fundamentales del estilo de gestión:

a) Valorar a las personas y su interacción, por encima de los procesos y las herramientas: procesos de calidad con personas y relaciones mediocres no darán buenos resultados.

b) Valorar el software que funciona, por encima de la documentación exhaustiva: la documentación es necesaria dado que permiten la transferencia del conocimiento, pero su redacción debe limitarse a aquello que aporte valor directo al producto/servicio.

c) Valorar la colaboración con el cliente, por encima de la negociación contractual: si bien son necesarios, los contratos no aportan valor a los productos/servicios. Las metodologías ágiles integran al cliente en el proyecto y mantienen como objetivo aportar el mayor valor posible en cada iteración.

d) Valorar la respuesta al cambio, por encima del seguimiento de un plan:

Anticipación y adaptación enfrente de planificación y control.

A partir de los 4 valores básicos se pueden extraer diversos principios que matizan la filosofía detrás de la gestión ágil:

a) La principal prioridad es satisfacer al cliente mediante entregas tempranas y continuas de valor: periodos de 15 a 60 días.

b) Los requisitos cambiantes son bienvenidos.

(26)

16 c) Integración de los conocedores del negocio en el propio proyecto.

d) La motivación y el talento son aspectos clave, por tanto la confianza y el apoyo al equipo humano es fundamental.

e) Potenciar las conversaciones en persona por encima de la comunicación escrita.

El producto funcional (p.ej. software operativo) es la principal medida del progreso: centrar el interés en el grado de finalización funcional o el tiempo previsto de finalización, no en el tiempo transcurrido contra el planificado.

2.2.3. Costo de los Cambios en Proyectos de Software

Una de los problemas más críticos en los proyectos de software es el costo en el que se incurre cuando se tiene que realizar cambios, esto se manifiesta de manera más notoria cuando se utilizan metodologías tradicionales como: RUP, UML, etc., en donde los cambios que se realizan en el proyecto es determinante en el éxito del mismo en la medida que se realice en etapas tempranas del proyecto, realizar cambios en las etapas finales pueden ocasionar el fracaso del proyecto. En la siguiente figura se muestra una comparación entre los costos del cambio que requieren las metodologías tradicionales y las metodologías ágiles.

Figura 2.1: Comparación de costos del cambio usando metodologías tradicionales y metodologías ágiles en proyectos de software.

Fuente: Internet.

Elaboración: Propia.

Requerimientos Análisis Diseño Implementación Prueba Producción

Costo del Cambio

Metodologías tradicionales

Metodologías Ágiles

(27)

17 Como se aprecia los costos del cambio en las metodologías tradicionales van incrementándose de manera exponencial a medida que vamos avanzando en el desarrollo de un proyecto de software, por otro lado las metodologías ágiles demandan altos costos al inicio del proyecto que luego muestran un comportamiento de crecimiento asintótico lo cual permite que los costos del cambio en el proyecto se incrementen de manera moderada a medida que se avanza en el desarrollo del proyecto.

2.2.4. Extreme Programming (XP)

Extreme Programming es una metodología ágil muy exitosa porque hace hincapié en la satisfacción del cliente y permite a los desarrolladores responder con confianza a las necesidades cambiantes de los clientes, incluso al final del ciclo de vida.

Los programadores extremos en constante comunicación con sus clientes y colegas programadores. Mantienen su diseño simple y limpio. Reciben retroalimentación probando su software a partir del primer día. Entregan el sistema a los clientes tan pronto como sea posible y poner en práctica los cambios como se sugiere. En la figura 2.2 se muestra el diagrama de fuljo de un proyecto desarrollado con la metodología Extreme Programming.

Figura 2.2: Diagrama de flujo de un proyecto con la metodología Extreme Programming

Fuente: Extreme Programming ORG.

Elaboración: Propia.

Historias de Usuario

Planeamiento de Lanzamientos Architectural

Spike Pequeños

lanzamientos Pruebas de

aceptación Iteración

Spike requerimientos

Estimaciones Inciertas.

Estimaciones Seguras.

Sistema

Metáfora Plan de

lanzamientos

Última Versión

Aprobación del cliente Bugs

Nueva historia de usuario Velocidad del proyecto

Escenarios de prueba

PROYECTO EXTREME PROGRAMMING

(28)

18 2.2.5. Reglas, Pautas, Normas de un Proyecto Extreme Programming

La siguiente Figura 2.3 muestra las directrices que se deben seguir en cada proceso del proyecto utilizando Extreme Programming5.

Figura 2.3: Reglas, pautas, normas de un Proyecto Extreme Programming.

Fuente: Extreme Programming ORG.

Elaboración: Propia.

A. Planeamiento (Planning)

Historias de Usuario (User stories)

Las Historias de Usuario tienen el mismo propósito que los Casos de Uso de la metodología UML, pero no son la misma. Se utilizan para crear las estimaciones de tiempo para la reunión de planificación de entregas. También se utilizan en lugar de una excesiva documentación. Las Historias de Usuario son escritas por los clientes como las cosas que el sistema necesita para hacer por ellos, evitando el uso de alguna sintaxis o uso de términos tecnológicos

5 Según Don Wells. Disponible en www.extremeprogramming.org PLANEAMIENTO

Se escriben las Historias de Usuario.

El Planeamiento de Lanzamientos crea el Cronograma de lanzamientos.

Realizar Pequeños Lanzamientos frecuentemente.

El Planeamiento de la Iteración inicia cada iteración.

ADMINISTRACION

Brindar al equipo un espacio abierto de trabajo.

Establecer un ritmo sostenible.

Las reuniones a pie inicia cada día.

La velocidad del proyecto es medida.

Mover a la gente.

Arreglar XP cuando se rompe.

DISEÑO

Simplicidad.

Escoger un Sistema Metáfora.

Usar tarjetas CRC para diseñar sesiones.

Crear Spike Solutions para reducir el riesgo.

No se añaden funcionalidades prematuras.

Refactorizar cuando y donde sea posible.

CODIFICACION

El cliente está siempre disponible.

El código debe estar escrito de acuerdo a estándares.

Codifica primero las pruebas unitarias.

Toda la producción del código es programado en pares.

Instalar una computadora de integración dedicada.

Usar la propiedad colectiva.

PRUEBAS

Todo el código debe tener pruebas unitarias.

Todo el código debe pasar todas la pruebas unitarias antes de poder ser lanzadas..

Cuando se encuentra un bug se crean las pruebas.

Las pruebas de aceptación son realizadas frecuentemente y las puntuaciones publicadas.

(29)

19 específicos. En la Figura 2.4 siguiente se muestra un formato para la elaboración de las Historias de Usuario.

Figura 2.4: Formato para la elaboración de las Historias de Usuario.

Planificación de Lanzamiento (Release Planning)

Una reunión de planificación de entregas o lanzamientos se utiliza para crear un Plan de Lanzamiento, que establece el proyecto en general. El plan de lanzamiento se utiliza para crear planes de iteración para cada iteración individual.

Es importante para los técnicos para tomar las decisiones técnicas y gente de negocios para tomar las decisiones de negocio. La planificación de lanzamiento tiene un conjunto de reglas que permite a todos los involucrados con el proyecto de tomar sus propias decisiones. Las reglas definen un método para negociar un calendario donde todos pueden comprometerse.

La esencia de la reunión de planificación de los lanzamientos para el equipo de desarrollo es para estimar cada historia de usuario en términos de semanas de programación ideales. Una semana ideal es el tiempo que usted se imagina que se necesitaría para poner en práctica esa historia. El cliente decide qué historia es la más importante o tiene la más alta prioridad para ser completado.

Historias de usuario se imprimen o escritas en las tarjetas. Junto a los desarrolladores y los clientes a moverse en torno a las cartas en una mesa grande para crear un conjunto de historias que se ejecutarán como el primer (o siguiente) lanzamiento.

Historia de Usuario

Número: Usuario:

Nombre historia:

Prioridad en negocio: Riesgo en desarrollo:

Puntos estimados: Iteración asignada:

Programador responsable Descripción:

Observaciones:

(30)

20

Pequeños Lanzamientos (Small Releases)

El equipo de desarrollo necesita liberar o lanzar versiones repetidas del sistema a los clientes a menudo. Algunos equipos despliegan un nuevo software en producción todos los días. Por lo menos se tendrá que obtener el nuevo software en producción cada semana o dos. Al final de cada iteración habrá probado su funcionamiento y quedado listo para la producción de software y para demostrar a sus clientes.

La decisión de ponerlo en producción es de ellos.

La reunión de planificación de entregas se utiliza para planificar las pequeñas unidades de funcionalidad que hacen un buen negocio y pueden ser liberados en el entorno del cliente al principio del proyecto. Esto es fundamental para conseguir información valiosa en el momento de tener un impacto en el desarrollo del sistema. Cuanto más tiempo espere para introducir una característica importante para los usuarios del sistema, menos tiempo tendrá que arreglarlo.

Iteraciones

El desarrollo iterativo agrega agilidad al proceso de desarrollo. Se aconseja dividir el calendario de desarrollo en más o menos una docena de repeticiones de 1 a 3 semanas de duración. Una semana es la mejor opción a pesar de que parece muy corto. Mantener la longitud de iteración constante durante todo el proyecto es el ritmo del proyecto. Es esta constante que hace la medición del progreso y la planificación sencilla y fiable en XP.

Es importante no programare las tareas de programación con antelación, en lugar de ello tener una reunión de planificación al principio de cada iteración para planificar lo que se hará. La Planificación justo a tiempo (Just in) es una manera fácil de estar al tanto de los requerimientos cambiantes de los usuarios.

También es contraproducente tratar de implementar algo que no está previsto para una iteración. Habrá un montón de tiempo para implementar esa funcionalidad cuando se convierte en la historia más importante en el plan de lanzamiento.

(31)

21 Entonces es necesario tomar los plazos de iteración en serio, realizar el seguimiento del progreso durante una iteración. Si parece que no va terminar todas las tareas entonces llamar a otra reunión de planificación de la iteración, re- estimación, y eliminar algunas de las tareas.

Concentre su esfuerzo en completar las tareas más importantes elegidos por su cliente, en lugar de tener varias tareas sin terminar elegidas por los desarrolladores.

En la Figura 2.5 se muestra el esquema XP que guía las iteraciones realizadas sobre el desarrollo del proyecto.

Figura 2.5: Iteración Extreme Programming.

Fuente: Extreme Programming ORG.

Elaboración: Propia.

Planificación de la Iteración (Iteration Planning)

Una reunión de planificación de la iteración se llama al principio de cada iteración para producir el plan de las tareas de programación de esa iteración. Cada iteración es de 1 a 3 semanas. Las historias de usuario son elegidos para esta iteración por el cliente desde el plan de lanzamiento con el fin de realizar las más valiosas para el cliente primero. El cliente selecciona las historias de usuario con las

Velocidad del proyecto

Plan de iteración

Plan de lanzamiento

Planeamiento de Iteración

Última versión Desarrollo

Historias de usuario

Última Versión Nueva funcionalidad

Tareas no finalizadas

Iteración

Siguiente Iteración

Aprender y comunicar Nueva historia de usuario,

Velocidad del Proyecto

Bugs

Reparar bugs

(32)

22 estimaciones que se sumarán al total de la velocidad del proyecto a partir de la última iteración.

Las tareas a desarrollar están escritas en tarjetas como las historias de usuario. Si bien las historias de usuario se encuentran en el idioma del cliente, las tareas están en el idioma del programador. Las tareas duplicadas se pueden eliminar en este punto.

B. ADMINISTRACION (Managing)

Espacio Abierto Dedicado (Give The Team A Dedicated Open Workspace)

La comunicación es muy importante para un equipo de programación extrema (XP). Las rutas de comunicación son vitales para su equipo y disponer los equipos de cómputo necesarios en un área central del que nadie es dueño hace la programación en parejas más fácil y anima a la gente a trabajar juntos con igualdad de valor de sus contribuciones. Se recomienda disponer unas cuantas mesas alrededor del perímetro que le da al equipo un lugar para trabajar solos sin convertirse desconectados del resto del equipo.

Es necesario la inclusión de una amplia zona para las reuniones de pie diarias para no aislar a alguno de los miembros del equipo. Se puede adicionar de una mesa de conferencias que le ofrece un hogar para las discusiones de grupo que se producen de forma espontánea a lo largo del día. Ser capaz de ver las discusiones anima a la gente a escuchar o unirse a la discusión.

Adición de tablas blancas para bocetos y notas importantes o paredes en blanco donde las tarjetas de historia de usuario pueden ser grabadas añade aún más canales de comunicación. Añadir un par de grandes cartas dirigidas a la mejora de procesos o el progreso del proyecto informa al equipo de gestión sin perseguir ellos sobre el progreso.

Establecer un Ritmo Sostenible, Medible y Predecible (Set A Sustainable, Measurable, Predictable Pace)

(33)

23 El software incompleto o con errores representa una cantidad desconocida de esfuerzo futuro, por lo que no se puede medir. Si parece que el equipo no será capaz de obtener todo las características al final de la iteración se recomienda realizar una reunión de planificación de la iteración y re-alcance la iteración para maximizar su velocidad de proyecto. Incluso si hay sólo un día de plazo en la iteración es mejor conseguir que todo el equipo se re- enfoque en una sola tarea completada de muchas otras incompletas.

Las Reuniones de Pie Inician Cada Dia (A Stand Up Meeting Starts Each Day.)

En una reunión típica proyecto la mayoría de los asistentes no contribuyen, pero asisten sólo para escuchar el resultado. Una gran cantidad de tiempo de desarrollo se desperdicia para obtener una cantidad trivial de la comunicación.

La comunicación entre todo el equipo es el propósito de la reunión de pie. La reunión a pie cada mañana se utiliza para comunicar problemas, soluciones, y promover el enfoque de equipo. Todo el mundo se pone de pie en un círculo para evitar largas discusiones.

Es más eficaz tener una breve reunión que se requiere de cada uno para asistir a muchas reuniones con unos pocos desarrolladores cada una.

Velocidad del Proyecto ( Project Velocity)

La velocidad de proyecto es una medida de la cantidad de trabajo en su proyecto. Para medir la velocidad del proyecto sólo tiene que sumar las estimaciones de los casos de usuario que se terminaron durante la iteración.

Mover a la Gente (Move People Around)

Mover a la gente evitar la pérdida de conocimiento y cuellos de botella. Si sólo hay una persona de su equipo puede trabajar en un área determinada y esa persona deja o simplemente tiene demasiadas cosas que hacer, se reducirá el progreso del proyecto.

(34)

24 El entrenamiento cruzado es a menudo una consideración importante en las empresas que intentan evitar islas de conocimiento, que son tan susceptibles a la pérdida. El movimiento de personas alrededor de la base de código en combinación con la programación en parejas hace su entrenamiento cruzado para el proyecto. En lugar de una persona que lo sabe todo acerca de una determinada sección de código, cada uno en el equipo sabe mucho del código de cada sección.

Un equipo es mucho más flexible, si todo el mundo sabe lo suficiente acerca de todas las partes del sistema para trabajar en él. En lugar de tener unas pocas personas sobrecargadas de trabajo, mientras que otros miembros del equipo tienen poco que ver, todo el equipo puede ser productivo. Cualquier número de desarrolladores se puede asignar a la parte más urgente del sistema. Todo esto se logra a través de la programación en parejas y de la propiedad colectiva del código que se muestra en la Figura 2.7.

Reparar Xp Cuando se Rompe (Fix Xp When It Breaks)

Reparar el proceso cuando se rompe. Hacer algunos cambios para su proyecto específico. Seguir las reglas de XP para empezar, pero esto no impide el cambiar lo que no funciona. Esto no significa que el equipo puede hacer lo que quieran. Las reglas deben ser seguidas hasta que el equipo los ha cambiado. Todos los desarrolladores deben saber exactamente qué esperar el uno del otro, tener un conjunto de reglas es la única manera de establecer estas expectativas.

Tener reuniones retrospectivas para hablar de lo que está funcionando y qué no y encontrar formas de mejorar XP.

C. DISEÑO (DESIGN)

Simplicidad

Un diseño simple siempre toma menos tiempo para terminar que una uno complejo. Siempre es más rápido y más barato para reemplazar el código complejo ahora, que perder mucho más tiempo en él.

(35)

25 La simplicidad siempre desafía la medición, ya que es una cualidad muy subjetiva. La incorporación de una tecnología avanzada puede simplificar una aplicación y hacer un completo desastre de otro. Se recomienda las siguientes cuatro cualidades para lograr la simplicidad: comprobable, comprensible, navegables y explicable.

Comprobable significa que usted puede escribir pruebas unitarias y pruebas de aceptación para comprobar automáticamente si hay problemas. Esto afecta el diseño general y el acoplamiento de los objetos de la aplicación. Se recomienda dividir su sistema en pequeñas unidades comprobables.

Navegable es la cualidad de ser capaz de encontrar lo que usted desea cuando usted lo desee. Los buenos nombres le ayudan a encontrar las cosas. Utilización de polimorfismo, la delegación y la herencia correctamente ayuda a encontrar las cosas cuando es necesario.

Comprensible es obvio, pero muy subjetivo. Un equipo que ha estado trabajando con un sistema de mucho tiempo lo entenderá a pesar de que a alguien nuevo está completamente desconcertado. Así que yo también se recomienda el concepto de explicable como una cualidad que significa que es fácil de mostrar a la gente nueva cómo funciona todo.

Sistema Metáfora

El Sistema Metáfora es en sí una metáfora de un diseño simple con ciertas cualidades. La cualidad más importante es ser capaz de explicar el diseño del sistema para las personas nuevas sin recurrir a enormes documentos en ellos. Un diseño debe tener una estructura que ayuda a las personas nuevas comienzan contribuyendo rápidamente. La segunda cualidad es un diseño que hace nombrar las clases y métodos consistentes.

Como se designa el nombre de los objetos es muy importante para entender el diseño global del sistema y la reutilización de código también. Ser capaz de adivinar lo que algo podría ser nombrado si ya existía y estar en lo correcto la mayor parte del tiempo es un gran

(36)

26 ahorro de tiempo. Elija un sistema de nombres de los objetos con el que todo el mundo puede relacionarse.

Utilizar tarjetas CRC

Utilice las tarjetas de Clase, Responsabilidades y Colaboración (CRC) para diseñar el sistema en equipo. El mayor valor de las tarjetas CRC es permitir a la gente apartarse de pensamiento del modo de procedimientos y más plenamente aprecian la tecnología de objetos. Tarjetas CRC permiten que equipos enteros de proyectos para contribuir al diseño. Cuantas más personas que pueden ayudar a diseñar el sistema mayor es el número de buenas ideas incorporadas.

Las Tarjetas de CRC se utilizan para representar objetos. La clase del objeto puede ser escrito en la parte superior de la tarjeta, las responsabilidades que se enumeran en la parte izquierda, las clases colaboradoras se listan a la derecha de cada responsabilidad.

Decimos " pueden ser escritos" porque una vez que una sesión de CRC está en pleno apogeo los participantes por lo general sólo necesita unas cuantas tarjetas con el nombre de clase y prácticamente no hay tarjetas escritas a cabo en su totalidad. En la Figura 2.6 siguiente se muestra un ejemplo de las tarjetas CRC.

Figura 2.6: Tarjetas CRC

Fuente: internet.

Figure

Figura 2.1: Comparación de costos del cambio usando metodologías tradicionales  y metodologías ágiles en proyectos de software
Figura 2.2: Diagrama de flujo de un proyecto con la metodología Extreme  Programming
Figura 2.4: Formato para la elaboración de las Historias de Usuario.
Figura 2.5: Iteración Extreme Programming.
+7

Referencias

Documento similar

El presente trabajo pretende tener una orientación claramente práctica, que facilite su aplicación en la Empresa de Transportes Ticllas, haciendo ver la importancia de los

En la presente tesis se pretende demostrar la eficiencia técnico ambiental del empleo de la neutralización, coagulación para el tratamiento del drenaje ácido de la unidad

Dar a conocer la experiencia Profesional en el cumplimiento de actividades Agrícolas consideradas en el Plan Estratégico Institucional aplicados con los

Ante ello, el programa de juegos de postas influye significativamente en el desarrollo de la velocidad en la prueba de relevos 4 x 50 metros planos en estudiantes del quinto grado de

El estudio evidenció los siguientes resultados: Con respecto al objetivo general: Establecer la relación entre la percepción de la responsabilidad social empresarial y la satisfacción

Variables Definición Dimensión Indicador Variable independiente Programa anual de seguridad y salud ocupacional “Documento que contiene el conjunto de actividades a

Construcción, Equipamiento e Implementación del Pabellón de Laboratorios de Investigación Científica y Tecnológica Facultades de Arquitectura, Ingeniería Civil, Eléctrica, Minas,

La investigación que se logró desarrollar tiene como propósito de poder Conocer la manera de aprendizaje de los fundamentos técnicos del voleibol en las deportistas del Club