El proyecto presentado se basa en dar solución a los problemas actuales que presentan la organización ATEM PERU
En la actualidad la organización debido a que, no cuenta con la integración de los procesos que impliquen actividades, ni manejo de la información complejo; es candidato apto para adoptar el comienzo de pasar de ser una organización convencional a una organización competitiva logrando así tener mayor valor frente a clientes, competencia y propios trabajadores.
1. ESCUELA DE INGENIERÍA DE COMPUTACIÓN Y SISTEMAS
La Molina, Noviembre del 2012
PROYECTO II
Proyecto : Sistemas de Información en la gestión de
procesos del Clúster Metalmecánico.
Área temática : Sistemas de información para agrupaciones
de pequeñas empresas
Profesor : Augusto Mellado Méndez
Ciclo : X
Integrantes:
Ocampo Díaz, César Eduardo.
2. Proyecto II
Página 2
INDICE
Resumen........................................................................................................................................ 4
Abstract......................................................................................................................................... 5
CAPITULO I: MARCO TEORICO ...................................................................................................... 6
Introducción.............................................................................................................................. 6
Marco Teórico ........................................................................................................................... 7
CAPITULO II: DESCRIPCION DE LA ORGANIZACION................................................................... 13
2.1 Descripción general de la organización....................................................................... 13
2.2 Ubicación y/o entorno ................................................................................................ 14
2.3 Reseña histórica .......................................................................................................... 14
2.4 Objetivos según nuestros Estatutos (Fundación)........................................................ 15
2.5 Misión.......................................................................................................................... 17
2.6 Visión........................................................................................................................... 17
2.7 Mercado de ATEM PERU............................................................................................. 18
2.8 Estructura Orgánica.................................................................................................... 19
CAPITULO III: DEFINICIÓN DEL PROBLEMA................................................................................. 20
3.1 El problema ................................................................................................................. 20
3.2 Definición del Proyecto. ............................................................................................. 21
3.2.1 Alternativas de solución..................................................................................... 21
3.2.2 Justificación del Proyecto.................................................................................... 22
3.3 Viabilidad..................................................................................................................... 23
3.3.1 Análisis de costos y beneficios ............................................................................ 23
3.3.2 Matriz de Beneficios............................................................................................ 28
3.3.3 Matriz de Riesgos ................................................................................................ 29
3.3.4 Evaluación económica......................................................................................... 30
3.4 Objetivos del Proyecto. ............................................................................................. 33
3.4.1 Objetivos General................................................................................................ 33
3.4.2 Objetivos Específicos........................................................................................... 33
3.5 Fundamento Teórico................................................................................................... 34
3.5.1 Antecedentes ...................................................................................................... 34
3.5.2 Software especializado existente........................................................................ 35
3.5.3 Bases Teóricas ..................................................................................................... 35
3.5.4 Definición de términos básicos ........................................................................... 46
CAPITULO IV: METODOLOGÍA DEL DESARROLLO DEL PROYECTO........................................... 47
3. Proyecto II
Página 3
4.1 Referencias metodológicas ......................................................................................... 47
4.2 Resumen por cada metodología ................................................................................. 47
4.2.1 Metodología SCRUM........................................................................................... 47
4.2.2 Metodología Programación extrema.................................................................. 52
4.2.3 Metodología Crystal............................................................................................ 66
4.3 Cuadro evaluativo sobre las metodologías................................................................. 68
CAPITULO V: DESARROLLO DEL PROYECTO............................................................................... 69
5.1 Fase de planificación .................................................................................................. 69
5.1.1 Principales actividades ........................................................................................ 69
5.1.2 Historia de usuarios............................................................................................. 71
5.1.3 Requerimientos del sistema de información ...................................................... 81
5.2 Fase de diseño............................................................................................................ 85
5.2.1 Diseño de la arquitectura.................................................................................... 85
5.2.2 Modelo de caso de uso general .......................................................................... 87
5.2.3 Modelo de base de datos.................................................................................... 88
5.2.4 Tarjetas CRC ........................................................................................................ 89
5.2.5 Diccionario de datos............................................................................................ 97
5.2.6 Prototipos.......................................................................................................... 102
5.2.7 Sistemas a integrar............................................................................................ 116
5.1 FASE DE CODIFICACION............................................................................................ 119
5.2 FASE DE PRUEBAS...................................................................................................... 120
CAPITULO VI: APORTES, CONCLUSIONES Y RECOMENDACIONES............................................. 128
ANEXOS ..................................................................................................................................... 131
ANEXO 01 .............................................................................................................................. 132
I. Fuentes de información ............................................................................................ 132
ANEXO 02 .............................................................................................................................. 139
II. Lectura meta cognitiva.............................................................................................. 139
ANEXO 03 .............................................................................................................................. 170
III. Método del marco lógico ...................................................................................... 170
3.1 Análisis de involucrados.................................................................................... 170
3.2 Árbol de Problemas........................................................................................... 172
3.3 Árbol del Objetivos............................................................................................ 173
3.4 Matriz de marco lógico...................................................................................... 174
4. Proyecto II
Página 4
Resumen
Las PYMES CLUSTER METALMECANICO para realizar una gran parte de
sus actividades diarias necesitan utilizar Tecnologías de Información y
Comunicación. Nuestro Proyecto consiste en implementar Sistemas de
Información que va a permitir integrar y mejorar la comunicación entre los
diferentes procesos de la organización, utilizando los Web Services para
realizar la integración de las diferentes aplicaciones de la organización,
agilizando con mayor fluidez los procesos, permitiendo así brindar toda la
información necesaria requerida por la organización, para un buen manejo de
tomas de decisiones.
El proyecto se plasmó en base la recolección de información que conformo el
Marco Teórico, se determinó los problemas, la alternativa de solución y los
objetivos gracias al análisis del Marco Lógico.
En el proyecto se realizó la evaluación técnico-económica para la
implementación e integración de los Sistemas de Información para la Empresa
ATEM PERU, se ha demostrado su viabilidad a través de la evaluación
económica.
Se realizó fundamento teórico, por el cual nos ha permito obtener la
información sobre las herramientas de desarrollo, metodología para el
desarrollo del proyecto y lenguajes y etiquetas para la programación.
Se Eligio la metodología XP, mediante un cuadro evaluativo por el cual se
desarrollara el proyecto.
Se determinó las actividades para la implementación del proyecto donde se
obtuvo el plan de desarrollo de actividades; y se siguió con el desarrollo de la
metodología respetando el plan de actividades por último se describió los
aportes de innovación que el proyecto brindará.
.
5. Proyecto II
Página 5
Abstract
CLUSTER SME Metalworking for a large part of their daily activities need to use
Information and Communication Technologies. Our project is to implement
information systems that will allow to integrate and improve communication
between different organizational processes, using Web Services for integration
of different applications of the organization, streamlining processes more
smoothly, allowing provide all necessary information required by the
organization, for a good management decision making.
The project took shape based on the collection of information that formed the
theoretical framework; we investigated the problems, the alternative solution
and objectives by analyzing the logical framework.
The project was carried out techno-economic evaluation for the implementation
and integration of Information Systems for Business ATEM PERU, has proven
its viability through economic evaluation.
We performed theoretical framework, for which let us get the information on
development tools, methodology for project development and languages for
programming and labels.
XP methodology was chosen by a composite assessment which was developed
by the project.
Activities were determined to implement the project which yielded the
development plan of activities, finally described the contributions of innovation
that the project will provide.
6. Proyecto II
Página 6
CAPITULO I: MARCO TEORICO
Introducción
En estos tiempos de grandes cambios a nivel mundial, la Industria
Metalmecánica afronta el desafío del tiempo para adecuarse a las nuevas
exigencias del mundo globalizado, sin dejar por ello de constituirse en la
herramienta para el desarrollo para la industria peruana en general.
El proyecto presentado se basa en dar solución a los problemas actuales
que presentan la organización ATEM PERU
En la actualidad la organización debido a que, no cuenta con la integración
delos procesos que impliquen actividades, ni manejo de la información
complejo; es candidato apto para adoptar el comienzo de pasar de ser una
organización convencional a una organización competitiva logrando así
tener mayor valor frente a clientes, competencia y propios trabajadores.
Nuestra propuesta de solución consiste en implementar e integrar Sistemas
de Información que va a permitir integrar y mejorar la comunicación entre
los diferentes procesos de la organización, agilizando con mayor fluidez
los procesos , permitiendo brindar toda la información necesaria requerida
por la organización, para un buen manejo de tomas de decisiones
7. Proyecto II
Página 7
Marco Teórico
Concepto de Metalmecánica
La metalmecánica, estudia todo lo relacionado con la industria metálica,
desde la obtención de la materia prima, hasta su proceso de conversión
en acero y después el proceso de transformación industrial para la
obtención de láminas, alambre, placas, etc. las cuales puedan ser
procesadas, para finalmente obtener un producto de uso cotidiano.
Este proceso se observa en el siguiente cuadro:
Dentro de las diversas ramas del rol manufacturero, la industria metal
mecánica presenta varias características que le hacen acreedora de
ocupar un lugar destacado dentro del contexto industrial
Ilustración 1: Procesos en metalmecánica
8. Proyecto II
Página 8
Sus procesos de fabricación, conllevan una mayor tecnología y su
complejidad contribuye eficazmente a la modernización de la economía,
a la capacitación de la mano de obra y se traduce en un mayor grado de
valor agregado manufacturero. Este sector industrial posee el más alto
efecto multiplicador, lo que determina una alta capacidad de arrastre
sobre el resto de la economía, con la consiguiente creación de empleo
indirecto. En lo referente al Comercio exterior, genera exportaciones de
bienes semi-manufacturados, manufacturados, bienes de consumo
duradero y bienes de capital. La exportación de muchos de los productos
del sector es signo de avance tecnológico y es vendedor de imagen del
Perú en el exterior de un mayor desarrollo industrial.
La industria metalmecánica a nivel nacional, concentra sus actividades
en la producción y elaboración de productos metalmecánicos,
clasificándose en las actividades económicas a nivel nacional dentro el
sector manufacturero, aunque también desarrolle atención de servicios
de mantención y reparación a empresas en general, no constituyendo su
eje central de negocios, sino más bien, un porcentaje poco significativo
de la producción. Además contiene a las empresas de bienes de capital
y a las de soporte o suministro de sectores competitivos importantes
nacionales, como son agroindustria, minería, etc. Por lo tanto, es
importante para el país el establecimiento de un programa que propenda
al mejoramiento continuo de su competitividad en el ámbito nacional e
internacional.
Fuente: anexo 01, referencia nro. 4
9. Proyecto II
Página 9
Importancia del sector metalmecánico
La importancia del sector metalmecánico dentro de la economía, radica
en el elevado dinamismo que despliega en su accionar y en la apreciable
concentración de bienes de alto contenido tecnológico. Estas
características, le asignan un rol preferencial y sus indicadores
(producción, valor agregado, productividad), señalan el nivel productivo y
tecnológico de los países. Por otra parte, es importante destacar que
este sector es proveedor de la mayoría de los bienes de capital
utilizados por otros sectores económicos, afectando sustancialmente sus
productividades. De aquí radica la importancia estratégica del sector, de
cuyo desarrollo depende cierto grado de autonomía tecnológica y parte
de la competitividad del país. Dentro de lo que se estima, el sector
metalmecánico es uno de los más dinámicos de la industria
manufacturera, contribuyendo con aproximadamente el 16% del PBI
manufacturero, generando empleo directo para más de 165 mil
personas, lo que representa el 13% del personal ocupado en la industria.
Clasificación del sector metalmecánico
La industria metal mecánica se divide en términos generales, en seis
subsectores:
Metálicas básicas.
Productos Metálicos.
Maquinarias no eléctricas.
Maquinarias eléctricas.
Material de Transporte y carrocería.
Bienes de capital
El crecimiento del sector metal mecánico está ligado al comportamiento
de los sectores mineros, pesquero, energético y de la construcción.
Fuente: anexo 01, referencia nro.2
10. Proyecto II
Página 10
Sector Minero: La minería adquiere maquinarias y equipos,
depende de los planes de expansión de los grandes proyectos
y medianos proyectos mineros.
Sector Pesquero: Adquiere envases de hojalata, para la
industria conservera, equipos de bienes de capital, plantas de
harina de pescado y accesorios para las lanchas pesquera.
Sector Construcción: Utiliza fierros para las columnas,
bobinas de acero, lanchas de fierro y otros. Proyectos como el
de Mi Vivienda, la construcción de Hoteles y los Planes de
Concesiones de Puertos y Aeropuertos, favorecen su
crecimiento.
La revolución de las comunicaciones en los últimos años dio origen a un
esperado crecimiento de la fabricación de cables y conductores. La
transferencia de empresas del sector comunicaciones y energía, así
como las grandes inversiones que se esperan para este sector
generaron una demanda considerable de productos metal mecánicos, en
lo que se refiere a cables de energía y conductores de los que las
comunicaciones hacen uso intensivo.
El nivel tecnológico de los cables y conductores nacionales es uno de los
mejores de América Latina, no está demás indicar que siempre hay
muchas más opciones que desarrollar.
Tecnología de la metalmecánica
La Cadena Metalmecánica presenta unas características tecnológicas
propias de acuerdo al tamaño de sus empresas
La gran empresa fuera de su maquinaria maneja equipo de
medición y control de procesos de producción, posee laboratorios
dotados con tecnología de punta, usa equipos de metrología para
el control de calidad, utiliza el diseño asistido por computador y
trabaja con herramientas de control numérico
11. Proyecto II
Página 11
La mediana empresa ha tenido mejoras en cuanto a la
adaptación de dispositivos de control numérico a la maquinaria
existente, incremento y sofisticación de procesos de medición
electrónica, pasando de medir centímetros y milímetros a manejar
micras.
En la pequeña industria aún se utiliza tecnología tradicional y
rudimentaria. Con excepción en algunos diseños hay tecnología
propia de la inventiva de la gente. En los talleres sin equipo ni
maquinaria sofisticada se logra fabricar repuestos y hasta
equipos.
Sin embargo estudios realizados en la pequeña empresa muestran, que
esta cuenta con maquinaria nueva la que se calcula en un 82%, con una
edad promedio de 5 años:
La maquinaria restante corresponde a maquinaria usada, con un
promedio de uso de 8 años en las empresas actuales.
En general para todo el sector, la incorporación de tecnología del
extranjero tiene su origen en los Estados Unidos y Europa
principalmente y en pocos casos se encuentra tecnología de origen
asiático. Las tecnologías de vanguardia son empleadas por las
empresas que actúan en los mercados altamente competitivos sean
locales y/o globales, al constituirse uno de sus factores claves para
lograr cada vez más una mayor productividad interna. Dependiendo de
las especialidades de las empresas de metalmecánica, estas pueden
abastecer partes y piezas para fabricar maquinarias de diferentes tipos
de producción, incluyendo la industria espacial.
En nuestro país, desde hace algún tiempo se viene hablando de
“productividad y competitividad”, lo cierto es que para acercarnos a lo
que significa estas palabras en la práctica, no basta: las buenas
intenciones, el entusiasmo, una oficina o institución que lleve el nombre,
alguna normatividad aislada, algunos cursos o seminarios sobre el tema
(en especial orientado para pequeñas empresas), etc. Es importante
12. Proyecto II
Página 12
estar en el lugar donde se concentran las tecnologías que precisamente
contribuyen con la productividad y competitividad, ver cuán cerca o lejos
se encuentran nuestras empresas peruanas delos avances del mundo y
en qué realmente podemos ser competitivos.
Fuente: anexo 01, referencias nro.2, 3,4 y 18
13. Proyecto II
Página 13
CAPITULO II: DESCRIPCION DE LA ORGANIZACION
2.1 Descripción general de la organización
ATEM PERÚ, es una institución privada sin fines de lucro, que asocia
a las PYME del sector metal mecánica y afines del Perú para su
internacionalización a través de la asociatividad como estrategia de
competitividad.
Datos generales de ATEM PERU
RUC: 20505071574
Razón Social: ASOCIACION DE TALLERES Y EMPRESAS DE
METALMECANICA DEL PERU
Nombre Comercial: ATEM PERU
Tipo Empresa: Asociación
Condición: Activo
Fecha Inicio Actividades: 01 / Junio / 2004
Actividad Comercial: Actividades Otras Asociaciones Ncp.
CIIU: 91993
Teléfonos: 5286862
Perfil de ASOCIACION DE TALLERES Y EMPRESAS DE
METALMECANICA DEL PERU:
Empadronada en el Registro Nacional de Proveedores
Representantes Legales de ASOCIACION DE TALLERES Y
EMPRESAS DE METALMECANICA DEL PERU:
Presidente: Silva Santos, José
Empresas Asociadas
La asociación está integrada por 26 empresas (algunas también están
en San Martín de Porres) que se desenvuelven en el rubro eléctrico,
en matricería, fundición y plásticos y como buenos vecinos se apoyan
14. Proyecto II
Página 14
y realizan actividades complementarias, siendo algunas de sus
empresas asociadas: I&T Electronic, Silicon Technology y 2G Perú
2.2 Ubicación y/o entorno
ATEM PERU, cuenta con una cede central ubicada en el distrito de
los Olivos, Jr. El sodio nro. 293 Urbanización industrial. Infantas-Los
Olivos
2.3 Reseña histórica
ATEM PERÚ se funda un 22 de enero del 2001, en el Parque
Industrial Infantas ubicado en el distrito de Los Olivos, con el
propósito de Promover la Competitividad asociativa, las exportaciones
Ilustración 2: Ubicación de ATEM-PERU
Información obtenida por googlemaps
15. Proyecto II
Página 15
de metal mecánica, las buenas prácticas hasta la obtención del ISO
9001 y el ISO 14000
2.4 Objetivos según nuestros Estatutos (Fundación)
a. Promover el mejoramiento continuo de Calidad según las
Normas de ISO 9000, la cultura del Justo a Tiempo, la
Competitividad Integral de sus asociados para mejorar y
sostener su capacidad de respuesta productiva con miras a la
exportación de bienes y servicios.
b. Promover y fomentar los consorcios, subcontratación y la
maquila, como motores del desarrollo industrial de las PYME.
c. Promover y desarrollar permanentemente misiones comerciales,
ferias, expo ventas, ruedas de negocios, etc. a nivel nacional e
internacional e internacional para viabilizar las ofertas
exportables de los asociados.
d. Coordinar con entidades del sector público y privado las
acciones que fueran necesarias para promover las ventajas
comparativas y competitivas de sus asociados para la expansión
y promoción de sus ofertas productivas a nivel nacional e
internacional.
e. Establecer convenios con instituciones públicas y privadas con la
finalidad de contribuir en mejorar la capacidad de respuesta
productiva de sus asociados en forma individual o consorciada.
f. Fortalecer el desarrollo y crecimiento de la Asociación a través
de la capacitación permanente de sus dirigentes y asociados
con el fin de acceder a fuentes de apoyo económico, financiero y
tecnológicos, promocionados por organismos nacionales e
internacionales.
16. Proyecto II
Página 16
g. Captar recursos económicos y donaciones de bienes para que
estos contribuyan a los fines de la Asociación tales como la
promoción de sus asociados.
h. Brindar y gestionar apoyo técnico, legal, financiero, de comercio
exterior, de marketing y otros relacionados al desarrollo
empresarial de sus asociados.
i. Promover y fomentar una cultura industrial justa y equitativa con
la preservación del medio ambiente basado en los requisitos de
las normas del ISO 14000.
j. Promover el esparcimiento, el deporte, la cultura y otros valores
cívicos que cohesionen la integración social de la asociación.
k. Defender y ejercer los derechos fundamentales de la persona y
de la sociedad, tal como nos asiste nuestras Constitución
Política del Estado, en los artículos primero, segundo y tercero
Información brindada por ATEM-PERU
17. Proyecto II
Página 17
2.5 Misión
ATEM PERÚ, tiene la misión de promover la asociatividad (Enfoque
Clúster) como estrategia de competitividad para la
internacionalización de las PYME del Perú mediante los principios
Calidad Total, la conservación del medio ambiente mediante alianzas
estratégica
2.6 Visión
ATEM PERÚ, será una institución de vanguardia y líder en el Perú,
con propuesta de competitividad asociativa del Sector PYME metal
mecánica del Perú, principal influyente de propuestas para que el
Perú no solo sea un país minero, sino también metalúrgico con valor
tecnológico agregado. ATEM PERÚ, será una institución líder en
buenas prácticas de manufacturas y en la gestión del medio ambiente
de sus asociados y profesionales altamente especializados y
competentes en su Clúster Modelo Metal Mecánica, reconocida por la
indiscutible contribución en innovación, investigación, desarrollo y
transferencia tecnológica para la evolución competitiva de las PYME
del sector y del país
Información brindada por ATEM-PERU
Información brindada por ATEM-PERU
18. Proyecto II
Página 18
2.7 Mercado de ATEM PERU
Desde el inicio apuntaron a Ecuador, y hasta hoy es el principal
mercado. Le siguen Bolivia, Colombia, Venezuela, Centroamérica y
Chile. El grupo ATEM comenzó con 380 empleados, ahora tiene más
de 600. Su objetivo no solo es exportar sino también internacionalizar
a las empresas: competir de igual a igual afuera.
Información brindada por ATEM-PERU
19. Proyecto II
Página 19
2.8 Estructura Orgánica
Ilustración 3: Organigrama de ATEM-PERU
Información brindada por ATEM-PERU
20. Proyecto II
Página 20
CAPITULO III: DEFINICIÓN DEL PROBLEMA.
3.1 El problema
Las empresas asociadas a ATEM PERU, cuenta con sistema de
información que no es adecuado para la organización, como es el
registro de sus inventarios de forma manual y eventualmente en
Excel, no contando con una infraestructura de redes, las bases de
datos no integradas generan datos no consolidados que necesita el
clúster para la toma de decisiones, ocasionando comúnmente exceso
de producción, que originan a su vez elevados costos de almacenaje,
y en algunos ocasiones escasez de algunos productos, disminuyendo
su capacidad de respuesta productiva.
Obtenido por el Análisis del Árbol de Problemas
21. Proyecto II
Página 21
3.2 Definición del Proyecto.
3.2.1 Alternativas de solución
Integrar los procesos de la organización a través de los Web services
que nos va permitir intercambiar datos entre las diferentes
aplicaciones que la organización posee, utilizando como base el
lenguaje de programación orientado a objetos JAVA EE, e integrando
todas las entidades de la organización en la de la base datos MySql,
basándonos en la metodología de desarrollo de software XP.
Brindado así una mejor comunicación y comprensión entre las
diferentes áreas, que permita cumplir sus objetivos de largo y corto
alcance, facilitando las tomas de decisiones, generando más
utilidades y ventaja competitiva en la organización.
22. Proyecto II
Página 22
3.2.2 Justificación del Proyecto
Es importante señalar, que en tiempos pasados, se discutían las
dificultades planteadas por los sistemas de información, que se refería
a las personas, no a la tecnología de la información, luego se ha
intentado despertar el interés ante las posibilidades que ella brinda.
En tal sentido, muchos años más tarde, se examinan las predicciones
hechas con referencias al cambio tecnológico, resulta impresionante
su penetración y la incorporación de la tecnología de la información a
la vida cotidiana pues al fin, su influencia en el hombre no se ha
hecho esperar y el ser humano ha tomado amplia conciencia de la
profunda alteración que la utilización no sólo de computador sino del
conjunto de técnicas de tratamiento de la información derivada de su
uso, ha llevado a construir los desafíos del futuro, tal es el caso de los
sistemas de gestión administrativo, que se implementan en empresas
para la optimización de la información.
Por ello la siguiente investigación tiene como objetivo principal
Implementar e integrar Sistemas de información en la gestión de
procesos del Clúster Metalmecánico para la empresa ATEM PERU.
Este objetivo nos permitirá Integrar los procesos de la organización
Brindado así una mejor comunicación y comprensión entre las
diferentes áreas, facilitando la toma de decisiones, generando más
utilidades y ventaja competitiva en la organización.
23. Proyecto II
Página 23
3.3 Viabilidad.
3.3.1 Análisis de costos y beneficios
DIRECTOS INDIRECTOS
ACTIVOS CANTIDAD S/. S/.
IMPLEMENTACIÓN
Licencias(1) 5 8,470.00 Actualización de Data 3,250.00
Adquisición de
sistemas (2)
2 52,650.00
Digitación de Data
Básico
700.00
Capacitación de
Usuario
2 6,000.00
Gastos Administrativo y
otros
1400.00
Desarrollo de
Producto
4 30,900.00
Prueba de
Prototipo
1 10,150.00
Adquisición de
equipos(3)
20 34,674.00
Juicio Experto 12 1,800.00
OPERACIÓN
Soporte
Desarrollo
(Analista y Jefe
Proyecto)
2 12,000.00
TOTAL 156,644.00 TOTAL 5,350.00
1. Licencias
Cantidad Descripción Precio Unit Precio total
5 Licencia Office 2010 S/. 702.0 S/. 3,510.0
2 Licencia de Windows Server 2008 S/. 1,080.0 S/. 2,160.0
2 Licencia IBM Modelamiento S/. 1,400.0 S/. 2,800.0
Costo total S/. 3,182.0 S/. 8,470.0
Para la implementación del proyecto serán necesarias las licencias descritas en
la tabla adjunta:
(1) Se requieren 5 licencias de Office 2010, siendo su costo de 270 dólares
cada uno, el tipo de cambio del dólar es de S/.2.70
(2) Se requieren 2 licencias de Windows server 2008, siendo su costo de
800 dólares cada uno, el tipo de cambio del dólar es de S/.2.70
(3) Se requieren 2 licencias de Licencia IBM Modelamiento siendo su costo
de 519 dólares cada uno.
24. Proyecto II
Página 24
2. Adquisición de sistemas
Cantidad Descripción Precio Unit Precio total
1 Módulo de Producción y costo (1) S/. 48,600.0 S/. 48,600.0
1 Módulo de RRHH S/. 4,050.0 S/. 4,050.0
Costo total S/. 52,650.0 S/. 52,650.0
Se adquirirán los módulos del ERP suiteoss, de la empresa
ACME_TIC, descritas en tabla adjunta:
(1) Se requiere el módulo de producción y costos, siendo su
costo de 18000 dólares, el tipo de cambio del dólar es de
S/.2.70.
(2) Se requiere el módulo de RRHH, siendo su costo de
1500 dólares, el tipo de cambio del dólar es de S/.2.70.
3. Adquisición de equipos
Cantidad Descripción Precio Unit Precio Total
2 Servidor IBM S X3100 M4 intelxeon de 3.10GHz(4 NUCLEOS) S/. 2,100.0 S/. 4,200.0
Disco duro: 500GB S-ATA SS marca IBM
1 Switch D-Link DGS-1024D, 24 puertos 10/100/1000Mbps S/. 920.0 S/. 920.0
1 LinksysRouter 54mbps 4 Port S/. 350.0 S/. 350.0
9 CORE i3-2100 DE 3.10GHz LGA-1155 03MB S/. 1,500.0 S/. 13,500.0
Ram 2 Gb, HDD 500Gb
2 INTEL CORE i5-2310 DE 2.90GHz LGA-1155 06MB S/. 1,717.0 S/. 3,434.0
Ram 2 Gb DDR3, HDD 500Gb
5 INTEL CORE i7-2600 DE 3.40GHz LGA-1155 08MB S/. 2,454.0 S/. 12,270.0
Ram 4 Gb DDR3, HDD 500Gb
Costo total S/. 34,674.0
Presupuesto realizado del hardware necesario para implementar el proyecto.
25. Proyecto II
Página 25
4. Estimación de ingresos
ESTIMACION DE
INGRESOS
Año 0 Año 1 Año 2 Año 3 Año 4
2012 2013 2014 2015 2016
Ingresos 84,900 93,390 84,051 63,038
Crecimiento Estimado 1.10 0.90 0.75 0.60
Capacitación usuario Final 3,000.00 3,000.00
Ingreso Promedio 87,900.00 96,390.0 84,051.00 63,038.25
(1) Se ha asumido el crecimiento estimado por año en un 0.1 en el primer
año y en el resto un decremento del 0.15
(2) La estimación de ingresos, es obtenido por el beneficio obtenido al
implementar el proyecto, este valor lo consideramos al primer año y el
resto se va auto calculando con la tasa de crecimiento estimado
asumido en el punto1 (ver tabla de beneficios).
(3) La capacitación al usuario se realizara en dos periodos distribuidos en
dos años.
(4) El ingreso total es la suma de ingresos y la capacitación de usuario final.
.
5. Requerimiento de recursos humanos
Mantenimiento
Costo
Unitario AÑO 1 AÑO 2 AÑO 3 AÑO 4
Jefe de Proyecto
Cantidad 1,300.00 1 0 0 0
Costo Total 10,400.00 0.00 0.00 0.00
Analista
funcional
Cantidad 1,000.00 1 1 1 0.00
Costo Total 12,000.00 12,000.00 12,000.00 0.00
Programador
Cantidad 850.00 2 0 0 0
Costo Total 8,500.00 0.00 0.00 0.00
TOTAL 30,900.00 12,000.00 12,000.00 0.00
El Jefe de Proyecto tiene un sueldo de S/. 1300.00 y sólo se requiere al
Jefe de Proyecto en el Primer año después de la implantación del
proyecto.
El Analista Funcional tiene un sueldo de S/. 1000.00 el cual estará
presente al largo de todo el tiempo, ya que será el encargado de ver el
buen funcionamiento del sistema.
26. Proyecto II
Página 26
6. Estimación de egresos
(1) Se requerirá de un juicio experto, para la integración de los sistemas de
información de Atem-Peru, la asesoría se dará en 8 horas particionadas en
diferentes periodos, el costo por hora de asesoría es de s/. 150.00
(2) Se requerirá de 5 personas para la actualización y digitalización de los
expedientes de los clientes antiguos.
(3) Algunos datos de los clientes tendrán que digitalizarse para hacer las
pruebas, el resto de datos tendrán que ser digitalizadas cuando llegue el
registro de un nuevo cliente.
(4) La prueba de prototipo generara S/.3000 por las horas hombre que se
usaran para esta prueba, entre otros gastos.
(5) El material de oficina sustentado aquí son por hojas, lapiceros,
Impresiones, tinta, fotocopias, entre otros.
(6) Se requerirá de estos dípticos para la información al personal y usuarios,
sobre el avance tecnológico.
Concepto Precio
Unitario
Gastos
Cantidad Precio Total
Costo por Asesoría
Asesoría de Implementación(1) 150.00 12 1,800.00
Costo Levantamiento de Información
Actualización de data(2) 650.00 5 3,250.00
Digitalización de datos Básicos(3) 700.00 1 700.00
Material experimental
Probar prototipo (modelo experimental)(4) 3,000.00 1 3,000.00
Gastos Administrativos y Otros
Material de oficina(5) 300.00 1 300.00
Dípticos(6) 150.00 4 600.00
Viáticos capacitador a empresas asociadas(7) 500.00 1 500.00
Total Egresos Estimados 10,150.00
27. Proyecto II
Página 27
(7) Se incurre en este gasto, al ser Atem-Peru un clúster con 26 empresas
ubicadas en diferentes puntos de lima y se requieres que personal vaya a
estos puntos para capacitar.
Estimación de Egresos
Año 0 Año 1 Año 2 Año 3 Año 4
2012 2013 2014 2015 2016
Gastos de Personal 32,500.00 12,000.00 12,000.00 0.00
Costos de Licencias 8,470.00 0.00 0.00 0.00
Módulos Producción, RRHH 52,650.00
Costos y Gastos diversos 10,150.00 0.00 0.00 0.00
Riesgos 5075 5075 5075 5075
Equipos de computo 34,674.00 0.00 0.00 0.00
Total Egresos 105,944.00 37,575.00 17,075.00 17,075.00 5,075.00
El total de egresos estimados se considera los costos: de licencias, módulos
de producción, RRHH, costos y gastos diversos, y equipos de cómputo, estos
gastos se asumen solo para el año de la preparación del proyecto, es por ello
que se asumen en el año cero.
El total de Egresos es la suma de estos puntos, siendo S/. 105,944.00 que
representan la inversión que se asumiría para la implantación del proyecto.
28. Proyecto II
Página 28
3.3.2 Matriz de Beneficios
Creación de valor en negocios
Estado actual % actual Estado deseado Función (Interna)
%
deseado
Ventas 50% Mas ventas
Mejora constante de los
procesos en tiempo de
respuesta.
60%
80%
Disminuye tiempo de cuellos de
botella.
20%
Costos 40%ingresos Reducir costos
Gastos administrativos durante
el flujo de trabajo.
10%
60%
Administración de los recursos
a través de un mejor
seguimiento de los procesos
10%
Mayor flexibilidad técnica para
crear y expandir nuevas
funcionalidades a futuro
40%
Clientes
actuales
20%
Clientes
deseados
Menor tiempo de espera entre
cada presupuesto realizado
50%
50%
Descripción Valor Total beneficios
Ventas 70000 56000
costos 31500 18900
valor de clientes 20000 10000
total beneficio 84900
29. Proyecto II
Página 29
3.3.3 Matriz de Riesgos
I
D Riesgo Detalle Impacto Prob Exposición
Tipo
Estrategia
Estrategia
Importe
para flujo
1
Resistencia
al cambio.
Una de las cosas
más comunes en
las empresas de
hoy es el temor a
aceptar que ciertos
procesos dentro de
ellas funcionaran
mucho mejor
adoptando nuevas
formas de realizar
sus procesos.
S/.20,000.00
30% S/. 6,000.00 Mitigar
Elegir un Focus
Gruop(10
Participantes), a
fin de analizar
como tomara el
producto el
personal
S/. 6,000.00
2
Usuario
final no
capacitado
Falta de
conocimiento
informático del
usuario final
S/. 5,000.00 20% S/.1,000.00 Mitigar
Mediante
evaluaciones,
medir el
desempeño de
los analistas, y
programar
nuevas
capacitaciones.
S/. 1,000.00
3
Número de
usuarios
operativos
capacitado
s a nivel de
empresas
asociadas
no sea
suficiente.
Las
capacitaciones,
solo se brindan en
empresas
principales,
descuidando el
resto de empresas
de menor
producción. y/ o
capacidad
instalada
S/. 4,500.00 40% S/ 1,800.00 Evitar
Tener una
persona de
apoyo, que
apoye en
capacitación a las
agencias
menores.
S/. 1,800.00
4 Sponsor no
cuenta con
la
experiencia
adecuada,
para la
administrac
ión del
sistema.
Sponsor necesita
apoyo, de una
persona preparada
y entendida en el
manejo total del
producto.
S/.5,000.00 40% S/.2,000.00 Evitar
Enviar personal
del proyecto, a
darle apoyo
para la puesta
de fase de
pruebas con el
usuario final.
S/. 2,000.00
5
Retraso en
pruebas
finales con
el usuario.
Sponsor, no cuenta
con el tiempo
necesario, debido a
las labores diarias
que desempeña
S/.10,000.00
20% S/.2,000.00 Evitar
Capacitar a
persona extra,
en el apoyo para
las fases de
pruebas finales
con el usuario.
S/. 2,000.00
6
Cambio de
Gerencia
General
Por factores
externos o
internos, se
realizan cambio de
gerencia general.
S/.50,000.00
15% S/.7,500.00 Mitigar
Contrato debe
indicar, que
proyecto debe
mantenerse, así
se realicen
cambios de
gerencia.
S/. 7,500.00
S/.
20,300.00
30. Proyecto II
Página 30
3.3.4 Evaluación económica
3.3.4.1 Flujo de caja
Año 0 Año 1 Año 2 Año 3 Año 4
2012 2013 2014 2015 2016
INGRESOS
Ingreso por el servicio(1) 87,900.00 96,390.00 84,051.00 63,038.25
Total ingresos 87,900.00 96,390.00 84,051.00 63,038.25
EGRESOS
Gastos de Personal(2) 32,500.00 12,000.00 12,000.00 0.00
Costos de Licencias(3) 0.00 0.00 0.00 0.00
Módulos Produccion,RRHH (4) 0.00 0.00 0.00 0.00
Riesgos(5) 5,075.00 5,075.00 5,075.00 5,075.00
Equipos de cómputo (6) 0.00 0.00 0.00 0.00
Total Egresos 37,575.00 17,075.00 17,075.00 5,075.00
Utilidad antes de impuestos(7) 50,325.00 79,315.00 66,976.00 57,963.25
Impuestos 30% 15097.5 23794.5 20092.8 17388.975
Utilidad Neta 35,227.50 55,520.50 46,883.20 40,574.28
(1) La estimación de ingresos se obtiene del análisis realizado en la tabla
estimación de ingresos (matriz de beneficios).
(2) Gastos de Personal se obtiene del análisis detallado en la tabla
requerimiento de recursos humanos, ubicado en el punto 5 sección: viabilidad
(3) No se considera el costo de licencias para el análisis de los años venideros,
ya que las licencias compradas son perpetuas
(4) Los costos de los módulos de producción y Recursos humanos, se obtienes
según detalle mostrado, en la tabla adquisición de sistemas, ubicado en el
punto 2 sección viabilidad.
(5) El riesgo se determina de nuestra matriz de riesgos la cual se prorratea en 4
años, los que han sido analizados anteriormente.
(6) El detalle de equipos de cómputo se obtiene según tabla de adquisición de
equipos, ubicado en el punto 3, sección viabilidad.
(7) La utilidad Antes de Impuestos se estima de la diferencia entre el Total de
Ingresos y el Total de Egresos
(8) Los impuestos son deducidos del punto (7) con una tasa de cálculo del 0.3
por ciento.
31. Proyecto II
Página 31
3.3.4.2 Calculo del VAN
Año 0 Año 1 Año 2 Año 3 Año 4
2012 2013 2014 2015 2016
Flujo Económico(1) -105,944.00 35,227.50 55,520.50 46,883.20 40,574.28
Tasa de descuento (12%)
Valor Actual (3) 31,453.13 44,260.60 33,370.54 25,785.69
VAN 28,925.95
(1) El Flujo Económico es la respuesta al análisis de Egresos sustentada en el
punto 6 de la sección análisis de costos y beneficios del Capítulo 3
(2)La tasa de descuento es del 12% esta tasa la proporcionó la empresa ATEM-
PERU.
(3)Es valor actual es la división del flujo económico en el periodo “x” dividido
entre la tasa de descuento elevado al periodo en evaluación.
( ) ( ) ( ) ( )
Lo cual quiere decir que el proyecto de inversión es rentable ya que se obtiene
una VAN positiva.
3.3.4.3 Calculo del TIR
Año 0 Año 1 Año 2 Año 3 Año 4
2012 2013 2014 2015 2016
Flujo Económico -105,944.00 35,227.50 55,520.50 46,883.20 40,574.28
TIR (VAN=0) 24%
Es la tasa de rendimiento del proyecto que se compara con el costo de
oportunidad de invertir en el proyecto. Lo cual analizando con la tasa de
descuento del 12 % significa que es rentable la puesta en marcha del proyecto
VAN = 28,925.95
32. Proyecto II
Página 32
3.3.4.4 Calculo del Periodo de retorno
Año 0 Año 1 Año 2 Año 3 Año 4
2008 2009 2010 2011 2012
Flujo Económico -105,944.00 35,227.50 55,520.50 46,883.20 40,574.28
-70,716.50 -15,196.00 31,687.20 0.00
PERIODO DE RETORNO: 2.68
El periodo de retorno es de 2.68 lo cual quiere decir que la ganancia neta se
recupera en el año 2.68 (redondeando en el año 3). En el periodo 2.58 se verá
que no hay ganancias ni pérdidas. Como se puede apreciar en la tabla en el
año tres se ve reflejado una ganancia aproximada a los S/. 31,687.20 soles que
es la ganancia de 4 meses aproximadamente desde el periodo de equilibrio
(2.68 años)
33. Proyecto II
Página 33
3.4 Objetivos del Proyecto.
3.4.1 Objetivos General
Implementar e integrar Sistemas de información en la
gestión de procesos del Clúster Metalmecánico
3.4.2 Objetivos Específicos
Contar con los inventarios actualizados en el tiempo
oportuno de la organización.
Contar con la comunicación eficiente en los procesos de la
organización.
Contar con bases de datos consolidadas en la organización.
Objetivo obtenido por el Análisis del Marco lógico
Objetivo obtenido por el Análisis Marco lógico
34. Proyecto II
Página 34
3.5 Fundamento Teórico
3.5.1 Antecedentes
Importancia del sector metalmecánico
La importancia del sector metalmecánico dentro de la economía,
radica en el elevado dinamismo que despliega en su accionar y en la
apreciable concentración de bienes de alto contenido tecnológico.
Estas características, le asignan un rol preferencial y sus indicadores
(producción, valor agregado, productividad), señalan el nivel
productivo y tecnológico de los países. Por otra parte, es importante
destacar que este sector es proveedor de la mayoría de los bienes
de capital utilizados por otros sectores económicos, afectando
sustancialmente sus productividades. De aquí radica la importancia
estratégica del sector, de cuyo desarrollo depende cierto grado de
autonomía tecnológica y parte de la competitividad del país. Dentro
de lo que se estima, el sector metalmecánico es uno de los más
dinámicos de la industria manufacturera, contribuyendo con
aproximadamente el 16% del PBI manufacturero, generando empleo
directo para más de 165 mil personas, lo que representa el 13% del
personal ocupado en la industria.
Tecnología de la metalmecánica
La Cadena Metalmecánica presenta unas características
tecnológicas propias de acuerdo al tamaño de sus empresas
La gran empresa fuera de su maquinaria maneja equipo de
medición y control de procesos de producción, posee laboratorios
dotados con tecnología de punta, usa equipos de metrología para el
control de calidad, utiliza el diseño asistido por computador y trabaja
con herramientas de control numérico
La mediana empresa ha tenido mejoras en cuanto a la adaptación
de dispositivos de control numérico a la maquinaria existente,
Fuente: anexo 02, referencia bibliográfica nro.3
35. Proyecto II
Página 35
incremento y sofisticación de procesos de medición electrónica,
pasando de medir centímetros y milímetros a manejar micras.
En la pequeña industria aún se utiliza tecnología tradicional y
rudimentaria. Con excepción en algunos diseños hay tecnología
propia de la inventiva de la gente. En los talleres sin equipo ni
maquinaria sofisticada se logra fabricar repuestos y hasta equipos.
3.5.2 Software especializado existente
UGS Solid Edge v19 (ASIDEK-España)
Creación y gestión de la información de diseño, simulación
Siddex ERP Metalmecánico (Gestión Cim Consultores-España)
Sistema de gestión integrada que le permita optimizar todos los
recursos productivos con el objetivo de alcanzar un mayor beneficio.
3.5.3 Bases Teóricas
Sistema.
Es el conjunto de dos o más elementos de cualquier clase
interrelacionados entre sí, que puede dividirse en partes o
subsistemas. Conjunto ordenado de procedimientos (operaciones y
métodos), relacionados entre sí, que contribuyen a realizar una
función, o a lograr un objetivo.
Sistema de Información.
Según Hernández, L (2006) el sistema de información es un sistema
que procesa datos, en forma tal que pueden ser utilizados por quien
los recibe para fines de toma de decisiones.
El sistema de información dentro de una organización juega el papel
análogo al del sistema nervioso de un animal. Incluido en el sistema
están los componentes que ejecutan funciones tales como: la
percepción, clasificación, transmisión, almacenamiento,
36. Proyecto II
Página 36
recuperación, transformación. Su propósito primordial es
proporcionar información para la toma de decisiones y la
coordinación. En el sentido más amplio el sistema de información
incluye todos los componentes envueltos en la toma de decisiones,
coordinación y advertencia tanto humanas como automáticas.
Objetivo del sistema de información. Proporciona información
para la toma de decisiones y solución de problemas, actividades que
son vitales y obligatorias en cualquier tipo de organización y que
permite controlar y dirigir su existencia, operación y destino.
Sistema de Información Administrativo. Un sistema de información
es todo un proceso, por medio del cual se recopilan, clasifican,
procesan, interpretan y se resumen cantidades de datos, a fin de
sacar conclusiones, que se informarán a la Gerencia y demás
personas interesadas en la organización: con el deliberado propósito
de orientar la toma de las decisiones. Funciones de un Sistema de
Información. Los Sistemas de Información difieren en sus tipos de
entradas y salidas, en el tipo de procesamiento y en su estructura.
Estos elementos están determinados por el propósito u objetivo del
sistema, el cual es establecido a su vez, por la organización. A pesar
de las diferencias que puedan existir entre distintos sistemas de
información, en todos ellos se pueden encontrar un conjunto de
funciones.
a). Procesamiento de Transacciones: La cual consiste en capturar
o recolectar clasificar, ordenar, calcular, resumir y almacenar los
datos originados por las transacciones que tienen lugar durante la
realización de actividades en la organización.
b). Definición de Archivos: Consiste en almacenar los datos
capturados, por el procesamiento de transacciones, de acuerdo a
una estructura u organización de almacenamiento adecuada (base
de datos o archivos); un método que facilite su almacenamiento,
actualización y acceso; y un dispositivo apropiado de
almacenamiento (discos, cintas, disquetes, etc.)
37. Proyecto II
Página 37
c). Mantenimiento de Archivos: Los archivos o base de datos del
sistema deben mantenerse actualizados. Las operaciones básicas
de mantenimiento son la inserción. La modificación y la eliminación
de datos en los medios de almacenamiento.
d). Generación de Reportes: La realización de estas funciones es
esencial para el sistema de información, ella se encarga de producir
la información requerida y transmitirla a los puntos o centros de
información que la soliciten.
Análisis de los Sistemas
Se debe tomar como, base un lenguaje de programación orientados
a objetos, Aunque hay muchas interpretaciones para OO, una
primera idea es diseñar el software de forma que los distintos tipos
de datos que usen estén unidos a sus operaciones.
Así, los datos y el código (funciones o métodos) se combinan en
entidades llamadas objetos. Un objeto puede verse como un
paquete que contiene el “comportamiento” (el código) y el “estado”
(datos). El principio es separar aquello que cambia de las cosas que
permanecen inalterables.
Lenguaje de Programación
Java
Java es un lenguaje de programación y la primera plataforma
informática creada por Sun Microsystems en 1995. Es la tecnología
subyacente que permite el uso de programas punteros, como
herramientas, juegos y aplicaciones de negocios. Java se ejecuta en
más de 850 millones de ordenadores personales de todo el mundo y
en miles de millones de dispositivos, como dispositivos móviles y
aparatos de televisión.
Fuente: anexo01, referencia nro.21, 23
38. Proyecto II
Página 38
Hasta la fecha, la plataforma Java ha atraído a más de 9 millones de
desarrolladores de software. Se utiliza en los principales sectores de
la industria de todo el mundo y está presente en un gran número de
dispositivos, equipos y redes.
C++
C++ es un lenguaje de programación diseñado a mediados de los
años 1980 por BjarneStroustrup. La intención de su creación fue el
extender al exitoso lenguaje de programación C con mecanismos
que permitan la manipulación de objetos. En ese sentido, desde el
punto de vista de loslenguajes orientados a objetos, el C++ es un
lenguaje híbrido.
Posteriormente se añadieron facilidades de programación genérica,
que se sumó a los otros dos paradigmas que ya estaban admitidos
(programación estructurada y la programación orientada a objetos).
Por esto se suele decir que el C++ es un lenguaje de programación
multiparadigma.
Actualmente existe un estándar, denominado ISO C++, al que se
han adherido la mayoría de los fabricantes de compiladores más
modernos. Existen también algunos intérpretes, tales como ROOT.
Java EE
Java Platform, Enterprise Edition o Java EE (anteriormente conocido
como Java 2 Platform, Enterprise Edition o J2EE hasta la versión
1.4), es una plataforma de programación—parte de la Plataforma
Java—para desarrollar y ejecutar software de aplicaciones en el
lenguaje de programación Java con arquitectura de N capas
distribuidas y que se apoya ampliamente en componentes de
software modulares ejecutándose sobre un servidor de aplicaciones.
La plataforma Java EE está definida por una especificación. Similar
a otras especificaciones del Java CommunityProcess, Java EE es
Fuente: anexo01, referencia nro.26
39. Proyecto II
Página 39
también considerada informalmente como un estándar debido a que
los proveedores deben cumplir ciertos requisitos de conformidad
para declarar que sus productos son conformes a Java EE;
estandarizado por The Java CommunityProcess / JCP.
Java EE tiene varias especificaciones de API, tales como JDBC,
RMI, e-mail, JMS, Servicios Web, XML, etc y define cómo
coordinarlos. Java EE también configura algunas especificaciones
únicas para Java EE para componentes. Estas incluyen Enterprise
JavaBeans, servlets, portlets (siguiendo la especificación de Portlets
Java), JavaServerPages y varias tecnologías de servicios web. Ello
permite al desarrollador crear una Aplicación de Empresa portable
entre plataformas y escalable, a la vez que integrable con
tecnologías anteriores. Otros beneficios añadidos son, por ejemplo,
que el servidor de aplicaciones puede manejar transacciones, la
seguridad, escalabilidad, concurrencia y gestión de los componentes
desplegados, significando que los desarrolladores pueden
concentrarse más en la lógica de negocio de los componentes en
lugar de en tareas de mantenimiento de bajo nivel.
Web Services
Un servicio web (en inglés, Web service) es una pieza de software
que utiliza un conjunto de protocolos y estándares que sirven para
intercambiar datos entre aplicaciones. Distintas aplicaciones de
software desarrolladas en lenguajes de programación diferentes, y
ejecutadas sobre cualquier plataforma, pueden utilizar los servicios
web para intercambiar datos en redes de
computadoras como Internet.
La interoperabilidad se consigue mediante la adopción
de estándares abiertos.
Las organizaciones OASIS y W3C son los comités responsables de
la arquitectura y reglamentación de los servicios Web. Para mejorar
Fuente: anexo01, referencia nro.27
40. Proyecto II
Página 40
la interoperabilidad entre distintas implementaciones de servicios
Web se ha creado el organismo WS-I, encargado de desarrollar
diversos perfiles para definir de manera más exhaustiva estos
estándares.
Estándares empleados
Web ServicesProtocolStack: Así se denomina al conjunto de
servicios y protocolos de los servicios Web.
XML (Extensible MarkupLanguage): Es el formato estándar
para los datos que se vayan a intercambiar.
SOAP (Simple Object Access Protocol) o XML-RPC (XML
RemoteProcedureCall): Protocolos sobre los que se establece
el intercambio.
Otros protocolos: los datos en XML también pueden enviarse
de una aplicación a otra mediante protocolos normales
como HTTP (Hypertext Transfer Protocol), FTP (File Transfer
Protocol), oSMTP (Simple Mail Transfer Protocol).
WSDL (Web ServicesDescriptionLanguage): Es el lenguaje de
la interfaz pública para los servicios Web. Es una descripción
basada
en XML de los requisitos funcionales necesarios para
establecer una comunicación con los servicios Web.
UDDI (Universal Description, Discovery and Integration):
Protocolo para publicar la información de los servicios Web.
Permite comprobar qué servicios web están disponibles.
WS-Security (Web Service Security): Protocolo de
seguridadaceptadocomoestándarpor OASIS (Organization for
the Advancement of Structured Information Standards).
Garantiza la autenticación de los actores y la confidencialidad
de los mensajes enviados.
Fuente: anexo01, referencia nro.28
41. Proyecto II
Página 41
MySql
MySQL es un sistema de gestión de bases de datos relacional,
multihilo y multiusuario con más de seis millones de instalaciones.
MySQL AB desde enero de 2008 una subsidiaria de Sun
Microsystems y ésta a su vez de Oracle Corporation desde abril de
2009 desarrolla MySQL como software libre en un esquema de
licenciamiento dual.
Por un lado se ofrece bajo la GNU GPL para cualquier uso
compatible con esta licencia, pero para aquellas empresas que
quieran incorporarlo en productos privativos deben comprar a la
empresa una licencia específica que les permita este uso. Está
desarrollado en su mayor parte en ANSI C.
Al contrario de proyectos como Apache, donde el software es
desarrollado por una comunidad pública y los derechos de autor del
código están en poder del autor individual, MySQL es patrocinado
por una empresa privada, que posee el copyright de la mayor parte
del código.
PacketTracer
Es la herramienta de aprendizaje y simulación de redes interactiva
para los instructores y alumnos de Cisco CCNA. Esta herramienta
les permite a los usuarios crear topologías de red, configurar
dispositivos, insertar paquetes y simular una red con múltiples
representaciones visuales. PacketTracer se enfoca en apoyar mejor
los protocolos de redes que se enseñan en el currículum de CCNA.
Este producto tiene el propósito de ser usado como un producto
educativo que brinda exposición a la interfaz comando – línea de los
dispositivos de Cisco para practicar y aprender por descubrimiento.
PacketTracer 5.3.3 es la última versión del simulador de redes de
Cisco Systems, herramienta fundamental si el alumno está cursando
el CCNA o se dedica al networking.
Fuente: anexo01, referencia nro.29
42. Proyecto II
Página 42
En este programa se crea la topología física de la red simplemente
arrastrando los dispositivos a la pantalla. Luego clicando en ellos se
puede ingresar a sus consolas de configuración. Allí están
soportados todos los comandos del Cisco OS e incluso funciona el
"tabcompletion". Una vez completada la configuración física y lógica
de la net, también se puede hacer simulaciones de conectividad
(pings, traceroutes, etc.) todo ello desde las misma consolas
incluidas.
Principales funcionalidades:
Entre las mejoras del PacketTracer 5 encontramos:
Soporte para Windows (2000, XP, Vista) y Linux (Ubuntu y
Fedora).
Permite configuraciones multiusuario y colaborativas en tiempo
real.
Soporte para IPv6, OSPF multiárea, redistribución de rutas,
RSTP, SSH y Switchs multicapa.
Sun Java System Web Server.
Es un servidor web de Sun Microsystems, por supuesto,
pensado para ejecutar JSP y Servlets, pero también con
soporte para ASP, PHP o CGI. Es comercial, pero tiene
una opción de descarga para probarlo
Fuente: anexo 01, referencia nro. 21, 22,23
43. Proyecto II
Página 43
METODOLOGIA ELEGIDA: Metodología Programación extrema
Definición
La Programación Extrema es una metodología ligera de desarrollo
de software que se basa en la simplicidad, la comunicación y la
realimentación o reutilización del código desarrollado.
Características fundamentales
Las características fundamentales del método son:
Desarrollo iterativo e incremental: pequeñas mejoras,
unas tras otras.
Pruebas unitarias continuas, frecuentemente repetidas y
automatizadas, incluyendo pruebas de regresión. Se
aconseja escribir el código de la prueba antes de la
codificación.
Programación en parejas: se recomienda que las tareas
de desarrollo se lleven a cabo por dos personas en un
mismo puesto. Se supone que la mayor calidad del código
escrito de esta manera -el código es revisado y discutido
mientras se escribe- es más importante que la posible
pérdida de productividad inmediata.
Frecuente integración del equipo de programación con
el cliente o usuario. Se recomienda que un representante
del cliente trabaje junto al equipo de desarrollo.
Corrección de todos los errores antes de añadir nueva
funcionalidad. Hacer entregas frecuentes.
Refactorización del código, es decir, reescribir ciertas
partes del código para aumentar su legibilidad y
mantenibilidad pero sin modificar su comportamiento. Las
pruebas han de garantizar que en la refactorización no se
ha introducido ningún fallo.
Propiedad del código compartida: en vez de dividir la
responsabilidad en el desarrollo de cada módulo en grupos
44. Proyecto II
Página 44
de trabajo distintos, este método promueve el que todo el
personal pueda corregir y extender cualquier parte del
proyecto. Las frecuentes pruebas de regresión garantizan
que los posibles errores serán detectados.
Simplicidad en el código: es la mejor manera de que las
cosas funcionen. Cuando todo funcione se podrá añadir
funcionalidad si es necesario. La programación extrema
apuesta que es más sencillo hacer algo simple y tener un
poco de trabajo extra para cambiarlo si se requiere, que
realizar algo complicado y quizás nunca utilizarlo.
La simplicidad y la comunicación son
extraordinariamente complementarias. Con más
comunicación resulta más fácil identificar qué se
debe y qué no se debe hacer. Cuanto más simple
es el sistema, menos tendrá que comunicar sobre
éste, lo que lleva a una comunicación más
completa, especialmente si se puede reducir el
equipo de programadores.
Uso de la metodología XP
XP surgió como respuesta y posible solución a los
problemas derivados del cambio en los Requerimientos.
XP se plantea como una metodología a emplear en
proyectos de riesgo
XP aumenta la productividad
45. Proyecto II
Página 45
Roles XP
Aunque en otras fuentes de información aparecen algunas
variaciones y extensiones de roles XP, en este apartado
describiremos los roles de acuerdo con la propuesta original de
Beck.
Programador
Cliente
Encargado de pruebas (Tester)
Encargado de seguimiento (Tracker)
Entrenador (Coach)
Consultor
Gestor (Big boss)
PROCESO XP
Un proyecto XP tiene éxito cuando el cliente selecciona el valor de
negocio a implementar basado en la habilidad del equipo para
medir la funcionalidad que puede entregar a través del tiempo. El
ciclo de desarrollo consiste (a grandes rasgos) en los siguientes
pasos :
El cliente define el valor de negocio a implementar.
El programador estima el esfuerzo necesario para su
implementación.
El cliente selecciona qué construir, de acuerdo con sus
prioridades y las restricciones de tiempo.
El programador construye ese valor de negocio.
Vuelve al paso 1.
En todas las iteraciones de este ciclo tanto el cliente como el
programador aprenden. No se debe presionar al programador a
realizar más trabajo que el estimado, ya que se perderá calidad
en el software o no se cumplirán los plazos. De la misma forma el
46. Proyecto II
Página 46
cliente tiene la obligación de manejar el ámbito de entrega del
producto, para asegurarse que el sistema tenga el mayor valor de
negocio posible con cada iteración.
El ciclo de vida ideal de XP consiste de seis fases: Exploración,
Planificación de la Entrega (Release), Iteraciones, Producción,
Mantenimiento y Muerte del Proyecto.
Fase I: Exploración
Fase II: Planificación de la Entrega
Fase III: Iteraciones
Fase IV: Producción
Fase V: Mantenimiento
Fase VI: Muerte del Proyecto
3.5.4 Definición de términos básicos
• ERP: Planificación de los recursos empresariales
• Java EE: Java Platform, Enterprise Edition
• XML:ExtensibleMarkupLanguage
• SOAP: Simple Object Access Protocol
• XML-RPC: XML Remote Procedure Call
• HTTP: Hypertext Transfer Protocol
• FTP: File Transfer Protocol
• SMTP:Simple Mail Transfer Protocol
• WSDL: Web ServicesDescriptionLanguage
• UDDI:Universal Description, Discovery and Integration
• WS-Security:WebService Security
• OASIS:Organization for the Advancement of Structured
Information Standards
• RSTP: Rapid Spanning Tree Protocol
• SSH: intérprete de órdenessegura
Fuente: anexo 01, referencia nro.24
47. Proyecto II
Página 47
CAPITULO IV: METODOLOGÍA DEL DESARROLLO
DEL PROYECTO
4.1 Referencias metodológicas
Metodología SCRUM
Metodología Programación Extrema
Método CRYSTAL
4.2 Resumen por cada metodología
4.2.1 Metodología SCRUM
Esta metodología se basa en una filosofía del desarrollo ágil, creado
por HirotakaTakeuchi e IkujiroNonaka ahí por el año 1986, para
desarrollo de software.
Scrum es un marco de trabajo para la gestión y desarrollo de
software basada en un proceso iterativo e incremental utilizado
comúnmente en entornos basados en el desarrollo ágil de software.
Aunque Scrum estaba enfocado a la gestión de procesos de
desarrollo de software, puede ser utilizado en equipos de
mantenimiento de software, o en una aproximación de gestión de
programas: Scrum de Scrums
Scrum es un modelo de referencia que define un conjunto de
prácticas y roles, y que puede tomarse como punto de partida para
definir el proceso de desarrollo que se ejecutará durante un
proyecto.
SCRUM es una metodología ágil, y como tal:
48. Proyecto II
Página 48
Es un modo de desarrollo de carácter adaptable más que
predictivo.
Orientado a las personas más que a los procesos.
Emplea la estructura de desarrollo ágil, incremental basada
en iteraciones y revisiones
Existen varias implementaciones de sistemas para gestionar el
proceso de Scrum, que van desde notas amarillas "post-it" y pizarras
hasta paquetes de software. Una de las mayores ventajas de
Scrumes que es muy fácil de aprender, y requiere muy poco
esfuerzo para comenzarse a utilizarse.
Reduce al máximo la burocracia y actividades no orientadas a
producir software que funcione y produce resultados en
periodos muy breves de tiempo (cada 30 días), por medio de
iteraciones o Sprints
Ideal para proyectos con un rápido cambio de requerimientos
Ilustración 5: Contexto Scrum
49. Proyecto II
Página 49
Proceso y Roles de Scrum
El proceso
El desarrollo se realiza de forma iterativa e incremental. Cada
iteración, denominada Sprint, tiene una duración preestablecida de
entre 2 y 4 semanas, obteniendo como resultado una versión del
software con nuevas prestaciones listas para ser usadas. En cada
nuevo Sprint, se va ajustando la funcionalidad ya construida y se
añaden nuevas prestaciones priorizándose siempre aquellas que
aporten mayor valor de negocio.
ProductBacklog: Conjunto de requisitos demoninados historias
descritos en un lenguaje no técnico y priorizados por valor de
negocio, o lo que es lo mismo, por retorno de inversión
considerando su beneficio y coste. Los requisitos y prioridades se
revisan y ajustan durante el curso del proyecto a intervalos
regulares.
Sprint Planning: Reunión durante la cual el ProductOwner
presenta las historias del backlog por orden de prioridad. El
equipo determina la cantidad de historias que puede
Ilustración 6: El proceso Scrum
50. Proyecto II
Página 50
comprometerse a completar en ese sprint, para en una segunda
parte de la reunión, decidir y organizar cómo lo va a conseguir.
Sprint: Iteración de duración prefijada durante la cual el equipo
trabaja para convertir las historias del ProductBacklog a las que
se ha comprometido, en una nueva versión del software
totalmente operativo.
Sprint Backlog: Lista de las tareas necesarias para llevar a cabo
las historias del sprint.
Daily sprint meeting: Reunión diaria de cómo máximo 15 min. en
la que el equipo se sincroniza para trabajar de forma coordinada.
Cada miembro comenta que hizo el día anterior, que hará hoy y si
hay impedimentos.
Demo y retrospectiva: Reunión que se celebra al final del sprint y
en la que el equipo presenta las historias conseguidas mediante
una demonstración del producto. Posteriormente, en la
retrospectiva, el equipo analiza qué se hizo bien, qué procesos
serían mejorables y discute acerca de cómo perfeccionarlos.
Roles
En Scrum, el equipo se focaliza en construir software de calidad. La
gestión de un proyecto Scrum se centra en definir cuáles son las
características que debe tener el producto a construir (qué construir,
qué no y en qué orden) y en vencer cualquier obstáculo que pudiera
entorpecer la tarea del equipo de desarrollo.
El equipo Scrum está formado por los siguientes roles:
Scrum master: Persona que lidera al equipo guiándolo para que
cumpla las reglas y procesos de la metodología. Gestiona la
reducción de impedimentos del proyecto y trabaja con el
ProductOwner para maximizar el ROI.
Productowner (PO): Representante de lso accionistas y clientes
que usan el software. Se focaliza en la parte de negocio y el es
responsable del ROI del proyecto (entregar un valor superior al
dinero invertido). Traslada la visión del proyecto al equipo,
51. Proyecto II
Página 51
formaliza las prestaciones en historias a incorporar en el
ProductBacklog y las reprioriza de forma regular.
Team: Grupo de profesionales con los conocimientos técnicos
necesarios y que desarrollan el proyecto de manera conjunta
llevando a cabo las historias a las que se comprometen al inicio
de cada sprint.
Artefactos
Scrum define una pequeña cantidad de artefactos para el
seguimiento del proyecto y control de las actividades asociativas
al sprint
Sprint Backlog.
ProductBacklog..
Grafica de Progreso.
Ilustración 7: os roles Scrum
Fuente: anexo 01, referencia nro. 30,31
52. Proyecto II
Página 52
4.2.2 Metodología Programación extrema
Definición
La Programación Extrema es una metodología ligera de desarrollo
de software que se basa en la simplicidad, la comunicación y la
realimentación o reutilización del código desarrollado.
Origen de la Metodología XP
«Todo en el software cambia. Los requisitos cambian. El diseño
cambia. El negocio cambia. La tecnología cambia. El equipo
cambia. Los miembros del equipo cambian. El problema no es el
cambio en sí mismo, puesto que sabemos que el cambio va a
suceder; el problema es la incapacidad de adaptarnos a dicho
cambio cuando éste tiene lugar.»
Introducción a la Metodología
La importancia para la metodología XP son cuatro
variables:
Coste: Máquinas, Especialistas y Oficinas
Tiempo: Total y de Entregas
Calidad: Externa e Interna
Alcance: Intervención del Cliente
Comparación de Costos de desarrollo de Proyectos
Ilustración 6: Costo de cambio en la ingeniería de
Software Tradicional
Fuente: anexo 01, referencia nro. 32
53. Proyecto II
Página 53
En programación extrema el costo del cambio maneja un papel
muy importante, porque comparado con otras metodologías para
implementar software, es mucho más barato, debido a que las
pruebas se van haciendo según las versiones liberadas, no es
como una metodología normal, que primero se realiza el análisis,
después el diseño, implementación, pruebas y finalmente
producción, mientras que en la programación extrema siempre
estas implementando, probando y produciendo.
Características fundamentales
Las características fundamentales del método son:
Desarrollo iterativo e incremental: pequeñas mejoras,
unas tras otras.
Pruebas unitarias continuas, frecuentemente repetidas y
automatizadas, incluyendo pruebas de regresión. Se
aconseja escribir el código de la prueba antes de la
codificación.
Programación en parejas: se recomienda que las tareas
de desarrollo se lleven a cabo por dos personas en un
mismo puesto. Se supone que la mayor calidad del código
escrito de esta manera -el código es revisado y discutido
mientras se escribe- es más importante que la posible
pérdida de productividad inmediata.
Ilustración 7: Costo de cambio en la ingeniería de
Software Tradicional
54. Proyecto II
Página 54
Frecuente integración del equipo de programación con
el cliente o usuario. Se recomienda que un representante
del cliente trabaje junto al equipo de desarrollo.
Corrección de todos los errores antes de añadir nueva
funcionalidad. Hacer entregas frecuentes.
Refactorización del código, es decir, reescribir ciertas
partes del código para aumentar su legibilidad y
mantenibilidad pero sin modificar su comportamiento. Las
pruebas han de garantizar que en la refactorización no se
ha introducido ningún fallo.
Propiedad del código compartida: en vez de dividir la
responsabilidad en el desarrollo de cada módulo en grupos
de trabajo distintos, este método promueve el que todo el
personal pueda corregir y extender cualquier parte del
proyecto. Las frecuentes pruebas de regresión garantizan
que los posibles errores serán detectados.
Simplicidad en el código: es la mejor manera de que las
cosas funcionen. Cuando todo funcione se podrá añadir
funcionalidad si es necesario. La programación extrema
apuesta que es más sencillo hacer algo simple y tener un
poco de trabajo extra para cambiarlo si se requiere, que
realizar algo complicado y quizás nunca utilizarlo.
La simplicidad y la comunicación son
extraordinariamente complementarias. Con más
comunicación resulta más fácil identificar qué se
debe y qué no se debe hacer. Cuanto más simple
es el sistema, menos tendrá que comunicar sobre
éste, lo que lleva a una comunicación más
completa, especialmente si se puede reducir el
equipo de programadores.
Fuente: anexo 01, referencia nro. 33
55. Proyecto II
Página 55
Uso de la metodología XP
XP surgió como respuesta y posible solución a los
problemas derivados del cambio en los Requerimientos.
XP se plantea como una metodología a emplear en
proyectos de riesgo
XP aumenta la productividad
Roles XP
Aunque en otras fuentes de información aparecen algunas
variaciones y extensiones de roles XP, en este apartado
describiremos los roles de acuerdo con la propuesta original de
Beck.
Programador
El programador escribe las pruebas unitarias y produce el código
del sistema. Debe existir una comunicación y coordinación
adecuada entre los programadores y otros miembros del equipo.
Cliente
El cliente escribe las historias de usuario y las pruebas
funcionales para validar su implementación. Además, asigna la
prioridad a las historias de usuario y decide cuáles se
implementan en cada iteración centrándose en aportar mayor
valor al negocio. El cliente es sólo uno dentro del proyecto pero
puede corresponder a un interlocutor que está representando a
varias personas que se verán afectadas por el sistema.
Encargado de pruebas (Tester)
El encargado de pruebas ayuda al cliente a escribir las pruebas
funcionales. Ejecuta las pruebas regularmente, difunde los
resultados en el equipo y es responsable de las herramientas de
soporte para pruebas.
56. Proyecto II
Página 56
Encargado de seguimiento (Tracker)
El encargado de seguimiento proporciona realimentación al
equipo en el proceso XP. Su responsabilidad es verificar el grado
de acierto entre las estimaciones realizadas y el tiempo real
dedicado, comunicando los resultados para mejorar futuras
estimaciones. También realiza el seguimiento del progreso de
cada iteración y evalúa si los objetivos son alcanzables con las
restricciones de tiempo y recursos presentes. Determina cuándo
es necesario realizar algún cambio para lograr los objetivos de
cada iteración.
Entrenador (Coach)
Es responsable del proceso global. Es necesario que conozca a
fondo el proceso XP para proveer guías a los miembros del
equipo de forma que se apliquen las prácticas XP y se siga el
proceso correctamente.
Consultor
Es un miembro externo del equipo con un conocimiento específico
en algún tema necesario para el proyecto. Guía al equipo para
resolver un problema específico.
Gestor (Big boss)
Es el vínculo entre clientes y programadores, ayuda a que el
equipo trabaje efectivamente creando las condiciones adecuadas.
Su labor esencial es de coordinación.
57. Proyecto II
Página 57
PROCESO XP
Un proyecto XP tiene éxito cuando el cliente selecciona el valor de
negocio a implementar basado en la habilidad del equipo para
medir la funcionalidad que puede entregar a través del tiempo. El
ciclo de desarrollo consiste (a grandes rasgos) en los siguientes
pasos:
El cliente define el valor de negocio a implementar.
El programador estima el esfuerzo necesario para su
implementación.
El cliente selecciona qué construir, de acuerdo con sus
prioridades y las restricciones de tiempo.
El programador construye ese valor de negocio.
Vuelve al paso 1.
En todas las iteraciones de este ciclo tanto el cliente como el
programador aprenden. No se debe presionar al programador a
realizar más trabajo que el estimado, ya que se perderá calidad
en el software o no se cumplirán los plazos. De la misma forma el
cliente tiene la obligación de manejar el ámbito de entrega del
producto, para asegurarse que el sistema tenga el mayor valor de
negocio posible con cada iteración.
El ciclo de vida ideal de XP consiste de seis fases: Exploración,
Planificación de la Entrega (Release), Iteraciones, Producción,
Mantenimiento y Muerte del Proyecto.
Fase I: Exploración
En esta fase, los clientes plantean a grandes rasgos las historias
de usuario que son de interés para la primera entrega del
producto. Al mismo tiempo el equipo de desarrollo se familiariza
con las herramientas, tecnologías y prácticas que se utilizarán en
el proyecto. Se prueba la tecnología y se exploran las
58. Proyecto II
Página 58
posibilidades de la arquitectura del sistema construyendo un
prototipo. La fase de exploración toma de pocas semanas a pocos
meses, dependiendo del tamaño y familiaridad que tengan los
programadores con la tecnología.
Fase II: Planificación de la Entrega
En esta fase el cliente establece la prioridad de cada historia de
usuario, y correspondientemente, los programadores realizan una
estimación del esfuerzo necesario de cada una de ellas. Se toman
acuerdos sobre el contenido de la primera entrega y se determina
un cronograma en conjunto con el cliente. Una entrega debería
obtenerse en no más de tres meses. Esta fase dura unos pocos
días.
Las estimaciones de esfuerzo asociado a la implementación de
las historias la establecen los programadores utilizando como
medida el punto. Un punto, equivale a una semana ideal de
programación. Las historias generalmente valen de 1 a 3 puntos.
Por otra parte, el equipo de desarrollo mantiene un registro de la
"velocidad" de desarrollo, establecida en puntos por iteración,
basándose principalmente en la suma de puntos correspondientes
a las historias de usuario que fueron terminadas en la última
iteración.
La planificación se puede realizar basándose en el tiempo o el
alcance. La velocidad del proyecto es utilizada para establecer
cuántas historias se pueden implementar antes de una fecha
determinada o cuánto tiempo tomará implementar un conjunto de
historias. Al planificar por tiempo, se multiplica el número de
iteraciones por la velocidad del proyecto, determinándose cuántos
puntos se pueden completar. Al planificar según alcance del
sistema, se divide la suma de puntos de las historias de usuario
seleccionadas entre la velocidad del proyecto, obteniendo el
número de iteraciones necesarias para su implementación.
59. Proyecto II
Página 59
Fase III: Iteraciones
Esta fase incluye varias iteraciones sobre el sistema antes de ser
entregado. El Plan de Entrega está compuesto por iteraciones de
no más de tres semanas. En la primera iteración se puede intentar
establecer una arquitectura del sistema que pueda ser utilizada
durante el resto del proyecto. Esto se logra escogiendo las
historias que fuercen la creación de esta arquitectura, sin
embargo, esto no siempre es posible ya que es el cliente quien
decide qué historias se implementarán en cada iteración (para
maximizar el valor de negocio). Al final de la última iteración el
sistema estará listo para entrar en producción.
Los elementos que deben tomarse en cuenta durante la
elaboración del Plan de la Iteración son: historias de usuario no
abordadas, velocidad del proyecto, pruebas de aceptación no
superadas en la iteración anterior y tareas no terminadas en la
iteración anterior. Todo el trabajo de la iteración es expresado en
tareas de programación, cada una de ellas es asignada a un
programador como responsable, pero llevadas a cabo por parejas
de programadores. Wake en proporciona algunas guías útiles
para realizar la planificación de la entrega y de cada iteración.
Fase IV: Producción
La fase de producción requiere de pruebas adicionales y
revisiones de rendimiento antes de que el sistema sea trasladado
al entorno del cliente. Al mismo tiempo, se deben tomar
decisiones sobre la inclusión de nuevas características a la
versión actual, debido a cambios durante esta fase.
Es posible que se rebaje el tiempo que toma cada iteración, de
tres a una semana. Las ideas que han sido propuestas y las
sugerencias son documentadas para su posterior implementación
(por ejemplo, durante la fase de mantenimiento).
60. Proyecto II
Página 60
Fase V: Mantenimiento
Mientras la primera versión se encuentra en producción, el
proyecto XP debe mantener el sistema en funcionamiento al
mismo tiempo que desarrolla nuevas iteraciones. Para realizar
esto se requiere de tareas de soporte para el cliente. De esta
forma, la velocidad de desarrollo puede bajar después de la
puesta del sistema en producción. La fase de mantenimiento
puede requerir nuevo personal dentro del equipo y cambios en su
estructura.
Fase VI: Muerte del Proyecto
Es cuando el cliente no tiene más historias para ser incluidas en el
sistema. Esto requiere que se satisfagan las necesidades del
cliente en otros aspectos como rendimiento y confiabilidad del
sistema. Se genera la documentación final del sistema y no se
realizan más cambios en la arquitectura. La muerte del proyecto
también ocurre cuando el sistema no genera los beneficios
esperados por el cliente o cuando no hay presupuesto para
mantenerlo.
PRÁCTICAS XP
La principal suposición que se realiza en XP es la posibilidad de
disminuir la mítica curva exponencial del costo del cambio a lo
largo del proyecto, lo suficiente para que el diseño evolutivo
funcione. XP apuesta por un crecimiento lento del costo del
cambio y con un comportamiento asintótico. Esto se consigue
gracias a las tecnologías disponibles para ayudar en el desarrollo
de software y a la aplicación disciplinada de las prácticas que
describiremos a continuación.
El juego de la planificación
Es un espacio frecuente de comunicación entre el cliente y los
programadores. El equipo técnico realiza una estimación del
61. Proyecto II
Página 61
esfuerzo requerido para la implementación de las historias de
usuario y los clientes deciden sobre el ámbito y tiempo de las
entregas y de cada iteración. Esta práctica se puede ilustrar como
un juego, donde existen dos tipos de jugadores: Cliente y
Programador. El cliente establece la prioridad de cada historia de
usuario, de acuerdo con el valor que aporta para el negocio. Los
programadores estiman el esfuerzo asociado a cada historia de
usuario. Se ordenan las historias de usuario según prioridad y
esfuerzo, y se define el contenido de la entrega y/o iteración,
apostando por enfrentar lo de más valor y riesgo cuanto antes.
Este juego se realiza durante la planificación de la entrega, en la
planificación de cada iteración y cuando sea necesario reconducir
el proyecto.
Entregas pequeñas
La idea es producir rápidamente versiones del sistema que sean
operativas, aunque obviamente no cuenten con toda la
funcionalidad pretendida para el sistema pero si que constituyan
un resultado de valor para el negocio. Una entrega no debería
tardar más 3 meses.
Metáfora
En XP no se enfatiza la definición temprana de una arquitectura
estable para el sistema. Dicha arquitectura se asume evolutiva y
los posibles inconvenientes que se generarían por no contar con
ella explícitamente en el comienzo del proyecto se solventan con
la existencia de una metáfora. El sistema es definido mediante
una metáfora o un conjunto de metáforas compartidas por el
cliente y el equipo de desarrollo. Una metáfora es una historia
compartida que describe cómo debería funcionar el sistema.
Martin Fowler en explica que la práctica de la metáfora consiste
en formar un conjunto de nombres que actúen como vocabulario
para hablar sobre el dominio del problema. Este conjunto de
62. Proyecto II
Página 62
nombres ayuda a la nomenclatura de clases y métodos del
sistema.
Diseño simple
Se debe diseñar la solución más simple que pueda funcionar y ser
implementada en un momento determinado del proyecto. La
complejidad innecesaria y el código extra debe ser removido
inmediatamente. Kent Beck dice que en cualquier momento el
diseño adecuado para el software es aquel que: supera con éxito
todas las pruebas, no tiene lógica duplicada, refleja claramente la
intención de implementación de los programadores y tiene el
menor número posible de clases y métodos.
Pruebas
La producción de código está dirigida por las pruebas unitarias.
Las pruebas unitarias son establecidas antes de escribir el código
y son ejecutadas constantemente ante cada modificación del
sistema. Los clientes escriben las pruebas funcionales para cada
historia de usuario que deba validarse. En este contexto de
desarrollo evolutivo y de énfasis en pruebas constantes, la
automatización para apoyar esta actividad es crucial.
Refactorización (Refactoring)
La refactorización es una actividad constante de reestructuración
del código con el objetivo de remover duplicación de código,
mejorar su legibilidad, simplificarlo y hacerlo más flexible para
facilitar los posteriores cambios. La refactorización mejora la
estructura interna del código sin alterar su comportamiento
externo. Robert Martin señala que el diseño del sistema de
software es una cosa viviente. No se puede imponer todo en un
inicio, pero en el transcurso del tiempo este diseño evoluciona
conforme cambia la funcionalidad del sistema. Para mantener un
diseño apropiado, es necesario realizar actividades de cuidado
continuo durante el ciclo de vida del proyecto. De hecho, este
63. Proyecto II
Página 63
cuidado continuo sobre el diseño es incluso más importante que el
diseño inicial. Un concepto pobre al inicio puede ser corregido con
esta actividad continua, pero sin ella, un buen diseño inicial se
degradará.
Programación en parejas
Toda la producción de código debe realizarse con trabajo en
parejas de programadores. Según Cockburn y Williams en un
estudio realizado para identificar los costos y beneficios de la
programación en parejas, las principales ventajas de introducir
este estilo de programación son: muchos errores son detectados
conforme son introducidos en el código (inspecciones de código
continuas), por consiguiente la tasa de errores del producto final
es más baja, los diseños son mejores y el tamaño del código
menor (continua discusión de ideas de los programadores), los
problemas de programación se resuelven más rápido, se posibilita
la transferencia de conocimientos de programación entre los
miembros del equipo, varias personas entienden las diferentes
partes sistema, los programadores conversan mejorando así el
flujo de información y la dinámica del equipo, y finalmente, los
programadores disfrutan más su trabajo. Dichos beneficios se
consiguen después de varios meses de practicar la programación
en parejas. En los estudios realizados por Cockburn y Williams
este lapso de tiempo varía de 3 a 4 meses.
Propiedad colectiva del código
Cualquier programador puede cambiar cualquier parte del código
en cualquier momento. Esta práctica motiva a todos a contribuir
con nuevas ideas en todos los segmentos del sistema, evitando a
la vez que algún programador sea imprescindible para realizar
cambios en alguna porción de código.
64. Proyecto II
Página 64
Integración continua
Cada pieza de código es integrada en el sistema una vez que esté
lista. Así, el sistema puede llegar a ser integrado y construido
varias veces en un mismo día. Todas las pruebas son ejecutadas
y tienen que ser aprobadas para que el nuevo código sea
incorporado definitivamente. La integración continua a menudo
reduce la fragmentación de los esfuerzos de los desarrolladores
por falta de comunicación sobre lo que puede ser reutilizado o
compartido. Martin Fowler en afirma que el desarrollo de un
proceso disciplinado y automatizado es esencial para un proyecto
controlado, el equipo de desarrollo está más preparado para
modificar el código cuando sea necesario, debido a la confianza
en la identificación y corrección de los errores de integración.
40 horas por semana
Se debe trabajar un máximo de 40 horas por semana. No se
trabajan horas extras en dos semanas seguidas. Si esto ocurre,
probablemente está ocurriendo un problema que debe corregirse.
El trabajo extra desmotiva al equipo. Los proyectos que requieren
trabajo extra para intentar cumplir con los plazos suelen al final
ser entregados con retraso. En lugar de esto se puede realizar el
juego de la planificación para cambiar el ámbito del proyecto o la
fecha de entrega.
Cliente in-situ
El cliente tiene que estar presente y disponible todo el tiempo para
el equipo. Gran parte del éxito del proyecto XP se debe a que es
el cliente quien conduce constantemente el trabajo hacia lo que
aportará mayor valor de negocio y los programadores pueden
resolver de manera inmediata cualquier duda asociada. La
comunicación oral es más efectiva que la escrita, ya que esta
última toma mucho tiempo en generarse y puede tener más riesgo
de ser mal interpretada. EnJeffries indica que se debe pagar un
65. Proyecto II
Página 65
precio por perder la oportunidad de un cliente con alta
disponibilidad. Algunas recomendaciones propuestas para dicha
situación son las siguientes: intentar conseguir un representante
que pueda estar siempre disponible y que actúe como interlocutor
del cliente, contar con el cliente al menos en las reuniones de
planificación, establecer visitas frecuentes de los programadores
al cliente para validar el sistema, anticiparse a los problemas
asociados estableciendo llamadas telefónicas frecuentes y
conferencias, reforzando el compromiso de trabajo en equipo.
Estándares de programación
XP enfatiza la comunicación de los programadores a través del
código, con lo cual es indispensable que se sigan ciertos
estándares de programación (del equipo, de la organización u
otros estándares reconocidos para los lenguajes de programación
utilizados). Los estándares de programación mantienen el código
legible para los miembros del equipo, facilitando los cambios.
Comentarios respecto de las prácticas
El mayor beneficio de las prácticas se consigue con su aplicación
conjunta y equilibrada puesto que se apoyan unas en otras.
La mayoría de las prácticas propuestas por XP no son novedosas
sino que en alguna forma ya habían sido propuestas en ingeniería
del software e incluso demostrado su valor en la práctica.
El mérito de XP es integrarlas de una forma efectiva y
complementarlas con otras ideas desde la perspectiva del
negocio, los valores humanos y el trabajo en equipo.
Fuente: anexo 01, referencia nro. 32, 33,34
66. Proyecto II
Página 66
4.2.3 Metodología Crystal
Crystal es una metodología de desarrollo de Software ágil, más
que una metodología se la considera una familia de metodologías,
debido a que se subdivide en varios tipos de metodologías en
función a la cantidad de persona que vayan a estar en el proyecto.
Es una metodología que ha sido creada por una persona en
particular (AlistairCockburn ) el cuál llego la creó en base al
análisis de distintos proyectos de desarrollo de SW y su propia
experiencia, lo cual fusionando ambos aspectos dio lugar a una
metodología bastante interesante, la cual se presenta a
continuación.
Se trata de un conjunto de metodologías para el desarrollo de
software caracterizadas por estar centradas en las personas que
componen el equipo y la reducción al máximo del número de
artefactos producidos.
El desarrollo de software se considera un juego cooperativo de
invención y comunicación, limitado por los recursos a utilizar. El
equipo de desarrollo es un factor clave, por lo que se deben
invertir esfuerzos en mejorar sus habilidades y destrezas, así
como tener Políticas de trabajo en equipo definidas.
Estas políticas dependerán del tamaño del equipo,
estableciéndose una clasificación por colores, por ejemplo Crystal
Clear (3 a 8 miembros) y Crystal Orange (25 a 50 miembros).
Características
Las personas, como dispositivos activos, tienen modos de
éxito y modos de fallo. Los siguientes son los principales:
Cuando el número de personas aumenta, también aumenta
la necesidad de coordinar.
67. Proyecto II
Página 67
Cuando el potencial de daños se incrementa, la tolerancia a
variaciones se ve afectada.
La sensibilidad del tiempo en que se debe estar en el
mercado varía: a veces este tiempo debe acortarse al
máximo y se toleran defectos, otras se enfatiza la auditoria,
confiabilidad, protección legal, entre otros.
Las personas se comunican mejor cara a cara, con la
pregunta y la respuesta en el mismo espacio de tiempo.
El factor más significativo es “comunicación
Fuente: anexo 01, referencia nro. 35
68. Proyecto II
Página 68
4.3 Cuadro evaluativo sobre las metodologías
Para la obtener la metodología del proyecto se ha evaluado una
serie de características de las tres metodologías; teniendo en
cuenta las siguientes calificaciones y pesos
Indicador de la
Metodología
Peso
Muy bueno 3
Bueno 2
Regular 1
Indicar del peso Peso
Muy importante 3
importante 2
Regular 1
Cuadro de Comparación de características sobresalientes en las
metodologías XP, Scrum y Crysta
Características Peso Crystal Scrum XP
Sistema como algo cambiante 2 2 3 3
Colaboración 3 3 3 3
Resultados 3 3 3 3
Simplicidad 1 2 3 3
Adaptabilidad 3 3 2 1
Excelencia técnica 3 1 1 2
Prácticas de colaboración 3 1 2 3
Total 39 42 45
Fuente: elaboración propia
69. Proyecto II
Página 69
CAPITULO V: DESARROLLO DEL PROYECTO
5.1 Fase de planificación
5.1.1 Principales actividades
Las actividades estarán en función al periodo de clases del presente semestre.
70. Proyecto II
Página 70
Tiempo estimado del trabajo: 79 días calendarios.
Horario de Trabajo:
Lunes a viernes (5 Hrs Trabajo)
Sábado & Feriados (2 Hrs Trabajo)
71. Proyecto II
Página 71
Esta es la planificación de historias usuarios que realizamos del proyecto, tras
estudiar el proyecto y mantener conversaciones con el cliente. De esta
redacción inicial de historias de usuario se realizó una planificación inicial y
posteriormente fue cambiada a lo largo del proyecto. A medida que cambiaban
los requisitos del cliente o se tenía una concepción más clara del proyecto.
5.1.2 Historia de usuarios.
NRO. NOMBRE DE HISTORIA
PRIORIDAD EN
NEGOCIO
1 Registrar solicitud de cotización Alta
2 Registrar recurso de cotización Alta
3 Generar presupuesto Alta
4 Asignar procesos a empresas Alta
5 Asignar materia prima al proyecto Alta
6 Comprar materia prima Alta
7 Registrar datos maestros de materia prima media
8 Registrar materia prima comprada Alta
ITERACIONES:
PRIMERA ITERACIÓN:
Consta de 2 historias de usuario:
Registrar solicitud de cotización
Registrar recurso de cotización.
Tareas a realizar:
Diseño de interfaz Registrar solicitud de cotización
Diseño de interfaz Registrar recurso de cotización
72. Proyecto II
Página 72
SEGUNDA ITERACIÓN:
Consta de 1 historia de usuario:
Generar presupuesto
Tareas a realizar:
Diseño de interfaz Generar presupuesto
TERCERA ITERACIÓN:
Consta de 2 historias de usuario:
Asignar procesos a empresas
Asignar materia prima al proyecto
Tareas a realizar:
Diseño de interfaz Asignar procesos a empresas
Diseño de interfaz Asignar materia prima al proyecto
CUARTA ITERACIÓN:
Consta de 3 historias de usuario:
Comprar materia prima
Registrar datos maestros de materia prima
Registrar materia prima comprada
Tareas a realizar:
Diseño de interfaz Comprar materia prima
Diseño de interfaz Registrar datos maestros de materia prima
Diseño de interfaz Registrar materia prima comprada
73. Proyecto II
Página 73
PRIMERA ITERACIÓN:
HISTORIAS DE USUARIO:
Historia de Usuario
Número: 1 Usuario: Secretaria
Nombre historia: registrar solicitud de cotización
Prioridad en negocio: Alta Riesgo en desarrollo: Baja
Iteración asignada: 1
Programador responsable: Judith Jiménez – César Ocampo
Descripción:
La solicitud de cotización es registrada según el formato de registro de
solicitud de cotización y se almacena en la base de datos del Clúster. A su
vez la secretaria dispondrá un botón para buscar clientes en la base de datos o
registrar un nuevo cliente.
Observaciones:
Historia de Usuario
Número: 2 Usuario: Jefe de Producción
Nombre historia: Registrar recurso de Cotización
Prioridad en negocio: Alta Riesgo en desarrollo: Alta
Iteración asignada: 1
Programador responsable: Judith Jiménez – César Ocampo
Descripción:
Se introduce manualmente las materias primas y los trabajadores que se
necesitan según requerimientos de la solicitud de cotización.
Observaciones:
Se muestra los números de solicitudes que no han sido registrados sus
recursos de cotización.
74. Proyecto II
Página 74
TAREAS A REALIZAR PRIMERA ITERACION:
Tarea
Número de tarea: 1 Numero de historia: 1
Nombre de tarea: Diseño de interfaz Registrar solicitud de cotización
Tipo de tarea: Desarrollo
Descripción:
Se desarrollará una ventana que contendrá todos los campos que serán
ingresados por la secretaria para registrar la solicitud de cotización.
Tarea
Número de tarea: 2 Numero de historia: 2
Nombre de tarea: Diseño de interfaz Registrar recurso de cotización
Tipo de tarea: Desarrollo
Descripción:
Se desarrollará una ventana que contendrá todos los campos que serán
ingresados por el Jefe de producción para registrar las materias primas y los
trabajadores necesarios según los requerimientos de la solicitud de cotización.
75. Proyecto II
Página 75
SEGUNDA ITERACIÓN:
HISTORIAS DE USUARIO:
Historia de Usuario
Número: 3 Usuario: Jefe de Presupuesto
Nombre historia: Generar presupuesto
Prioridad en negocio: Alta Riesgo en desarrollo: Alta
Iteración asignada: 2
Programador responsable: Judith Jiménez – César Ocampo
Descripción:
El Jefe de presupuesto ingresara el número de solicitud de cotización y se
mostrara en pantalla los datos del cliente y los recursos de cotización.
Se ingresa la cantidad de horas de la mano de obra y los gastos generales y
utilidad, mostrándose el resumen del presupuesto. Además el jefe de
presupuesto dispondrá del botón “Buscar solicitud” para buscar las solicitudes
en la base de datos
Observaciones:
Se muestra los números de solicitudes que tienen asignados sus recursos de
cotización
TAREAS A REALIZAR SEGUNDA ITERACION:
Tarea
Número de tarea: 3 Numero de historia: 3
Nombre de tarea: Diseño de interfaz Generar presupuesto
Tipo de tarea: Desarrollo
Descripción:
Se desarrollará una ventana que contendrá todos los campos que serán
ingresados por el Jefe de presupuesto para generar y registrar el
presupuesto.
76. Proyecto II
Página 76
TERCERA ITERACIÓN:
HISTORIAS DE USUARIO:
Historia de Usuario
Número: 4 Usuario: Jefe de Producción
Nombre historia: Asignar Procesos a Empresas
Prioridad en negocio: Alta Riesgo en desarrollo: Alta
Iteración asignada: 3
Programador responsable: Judith Jiménez – César Ocampo
Descripción:
El Jefe de producción ingresara el número de presupuesto y se mostrara en
pantalla los datos de los materiales. Se selecciona o ingresa el nombre de
proceso, se consulta y se muestra las empresas disponibles. Se asigna el
proceso a cada empresa disponible, ingresa la cantidad a producir, unidad,
fecha de asignación, fecha de entrega y selecciona al responsable del proceso
Observaciones:
Historia de Usuario
Número: 5 Usuario: Jefe de Almacén
Nombre historia: Asignar materia prima al proyecto
Prioridad en negocio: Alta Riesgo en desarrollo: Alta
Iteración asignada: 3
Programador responsable: Judith Jiménez – César Ocampo
Descripción:
En pantalla se muestra los datos del proyecto (código del proyecto, empresa,
proceso, fecha asignación, entrega y estado). El jefe de almacén dispondrá de
una opción “Asignar materia prima” que le permita asignar la materia prima a
cada proyecto, el cual mostrara la pantalla “Detalle de asignación de materia
prima”.