136
ESCUELA POLITÉCNICA NACIONAL ESCUELA DE FORMACIÓN DE TECNÓLOGOS DESARROLLO E IMPLEMENTACIÓN DE LA PÁGINA WEB PARA LA EMPRESA “EVITA” PROYECTO PREVIO A LA OBTENCIÓN DEL TÍTULO DE TECNÓLOGO EN ANÁLISIS DE SISTEMAS INFORMÁTICOS. CHRISTIAN CARLOS SAMBACHI PANELUISA [email protected] DIRECTOR: Ing. Myriam Peñafiel Aguilar MSc. [email protected] Quito, enero 2010

ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

ESCUELA POLITÉCNICA NACIONAL

ESCUELA DE FORMACIÓN DE TECNÓLOGOS DESARROLLO E IMPLEMENTACIÓN DE LA PÁGINA WEB PARA

LA EMPRESA “EVITA”

PROYECTO PREVIO A LA OBTENCIÓN DEL TÍTULO DE TECNÓLOGO EN ANÁLISIS DE SISTEMAS INFORMÁTICOS.

CHRISTIAN CARLOS SAMBACHI PANELUISA [email protected]

DIRECTOR: Ing. Myriam Peñafiel Aguilar MSc. [email protected]

Quito, enero 2010

Page 2: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

DECLARACIÓN

Yo CHRISTIAN CARLOS SAMBACHI PANELUISA, declaro bajo juramento que el

trabajo aquí descrito es de mi autoría; que no ha sido previamente presentada

para ningún grado o calificación profesional; y, que he consultado las referencias

bibliográficas que se incluyen en este documento.

A través de la presente declaración cedo mis derechos de propiedad intelectual

correspondientes a este trabajo, a la Escuela Politécnica Nacional, según lo

establecido por la Ley de Propiedad Intelectual, por su Reglamento y por la

normatividad institucional vigente.

CHRISTIAN CARLOS SAMBACHI PANELUISA

Page 3: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

CERTIFICACIÓN

Certifico que el presente trabajo fue desarrollado por CHRISTIAN CARLOS

SAMBACHI PANELUISA, bajo mi supervisión.

Ing. Myriam Peñafiel

Page 4: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

AGRADECIMIENTO

Deseo expresar mis más sinceros agradecimientos

A la Escuela Politécnica Nacional, por brindarme todas las facilidades para la

conclusión de mi carrera.

A mis maestros, en especial al Ing. Myriam Peñafiel, por sus consejos y por

compartir desinteresadamente sus amplios conocimientos y experiencia.

A mis compañeros de la carrera, por el apoyo y motivación que de ellos he

recibido.

Page 5: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

DEDICATORIA A mi Dios, por guiarme en el correcto camino de la vida, quien siempre me da

fuerzas para seguir.

A mis Padres, por creer y confiar siempre en mí, apoyándome en todas las

decisiones que he tomado en la vida.

A mis Hermanos y Hermanas quienes siempre me dieron palabras de aliento en

los momentos difíciles.

Todas aquellas personas que de una u otra forma contribuyeron con su granito de

arena para lograr que mi objetivo.

CHRISTIAN CARLOS SAMBACHI PANELUISA

Page 6: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

RESUMEN

El presente documento describe el desarrollo e implementación del sitio Web para

la empresa EVITA, el cual fue elaborada bajo software libre las herramientas

utilizadas fueron:

AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la

instalación de servidor Apache, MySQL y PHP en una sola herramienta.

Apache servidor HTTP multiplataforma. PHP lenguaje de programación dinámico

que utilizan la mayoría de gestores de contenidos más populares. MySQL gestor

de bases de datos, rápido y seguro. Lenguajes adicionales utilizados en la

elaboración de las páginas fueron HTML y JavaScript.

La edición de páginas se la llevo a cabo en Macromedia Dreamweaver 8

herramienta líder en su campo.

Las imágenes fueron elaboradas en Macromedia Fireworks 8, software que

facilita la edición y creación de imágenes.

En la construcción del sitio Web se ha aplicado todos los conocimientos

adquiridos durante la carrera, dando como resultado un sitio confiable, agradable

y sobretodo útil para la empresa auspiciante del proyecto.

A continuación se explicara brevemente el contenido de los capítulos del

documento.

CAPITULO I. Se da a conocer la problemática de la empresa y las soluciones

encontradas.

CAPITULO II. Se describe las herramientas utilizadas para la construcción del

sitio Web.

CAPITULO III. Se da a conocer los aspectos metodológicos utilizados en la

construcción del sitio

CAPITULO IV. Se expresan conclusiones, recomendaciones y adicional contiene

los anexos que describen la construcción del proyecto.

Page 7: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

CONTENIDO

CAPITULO I.

ASPECTOS GENERALES………………………………………………………………1

1.1 ÁMBITO…………………………………………………………………………….1

1.2 PLANTEAMIENTO DEL PROBLEMA……………………………………...........1

1.3 FORMULACIÓN Y SISTEMATIZACIÓN DEL PROBLEMA…………………...2

1.3.1 FORMULACIÓN………………………………………………………………..2

1.3.2 SISTEMATIZACIÓN……………………………………………………………2

1.4 OBJETIVOS………………………………………………………………………..3

1.4.1 OBJETIVO GENERAL………………………………………………………...3

1.4. 2 OBJETIVOS ESPECÍFICOS…………………………………………...........3

1.5 JUSTIFICACIÓN DEL PROYECTO……………………………………….........3

1.6 ALCANCE Y LIMITACIONES……………………………………………….........4

1.6.1 PRESUPUESTO…………………………………………………………….…4

CAPITULO II.

HERRAMIENTAS…………………………………………………………………….......5

2.1 INGENIERÍA WEB…………………………………………………………………5

2.1.1 EL PROCESO DE INGENIERÍA WEB………………………………………6

2.1.2 CONTROL Y GARANTÍA DE LA CALIDAD………………………………...7

2.1.3 CONTROL DE LA CONFIGURACIÓN………………………………………7

2.1.4 LA GESTIÓN DEL PROCESO………………………………………………..8

2.1.5 ¿QUÉ MARCA LA DIFERENCIA?.............................................................8

2.1.6 ¿POR QUÉ ES NECESARIA?...................................................................8

2.2 ARQUITECTURA WEB……………………………………………………………9

2.2.1 ASPECTOS GENERALES EN ARQUITECTURA WEB…………………...9

2.2.2 EVOLUCIÓN DE MODELOS ARQUITECTÓNICOS………………………9

2.2.3 ESTRUCTURA DE LAS APLICACIONES WEB…………………………..12

2.2.4 HERRAMIENTAS DE SOPORTE AL DESARROLLO....………………..13

2.2.4.1 HTML………………………………………………………………………13

2.2.4.2 XHTML…………………………………………………………………….14

2.2.4.3 JavaScript…………………………………………………………………14

2.2.4.4 Apache Web Server……………………………………………………...15

Page 8: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

2.2.4.5 CSS………………………………………………………………………...15

2.2.4.6 PHP………………………………………………………………………...15

2.2.4.7 MySQL……………………………………………………………………..16

2.2.5 HERRAMIENTAS DE APOYO………………………………………………17

2.2.5.1 Macromedia Dreamweaver 8……………………………………….......17

2.2.5.2 Macromedia Fireworks 8………………………………………………...18

2.2.5.3 Power Designer…………………………………………………………..18

2.3 DISEÑO DE APLICACIONES WEB…………………………………………….18

2.3.1 DISEÑO WEB APLICADO…………………………………………………..19

2.3.1.1 Etapas……………………………………………………………………..19

2.3.1.2 Fundamentos……………………………………………………………..20

2.3.1.3 Accesibilidad………………………………………………………….......20

2.3.2 PRINCIPIOS DE DISEÑO WEB…………………………………………….21

2.3.2.1 La ley de Fitts……………………………………………………………..21

2.3.2.2 Dar feedback al usuario…………………………………………………21

2.3.2.3 Reutilización de la experiencia del usuario……………………………22

2.3.2.4 Uso del Scroll……………………………………………………………..22

2.3.2.5 Sentencias y párrafos……………………………………………………22

2.3.2.6 Imágenes………………………………………………………………….23

2.3.2.7 Ancho de Banda………………………………………………………….23

CAPITULO III.

ASPECTOS METODOLÓGICOS…………………………………………………..…24

3.1 MODELO ESPIRAL ORIENTADO A LA WEB…………………………….......24

3.1.1 ACTIVIDADES PRINCIPALES:……………………………………………..24

3.1.2 CARACTERÍSTICAS…………………………………………………….......24

3.1.3 DESVENTAJAS………………………………………………………………24

3.1.4 VENTAJAS……………………………………………………………………25

3.2 METODOLOGÍA OOHDM……………………………………………………….25

3.2.1 INTRODUCCIÓN……………………………………………………………..25

3.2.2 LOS PRINCIPIOS BÁSICOS DEL MÉTODO DE OOHDM………….......26

3.2.2.1 Modelo Conceptual……………………………………………………….26

3.2.2.2 Diseño Navegacional…………………………………………………….26

Page 9: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

3.2.2.3 Diseño de Interfaz Abstracta…………………………………………….27

3.2.2.4 Implementación…………………………………………………………..27

3.3 MODELO UML (UNIFIED MODELING LANGUAGE)………………………..28

3.3.1 DIAGRAMA DE CASO DE USO…………………………………………....29

3.3.2 DIAGRAMA DE CLASES……………………………………………………30

3.3.3 DIAGRAMA DE OBJETOS………………………………………………….32

3.3.3.1 Diccionario de Clases……………………………………………………33

3.3.4 DIAGRAMA DE INTERACCIÓN……………………………………………33

3.3.4.1 Diagrama de secuencia…………………………………………………33

3.3.4.2 Diagrama de Colaboración…………………………………………......34

3.3.5 DIAGRAMA DE ESTADOS………………………………………………….35

3.3.6 DIAGRAMA DE COMPONENTES………………………………………….36

3.3.7 DIAGRAMA DE ACTIVIDAD………………………………………………...37

CAPITULO IV.

CONCLUSIONES Y RECOMENDACIONES………………………………………...38

4.1 CONCLUSIONES…………………………………………………………….......38

4.2 RECOMENDACIONES…………………………………………………………..39

4.3 BIBLIOGRAFIA……………………………………………………………….......40

LIBROS……………………………………………………………………………….40

DIRECCIONES WEB……………………………………………………………….40

ANEXOS……………………………………………………………………………….42

MANUAL TECNICO…………………………………………………………………..43

ANALISIS DE REQUISITOS…………………………………………………….......44

DIAGRAMA DE ACTORES…………………………………………………………..45

ANÁLISIS Y DISEÑO……………………………………………………………......46

MODELO ESTÁTICO……………………………………………………………......47

DIAGRAMA DE CASOS DE USO……………………………………………...48

DIAGRAMA DE CASOS DE USO POR ACTIVIDAD………………………48

DIAGRAMA DE CASOS DE USO PROCESOS……………………………52

DICCIONARIO DE CASOS DE USO………………………………………..57

DIAGRAMA DE CLASES……………………………………………………….62

DICCIONARIO DE CLASES…………………………………………………63

Page 10: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

DIAGRAMA DE OBJETOS……………………………………………………..66

MODELO DINÁMICO……………………………………………………………...67

DIAGRAMA DE INTERACCIÓN………………………………………………..68

DIAGRAMA DE SECUENCIAS…………………………………………………68

DIAGRAMA DE COLABORACIÓN…………………………………………….73

MODELO FUNCIONAL……………………………………………………………77

DIAGRAMA DE ESTADOS…………………………………………………....78

MODELO ARQUITECTÓNICO……………………………………………….…80

DIAGRAMA ARQUITECTÓNICO……………………………………………..81

DIAGRAMA NAVEGACIONAL…………………………………………………82

CONSTRUCCIÓN…………………………………………………………………83

FROND END……………………………………………………………………..84

BACK END………………………………………………………………………..93

PRUEBAS……………………………………………………………………………94

MANUAL DEL USUARIO…………………………………………………………..99

Page 11: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

CAPITULO I

ASPECTOS GENERALES

1.1 ÁMBITO

La empresa EVITA. Nace hace 6 años en la ciudad de Quito con la finalidad de

proveer y comercializar suministros de oficina para el público en general, tratando de

satisfacer todas las necesidades del la población.

Actualmente la empresa cuenta con un amplio repertorio de mercancías y

suministros para diferentes clientes que posee.

1.2 PLANTEAMIENTO DEL PROBLEMA

Al momento el proceso de facturación y de inventario de mercadería, en la empresa,

se lleva en forma manual, por lo que se presenta entre otros los siguientes

problemas:

• La empresa no emite facturas de forma eficiente.

• La empresa no posee un inventario de sus productos.

• La empresa no lleva un registro de sus clientes.

• El personal toma demasiado tiempo en la atención de un cliente.

• La búsqueda de información de un producto es lento y tedioso.

• Debido ingreso de nueva mercadería es casi imposible administrar eficientemente

los registros.

• Pérdida de tiempo en la entrega de facturas al cliente debido a que se la llena en

forma manual,

No se lleva un correcto informe de ganancia anual.

De continuar así, tanto los datos de productos, clientes como de la emisión de

facturas no serían totalmente consistentes, ocasionando demora en el manejo de la

información de modo que estos inconvenientes causen malestar en la atención a los

clientes y empleados.

Page 12: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

Solución

Para ayudar a la solución de los problemas que se presentan en esta empresa

proponemos la creación de una página web que permita la facturación y control de

inventario de mercadería con la cual:

• Se agilita la entrega de facturas a los clientes con todos los detalles pertinentes.

• La información de productos que ésta ofrece esté siempre disponible.

• Se optimice el tiempo de atención a los clientes.

• Los empleados pueden consultar información necesaria de los diferentes

productos existentes.

• La información de los productos y clientes se almacenen de forma adecuada.

Se agilice el tiempo de ubicación de un producto.

1.3 FORMULACIÓN Y SISTEMATIZACIÓN DEL PROBLEMA

1.3.1 FORMULACIÓN

¿Cómo agilitar el proceso de facturación y optimizar la entrega de información de

productos a los clientes de la empresa “Evita”?

1.3.2 SISTEMATIZACIÓN

¿Cómo administrar la información de los productos que se ofrece, de manera que no

exista perdida de información?

¿Cómo administrar la información del cliente, de manera que no exista perdida de

información?

¿Cómo informarse de la disponibilidad de productos que se ofrece?

¿Cómo agilitar la atención a clientes, cuando estos requieren información?

¿Cómo se lleva un registro confiable de los productos mas requeridos?

¿Cómo realizar la búsqueda de información de forma rápida y oportuna?

¿Cómo los clientes pueden solicitar información más detallada y confidencial?

Page 13: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

1.4 OBJETIVOS

1.4.1 OBJETIVO GENERAL

Desarrollar una Aplicación web que pueda automatizar las tareas administrativas y

financieras con el fin de mejorar el control de la información y brindar una eficiente

atención a sus clientes.

1.4. 2 OBJETIVOS ESPECÍFICOS

1. Emitir facturas con información correcta y concreta.

2. Consultar existencias de productos por medio de la web.

3. Poder llevar una registro de clientes.

4. Permitir al usuario registrar el ingreso, actualizar, borrar datos de los clientes.

5. Permitir al usuario registrar el ingreso, actualizar, borrar datos de productos.

6. Mantener un inventario actualizado de la oferta de productos en una base de

datos.

7. Permitir al administrador dar permisos a los diferentes usuarios que lo requieran.

8. Permitir utilizar software libre en beneficio de la empresa.

1.5 JUSTIFICACIÓN DEL PROYECTO

Justificación Teórica

Se propone desarrollar un sitio Web dinámico que permita la optimización de entrega

de información la gestión de información de los clientes, productos además

automatizar las actividades que se realizan en la empresa para que proporcione

información a los empleados en la toma de decisiones, aprovechando las ventajas de

las tecnologías que se tiene en la actualidad.

Page 14: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

1.6 ALCANCE Y LIMITACIONES

1.6.1 PRESUPUESTO

Costo por hora ($) Horas Total ($)

Recursos Humanos

Diseñador 280 6 1680

Programador 320 5 1600

Software

Apache 0 0

PHP 0 0

MySQL 0 0

JavaScript 0 0

Xara Webstyle 0 0

Macromedia 120 120

Hardware

PC de Escritorio 500 500

Otros

Impresiones y copias 200 40

Internet 200 70

Total : 4010

Page 15: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

CAPITULO II.

HERRAMIENTAS

2.1 INGENIERÍA WEB

La ingeniería web se debe al crecimiento desenfrenado que está teniendo la Web

está ocasionando un impacto en la sociedad y el nuevo manejo que se le está dando

a la información en las diferentes áreas en que se presenta ha hecho que las

personas tiendan a realizar todas sus actividades por esta vía.

Desde que esto empezó a suceder el Internet se volvió más que una diversión y

empezó a ser más serio, ya que el aumento de publicaciones y de informaciones hizo

que la Web se volviera como un desafío para los ingenieros del software, a raíz de

esto se crearon enfoques disciplinados, sistemáticos y metodologías donde tuvieron

en cuenta aspectos específicos de este nuevo medio.

La ingeniería Web es la aplicación de metodologías sistemáticas, disciplinadas y

cuantificables al desarrollo eficiente, operación y evolución de aplicaciones de alta

calidad en la World Wide Web. En este sentido, la ingeniería de la Web hace

referencia a las metodologías, técnicas y herramientas que se utilizan en el desarrollo

de aplicaciones Web complejas y de gran dimensión en las que se apoya la

evaluación, diseño, desarrollo, implementación y evolución de dichas aplicaciones.

Aplicaciones Web

En la ingeniería de software se denomina aplicación web a aquellas aplicaciones

que los usuarios pueden utilizar accediendo a un servidor web a través de Internet o

de una intranet mediante un navegador. En otras palabras, es una aplicación de

software que se codifica en un lenguaje soportado por los navegadores web (HTML,

Java Script, Java, php, asp, etc.) en la que se confía la ejecución al navegador.

Las aplicaciones web son populares debido a lo práctico del navegador web como

cliente ligero, así como a la facilidad para actualizar y mantener aplicaciones web sin

distribuir e instalar software a miles de usuarios potenciales. Existen aplicaciones

como los webmails, wikis, weblogs, tiendas en línea que son ejemplos bien

conocidos de aplicaciones web.

Page 16: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

Es importante mencionar que una página Web puede contener elementos que

permiten una comunicación activa entre el usuario y la información. Esto permite que

el usuario acceda a los datos de modo interactivo, gracias a que la página

responderá a cada una de sus acciones, como por ejemplo rellenar y enviar

formularios, participar en juegos diversos y acceder a gestores de base de datos de

todo tipo.

Uso empresarial. Una estrategia que está emergiendo para las empresas

proveedoras de software consiste en proveer acceso vía web al software. Para

aplicaciones previamente distribuidas, como las aplicaciones de escritorio, se puede

optar por desarrollar una aplicación totalmente nueva o simplemente por adaptar la

aplicación para ser usada con una interfaz web.

2.1.1 EL PROCESO DE INGENIERÍA WEB

Características como inmediatez y evolución y crecimiento continuos, nos llevan a un

proceso incremental y evolutivo, que permite que el usuario se

involucre activamente, facilitando el desarrollo de productos que se ajustan

mucho lo que éste busca y necesita.

Según Pressman [PRE00], las actividades que formarían parte del marco de trabajo

incluiría las tareas abajo enumeradas. Dichas tareas serían aplicables a cualquier

aplicación Web, independientemente del tamaño y complejidad de la misma. Las

actividades que forman parte del proceso son: formulación, planificación análisis,

modelización, generación de páginas, test y evaluación del cliente.

• La Formulación identifica objetivos y establece el alcance de la primera

entrega.

• La Planificación genera la estimación del coste general del proyecto, la

evaluación de riesgos y el calendario del desarrollo y fechas de entrega.

• El Análisis especifica los requerimientos e identifica el contenido.

• La Modelización se compone de dos secuencias paralelas de tareas.

Una consiste en el diseño y producción del contenido que forma parte de la

aplicación.

La otra, en el diseño de la arquitectura, navegación e interfaz de usuario. Es

importante destacar la importancia del diseño de la interfaz.

Page 17: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

Independientemente del valor del contenido y servicios prestados, una buena interfaz

mejora la percepción que el usuario tiene de éstos.

En la Generación de páginas se integra contenido, arquitectura, navegación e

interfaz para crear estática o dinámicamente el aspecto más visible de la aplicación,

las páginas.

El Test busca errores a todos los niveles: contenido, funcional, navegacional,

rendimiento, etc. El hecho de que las aplicaciones residan en la red, y que ínter

operen en plataformas muy distintas, hace que el proceso de test sea especialmente

difícil. Finalmente, el resultado es sometido a la evaluación del cliente.

2.1.2 CONTROL Y GARANTÍA DE LA CALIDAD

Una de las tareas colaterales que forman parte del proceso es el Control y Garantía

de la Calidad (CGC). Todas las actividades CGC de la ingeniería software tradicional

como son: establecimiento y supervisión de estándares, revisiones técnicas formales,

análisis, seguimiento y registro de informes, etc., son igualmente aplicables a la

Ingeniería Web. Sin embargo, en la Web toman especial relevancia para valorar la

calidad aspectos como:

Usabilidad, Funcionabilidad, Fiabilidad, Seguridad, Eficiencia y Mantenibilidad.

2.1.3 CONTROL DE LA CONFIGURACIÓN

Establecer mecanismos adecuados de control de la configuración para la

Ingeniería Web es uno de los mayores desafíos a los que esta nueva disciplina se

enfrenta. La Web tiene características únicas que demandan estrategias y

herramientas nuevas. Hay cuatro aspectos importantes a tener en cuenta en el

desarrollo de tácticas de control de la configuración para la Web [DAR99]:

• Contenido: Considerando la dinamicidad con la que el contenido se genera, es

tarea compleja organizar racionalmente los objetos que forman la

configuración y establecer mecanismos de control.

• Personal: Cualquiera realiza cambios. Hay mucho personal no especializado

que no reconoce la importancia que tiene el control del cambio.

• Escalabilidad: Es común encontrar aplicaciones que de un día para otro

crecen considerablemente. Sin embargo, las técnicas de control no escalan de

forma adecuada.

Page 18: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

• Política: ¿Quién posee la información? ¿Quién asume la responsabilidad y

coste de mantenerla?

2.1.4 LA GESTIÓN DEL PROCESO

En un proceso tan rápido como es el proceso de Ingeniería Web, donde los tiempos

de desarrollo y los ciclos de vida de los productos son tan cortos, ¿merece la pena el

esfuerzo requerido por la gestión? La respuesta es que dada su complejidad es

imprescindible. Entre los aspectos que añaden dificultad a la gestión destacamos:

Alto porcentaje de contratación a terceros.

El desarrollo incluye una gran variedad de personal técnico y no técnico trabajando

en paralelo.

El equipo de desarrollo debe dominar aspectos tan variopintos como, software

basado en componentes, redes, diseño de arquitectura y navegación, diseño gráfico

y de interfaces, lenguajes y estándares en Internet, test de aplicaciones Web, etc., lo

que hace que el proceso de búsqueda y contratación de personal sea arduo.

2.1.5 ¿QUÉ MARCA LA DIFERENCIA?

A modo de breve resumen enumeramos las siguientes diferencias:

Confluencia de disciplinas: Sistemas de Información, Ingeniería Software y

Diseño Gráfico que requiere equipos multidisciplinares y polivalentes.

Ciclos de vida y tiempo de desarrollo muy cortos.

Cambio continuo: Necesidad de soluciones que permitan flexibilidad y adaptación

conforme el proyecto cambia.

Requisitos fuertes de Seguridad, Rendimiento y Usabilidad.

2.1.6 ¿POR QUÉ ES NECESARIA?

La Web evoluciona y crece sin diseño alguno. Prácticas tan pobres de calidad

pueden introducir defectos que dejen al efecto 2000 como un juego de niños. Es

deber de todos proporcionar cimientos firmes a una tecnología que “mágicamente”

nos permite acceder a cualquier hora a cualquier punto del planeta para obtener

bienes tan valiosos como son los Servicios y la Información.

Page 19: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

2.2 ARQUITECTURA WEB

De la misma forma en que los arquitectos tradicionales diseñan y coordinan la

construcción de edificios, los arquitectos web diseñan y coordinan el desarrollo de

sitios web. Los sitios web son una conjunción muy compleja de distintos sistemas

integrados entre sí (Bases de datos, servidores, redes, componentes de backup y

seguridad, etc.). El resultado final será un sitio que pueda resolver las necesidades

de negocios: Vender productos y servicios online y servir mejor a las necesidades de

los clientes, en el siguiente grafico podemos observar una arquitectura Web básica.

2.2.1 ASPECTOS GENERALES EN ARQUITECTURA WEB

• Escalabilidad

• Separación de responsabilidades

• Portabilidad

• Gestión de la sesión del usuario

• Aplicación de patrones de diseño

Portabilidad

• Una aplicación web debe poder adaptarse a las distintas arquitecturas físicas

posibles en el despliegue.

• Las tareas de adaptación a un nuevo entorno deben limitarse al ámbito de la

configuración, no del desarrollo.

2.2.2 EVOLUCIÓN DE MODELOS ARQUITECTÓNICOS

• Modelo de Arquitectura 1 (Aplicaciones CGI)

Page 20: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

• Modelo de Arquitectura 1.5 (JSP y Servlets)

• Modelo de Arquitectura 2 (MVC)

• Modelo de Arquitectura 2 (MVC con Struts)

• Modelo de Arquitectura 2X

World Wide Web o Red Global Mundial

Es un sistema de documentos de hipertexto enlazados y accesibles a través de

Internet.

Page 21: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

El Navegador Web, Browser

El navegador puede considerarse como una interfaz de usuario universal. Dentro de

sus funciones están la petición de las páginas Web, la representación adecuada de

sus contenidos y la gestión de los posibles errores que se puedan producir.

Sitio web

Un sitio web (en inglés: website) es un conjunto de páginas web, típicamente

comunes a un dominio de Internet o subdominio en la World Wide Web en Internet.

Un sitio web puede ser el trabajo de una persona, una empresa u otra organización y

está típicamente dedicada a algún tema particular o propósito.

No debemos confundir sitio web con página web, esta última es sólo un archivo

HTML, y forma parte de un sitio web.

Páginas Web

Una página web u hoja electrónica es una fuente de información adaptada para la

World Wide Web (WWW) y accesible mediante un navegador de Internet que

normalmente forma parte de un Sitio web. Esta información se presenta

generalmente en formato HTML.

Servidor Web

Un servidor web es un programa que implementa el protocolo HTTP (hypertext

transfer protocol). Este protocolo pertenece a la capa de aplicación del modelo OSI y

está diseñado para transferir lo que llamamos hipertextos, páginas web o páginas

HTML (hypertext markup language): textos complejos con enlaces, figuras,

formularios, botones y objetos incrustados como animaciones o reproductores de

música.

Es un programa que se ejecuta continuamente en un ordenador (también se emplea

el término para referirse al ordenador que lo ejecuta), manteniéndose a la espera de

peticiones por parte de un cliente (un navegador web) y que responde a estas

peticiones adecuadamente, mediante una página web que se exhibirá en el

navegador o mostrando el respectivo mensaje si se detectó algún error.

Page 22: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

Cliente

El cliente es una aplicación informática que se utiliza para acceder a los servicios que

ofrece un servidor, normalmente a través de una red de telecomunicaciones.

2.2.3 ESTRUCTURA DE LAS APLICACIONES WEB

Aunque existen muchas variaciones posibles, una aplicación web está normalmente

estructurada como una aplicación de tres-capas. En su forma más común, el

navegador web ofrece la primera capa y un motor capaz de usar alguna tecnología

web dinámica (ejemplo: PHP, Java Servlets o ASP, ASP.NET, CGI, ColdFusion,

embPerl, Python (programming language) o Ruby on Rails) constituye la capa de en

medio. Por último, una base de datos constituye la tercera y última capa.

El navegador web manda peticiones a la capa de en medio que ofrece servicios

valiéndose de consultas y actualizaciones a la base de datos y a su vez proporciona

una interfaz de usuario.

Aplicaciones Web y la importancia del desarrollo en capas

Las aplicaciones hipermedia han evolucionado en los últimos años y se han

concentrado mayormente en la

Web. Las antiguas aplicaciones distribuidas en CDS dieron lugar a aplicaciones

dinámicas, de constante actualización e incluso personalizables, capaces de

adaptarse a los tipos de usuarios y en casos avanzados, a cada usuario en particular.

Estas características encuentran el medio ideal en la Web, ya que de otra forma sería

costoso su mantenimiento y evolución.

La complejidad del desarrollo ocurre a diferentes niveles: dominios de aplicación

sofisticados (financieros, médicos, geográficos, etc.); la necesidad de proveer acceso

Page 23: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

de navegación simple a grandes cantidades de datos multimedia les, y por último la

aparición de nuevos dispositivos para los cuales se deben construir interfaces Web

fáciles de usar. Esta complejidad en los desarrollos de software sólo puede ser

alcanzada mediante la separación de los asuntos de modelización en forma clara y

modular.

2.2.4 HERRAMIENTAS DE SOPORTE AL DESARROLLO EN TRES NIVELES.

2.2.4.1 HTML

El HTML es una aplicación del SGML ( Standard Generalized Markup Language),

que es un sistema para generar documentos estructurados y lenguajes de marcas.

HTML ( Hyper Text Markup Language), es decir, lenguaje de definición por marcas

para hipertexto, es un lenguaje muy sencillo que permite definir documentos

hipertexto a base de ciertas etiquetas que marcan partes del documento dándoles

una estructura o jerarquía, y que permite presentar el texto de una manera

estructurada y agradable, con enlaces (hyperlinks) que conducen a otros documentos

o fuentes de información relacionadas, y con inserciones multimedia (gráficos,

sonido, video... ). El lugar donde se encuentra esta información puede ser el mismo

documento o cualquier otro lugar de Internet. Es esta una de las cualidades que le ha

dado tanta difusión a Internet, ya que permite a cualquier usuario sin conocimientos

de informática la navegación por la Red.

Para crear un documento hipertexto para la WWW sólo debemos añadir las

etiquetas adecuadas al texto para especificar la estructura lógica ( títulos, párrafos de

texto normal, definiciones, citas...) del contenido y los diferentes efectos (especificar

los lugares del documento dónde se debe de poner cursiva, negrita o un gráfico

determinado) que se quieren dar. La presentación final se realiza por un programa

especializado llamado genéricamente Navegador o Browser, como Netscape

Navigator o Microsoft Internet Explorer. Esta presentación no será igual en todos los

visualizadores, por lo que al confeccionarlo debemos prestar más atención a la

estructura y organización que a la apariencia del documento.

Page 24: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

2.2.4.2 XHTML

XHTML, acrónimo inglés de eXtensible Hypertext Markup Language (lenguaje

extensible de marcado de hipertexto), es el lenguaje de marcado pensado para

sustituir a HTML como estándar para las páginas web. En su versión 1.0, XHTML es

solamente la versión XML de HTML, por lo que tiene, básicamente, las mismas

funcionalidades, pero cumple las especificaciones, más estrictas, de XML. Su

objetivo es avanzar en el proyecto del World Wide Web Consorcio de lograr una web

semántica, donde la información, y la forma de presentación estén claramente

separadas.

El lenguaje XHTML surgió ante los problemas de compatibilidad que surgían cuando

se usaba un documento HTML en distintas plataformas.

2.2.4.3 JavaScript

Los autores inicialmente lo llamaron Mocha y más tarde LiveScript pero fue

rebautizado como JavaScript en un anuncio conjunto entre Sun Microsystems y

Netscape, el 4 de diciembre de 1995.

En 1997 los autores propusieron JavaScript para que fuera adoptado como estándar

de la European Computer Manufacturers' Association ECMA, que a pesar de su

nombre no es europeo sino internacional, con sede en Ginebra. En junio de 1997 fue

adoptado como un estándar ECMA, con el nombre de ECMAScript. Poco después

fue implementado como estándar ISO.

JavaScript, al igual que Java o VRML, es una de las múltiples maneras que han

surgido para extender las capacidades del lenguaje HTML. Al ser la más sencilla, es

por el momento la más extendida. Antes que nada conviene aclarar lo siguiente:

JavaScript no es un lenguaje de programación propiamente dicho. Es un lenguaje

script orientado a documento, como pueden ser los lenguajes de macros que tienen

muchos procesadores de texto, JavaScript sirve principalmente para mejorar la

gestión de la interfaz cliente/servidor. Un script JavaScript insertado en un

documento HTML permite reconocer y tratar localmente, es decir, en el cliente, los

eventos generados por el usuario. Estos eventos pueden ser el recorrido del propio

documento HTML o la gestión de un formulario.

Page 25: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

2.2.4.4 Apache Web Server

El servidor HTTP Apache es un software (libre) servidor HTTP de código abierto para

plataformas Unix (BSD, GNU/Linux, etc.), Windows, Macintosh y otras, que

implementa el protocolo HTTP/1.1 y la noción de sitio virtual. Cuando comenzó su

desarrollo en 1995 se basó inicialmente en código del popular NCSA HTTPd 1.3,

pero más tarde fue reescrito por completo.

Apache presenta entre otras características mensajes de error altamente

configurables, bases de datos de autenticación y negociado de contenido.

Apache tiene amplia aceptación en la red: desde 1996, Apache, es el servidor HTTP

más usado. Alcanzó su máxima cuota de mercado en 2005 siendo el servidor

empleado en el 70% de los sitios web en el mundo.

2.2.4.5 CSS

Es un lenguaje de hojas de estilos creado para controlar el aspecto o presentación de

los documentos electrónicos definidos con HTML y XHTML. CSS es la mejor forma

de separar los contenidos y su presentación y es imprescindible para crear páginas

web complejas.

Separar la definición de los contenidos y la definición de su aspecto presenta

numerosas ventajas, ya que obliga a crear documentos HTML/XHTML bien definidos

y con significado completo (también llamados "documentos semánticos"). Además,

mejora la accesibilidad del documento, reduce la complejidad de su mantenimiento y

permite visualizar el mismo documento en infinidad de dispositivos diferentes.

Al crear una página web, se utiliza en primer lugar el lenguaje HTML/XHTML para

marcar los contenidos, es decir, para designar la función de cada elemento dentro de

la página: párrafo, titular, texto destacado, tabla, lista de elementos, etc.

Una vez creados los contenidos, se utiliza el lenguaje CSS para definir el aspecto de

cada elemento: color, tamaño y tipo de letra del texto, separación horizontal y vertical

entre elementos, posición de cada elemento dentro de la página, etc.

2.2.4.6 PHP

PHP es un lenguaje de programación de estilo clásico, con esto quiero decir que es

un lenguaje de programación con variables, sentencias condicionales, bucles,

Page 26: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

funciones. No es un lenguaje de marcas como podría ser HTML, XML o WML. Está

más cercano a JavaScript o a C, para aquellos que conocen estos lenguajes.

Pero a diferencia de Java o JavaScript que se ejecutan en el navegador, PHP se

ejecuta en el servidor, por eso nos permite acceder a los recursos que tenga el

servidor como por ejemplo podría ser una base de datos. El programa PHP es

ejecutado en el servidor y el resultado enviado al navegador. El resultado es

normalmente una página HTML pero igualmente podría ser una página WML.

Al ser PHP un lenguaje que se ejecuta en el servidor no es necesario que su

navegador lo soporte, es independiente del navegador, pero sin embargo para que

sus páginas PHP funcionen, el servidor donde están alojadas debe soportar PHP.

2.2.4.7 MySQL

MySQL es un sistema de administración relacional de bases de datos. Una base de

datos relacional archiva datos en tablas separadas en vez de colocar todos los datos

en un gran archivo. Esto permite velocidad y flexibilidad. Las tablas están conectadas

por relaciones definidas que hacen posible combinar datos de diferentes tablas sobre

pedido.

Desde enero de 2008 una subsidiaria de Sun Microsystems - desarrolla MySQL

como software libre en un esquema de licenciamiento dual.

MySQL es muy utilizado en aplicaciones web como, Drupal o phpBB, en plataformas

(Linux/Windows-Apache-MySQL-PHP/Perl/Python), y por herramientas de

seguimiento de errores como Bugzilla. Su popularidad como aplicación web está muy

ligada a PHP, que a menudo aparece en combinación con MySQL.

Page 27: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

2.2.5 HERRAMIENTAS DE APOYO

2.2.5.1 Macromedia Dreamweaver 8

Macromedia Dreamweaver 8 es un editor HTML profesional para diseñar, codificar y

desarrollar sitios, páginas y aplicaciones Web. Tanto si desea controlar manualmente

el código HTML como si prefiere trabajar en un entorno de edición visual,

Dreamweaver le proporciona útiles herramientas que mejorarán su experiencia de

creación Web.

Dreamweaver le permite crear aplicaciones Web dinámicas basadas en bases

de datos empleando tecnologías de servidor como CFML, ASP.NET, ASP,

JSP y PHP. Si prefiere trabajar con datos en XML, Dreamweaver incorpora

herramientas que le permiten crear fácilmente páginas XSLT, adjuntar

archivos XML y mostrar datos XML en sus páginas.

Características

Es herramienta líder en la industria del desarrollo web se enfoca en esta nueva

versión en eficiencia, innovación e integración.

Dreamweaver 8 incluye herramientas para trabajar aplicaciones que manejan XML,

así como mejoras a su manejo de hojas de estilo (CSS).

Del lado del XML, incluye interesantes herramientas visuales para incluir contenidos

de este formato como son los feeds RSS, integrándolos fácilmente en sitios web y

aplicaciones.

Para el trabajo con CSS han simplificado la creación y manejo de diferentes estilos,

promoviendo los estándares para nuevos usuarios y facilitando su aplicación para

usuarios avanzados.

También han buscado facilitar la difusión de Flash Video, con herramientas que

permiten incluir este formato muy fácilmente en páginas web.

Además incluye nuevas herramientas de zoom y guía para revisar los diseños. Y una

barra de código para acceder a funciones frecuentes.

Destaca también que las funciones para cargar y descargar archivos ahora funcionan

en el background sin interrumpir la productividad en el programa.

Page 28: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

2.2.5.2 Macromedia Fireworks 8

Macromedia Fireworks 8 le permite crear y optimizar de forma precisa imágenes para

la Web en un entorno intuitivo y personalizable. Las herramientas de optimización

líderes de la industria que ofrece Fireworks le ayudan a encontrar el equilibrio entre

una calidad de imagen máxima y un tamaño de compresión mínimo.

2.2.5.3 Power Designer

Es la herramienta de modelamiento número uno de la industria, permite a las

empresas, de manera más fácil, visualizar, analizar y manipular metadatos, logrando

un efectiva arquitectura empresarial de información.

PowerDesigner para Arquitectura Empresarial también brinda un enfoque basado en

modelos, el cual permite alinear al negocio con la tecnología de información,

facilitando la implementación de arquitecturas efectivas de información empresarial.

Brinda potentes técnicas de análisis, diseño y gestión de metadatos a la empresa.

PowerDesigner combina varias técnicas estándar de modelamiento con herramientas

líder de desarrollo, como .NET, Sybase WorkSpace, Sybase Powerbuilder, Java y

Eclipse, para darle a las empresas soluciones de análisis de negocio y de diseño

formal de base de datos. Además trabaja con más de 60 bases de datos

relacionales.

2.3 DISEÑO DE APLICACIONES WEB

El diseño web es una actividad que consiste en la planificación, diseño e

implementación de sitios web y páginas web. No es simplemente una aplicación del

diseño convencional, ya que requiere tener en cuenta cuestiones tales como

navegabilidad, interactividad, usabilidad, arquitectura de la información y la

interacción de medios como el audio, texto, imagen y vídeo. Se lo considera dentro

del Diseño Multimedia.

La unión de un buen diseño con una jerarquía bien elaborada de contenidos aumenta

la eficiencia de la web como canal de comunicación e intercambio de datos, que

brinda posibilidades como el contacto directo entre el productor y el consumidor de

contenidos, característica destacable del medio.

El diseño web ha visto amplia aplicación en los sectores comerciales de Internet

especialmente en la World Wide Web. Asimismo, a menudo la web se utiliza como

Page 29: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

medio de expresión plástica en sí. Artistas y creadores hacen de las páginas en

Internet un medio más para ofrecer sus producciones y utilizarlas como un canal más

de difusión de su obra.

2.3.1 DISEÑO WEB APLICADO

El diseño de páginas web trata básicamente de realizar un documento con

información hiperenlazado con otros documentos y asignarle una presentación para

diferentes dispositivos de salida (en una pantalla de computador, impreso en papel,

en un teléfono móvil, etc.).

Estos documentos o páginas web pueden ser creados:

• creando archivos de texto en HTML.

• utilizando un programa WYSIWYG o WYSIWYM de creación de páginas.

• utilizando lenguajes de programación del lado servidor para generar la página

web.

2.3.1.1 Etapas

Para el diseño de páginas web debemos tener en cuenta tres etapas:

• La primera es el diseño visual de la información que se desea editar. En esta

etapa se trabaja distribuyendo el texto, los gráficos, los vínculos a otros

documentos y otros objetos multimedia que se consideren pertinentes. Es

importante que antes de trabajar sobre el computador se realice un bosquejo o

prediseño sobre el papel. Esto facilitará tener un orden claro sobre el diseño.

• La segunda, una vez que se tiene este boceto se pasa a 'escribir' la página web.

Para esto, y fundamentalmente para manejar los vínculos entre documentos, se

creó el lenguaje de marcación de hipertexto o HTML.

• La tercera, etapa consiste en el posicionamiento en buscadores o SEO. Ésta

consiste en optimizar la estructura del contenido para mejorar la posición en que

aparece la página en determinada búsqueda. Etapa no gustosa por los

diseñadores gráficos, por que a diferencia del texto, aún para el año 2009 no se

pueden tener nuevos resultados en los buscadores con sitios muy gráficos.

Page 30: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

2.3.1.2 Fundamentos

Un correcto diseño web implica conocer cómo se deben utilizar cada una de los

elementos permitidos en el HTML, es decir, hacer un uso correcto de este lenguaje

dentro de los estándares establecidos por la W3C y en lo referente a la web

semántica. Debido a la permisibilidad de algunos navegadores web como Internet

Explorer, esta premisa original se ha perdido. Por ejemplo, este navegador permite

que no sea necesario cerrar las etiquetas del marcado, utiliza código propietario, etc.

Esto impide que ese documento web sea universal e independiente del medio que se

utilice para ser mostrado.

La web semántica, por otra parte, aboga por un uso lógico de los elementos según el

significado para el que fueron concebidas. Por ejemplo se utilizará el elemento <P>

para marcar párrafos, y <TABLE> para tabular datos (nunca para disponer de manera

visual los diferentes elementos del documento). En su última instancia, esto ha

supuesto una auténtica revolución en el diseño web puesto que apuesta por separar

totalmente el contenido del documento de la visualización.

De esta forma se utiliza el documento HTML únicamente para contener, organizar y

estructurar la información y las hojas de estilo CSS para indicar como se mostrará

dicha información en los diferentes medios (como por ejemplo, una pantalla de

computadora, un teléfono móvil, impreso en papel, leída por un sintetizador de voz,

etc.). Por lógica, esta metodología beneficia enormemente la accesibilidad del

documento.

También existen páginas dinámicas, las cuales permiten interacción entre la web y el

visitante, proporcionándole herramientas tales como buscadores, chat, foros,

sistemas de encuestas, etc. y poseen de un Panel de Control de administración de

contenidos. Este permite crear, actualizar y administrar cantidades ilimitadas de

contenido en la misma.

2.3.1.3 Accesibilidad

El diseño web debe seguir unos requerimientos mínimos de accesibilidad web que

haga que sus sitios web o aplicaciones puedan ser visitados por el mayor número de

personas. Para conseguir estos objetivos de accesibilidad se han desarrollado pautas

como las del W3C: Pautas de accesibilidad al contenido Web.

Page 31: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

2.3.2 PRINCIPIOS DE DISEÑO WEB.

Internet es un medio riquísimo tanto en posibilidades como en contenidos. La

competitividad existente en la red de redes es enorme debido entre muchas razones

a la relativa pequeña inversión que requiere el crear un website. Una navegación

engorrosa, puede por tanto hacernos perder de forma inmediata a casi todos

nuestros posibles clientes-usuarios. Si a esto añadimos que la construcción de un

website se realiza con lenguajes que posibilitan una enorme flexibilidad, podemos ver

la gran importancia que tiene el especificar algunos principios de diseño para el

desarrollo de nuestros webs.

2.3.2.1 La ley de Fitts.

Esta es prácticamente la única regla no subjetiva que está establecida dentro del

campo del diseño de interfaces y hace referencia a las características que tienen que

tener los objetos para que sea más fácil o difícil pulsarlos (o mejor dicho interaccionar

con ellos): posición en la que se encuentren, tamaño del mismo, y una característica

adicional, la ‘expresividad’ de dichos elementos. Con este último concepto quiero dar

a entender que un objeto será más ‘visible’ (en cuanto a la interacción con el usuario)

si éste da a entender o expresa su existencia como objeto de interfaz y no como

simple información (ya sea dato o imagen). Un ejemplo es el cambio que sufren

ciertos enlaces web al pasar por encima de ellos con el puntero del ratón (por

ejemplo cambiando de color). Cualquiera puede pensar que todo lo dicho por la ley

de Fitts es absolutamente evidente, y de hecho generalmente lo es, pero más

sorprendente es aún la gran cantidad de veces que se no se aplican estos principios

logrando por tanto que la usabilidad de nuestra interfaz se vea claramente

comprometida.

2.3.2.2 Dar feedback al usuario.

Existen muchísimos casos en los que una acción por parte del usuario implica

modificaciones en la aplicación (sea esta web o no) que no tienen una

correspondencia visual que mostrarse al usuario, y si ésta existe no se da ninguna

información sobre la acción ejecutada. Imaginemos que conectamos con una página

de sugerencias de un website, y al completar toda la información que se nos pide y

enviarla, esta vuelve a aparecer vacía o nos devuelve a la página principal de dicho

Page 32: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

website. El usuario no sabría si la sugerencia ha sido enviada, o si lo que ha ocurrido

es que la página está mal programada y al darle al botón de envío vuelve a cargarse

el mismo formulario u otro. Dar información de retorno al usuario sobre las acciones

que realiza es un punto fundamental y en demasiadas ocasiones olvidado.

Afortunadamente en el mundo web, la principal acción que realizan los internautas es

pulsar enlaces y descargar archivos, acciones ambas que tienen inmediatas

consecuencias. Para las que no tienen, dar feedback al usuario es el camino a seguir

para conseguir aplicaciones consistentes y de alta usabilidad.

2.3.2.3 Reutilización de la experiencia del usuario.

Consiste en exponer al usuario ante lo conocido. Actualmente está proliferando en

demasía el uso de ciertos elementos que dan a la web mucha flexibilidad y riqueza

como es el uso de Flash. En estos nuevos interfaces parece primar el efecto visual, y

la realización de todo tipo de piruetas estilísticas sobre la facilidad de uso

consiguiendo confundir al usuario. En el entorno web es particularmente poco

razonable crear interfaces que requieran excesivo aprendizaje ya que cualquier

dificultad presentada al usuario suele significar una pérdida considerable de visitas a

favor de nuestra competencia (no olvidemos la enorme proliferación que ha vivido y

sigue viviendo la creación de websites de todo tipo). El uso de estructuras de

navegación no estándar es posiblemente el error más grave que podamos cometer.

También debemos saber que existen ciertas excepciones plenamente justificadas

como son la creación de websites en los que prima la forma al contenido o en los que

casi no existe competencia.

2.3.2.4 Uso del Scroll.

Es una buena idea hacer que todos los elementos de navegación y la información

importante se le muestre al usuario nada más se cargan las páginas sin necesidad

de hacer scroll. De esta forma nos aseguramos la información importante es

expuestas a todos nuestro clientes-usuarios.

2.3.2.5 Sentencias y párrafos.

La gran mayoría de los usuarios lee lo mínimo e imprescindible para obtener aquello

que buscan de nuestro web. Incluir sentencias largas y párrafos grandes dificulta

Page 33: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

generalmente esta actividad con lo que se pierde algo de usabilidad (y por lo tanto de

visitas!!). Evidentemente no podemos aplicar lo anteriormente dicho a lo que son

propiamente documentos en formato web (html), ya sean artículos, o incluso libros.

De todas formas pienso que ya existe una tendencia que se va a ir consolidando, y

es la de diferenciar lo que es la propia aplicación web (es decir aquellos objetos que

nos permiten comunicarnos con el servidor) de todo aquellos elementos que

obtenemos como resultado de la interacción con dicha aplicación. Esta postura

introduce una clara riqueza conceptual al diferenciar entre aplicación e información,

teniendo numerosas ventajas y a su vez un grave inconveniente (que puede resultar

argumento más que suficiente para desecharla) y es que necesitamos un programa

adicional para la lectura de los documentos obtenidos (por ejemplo el Adobe Acrobat

Reader) que aunque puede ser gratuito implica mayores requisitos al usuario (y esto

casi siempre suele ir en decremento del número de visitas). Conocer a nuestros

posibles clientes es un punto fundamental a la hora de tomar estas decisiones de

diseño.

2.3.2.6 Imágenes.

Debido a las limitaciones del ancho de banda resulta poco recomendable cargar

excesivamente nuestras páginas de imágenes, y si debemos de hacerlo una técnica

muy interesante consiste en crear thumbnails (imágenes de muy reducido tamaño

que al pulsarse abren otra ventana en la que se carga la imagen original). Por lo

general en los thumbnails se muestra la suficiente información para que un usuario

decida si le es útil obtener la imagen original o no.

2.3.2.7 Ancho de Banda.

El universo web ofrece muchísimas posibilidades interactivas y multimedia pero hay

que ser plenamente conscientes de que aún existen muchos usuarios que disponen

de un ancho de banda reducido y que por lo tanto pueden necesitar bastante

segundos (o incluso minutos) en cargar nuestras páginas. Conforme se vayan

extendiendo las redes de alta velocidad, este panorama irá cambiando, aunque el

tiempo que va a requerir se mide en años y no en meses. La economía, y la

simplicidad siguen siendo normas de capital importancia en el diseño de interfaces

web.

Page 34: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

CAPITULO III.

ASPECTOS METODOLÓGICOS

3.1 MODELO ESPIRAL ORIENTADO A LA WEB

El MODELO en espiral, propuesto originalmente por BOEHM en 1976, es un modelo

de proceso de software evolutivo donde se conjuga la naturaleza de construcción de

prototipos con los aspectos controlados y sistemáticos del MODELO LINEAL y

SECUENCIAL. Proporciona el potencial para el desarrollo rápido de versiones

incrementales del software que no se basa en fases claramente definidas y

separadas para crear un sistema. Se divide en un número de actividades de marco

de trabajo, también llamadas REGIONES DE TAREAS , Cada una de las regiones

están compuestas por un conjunto de tareas del trabajo llamado CONJUNTO DE

TAREAS que se adaptan a las características del proyecto que va a emprenderse en

todos los casos se aplican actividades de protección.

3.1.1 ACTIVIDADES PRINCIPALES:

1. Planificación: determinación de objetivos, alternativas y restricciones.

2. Análisis de riesgo: análisis de alternativas e identificación/resolución de riesgos.

3. Ingeniería: desarrollo del producto del "siguiente nivel",

4. Evaluación del cliente: Valorización de los resultados de la ingeniería.

3.1.2 CARACTERÍSTICAS

• En cada giro se construye un nuevo modelo del sistema completo.

• Este modelo puede combinarse con otros modelos de proceso de desarrollo

(cascada, evolutivo)

• Mejor modelo para el desarrollo de grandes sistemas.

• El análisis de riesgo requiere la participación de personal con alta cualificación.

3.1.3 DESVENTAJAS

• Resulta difícil convencer a grandes clientes de que el enfoque evolutivo es

controlable.

• Es nuevo (1988) y no se ha utilizado tanto como otros modelos de ciclo de vida.

Page 35: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

• Debido a su elevada complejidad no se aconseja utilizarlo en pequeños sistemas.

3.1.4 VENTAJAS

• El modelo en espiral puede adaptarse y aplicarse a lo largo de la vida del software

de computadora.

• Como el software evoluciona a medida que progresa el proceso, el desarrollador y

el cliente comprenden y reaccionan mejor ante riesgos en cada uno de los nivele

evolutivos.

• El modelo en espiral permite a quien lo desarrolla aplicar el enfoque de

construcción de prototipos en cualquier etapa de evolución del producto.

• El modelo en espiral demanda una consideración directa de los riesgos técnicos

en todas las etapas del proyecto y si se aplica adecuadamente debe reducir los

riesgos antes de que se conviertan en problemas.

En la utilización de grandes sistemas a doblado la productividad

3.2 METODOLOGÍA OOHDM

3.2.1 INTRODUCCIÓN

La metodología de Diseño Hipermedia orientada a objetos, propuesta por D.

Schwabe y G. Rossi, OOHDM es una mezcla de estilos de desarrollo basado en

prototipos, en desarrollo interactivo y de desarrollo incremental. En cada fase se

elabora un modelo orientado a objetos conceptual que recoge las características a

resaltar en la misma incrementando los resaltados de la fase o fases siguientes.

Según OOHDM, el desarrollo de aplicaciones de hyper media ocurre cuando

cuatro actividades se procesan:

• El Modelo Conceptual

• Diseño de la Navegación

• Diseño Interfaz Abstracta

• Implementación

Que se realiza en una mezcla de estilos de desarrollo iterativo e incremental; en cada

paso un modelo será construido o mejorado.

Page 36: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

3.2.2 LOS PRINCIPIOS BÁSICOS DEL MÉTODO DE OOHDM

Contempla los objetos que representan la navegación como vistas de los objetos

detallados en el modelo conceptual.

El uso de abstracciones apropiadas para organizar el espacio de la navegación, con

la introducción de contextos de navegación.

La separación de las características de interfaz de las características de la

navegación.

Una identificación explícita que hay en las decisiones de diseño que sólo necesitan

ser hechos en el momento de la implementación.

3.2.2.1 Modelo Conceptual

Durante esta actividad, se construye un esquema conceptual que representa objetos,

sus relaciones y colaboraciones que existen en el dominio designado. En

aplicaciones de hypermedia convencionales, es decir, aquellos en los que los

componentes de la hypermedia no serán modificados durante su ejecución, se podría

usar un modelo semántico estructural [Banerjee87], sin embargo, cuando la base de

información puede cambiar dinámicamente o si se piensa realizar cómputos

complejos o consultas en los objetos o el esquema, se necesita una abundante

conducta del modelo orientado a objetos.

En OOHDM, el esquema conceptual es construido en las clases, relaciones y sub-

sistemas. Las clases son descritas como de costumbre en el modelo orientado a

objetos, sin embargo, pueden multi-digitar atributos representando perspectivas

diferentes de la misma entidad del mundo. Se usa una notación que es similar a UML

[OMG 00], la Clase y Tarjetas de las relaciones, similar a las tarjetas de CRC [Wirfs-

Brock 90] son usadas como una ayuda de la documentación, ayudando remontar

decisiones de diseño enviados y al revés.

3.2.2.2 Diseño Navegacional

En OOHDM, la navegación es considerada un paso crítico en el diseño de una

aplicación de hypermedia. Un Modelo de navegación se construye como una vista

más de un modelo conceptual y permite la construcción de modelos diferentes según

los perfiles diferentes de los usuarios. Cada modelo de navegación proporciona una

vista "Subjetiva" del modelo conceptual.

Page 37: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

El diseño de navegación se expresa en dos esquemas, el esquema de la Clase De

navegación, y el Esquema del Contexto De navegación. Los objetos navegables de

una hypermedia en la aplicación es definida por un esquema de la clase

navegacional cuyas clases reflejan la vista escogida sobre del dominio de la

aplicación.

3.2.2.3 Diseño de Interfaz Abstracta

En OOHDM, se usa un acercamiento del Diseño de Datos de Vista Abstractos

(ADVs), para describir la interfaz del usuario de una aplicación de hypermedia. ADVs

son objetos en los que tienen un estado y una interfaz, donde la interfaz puede ser

ejercido a través de mensajes (en particular, eventos externos generados por el

usuario). Las ADVs son abstractas en el sentido de que ellos sólo representan la

interfaz y el estado, y no la aplicación. Las ADVs han sido usados para representar

interfaces entre dos medios de comunicación diferentes como un usuario, una red o

un dispositivo (un cronómetro, por ejemplo) o como una interfaz entre dos u mas

Objetos de Datos Abstractos (ADOs). Los ADOs son objetos que no soportan

externamente eventos generados por el usuario. Desde un punto de vista

arquitectónico, las ADVs son observadores para ADOss, para que el protocolo de

comunicación entre la interfaz y los objetos de aplicación siga las reglas descritas en

el Modelo de Diseño de Observador.

3.2.2.4 Implementación

En esta fase, el diseñador realmente implementará el diseño. Hasta ahora, todos los

modelos fueron deliberadamente construidos de semejante manera en lo que se

refiere a ser independiente de la plataforma de implementación; en esta fase el

ambiente particular de (tiempo de ejecución) runtime se toma el derecho de acceso a

un servidor o a la red internet. A continuación se fijará cómo los diseños de OOHDM

pueden ser implementados en el WWW. Cuando la fase de implementación se

alcanza, el diseñador ya tiene definido los artículos de información que son parte del

dominio del problema. También tiene identificado cómo estos artículos deben ser

organizados según el perfil del Usuario y asignaciones; ya que se ha decidido lo la

interfaz, y cómo se comportará. En orden para implementar todos esto en el

ambiente de WWW y aplicaciones de multimedia, el diseñador tiene que decidir cómo

Page 38: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

los artículos de información (ambos conceptual y objeto de navegación) será

almacenada. También debe decidir cómo se comprenderán la apariencia de la

interfaz y el comportamiento serán realizados usando HTML y posiblemente use

algunas extensiones. Aunque OOHDM es un método en términos de modelos de OO

orientados a objetos, no requiere un ambiente de aplicación OO.

3.3 MODELO UML (UNIFIED MODELING LANGUAGE)

Es un lenguaje que permite modelar, construir y documentar los elementos que

forman un sistema software orientado a objetos. Se ha convertido en el estándar de

facto de la industria, debido a que ha sido impulsado por los autores de los tres

métodos más usados de orientación a objetos: Grady Booch, Ivar Jacobson y Jim

Rumbaugh. Estos autores fueron contratados por la empresa Rational Software Co.

para crear una notación unificada en la que basar la construcción de sus

herramientas CASE. En el proceso de creación de UML han participado, no obstante,

otras empresas de gran peso en la industria como Microsoft, Hewlett-Packard, Oracle

o IBM, así como grupos de analistas y desarrolladores.

Uno de los objetivos principales de la creación de UML era posibilitar el intercambio

de modelos entre las distintas herramientas CASE orientadas a objetos del mercado.

Para ello era necesario definir una notación y semántica común. Hay que tener en

cuenta que el estándar UML no define un proceso de desarrollo específico, tan solo

se trata de una notación.

UML se puede usar para modelar distintos tipos de sistemas: sistemas de software,

sistemas de hardware, y organizaciones del mundo real. UML ofrece nueve

diagramas en los cuales modelar sistemas.

• Diagramas de Casos de Uso para modelar los procesos ’business’.

• Diagramas de Secuencia para modelar el paso de mensajes entre objetos.

• Diagramas de Colaboración para modelar interacciones entre objetos.

• Diagramas de Estado para modelar el comportamiento de los objetos en el sistema.

• Diagramas de Actividad para modelar el comportamiento de los Casos de Uso,

objetos u operaciones.

• Diagramas de Clases para modelar la estructura estática de las clases en el

sistema.

Page 39: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

• Diagramas de Objetos para modelar la estructura estática de los objetos en el

sistema.

• Diagramas de Componentes para modelar componentes.

• Diagramas de Implementación para modelar la distribución del sistema.

3.3.1 DIAGRAMA DE CASO DE USO

Los casos de uso documentan el comportamiento del sistema desde el punto de vista

del usuario. En este caso por <<usuario>> se entiende cualquier cosa que ajena al

sistema se desarrolla y que interactúa con el mismo. Un usuario podría ser una

persona, otro sistema de información, un dispositivo hardware, etc. El modelado de

los casos de uso ayuda con tres de los aspectos más difíciles del desarrollo:

• La captura de requisitos.

• La planificación de las iteraciones del desarrollo.

• La validación de los sistemas.

Los casos de uso los presentó por primera vez Ivar Jacobson a principios de los

90, como un desarrollo a partir de la idea de escenarios.

Un diagrama de casos de uso es relativamente fácil de comprender de forma

intuitiva, incluso sin conocer la notación. Esto es una ventaja importante , ya que el

modelado de casos de uso se puede tratar de forma coherente con un cliente que no

necesita estar familiarizado con UML.

Componentes:

• Casos de uso

• Actores

• Relaciones

Casos de uso

Un caso de uso es una operación o tarea específica que se realiza tras una orden de

algún agente, sea desde una petición de un actor o bien desde la invocación desde

otro caso de uso. Se representa mediante elipses con el nombre del caso de uso en

su interior.

Actores

Un actor es un conjunto de uniforme de personas, sistemas ó máquinas, externos al

sistema, que cumplen con un rol determinado que interactúan con él. Es importante

Page 40: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

aclarar que un actor representa un rol, es decir no necesariamente representa a una

persona en particular sino más bien la labor que realiza frente al sistema.

Relaciones

Muestra la relaciones entre los actores y los casos de uso. Existen las relaciones:

• De asociación entre actores y casos de uso (relación de comunicación

<<comunicates>>).

• De generalización entre actores.

• De generalización entre casos de usos.

• Relaciones “incluye” entre casos de uso (<<include>>).

• Relaciones “extiende” entre casos de uso (<<extend>>).

3.3.2 DIAGRAMA DE CLASES.

Muestra la vista estática del sistema. Indica las clases que intervienen y cómo se

relacionan para cumplir los objetivos del sistema (no muestra cómo interactúan uno

con otro ni que mensajes se envían).

Elementos:

• Clase: atributos y operaciones.

• Relaciones: dependencias, generalización y asociación.

Representación grafica:

Page 41: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

• Clase: representada por un rectángulo con tres dimensiones internas. Los tres

compartimientos estándares alojan el nombre de la clase, sus atributos y sus

mensajes, respectivamente.

Definiciones:

• Propiedades también llamados atributos o características, son valores que

corresponden a un objeto, como color, material, cantidad, ubicación.

Generalmente se conoce como la información detallada del objeto. Suponiendo

que el objeto es una puerta, sus propiedades serían: la marca, tamaño, color y

peso.

• Operaciones son aquellas actividades o verbos que se pueden realizar con/para

este objeto, como por ejemplo abrir, cerrar, buscar, cancelar, acreditar, cargar. De

la misma manera que el nombre de un atributo, el nombre de una operación se

escribe con minúsculas si consta de una sola palabra. Si el nombre contiene más

de una palabra, cada palabra será unida a la anterior y comenzará con una letra

mayúscula, a excepción de la primera palabra que comenzará en minúscula. Por

ejemplo: abrirPuerta, cerrarPuerta, buscarPuerta, etc.

• Interfaz es un conjunto de operaciones y/o propiedades que permiten a un objeto

comportarse de cierta manera, por lo que define los requerimientos mínimos del

objeto.

• Herencia se define como la reutilización de un objeto padre ya definido para poder

extender la funcionalidad en un objeto hijo. Los objetos hijos heredan todas las

operaciones y/o propiedades de un objeto padre. Por ejemplo: Una persona

puede subdividirse en Proveedores, Acreedores, Clientes, Accionistas,

Empleados; todos comparten datos básicos como una persona, pero además

tendrá información adicional que depende del tipo de persona, como saldo del

cliente, total de inversión del accionista, salario del empleado, etc.

Page 42: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

http://es.wikipedia.org/wiki/Diagrama_de_clases

3.3.3 DIAGRAMA DE OBJETOS.

Los diagramas de objetos son utilizados durante el proceso de Análisis y Diseño de

los sistemas informáticos en la metodología UML.

Se puede considerar un caso especial de un diagrama de clases en el que se

muestran instancias específicas de clases (objetos) en un momento particular del

sistema. Los diagramas de objetos utilizan un subconjunto de los elementos de un

diagrama de clase. Los diagramas de objetos no muestran la multiplicidad ni los

roles, aunque su notación es similar a los diagramas de clase.

Una diferencia con los diagramas de clase es que el compartimiento de arriba va en

la forma, Nombre de objeto: Nombre de clase.

http://es.wikipedia.org/wiki/Diagrama_de_objetos

Page 43: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

3.3.3.1 Diccionario de Clases.

El diccionario de clases es un documento que muestra una descripción de los

elementos que componen cada clase.

La descripción de cada clase está formada por los elementos siguientes:

• Nombre de la clase.

• Tipo

• Descripción

Para cada atributo se especifica: Visibilidad, nombre, tipo de dato y valor inicial.

http://www.scribd.com/doc/2568127/UML

3.3.4 DIAGRAMA DE INTERACCIÓN

3.3.4.1 Diagrama de secuencia.

El diagrama de secuencia es uno de los diagramas más efectivos para modelar

interacción entre objetos en un sistema. Un diagrama de secuencia muestra la

interacción de un conjunto de objetos en una aplicación a través del tiempo y se

modela para cada método de la clase. Mientras que el diagrama de casos de uso

permite el modelado de una vista business del escenario, el diagrama de secuencia

contiene detalles de implementación del escenario, incluyendo los objetos y clases

que se usan para implementar el escenario, y mensajes pasados entre los objetos.

Típicamente uno examina la descripción de un caso de uso para determinar qué

objetos son necesarios para la implementación del escenario. Si tienes modelada la

descripción de cada caso de uso como una secuencia de varios pasos, entonces

puedes "caminar sobre" esos pasos para descubrir qué objetos son necesarios para

que se puedan seguir los pasos. Un diagrama de secuencia muestra los objetos que

intervienen en el escenario con líneas discontinuas verticales, y los mensajes

pasados entre los objetos como vectores horizontales. Los mensajes se dibujan

cronológicamente desde la parte superior del diagrama a la parte inferior; la

distribución horizontal de los objetos es arbitraria. Durante el análisis inicial, el

modelador típicamente coloca el nombre 'business' de un mensaje en la línea del

mensaje. Más tarde, durante el diseño, el nombre 'business' es reemplazado con el

nombre del método que está siendo llamado por un objeto en el otro. El método

Page 44: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

llamado, o invocado, pertenece a la definición de la clase instanciada por el objeto en

la recepción final del mensaje.

http://es.wikipedia.org/wiki/Diagrama_de_secuencia

3.3.4.2 Diagrama de Colaboración.

Esencialmente es un diagrama que muestra interacciones organizadas alrededor de

los roles. A diferencia de los diagramas de secuencia, los diagramas de colaboración

muestran explícitamente las relaciones de los roles. Por otra parte, un diagrama de

colaboración no muestra el tiempo como una dimensión aparte, por lo que resulta

necesario etiquetar con números de secuencia tanto la secuencia de mensajes como

los hilos concurrentes.

• Muestra cómo las instancias específicas de las clases trabajan juntas para

conseguir un objetivo común.

• Implementa las asociaciones del diagrama de clases mediante el paso de

mensajes de un objeto a otro. Dicha implementación es llamada "enlace".

Un diagrama de colaboración es también un diagrama de clases que contiene roles

de clasificador y roles de asociación en lugar de sólo clasificadores y asociaciones.

Los roles de clasificador y los de asociación describen la configuración de los objetos

y de los enlaces que pueden ocurrir cuando se ejecuta una instancia de la

comunicación. Cuando se instancia una comunicación, los objetos están ligados a los

roles de clasificador y los enlaces a los roles de asociación. El rol de asociación

puede ser desempeñado por varios tipos de enlaces temporales, tales como

Page 45: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

argumentos de procedimiento o variables locales del procedimiento. Los símbolos de

enlace pueden llevar estereotipos para indicar enlaces temporales.

http://es.wikipedia.org/wiki/Diagrama_de_colaboracion

3.3.5 DIAGRAMA DE ESTADOS.

Un Diagrama de Estados muestra la secuencia de estados por los que pasa bien un

caso de uso, bien un objeto a lo largo de su vida, o bien todo el sistema. En él se

indican qué eventos hacen que se pase de un estado a otro y cuáles son las

respuestas y acciones que genera.

En cuanto a la representación, un diagrama de estados es un grafo cuyos nodos son

estados y cuyos arcos dirigidos son transiciones etiquetadas con los nombres de los

eventos.

Un estado se representa como una caja redondeada con el nombre del estado en su

interior. Una transición se representa como una flecha desde el estado origen al

estado destino.

http://www.clikear.com/manuales/uml/diagramasiestados.aspx

Page 46: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

3.3.6 DIAGRAMA DE COMPONENTES

Un diagrama de componentes muestra las organizaciones y dependencias lógicas

entre componentes software, sean éstos componentes de código fuente, binarios o

ejecutables. Desde el punto de vista del diagrama de componentes se tienen en

consideración los requisitos relacionados con la facilidad de desarrollo, la gestión del

software, la reutilización, y las restricciones impuestas por los lenguajes de

programación y las herramientas utilizadas en el desarrollo. Los elementos de

modelado dentro de un diagrama de componentes serán componentes y paquetes.

Dado que los diagramas de componentes muestran los componentes software que

constituyen una parte reusable, sus interfaces, y sus interrelaciones, en muchos

aspectos se puede considerar que un diagrama de componentes es un diagrama de

clases a gran escala. Cada componente en el diagrama debe ser documentado con

un diagrama de componentes más detallado, un diagrama de clases, o un diagrama

de casos de uso.

Un paquete en un diagrama de componentes representa una división física del

sistema. Los paquetes se organizan en una jerarquía de capas donde cada capa

tiene una interfaz bien definida. Un ejemplo típico de una jerarquía en capas de este

tipo es: Interfaz de usuario; Paquetes específicos de la aplicación; Paquetes

reusables; Mecanismos claves; y Paquetes hardware y del sistema operativo.

Un diagrama de componentes se representa como un grafo de componentes

software unidos por medio de relaciones de dependencia (generalmente de

compilación). Puede mostrar también que un componente software contiene una

interfaz, es decir, la soporta.

http://tvdi.det.uvigo.es/%7Eavilas/UML/node49.html

Page 47: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

3.3.7 DIAGRAMA DE ACTIVIDAD.

En el Lenguaje de Modelado Unificado, un diagrama de actividades representa los

flujos de trabajo paso a paso de negocio y operacionales de los componentes en un

sistema. Un Diagrama de Actividades muestra el flujo de control general.

Un diagrama de Actividades es una variación del diagrama de estados donde los

"estados" representan operaciones, y las transiciones representan las actividades

que ocurren cuando la operación es completa.

El propósito del diagrama de actividad es modelar un proceso de flujo de trabajo

(workflow) y/o modelar operaciones. Una Operación es un servicio proporcionado por

un objeto, que está disponible a través de una interfaz. Una Interfaz es un grupo de

operaciones relacionadas con la semántica.

http://es.wikipedia.org/wiki/Diagrama_de_actividades

Page 48: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

CAPITULO IV.

CONCLUSIONES Y RECOMENDACIONES.

4.1 CONCLUSIONES.

• Este sitio fue desarrollado con el propósito de manejar eficientemente la

información de la empresa.

• El sitio nos permite trabajar en una intranet o promedio de Internet con una

fácil configuración.

• El sitio Web fue desarrollado en lenguaje de código libre lo que nos permitió

un ahorro considerable en recursos.

• El diseño se lo llevo a cabo en herramientas líderes en desarrollo Web lo

cual lo convierte en un sitio con una interfaz amigable para el usuario.

• El sitio esta protegido con clave de ingreso para brindar mayor seguridad y

confianza a la empresa, con el objetivo de evitar el acceso a personas no

autorizadas.

• Al desarrollar este sitio se ha aplicado todo lo aprendido en la carrera.

Page 49: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

4.2 RECOMENDACIONES

• Las personas encargadas del manejar el sitio Web deberán tener

conocimientos de computación para facilitar la capacitación en el manejo

del sitio.

• En caso de un mal funcionamiento se recomienda llamar a la persona

encargada de su mantenimiento.

• Se recomienda sacar un respaldo de la base de datos cada 3 meses, esto

permitirá una recuperación de información en caso de daño en el

computador.

Page 50: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

4.3 BIBLIOGRAFIA

LIBROS

Utilización de UML - Perdita Stevens Rob Pooley

DIRECCIONES WEB

Ingeniería web

http://es.wikipedia.org/wiki/Ingenier%C3%ADa_web

http://www.informandote.com/jornadasIngWEB/articulos/jiw01.pdf

Arquitectura Web

http://www.infor.uva.es/~jvegas/cursos/buendia/pordocente/node18.html

OOHDM

http://es.wikipedia.org/wiki/OOHDM

http://petra.euitio.uniovi.es/~i1650092/documentacion/documentacion.pdf

http://www.unab.edu.co/editorialunab/revistas/rcc/pdfs/r22_art5_c.pdf

World Wide Web

http://es.wikipedia.org/wiki/World_Wide_Web

Servidor HTTP Apache

http://es.wikipedia.org/w/index.php?title=Servidor_HTTP_Apache

Extensible Markup Language

http://es.wikipedia.org/wiki/XML

Desarrollo de Aplicaciones Web

http://www.infor.uva.es/~jvegas/cursos/buendia/pordocente/node17.html

Aplicación web

http://es.wikipedia.org/wiki/Aplicacion_web

Servidor

http://es.wikipedia.org/wiki/Servidor

Cliente

http://es.wikipedia.org/wiki/Cliente

Javascript

http://es.wikipedia.org/wiki/JavaScript

Dreamweaver 8

http://www.maestrosdelweb.com/actualidad/2334/

Page 51: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

Diseño web

http:/es.wikipedia.org/wiki/Dise%C3%83%C2%B1o_web#Dise.C3.B1o_web_aplicado

UML

http://www.scribd.com/doc/2568127/UML

http://tvdi.det.uvigo.es/%7Eavilas/UML/node49.html

http://www.popkin.com

http://www.vico.org/trad_obert/trad_wae_abierto.pdf

Diagrama de clases

http://es.wikipedia.org/wiki/Diagrama_de_clases

Diccionario de clases

http://www.scribd.com/doc/2568127/UML

Diagrama de objetos

http://es.wikipedia.org/wiki/Diagrama_de_objetos

Diagrama de secuencia

http://es.wikipedia.org/wiki/Diagrama_de_secuencia

Diagrama de colaboración

http://es.wikipedia.org/wiki/Diagrama_de_colaboracion

Diagrama de estados

http://www.clikear.com/manuales/uml/diagramasiestados.aspx

Diagrama de componentes

http://es.wikipedia.org/wiki/Diagrama_de_actividades

Page 52: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

ANEXOS

Page 53: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

MANUAL TECNICO

Page 54: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

ANÁLISIS DE REQUISITOS

Page 55: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

DIAGRAMA DE ACTORES

ACTORES

FUNCIÓN

Administrador Sistema

Cliente

• Utiliza con asiduidad los servicios de un

profesional o empresa.

Administrador Sistema

Vendedor

• Encargada de interactuar con el cliente y

sistema.

Administrador Sistema

Gerente

• Lleva la gestión administrativa de la empresa o

institución.

• Selecciona proveedor, productos.

Administrador Sistema

Administrador

• Ingresa usuarios (vendedor, gerente).

• Configura y asigna permisos a los diferentes

grupos de trabajo.

• Genera reportes.

Page 56: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

ANÁLISIS Y DISEÑO

Page 57: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

MODELO ESTÁTICO

Page 58: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

DIAGRAMA DE CASOS DE USO

DIAGRAMA DE CASOS DE USO POR ACTIVIDAD

ACTIVIDAD: CLIENTE

Cliente

Solicitar producto

Entregar datos cl iente

Cancelar factura

Cancelar cuota inicial (credito)

Pagar cuotas (credito)

Page 59: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

ACTIVIDAD: VENDEDOR

Vendedor

Entrega datos vendedor

Verifica existencia

Actualizar existencia

Registrar cuota inicial

Generar venta (contado)

Entregar producto

Registrar crédito

Genera factura venta

Registra cuotas

Page 60: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

ACTIVIDAD: GERENTE

Gerente

Pedido mercaderia

Reportes general

Datos estadisticos

Inventario

Escoger Proveedor

Genera nota compra

Page 61: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

ACTIVIDAD: ADMINISTRADOR

Administrador

Cuentas por pagar

Permisos usuarios

Cuentas por cobrar

Generar reporte

Datos empleado

Datos proveedor

Datos producto

Mantenimiento sistema

Page 62: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

DIAGRAMA DE CASOS DE USO PROCESOS

VENTA CONTADO

Cliente Vendedor

Solicitar producto

Verificar existencia

Generar factura

Generar detalle factura

Cancelar factura

Actualizar existencias

Page 63: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

VENTA CREDITO

Cliente Vendedor

Entregar datos cl iente (cl iente nuevo)

solicitar existencia

verificar existencia

Generar factura

Generar detalle factura

Generar cuentas por cobrar

Registrar cuota inicial

Actualizar existencia

<< include >>

<< include >><< include >>

Page 64: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

PEDIDO DE COMPRA

Gerente

Escoger producto

Escoger proveedor

Generar nota compra

COMPRAS

Gerente

Seleccionar factura

Registrar factura

Generar cuentas por pagar

Registrar cuotas inicial

Actualizar existencia

Page 65: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

GENERAR FACTURA

Vendedor

Registrar datos cliente

Registrar datos producto

Registrar datos empleado

<< extend >>

<< extend >>

<< extend >>

INGRESAR DATOS

Administrador

Datos producto

Datos empleado

Datos proveedor

Page 66: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

ADMINISTRACIÓN DEL SISTEMA

Administrador

Permisos usuario

Generar Reporte

Mantenimiento

Page 67: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

DICCIONARIO DE CASOS DE USO

VENTA CONTADO

NOMBRE

ACCIÓN

REACCIÓN

Solicitar producto

Verificar existencias

Generar factura

Generar detalle de

factura

Cancelar factura

Actualizar

existencias

Seleccionar el producto.

Consultar producto.

Digita datos del

producto.

Consultar cliente.

Digita datos del cliente.

Consultar productos.

Digita datos del detalle

de factura.

Impresión de factura.

Entrega de factura.

Cancelación de la

factura.

Entrega factura.

Seleccionar procedencia

de existencias.

Solicitar producto

seleccionado.

Consulta producto.

Buscar registro en la tabla

de productos.

Desplegar resultado.

Consultar cliente.

Desplegar datos de cliente

antiguo.

Registra datos requeridos

de cliente nuevo.

Consultar productos.

Desplegar datos

generales.

Registra datos requeridos.

Imprimir factura.

Entregar factura.

Cancelar factura.

Entregar factura.

Registrar datos de la

factura.

Page 68: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

VENTA CREDITO

Entregar datos

cliente

Solicitar producto

Verificar existencias

Generar factura

Generar detalle de

factura

Generar cuentas por

cobrar

Consulta cliente.

Digita datos del cliente.

Seleccionar el producto.

Consulta producto.

Digitar datos del

producto.

Consultar cliente

Digita datos del cliente.

Consulta producto.

Digita datos del detalle

de factura.

Seleccionar

procedimiento para la

ejecución del proceso.

Impresión de factura.

Entrega de factura.

Consulta datos de

crédito.

Consultar cliente.

Desplegar datos del cliente

antiguo.

Registrar datos generales

de cliente nuevo.

Solicitar producto

seleccionado.

Consultar producto.

Buscar los datos en la

tabla de productos

Desplegar resultados de la

consulta.

Consultar cliente.

Desplegar datos cliente

antiguo.

Registrar datos generales

de cliente nuevo.

Consultar producto.

Desplegar datos generales

del producto.

Registra datos generales.

Registra procedimientos.

Imprimir factura.

Entregar factura.

Consultar datos del

crédito.

Desplegar datos del

Page 69: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

Registrar cuota

inicial

Actualizar

existencias

Cancelación cuota

inicial.

Seleccionar

procedimiento para la

actualización del crédito.

Seleccionar

procedimiento para la

actualización de

existencias.

crédito.

Cancelar cuota inicial.

Registra cobro inicial.

Registrar datos del crédito.

Registra procedimiento.

PEDIDO DE COMPRA

Escoger producto

Escoger proveedor

Generar nota de

compra

Digita datos de

producto.

Seleccionar lista de

productos a comprar.

Digita datos de

producto.

Selecciona proveedores.

Digita datos de la

compra.

Genera nota compra.

Desplegar lista de

productos.

Seleccionar lista de

productos.

Desplegar lista de

productos.

Seleccionar proveedor.

Validar datos de la

compra.

Generar nota compra.

COMPRAS

Seleccionar factura

Registrar factura

Generar cuentas por

pagar

Selecciona factura

Digita datos de factura.

Digita datos del crédito.

Seleccionar factura.

Registrar factura.

Generar cuentas por

pagar.

Page 70: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

Registrar cuota

inicial

Actualizar

existencias

Cancelación cuota

inicial.

Seleccionar

procedimiento para la

actualización del crédito.

Seccionar procedimiento

para la actualización de

las existencias.

Cancelar cuota inicial.

Registrar pago inicial.

Registrar datos del crédito.

GENERAR FACTURA

Registrar datos

cliente

Registrar datos

producto

Registrar datos

empleado

Consulta cliente.

Digita datos del cliente.

Consulta datos del

producto.

Digita datos productos.

Consulta empleado.

Digita datos de

empleado.

Consultar cliente.

Desplegar datos de cliente

antiguo.

Registrar datos generales

de cliente nuevo.

Consultar productos.

Registrar datos generales

de productos.

Consultar empleado.

Desplegar datos

empleados.

Registrar datos generales

de empleados.

INGRESAR DATOS

Registrar datos

producto

Digita datos de

productos.

Registrar datos generales

de productos.

Page 71: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

Digita datos de

empleado.

Digita datos de

proveedor.

Registrar datos

empleados.

Registrar datos del

proveedor.

ADMINISTRACIÓN DEL SISTEMA

Permisos usuarios

Generar reportes

Mantenimiento

Asigna opciones por

usuario.

Digita datos de reportes

requeridos.

Selecciona la opción de

imprimir.

Asignar opciones de

mantenimiento.

Guarda permisos.

Desplegar resultados del

reporte.

Imprimir reporte.

Realizar mantenimiento.

Page 72: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

DIAGRAMA DE CLASES

0..

1

*

0..

1

0..

1

*

0..

1

1..

*0

..1

0..

1

0..

1

*0

..1

0..

1

*

*0

..1

0..

1

0..

1*

0..

1

0..

10

..1

clie

nte

s

- - - - -

ced

ula

cli_

ap

ell

ido

cli_

no

mb

recl

i_d

ire

ccio

ncl

i_te

lefo

no

: ch

ar(

10

):

varc

ha

r(3

0)

: va

rch

ar(

30

):

varc

ha

r(5

0)

: ch

ar(

10

)

+ + + + +

Inse

rta

r ()

Act

ua

liza

r ()

Bu

sca

r ()

Bo

rra

r ()

Gu

ard

ar

()

fact

ura

- - - - - - - -

fact

_co

dig

oce

du

lafa

ct_

fech

afa

ct_

valo

rfa

ct_

iva

fact

_to

tal

fact

_ti

po

pa

go

fact

_e

sta

do

: in

t:

cha

r(1

0)

: d

ate

: d

ou

ble

: d

ou

ble

: d

ou

ble

: ch

ar(

1)

: ch

ar(

1)

+ + + + +

Inse

rta

r ()

Gu

ard

ar

()Im

pri

mir

()

Bu

sca

r ()

Eli

min

ar

()

de

ta_

fact

ura

- - - - - - -

dfa

ct_

cod

igo

fact

_co

dig

op

rod

_se

cue

nci

al

dfa

ct_

can

tid

ad

dfa

ct_

pu

nit

ari

od

fact

_p

ven

tad

fact

_iv

asn

: in

t:

int

: in

t:

do

ub

le:

do

ub

le:

do

ub

le:

cha

r()1

+ + + + +

Bu

sca

r ()

Ca

lcu

lar

()im

pri

mir

()

Inse

rta

r ()

Gu

ard

ar

()

pro

du

cto

s

- - - - - -

pro

d_

secu

en

cia

lp

rod

_co

dig

op

rod

_n

om

bre

pro

d_

can

tid

ad

pro

d_

pre

cio

pro

d_

iva

sn

: in

t:

cha

r(5

):

varc

ha

r(3

0)

: d

ou

ble

: d

ou

ble

: ch

ar(

1)

+ + + + +

Inse

rta

r ()

Bu

sca

r ()

Bo

rra

r ()

Act

ua

liza

r ()

Gu

ard

ar

()

cta

s_co

bra

r

- - - - - - -

cta

c_co

dig

ofa

ct_

cod

igo

cta

c_fe

cha

cta

c_p

lazo

cta

c_va

lor

cta

c_sa

ldo

cta

c_e

sta

do

: in

t:

int

: d

ate

: in

t:

do

ub

le:

do

ub

le:

cha

r(1

)

+ + + +

Inse

rta

r ()

Bu

sca

r ()

Gu

ard

ar

()Im

pri

mir

()

pro

vee

do

r

- - - -

pro

v_co

dig

op

rov_

no

mb

rep

rov_

dir

ecc

ion

pro

v_te

lefo

no

: in

t:

varc

ha

r(3

0)

: va

rch

ar(

50

):

cha

r(1

0)

+ + + + +

Inse

rta

r ()

Bu

sca

r ()

Act

ua

liza

r ()

Gu

ard

ar

()B

orr

ar

()

com

pra

s

- - - - - -

com

p_

cod

igo

pro

v_co

dig

ou

sua

rio

com

p_

fech

aco

mp

_va

lor

com

p_

tip

pa

go

: in

t:

int

: ch

ar(

10

):

da

te:

do

ub

le:

cha

r(1

)

+ + + +

Inse

rta

r ()

Gu

ard

ar

()Im

pri

mir

()

Bu

sca

r ()

de

ta_

com

pra

s

- - - - - -

dco

m_

cod

igo

pro

d_

secu

en

cia

lco

mp

_co

dig

od

com

_ca

nti

da

dd

com

_p

reco

mp

dco

m_

pre

tota

l

: in

t:

int

: in

t:

do

ub

le:

do

ub

le:

do

ub

le

+ + + + +

Bu

sca

r ()

Ca

lcu

lar

()Im

pri

mir

()

Inse

rta

r ()

Gu

ard

ar

()

usu

ari

os

- - - - - -

usu

ari

ou

su_

no

mb

reu

su_

cla

veu

su_

gru

po

usu

_d

ire

ccio

nu

su_

tele

fon

o

: ch

ar(

10

):

varc

ha

r(3

0)

: ch

ar(

10

):

varc

ha

r(1

5)

: va

rch

ar(

50

):

cha

r(1

0)

+ + + + +

Inse

rta

r ()

Bu

sca

r ()

Act

ua

liza

r ()

Bo

rra

r ()

Gu

ard

ar

()

cob

ros

- - - -

cob

s_co

dig

oct

ac_

cod

igo

cob

s_fe

cha

cob

s_co

bro

: in

t:

int

: d

ate

: d

ou

ble

+ + + +

Inse

rta

r ()

Gu

ard

ar

()Im

pri

mir

()

Bu

sca

r ()

cta

s_p

ag

ar

- - - - - - - -

cta

p_

cod

igo

com

p_

cod

igo

cta

p_

fech

act

ap

_p

lazo

cta

p_

valo

rct

ap

_sa

ldo

cta

p_

ob

serv

aci

on

cta

p_

est

ad

o

: in

t:

int

: d

ate

: in

t:

do

ub

le:

do

ub

le:

varc

ha

r(6

0)

: ch

ar(

1)

+ + + + +

Act

ua

liza

r ()

Inse

rta

r ()

Bo

rra

r ()

Bu

sca

r ()

Gu

ard

ar

()

pa

go

s

- - - -

pa

gs_

cod

igo

cta

p_

cod

igo

pa

gs_

fech

ap

ag

s_m

on

to

: in

t:

int

: d

ate

: d

ou

ble

+ + + + +

Inse

rta

r ()

Gu

ard

ar

()Im

pri

mir

()

Bu

sca

r ()

Act

ua

liza

r ()

Page 73: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

DICCIONARIO DE CLASES ATRIBUTO TIPO DE DATO DESCRIPCIÓN

CLIENTE

cedula char(10) Código del cliente

cli_apellido varchar(30) Apellido del cliente

cli_nombre varchar(30) Nombre del cliente

cli_direccion varchar(50) Dirección del cliente

cli_telefono char(10) Teléfono del cliente

COBROS

cobs_codigo int(11) Código de cobros

cobs_fecha date Fecha de cobro

cobs_cobro double Valor del cobro

COMPRAS

comp_codigo int(11) Código de compras

comp_fecha date Fecha de compra

comp_valor double Valor de la compra

comp_tippago char(1) Tipo de pago

CTAS_COBRAR

ctac_codigo int(11) Código de cuentas por cobrar

ctac_fecha date Fecha de la venta

ctac_plazo int(11) Plazo del crédito a cobrar

ctac_valor double Valor del crédito a cobrar

ctac_saldo double Saldo del crédito a cobrar

ctac_estado char(1) Estado del crédito

CTAS_PAGAR

ctap_codigo int(11) Código del cuentas por pagar

ctap_fecha date Fecha de la compra

ctap_plazo int(11) Plazo del crédito a pagar

Page 74: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

ctap_valor double Valor del crédito a pagar

ctap_saldo double Saldo de crédito a pagar

ctap_observacion varchar(60) Observación

ctap_estado char(1) Estado del crédito a pagar

DETA_COMPRAS

dcom_codigo int(11) Código detalle compra

dcom_cantidad double Cantidad de producto

dcom_precomp double Precio compra

dcom_pretotal double Compra total

DETA_FACTURA

dfact_codigo int(11) Código detalle factura

dfact_cantidad double Cantidad de producto

dfact_punitario double Precio unitario

dfact_pventa double Precio de venta

dfact_ivasn char(1) Aplica IVA si o no

FACTURA

fact_codigo int(11) Código de factura

fact_fecha date Fecha de emisión

fact_valor double Valor de venta

fact_iva double IVA

fact_total double Valor total

fact_tipopago char(1) Tipo pago

fact_estado char(1) Estado de factura

PAGOS

pags_codigo int(11) Código pagos

pags_fecha date Fecha pagos efectuados

pags_monto double Monto a cancelar

Page 75: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

PRODUCTOS

prod_secuencial int(11) Secuencial producto

prod_codigo char(5) Código producto

prod_nombre varchar(30) Nombre producto

prod_cantidad double Cantidad producto

prod_unidad char(3) Unidad

prod_precio double Precio producto

prod_ivasn char(1) Aplica IVA

PROVEEDOR

prov_codigo int(11) Código proveedor

prov_nombre varchar(30) Nombre proveedor

prov_direccion varchar(50) Dirección proveedor

prov_telefono char(10) Teléfono proveedor

USUARIOS

usuario char(10) Nick del usuario

usu_nombre varchar(30) Nombre usuario

usu_clave char(10) Clave usuario

usu_grupo varchar(15) Grupo

usu_direccion varchar(50) Dirección usuario

usu_telefono char(10) Teléfono usuario

Page 76: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

DIAGRAMA DE OBJETOS

Cli

en

tes

Fa

ctu

raD

eta

_fa

ctu

raP

rod

uct

os

Cta

s_co

bra

rP

rove

ed

or

Co

mp

ras

De

ta_

com

pra

s

Co

bro

sU

sua

rio

sC

tas_

pa

ga

rP

ag

os

Page 77: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

MODELO DINÁMICO

Page 78: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

DIAGRAMA DE INTERACCIÓN

DIAGRAMA DE SECUENCIAS

VENTA AL CONTADO

1:Solicitar producto

2:Verificar existencia

3:Generar factura

4:Generar detalle factura

5:Cancelar factura

6:Actual izar existencias

Cliente Producto Factura Detalle factura

Page 79: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

VENTA A CRÉDITO

1:S

oli

cita

r p

rod

uct

o

2:V

eri

fica

r e

xist

en

cia

s

3:G

en

era

r fa

ctu

ra

4:G

en

era

r d

eta

lle

fa

ctu

ra

5:G

en

era

r cu

en

tas

po

r co

bra

r

6:R

eg

istr

ar

cuo

ta i

nic

ial

7:A

ctu

ali

za e

xist

en

cia

Cli

en

teP

rod

uct

oF

act

ura

De

tall

e f

act

ura

Cta

s p

or

cob

rar

Co

bro

s

Page 80: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

PEDIDO COMPRA

1:Escoger producto

2:Escoger proveedor

3:Generar nota compra

4:Generar detalle compra

Gerente Producto Proveedor Compra Detalle compra

COMPRAS

1:Ingresar factura

2:Generar cuentas por pagar

3:Registrar cuota inicial

4:Actual izar nueva mercaderia

Gerente Producto Compra Cuentas por pagar Pagos

Page 81: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

GENERAR FACTURA

1:Registra datos cl iente

2:Registrar datos empleado

3:Registra datos producto

4:Registra detalle producto

Cliente Empleado Producto Factura Detalle factura

INGRESAR DATOS

1:Registra datos empleado

2:Registra datos proveedor

3:Registra datos producto

Administrador Empleado Proveedor Producto

Page 82: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

ADMINISTRACIÓN DEL SISTEMA

1:M

an

ten

imie

nto

em

ple

ad

os

2:M

an

ten

imie

nto

cli

en

tes

3:M

an

ten

imie

nto

Pro

vee

do

res

4:M

an

ten

imie

nto

Pro

du

cto

s

5:R

ep

ort

es

est

ad

isti

cos

6:R

ep

ort

e c

ue

nta

s

7:R

ep

ort

e e

xist

en

cia

s

8:R

ep

ort

e l

ista

do

pro

vee

do

res

9:R

ep

ort

e l

ista

do

cli

en

tes

10

:Pe

rmis

os

Usu

ari

os

Ad

min

istr

ad

or

Em

ple

ad

oC

lie

nte

Pro

vee

do

rP

rod

uct

oE

sta

dis

tica

sC

ue

nta

s

Page 83: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

DIAGRAMA DE COLABORACIÓN

VENTA AL CONTADO

1: Solicitar producto

2: Verificar existencia

3: Generar factura

6: Actualizar existencias

4: Generar detalle factura

5: Cancelar factura

ClienteProducto

Factura

Detalle factura

VENTA A CRÉDITO

1: Solici tar producto

2: Verificar existencias

3: Generar factura

4: Generar detalle factura

5: Generar cuentas por cobrar

6: Registrar cuota inicial

7: Actualiza existencia

Cliente

Producto

Factura

Detal le factura

Ctas por cobrar

Cobros

Page 84: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

PEDIDO COMPRA

1: Escoger producto

2: Escoger proveedor

3: Generar nota compra

4: Generar detalle compra

GerenteProducto

Proveedor

CompraDetalle compra

COMPRAS

1: Ingresar factura

2: Generar cuentas por pagar

3: Registrar cuota inicial

4: Actualizar nueva mercaderia

Gerente

Compra

Cuentas por pagar

Pagos

Producto

Page 85: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

GENERAR FACTURA

1: Registra datos cliente

2: Registrar datos empleado

3: Registra datos producto

4: Registra detalle producto

Cliente

Factura

Empleado

Producto

Detalle factura

INGRESAR DATOS

1: Registra datos empleado

2: Registra datos proveedor

3: Registra datos producto

Administrador Empleado

Proveedor

Producto

Page 86: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

ADMINISTRACIÓN DEL SISTEMA

10: Permisos Usuarios1: Mantenimiento empleados

9: Reporte l istado cl ientes

2: 2:Mantenimiento clientes

8: Reporte l istado proveedores

3: Mantenimiento Proveedores

7: Reporte existencias4: Mantenimiento Productos

5: Reportes estadisticos

6: Reporte cuentas

Administrador Empleado

ClienteProveedor

Producto

Estadisticas Cuentas

Page 87: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

MODELO FUNCIONAL

Page 88: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

DIAGRAMA DE ESTADOS

VENTA AL CONTADO

petición (producto) selección

requerimiento cliente

encontrado vendido

descripción producto

no encontrado

en stock

no en stock

VENTA A CRÉDITO

petición (producto)

selección

requerimiento cliente

encontrado vendido

descripción producto

no encontrado

en stockno en stock

producto a crédito

COMPRAS

selección producto pedido producto almacenado

bodega proveedor

producto en stockentregadoproducto ingresado

en la empresa a proveedor

al inventario

producto a credito

Page 89: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

GENERAR FACTURA

producto pedido busqueda producto almacenado

producto en stockentregadoproducto actualizado

cliente

en inventario

producto a credito

Page 90: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

MODELO ARQUITECTÓNICO

Page 91: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

DIAGRAMA ARQUITECTÓNICO

Administrador

Index.php

Clientes.php

Proveedores.php

Cambio de

precios.php

Productos.php

Menú Archivo Menú Procesos Menú Reportes Menú Administración

Compras.php

Facturas.php

Cuentas por

pagar.php

Cuentas por

cobrar.php

Ventas

Acumuladas.php

Compras

Acumuladas.php

Existencias.php

Submenú

Listados

Clientes.php Proveedores.php Cuentas por

pagar.php

Cuentas por

cobrar.php

Usuarios.php

Permisos.php

Page 92: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

DIAGRAMA NAVEGACIONAL

Administrador

Index.php

Clientes.php

Proveedores.php

Cambio de

precios.php

Productos.php

Compras.php

Facturas.php

Cuentas por

pagar.php

Cuentas por

cobrar.php

Ventas

Acumuladas.php

Compras

Acumuladas.php

Usuarios.php

Permisos.php

Listado

Clientes.php

Listado

Proveedores.php

Listado

Cuentas por

pagar.php

Listado

Cuentas por

cobrar.php

Existencias.php

Page 93: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

CONSTRUCCIÓN

Page 94: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

FRONT END

SCRIPT PHP

PÁGINA REGISTRO DE CLIENTES

<?php

require("seguridad.php");

require_once('mis_funciones_php.php');

$titulo="CLIENTES";

$sub_titulo="REGISTRO DE CLIENTES";

$vic = trim($_GET['edvic']);

if($vic!=''){

$ed_consulta = "select * from clientes where cedula = '$vic'";

$ed_resul = mysql_query($ed_consulta)or die ("NO".mysql_error());

$ed_filas = mysql_num_rows($ed_resul);

for($ed=0; $ed<$ed_filas; $ed++){

$TODO[$ed] = ysql_fetch_object($ed_resul);

$la_ced = $TODO[$ed]->cedula;

$el_ape = $TODO[$ed]->cli_apellido;

$el_nom = $TODO[$ed]->cli_nombre;

$la_dir = $TODO[$ed]->cli_direccion;

$el_tel = $TODO[$ed]->cli_telefono;

}

}

$acc = trim($_GET['accion']);

switch($acc){

case 'n':

$men_control = "Nuevo registro";

break;

case 'g_ac':

$men_control = "Registro actualizado";

break;

case 'g_no':

$men_control = "ERROR REGISTRO REPETIDO<br> Desea actualizar

??<br> oprima nuevamente Grabar";

Page 95: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

break;

case 'g_in':

$men_control = "Registro ingresado";

break;

case 'i_no':

$men_control = "Registro no imprimible";

break;

case 'e_no':

$men_control = "Registro no eliminable";

break;

case 'e_nod':

$men_control = "Registro no eliminable dependiente";

break;

case 'e_si':

$men_control = "Registro eliminado";

break;

}

?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"

"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

<title><?php echo $titulo; ?></title>

<link href="clases/estilo_papeleria.css" rel="stylesheet" type="text/css" />

<link rel="stylesheet" href="./menu2/menu.css">

<script type="text/JavaScript">

<!--

function MM_swapImgRestore() { //v3.0

var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++)

x.src=x.oSrc;

Page 96: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

}

function MM_preloadImages() { //v3.0

var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();

var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)

if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}

}

function MM_findObj(n, d) { //v4.01

var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {

d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}

if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];

for(i=0;!x&&d.layers&&i<d.layers.length;i++)

x=MM_findObj(n,d.layers[i].document);

if(!x && d.getElementById) x=d.getElementById(n); return x;

}

function MM_swapImage() { //v3.0

var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array;

for(i=0;i<(a.length-2);i+=3)

if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src;

x.src=a[i+2];}

}

//-->

</script>

</head>

<script LANGUAGE="JavaScript">

<!--

// CHECKEA LOS CAMPOS REQUERIDOS

//ESTOS DEBEN INTRODUCIRSE EN

// LA LISTA DE CAMPOS "camposRequeridos" ARRAY

function chequeaCamposRequeridos(input)

{

var camposRequeridos = new

Array("la_ced","el_ape","el_nom","la_dir","el_tel");

Page 97: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

var camposNombres = new

Array("Cédula","Apellidos","Nombre","Dirección","Télefono");

var camposCheck = true;

var camposFaltantes = "\nDebe completar el siguiente campo(s)

obligatorio(s):\n\n\t";

for(var camposNum=0; camposNum < camposRequeridos.length;

camposNum++) {

if ((input.elements[camposRequeridos[camposNum]].value == "") ||

(input.elements[camposRequeridos[camposNum]].value == " ")) {

camposFaltantes += camposNombres[camposNum] + "\n\t";

camposCheck = false;

}

}

if (camposCheck == true)

{

return true;

}

else

{

alert(camposFaltantes);

return false;

}

}

//-->

</script>

<script LANGUAGE="JavaScript">

<!--

// CHEQUEA LOS DIGITOS Y LOS CARACTERES ESPECIALES

function chequeaNumeros(checkString)

{

Page 98: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

newString = "";

count = 0;

for (i = 0; i < checkString.length; i++) {

ch = checkString.substring(i, i+1);

if ((ch >= "0" && ch <= "9") || (ch == ".") || (ch == ",")) {

newString += ch;

}

}

if (checkString != newString) {

if (alert("\n¡ Este campo tiene caracteres invalidos !\n"))

{

return newString;

} else {

return newString;//return checkString; dato original

}

}

return newString;//return checkString;

}

//-->

</script>

<script language="javascript">

<!--

//función que pregunta si quiere eliminar datos

function fun_eliminar(dato)

{

var decision;

decision = confirm("¿ Desea elimiar el registro ?");

if (decision == true)

{

return true;

}

else

{

Page 99: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

return false;

}

}

//-->

</script>

<body

onload="MM_preloadImages('imagenes/iconos/nuevo2.gif','imagenes/iconos/impri

mir2.gif','imagenes/iconos/guardar2.gif','imagenes/iconos/borrar2.gif','imagenes/ico

nos/grabar_b.gif','imagenes/iconos/imprimir_b.gif','imagenes/iconos/eliminar_b.gif',

'imagenes/iconos/salir_b.gif','imagenes/iconos/nuevo_b.gif','imagenes/iconos/busc

ar_b.gif')">

<div id='principal'>

<!--Début contenu_global-->

<div id="contenu">

<div id="logo"></div></div>

<div id="texto">

<div id="sub_principal"></div>

<div class="menu">

<form action="./control_cli001.php" method="get" onsubmit="return

chequeaCamposRequeridos(this)">

<table width="100%" border="0">

<tr>

<td><div class="titulo"><?php echo $sub_titulo;?>

</div> </td>

</tr>

<tr>

<td align="center">&nbsp;</td>

</tr>

<tr>

<td align="center">

<table border="0">

<tr>

<td><div class="tabla_sola">

Page 100: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

<table border="0" cellspacing="10">

<tr>

<td colspan="3" align="center"><input name="el_cod" type="hidden"

value="<? echo $la_ced; ?>"/> </td>

</tr>

<tr>

<td align="left"> C&eacute;dula:</td>

<td align="left"><input name="la_ced" type="text" class="casilla_clave"

value="<?php echo $la_ced;?>" size="10" maxlength="10"/></td>

</tr>

<tr>

<td align="left"> Apellidos:</td>

<td align="left"><input name="el_ape" type="text"

class="casilla_nombre" value="<?php echo $el_ape;?>" size="30" maxlength="30"

/></td>

<td><a href="./control_cli001.php<?php echo

$_GET['PHP_SELF']."?accion=buscar"; ?>"

onmouseout="MM_swapImgRestore()"

onmouseover="MM_swapImage('bus','','imagenes/iconos/buscar_b.gif',1)"><img

src="imagenes/iconos/buscar_a.gif" alt="bus" name="bus" width="26" height="26"

border="0" id="bus" title="Buscar"/></a></td>

</tr>

<tr>

<td align="left"> Nombre:</td>

<td align="left"><input name="el_nom" type="text"

class="casilla_nombre" value="<?php echo $el_nom;?>" size="30"

maxlength="30" /></td>

</tr>

<tr>

<td align="left"> Direcci&oacute;n:</td>

<td align="left"><input name="la_dir" type="text"

class="casilla_direccion" value="<?php echo $la_dir;?>" size="40"

maxlength="50" /> </td>

Page 101: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

</tr>

<tr>

<td align="left"> Tel&eacute;fono:</td>

<td align="left"><input name="el_tel" type="text" class="casilla_clave"

onchange="this.value=chequeaNumeros(this.value)" value="<?php echo

$el_tel;?>" size="10" maxlength="10" /></td>

</tr>

<tr>

<td></td>

</tr>

</table>

</div></td>

</tr>

</table>

<table width="200" border="0" cellspacing="5" cellpadding="0">

<tr>

<td><a href="./control_cli001.php<?php echo

$_GET['PHP_SELF']."?accion=nuevo"; ?>" onmouseout="MM_swapImgRestore()"

onmouseover="MM_swapImage('N','','imagenes/iconos/nuevo_b.gif',1)"><img

src="imagenes/iconos/nuevo_a.gif" alt="N" name="N" width="26" height="26"

border="0" id="N" title="Nuevo" /></a></td>

<td><INPUT name="accion" type="submit" value="_" class="grabar"

title="Grabar" ></td>

<td><a href="./control_cli001.php<?php echo

$_GET['PHP_SELF']."?accion=imprimir&victima=$vic"; ?>"

onmouseout="MM_swapImgRestore()"

onmouseover="MM_swapImage('I','','imagenes/iconos/imprimir_b.gif',1)"><img

src="imagenes/iconos/imprimir_a.gif" alt="I" name="I" width="26" height="26"

border="0" id="I" title="Imprimir" /></a></td>

<td><a href="./control_cli001.php<?php echo

$_GET['PHP_SELF']."?accion=eliminar&victima=$vic"; ?>"

Page 102: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

onmouseout="MM_swapImgRestore()"

onmouseover="MM_swapImage('E','','imagenes/iconos/eliminar_b.gif',1)"

onclick="return fun_eliminar(this)"><img src="imagenes/iconos/eliminar_a.gif"

alt="E" name="E" width="26" height="26" border="0" id="E" title="Eliminar"

/></a></td>

<td><a href="./bienvenida.php"

onmouseout="MM_swapImgRestore()"

onmouseover="MM_swapImage('S','','imagenes/iconos/salir_b.gif',1)"><img

src="imagenes/iconos/salir_a.gif" alt="S" name="S" width="26" height="26"

border="0" id="S" title="Salir"/></a></td>

</tr>

</table><br />

<div class="resultados">

<? echo $men_control;?></div></td>

</tr>

</table>

</form>

</div>

<div id="sub_pie">

<?php //menu desplegable

include('menu_all.php');

?>

</div>

<?

echo '</tr></tr></table>';

include("menu_pie.php");

?>

</div>

</div>

</body>

</html>

Page 103: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

BACK END

SCRIP MYSQL

BASE EVITA TABLA CLIENTES

-- phpMyAdmin SQL Dump

-- version 2.10.3

-- http://www.phpmyadmin.net

-- Servidor: localhost

-- Tiempo de generación: 12-11-2009 a las 18:51:42

-- Versión del servidor: 5.0.51

-- Versión de PHP: 5.2.6

SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";

-- Base de datos: `bdevita`

-- --------------------------------------------------------

-- Estructura de tabla para la tabla `clientes`

CREATE TABLE `clientes` (

`cedula` char(10) NOT NULL COMMENT 'codigo',

`cli_apellido` varchar(30) NOT NULL COMMENT 'apellido del cliente',

`cli_nombre` varchar(30) NOT NULL COMMENT 'nombre del cliente',

`cli_direccion` varchar(50) NOT NULL COMMENT 'direccion del cliente',

`cli_telefono` char(10) NOT NULL COMMENT 'telefono del cliente',

PRIMARY KEY (`cedula`)

) ENGINE=MyISAM DEFAULT CHARSET=utf8;

-- Volcar la base de datos para la tabla `clientes`

INSERT INTO `clientes` VALUES ('1715215875', 'Sambachi Paneluisa ', 'Christina

de las Mercedes ', 'Guamani coop Padre Inocencio Jacome', '096490919');

INSERT INTO `clientes` VALUES ('1715215891', 'Sambachi Paneluisa ', 'Christian

Carlos ', 'Guamani coop Padre Inocencio Jacome', '093593027');

Page 104: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

PRUEBAS

Page 105: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

GENERAR FACTURA

Primero el usuario debe encontrarse dentro del sistema, seleccionar del menú

procesos la opción facturas como se puede observar a continuación.

Ya seleccionada esta opción, el usuario ingresara a la pagina que contiene el

formulario de creación de factura como se puede apreciar en la imagen anterior.

Siguiente paso ingresar datos del cliente, por medio del botón

Buscar cliente que accedemos a una nueva página para buscar el registro

requerido.

En caso que el cliente no sea encontrado, el sistema nos enlaza con la página

que contiene la ficha de cliente para poder crear un nuevo cliente.

Agregar cliente nuevo

Si el cliente ha sido en encontrado se procederá a agregarlo a factura por medio

del botón.

Añadir cliente a factura

En la siguiente imagen se puede observar la página que se utiliza para realizar la

búsqueda del cliente.

Page 106: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

Siguiente paso luego de añadir el cliente en el formulario factura se puede

observar dos botones de selección, estos permiten que la factura sea al contado o

a crédito.

Si se selecciona factura a crédito aparecerá el campo

Se creara una cuenta por cobrar automáticamente si la factura es guardada.

Siguiente paso agregar productos en la canasta.

Por medio del botón.

Buscar producto esta opción permite acceder a una nueva página donde

podremos seleccionar los productos requeridos por el cliente.

Si desea agregar algún producto tendrá que seleccionarlo, esto es posible

presionando la casilla ubicada a la derecha de la página como se observa.

Page 107: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

En la siguiente imagen se puede observar la página que se utiliza para realizar la

búsqueda de productos.

Siguiente paso luego de añadir el producto requerido por el cliente al formulario

factura.

Si es el cliente requiere más de una unidad del producto se debe modificar el

campo cantidad.

Realizados estos sencillos pasos tendremos como resultado la factura lista para

su emisión como se observa a continuación.

Page 108: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

Adicionalmente aparecen los botones que manejan la información de la factura los

cuales son:

Nuevo Esta opción permite crear un nuevo registro.

Grabar Esta opción permite grabar un nuevo registro.

Buscar factura Esta opción permite buscar registros antiguos.

Imprimir Esta opción permite imprimir los datos que se encuentren en la

ficha.

Page 109: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

MANUAL DEL USUARIO

Page 110: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

INTRODUCCIÓN

El sistema PapelArt, de fabricación ecuatoriana es un poderoso y versátil

herramienta que ayudará a la empresa, a emitir facturas de una manera confiable

y eficiente teniendo al día su información de inventarios, clientes, proveedores,

cuentas por cobrar y pagar, etc. Garantizando de este modo un correcto manejo

del negocio.

La empresa podrá realizar pedidos de mercaderías en el momento justo, podrá

saber que artículos tienen una mayor o menor demanda, saber que clientes tienen

cuentas pendientes, fijar límites de crédito en tiempo.

REQUERIMIENTOS MÍNIMOS

Los requerimientos mínimos para el correcto funcionamiento del Sistema

PapelArt son:

• Computador Pentium IV de 3 Ghz.

• 50MB de Espacio Libre en el Disco Duro, 512MB de RAM

• Windows Professional XP.

• Monitor Color Resolución de 800x600 y 256 Colores.

• Mouse de dos botones, teclado.

• Paquete AppServ Open Project - 2.5.10 para Windows

• Adobe Reader v.8 o superior.

• Internet Explorer v. 6 o Mozilla Firefox v.3.0 o superiores

Page 111: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

PÁGINA DE VERIFICACIÓN DE USUARIOS

Esta página nos permite ingresar al sistema PapelArt (si el usuario se encuentra

registrado). Caso contrario nos deniega el acceso a este.

MENÚ PRINCIPAL

Esta página es desplegada si el usuario cuenta con el respectivo permiso. Si tuvo

acceso al sistema, podrá utilizar las opciones del menú dependiendo del grupo al

que pertenezca.

Page 112: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

ARCHIVO

Al seleccionar la opción Archivo de la barra de menús UD. visualizará las

siguientes opciones Clientes, Proveedores, Cambio de precios, Productos.

Registro Clientes

Al dar clic sobre clientes aparece la siguiente página en donde se registran los

clientes de la empresa. Esta página permite modificar, crear o eliminar un cliente.

Se deben ingresar los datos descritos a continuación cédula, apellidos, nombre,

dirección, y teléfono.

Adicionalmente aparecen los botones que manejan la información de clientes los

cuales son:

Page 113: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

Esta opción permite acceder a una nueva página, en la cual podremos

buscar el registro requerido para su edición.

Las opciones de búsqueda son variadas, tal como se muestra arriba.

Esta opción permite crear un nuevo cliente.

Esta opción permite grabar un nuevo registro.

Esta opción permite imprimir los datos que se encuentren en la ficha.

Esta opción permite eliminar registros que no contengan dependencias,

como se muestra a continuación.

Page 114: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

Registro Proveedores

Al dar clic sobre proveedores aparece la siguiente página en donde se registran

proveedores. Esta página permite modificar, crear o eliminar un proveedor. Se

deben ingresar los datos descritos a continuación nombre de la empresa a la que

pertenece el proveedor, dirección, y teléfono.

Adicionalmente aparecen los botones que manejan la información de proveedores

los cuales son:

Esta opción permite acceder a una nueva página, en la cual podremos

buscar el registro requerido para su edición.

Las opciones de búsqueda son variadas, tal como se muestra arriba.

Page 115: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

Esta opción permite crear un nuevo proveedor.

Esta opción permite grabar un nuevo registro.

Esta opción permite imprimir los datos que se encuentren en la ficha.

Esta opción permite eliminar registros que no contengan dependencias,

como se muestra a continuación.

Page 116: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

Cambio de Precios

Al dar clic sobre cambio de precios aparece la siguiente página en donde se

modifican los precios de los productos, el cambio se lo puede realizar ingresando

un porcentaje el cual va a ser incrementado en cada producto resultando un

nuevo precio o se puede modificar el precio de venta en cada producto.

Para modificar el precio de venta en cada producto, se debe seguir unos censillo

pasos.

• Ingresar el nuevo precio en la casilla P. Venta.

• Luego dar un clip en el icono Actualizar, lo cual permite realizar el cambio

de precio.

Este proceso se lo realizará solo por la persona autorizada, esto se llevara a cabo

en la siguiente página.

Page 117: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

Registró Productos

Al dar clic sobre productos aparece la siguiente página en donde se registran

productos. Esta página permite modificar, crear o eliminar un producto. Se deben

ingresar los datos descritos a continuación código, nombre, unidad, aplica IVA, si

hay existencias del producto aparecerán las casillas de cantidad y precio de

venta.

Adicionalmente aparecen los botones que manejan la información de productos

los cuales son:

Esta opción permite acceder a una nueva página, en la cual podremos

buscar el registro requerido para su edición.

Page 118: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

Las opciones de búsqueda son variadas, tal como se muestra arriba.

Esta opción permite crear un nuevo producto.

Esta opción permite grabar un nuevo registro.

Esta opción permite imprimir los datos que se encuentren en la ficha.

Esta opción permite eliminar registros que no contengan dependencias,

como se muestra a continuación.

PROCESOS

En este menú aparecen las opciones relacionadas con la facturación de una

empresa, desde compras y ventas, pasando por cuentas por cobrar y pagar.

Page 119: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

Compras

Al dar clic sobre compras aparece la siguiente página en donde se ingresan las

facturas de compra de la empresa, con las cuales se generar un pago o una

cuenta por pagar y un movimiento de inventarios; esta interface consta de las

siguientes características:

El encabezado consta de código compra, proveedor, tipo de transacción.

Para poder ingresar proveedor se debe dar clip sobre el siguiente botón.

Esta opción permite acceder a una nueva página, en la cual podremos

buscar el registro requerido para añadir a la compra.

Page 120: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

Al seleccionar transacción a crédito, aparecerán dos nuevos campos requeridos

para poder llevar a cavo el crédito, como se muestra a continuación.

El cuerpo de la transacción consta de código, producto, cantidad, precio de

compra, precio total. Para ingresar un producto, se debe presionar el siguiente

botón:

Esta opción permite acceder a una nueva página donde podremos buscar y

seleccionar los productos adquiridos por la empresa, en caso de que el producto

no se encuentre en la base de datos, este deberá ser ingresado en la página

productos, esta puede ser accedida presionando el botón

Agregar.

Si desea agregar algún producto tendrá que seleccionarlo, esto es posible

presionando la casilla ubicada a la derecha de la página como se observa.

La página de búsqueda de productos se muestra a continuación.

Page 121: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

La siguiente página muestra el documento listo para su impresión

Venta y Facturación

Al dar clic sobre facturas aparece la siguiente página en donde se ingresan las

facturas de venta de la empresa, con las cuales se generar un cobro o una cuenta

por cobrar y un movimiento de inventarios; esta interface consta de las siguientes

características:

Page 122: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

El encabezado consta de número de factura, fecha de emisión, Cliente y tipo de

transacción.

Para poder ingresar cliente se debe dar clip sobre el siguiente botón.

Esta opción permite acceder a una nueva página, en la cual podremos

buscar el registro requerido para añadir a la venta.

Al seleccionar transacción a crédito, aparecerá un nuevo campo requerido para

poder llevar a cavo el crédito, como se muestra a continuación.

El cuerpo de la transacción consta de código, producto, cantidad, precio unitario,

precio total e IVA. Para ingresar un producto, se debe presionar siguiente botón:

Esta opción permite acceder a una nueva página donde podremos buscar y

seleccionar los productos requeridos por el cliente, esto se puede apreciar en la

siguiente página.

Page 123: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

La siguiente página muestra el documento listo para su impresión

Cuentas por Cobrar

Al dar clic sobre cuentas por cobrar aparece la siguiente página en donde se

registran los pagos de las cuentas pendientes. Esta página permite ingresar

nuevos pagos, imprimir y buscar cuentas pendientes o canceladas.

Se debe escoger la cuenta a cancelar a través del siguiente botón:

Page 124: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

Esta opción permite acceder a la página que contiene las cuentas pendientes

y canceladas como se muestra a continuación.

Para selecciona la cuenta se debe presionar el botón que se muestra a

continuación. Editar.

Cuentas por Pagar

Al dar clic sobre cuentas por pagar aparece la siguiente página en donde se

registran los pagos de las cuentas pendientes. Esta página permite ingresar

nuevos pagos, imprimir y buscar cuentas pendientes o canceladas.

Se debe escoger la cuenta a cancelar a través del siguiente botón:

Page 125: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

Esta opción permite acceder a la página que contiene las cuentas pendientes

y canceladas como se muestra a continuación.

Para selecciona la cuenta se debe presionar el botón que se muestra a

continuación. Editar.

REPORTES

En este menú contiene los reportes de venta acumuladas, compras acumulas,

existencias y listados un submenú.

Page 126: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

Ventas Acumuladas

Al dar clic sobre ventas acumuladas aparece la siguiente página en donde se

verifica la venta realizada en un determinado periodo de tiempo, para poder

observar la venta acumulada se selecciona la fecha de inicio y la fecha de final del

informe como se observa a continuación.

En la siguiente página se observa el informe desplegado con la opción de

impresión, retorno y salir a menú principal.

Page 127: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

La siguiente página muestra el documento listo para la impresión la cual consta

del logo de la empresa, fecha de emisión, fecha de inicio y final, detalle de los

productos vendidos y el total de la venta.

Compra Acumuladas

Al dar clic sobre compras acumuladas aparece la siguiente página en donde se

verifica la compra realizada en un determinado periodo de tiempo, para poder

observar la compra acumulada se selecciona la fecha de inicio y la fecha de final

del informe como se observa a continuación.

Page 128: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

En la siguiente página se puede observar el informe desplegado con la opción de

impresión, retorno y salir a menú principal.

La siguiente página muestra el documento listo para la impresión la cual consta

del logo de la empresa, fecha de emisión, fecha de inicio y final, detalle de los

productos adquiridos y un total de la compra.

Page 129: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

Existencias

Al dar clic sobre existencias aparece la siguiente página en donde se muestra un

informe con la siguiente información código, nombre, unidad, existencia de cada

uno de los productos.

En la siguiente página se puede observar el documento listo para su impresión.

Page 130: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

Submenú Listados

Este submenú contiene los listados de clientes, proveedores, cuentas por cobrar y

cuentas por pagar.

Reporte Clientes

Al dar clic sobre clientes aparece la siguiente página en donde se muestra la

información detallada de los clientes de la empresa.

Page 131: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

En la siguiente página se puede observar el reporte listo para su impresión.

Reporte Proveedores

Al dar clic sobre proveedores aparece la siguiente página en donde se muestra la

información detallada de los proveedores de la empresa.

Page 132: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

En la siguiente página se puede observar el reporte listo para su impresión.

Reporte Cuentas por Cobrar

Al dar clic sobre cuentas por cobrar aparece la siguiente página en donde se

muestra la información detallada de las cuentas por cobrar de la empresa.

Page 133: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

En la siguiente página se puede observar el reporte listo para su impresión.

Reporte Cuentas por Pagar

Al dar clic sobre cuentas por pagar aparece la siguiente página en donde se

muestra la información detallada de las cuentas por pagar de la empresa.

Page 134: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

En la siguiente página se puede observar el reporte listo para su impresión.

ADMINISTRACIÓN

Esta pestaña estará activa solo para los usuarios que tienen privilegios de

administrador ya que los datos que se encuentran en estas opciones son

relevantes para el buen desempeño del sistema.

Page 135: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

Usuarios

Al dar clic sobre usuarios aparece la siguiente página en donde se registran los

usuarios del sistema. Esta página permite modificar, crear o eliminar usuarios. Se

deben ingresar los datos descritos a continuación: nombre del usuario, nick, clave,

grupo, dirección, teléfono.

Adicionalmente aparecen los botones que manejan la información de usuarios los

cuales son:

Esta opción permite acceder a los usuarios y modificarlos.

Esta opción permite crear un nuevo usuario.

Esta opción permite grabar un nuevo registro.

Esta opción permite imprimir los datos que se encuentren en la ficha.

Esta opción permite eliminar registros que no contengan dependencias.

Page 136: ESCUELA POLITÉCNICA NACIONAL · AppServ Open Project - 2.5.10 para Windows una herramienta que facilita la instalación de servidor Apache, MySQL y PHP en una sola herramienta. Apache

Permisos

La siguiente página nos permite dar permisos a cada grupo de usuarios, esto se

lo realiza activando o desactivando casillas.

Salir del Sistema

Permite salir del sistema PapelArt.