SlideShare una empresa de Scribd logo
1 de 151
Descargar para leer sin conexión
INSTITUTO TECNOLÓGICO SUPERIOR DE ACAYUCAN
INFORME FINAL DE
RESIDENCIA PROFESIONAL
ÁMBITO: social y productivo
IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDAD
DE INGENIERIA EN SISTEMAS COMPUTACIONALES E
INFORMATICA
INSTITUTO TECNOLOGICO SUPERIOR DE ACAYUCAN
PRESENTA(N): C ALEXANDER VELAZQUEZ CORTES No. 090B0265
De la especialidad de INGENIERIA EN
SISTEMA COMPUTACIONAL
ISIC-2004-296
Período AGO 13 - ENE 14
Asesor Interno: MTI. VIANEY FUENTES MATEO.
Asesor Externo: MTI. MIGUEL HERNANDEZ LINARES.
Acayucan, Ver. Enero de 2014
IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN
SISTEMAS COMPUTACIONALES E INFORMATICA
INGENIERIA EN SISTEMAS COMPUTACIONALES Página 2
Contenido
CAPÍTULO I ............................................................................................................................ 4
INTRODUCCION ............................................................................................................... 4
JUSTIFICACION ................................................................................................................ 5
OBJETIVOS........................................................................................................................ 8
OBJETIVO GENERAL................................................................................................... 8
OBJETIVOS ESPECIFICOS ........................................................................................ 8
FACTIBILIDAD ECONÓMICA, TÉCNICA Y OPERATIVA .......................................... 9
Económica....................................................................................................................... 9
Técnica........................................................................................................................... 10
Operativa ....................................................................................................................... 11
CAPITULO II ......................................................................................................................... 12
CARACTERIZACIÓN DEL ÁREA EN QUE PARTICIPÓ........................................... 12
ANTECEDENTES DE LA EMPRESA........................................................................... 13
PROBLEMAS A RESOLVER, PRIORIZÁNDOLOS ................................................... 15
ALCANCES Y LIMITACIONES...................................................................................... 17
Alcances ........................................................................................................................ 17
Limitaciones .................................................................................................................. 18
CAPITULO III........................................................................................................................ 18
FUNDAMENTO TEÓRICO............................................................................................. 18
QUÉ ES UN SERVIDOR............................................................................................ 19
SERVIDOR WEB ......................................................................................................... 19
FUNCIÓN DE UN SERVIDOR................................................................................... 19
Debían............................................................................................................................ 20
Virtualización................................................................................................................. 23
Software utilizado para el desarrollo del sistema........................................................ 25
MySql ............................................................................................................................. 26
Historia de MySQL....................................................................................................... 26
IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN
SISTEMAS COMPUTACIONALES E INFORMATICA
INGENIERIA EN SISTEMAS COMPUTACIONALES Página 3
Características de MySql ............................................................................................ 26
PHP ................................................................................................................................ 27
AppServ ......................................................................................................................... 28
CSS ................................................................................................................................ 29
Dobe Flash Player........................................................................................................ 32
Java script ......................................................................................................................... 33
XML ................................................................................................................................. 34
Secure Hash Algorithm ............................................................................................... 36
HTML5............................................................................................................................. 37
JQuery ................................................................................................................................. 38
Características.................................................................................................................. 39
Adobe Dreamweaver................................................................................................... 39
CSS · Bootstrap............................................................................................................ 42
Diseñador de base de datos....................................................................................... 46
Aplicaciones de los lenguajes de programación................................................... 46
Framework..................................................................................................................... 47
PROCEDIMIENTOS Y DESCRIPCION DE LAS ACTIVIDADES REALIZADAS.
............................................................................................................................................ 51
Metodología IWEB ....................................................................................................... 52
CAPITULO lV........................................................................................................................ 57
RESULTADOS, PLANOS, GRÁFICAS, PROTOTIPOS Y PROGRAMAS ............. 57
Entidades de la bd ....................................................................................................... 57
Descripción de los datos de la BD............................................................................. 59
CAPITULO V....................................................................................................................... 148
CONCLUSIONES Y RECOMENDACIONES ............................................................ 148
Conclusión................................................................................................................... 148
Recomendaciones ..................................................................................................... 148
CAPÍTULO VI...................................................................................................................... 150
Anexos ............................................................................................................................. 150
REFERENCIAS BIBLIOGRÁFICAS........................................................................... 151
IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN
SISTEMAS COMPUTACIONALES E INFORMATICA
INGENIERIA EN SISTEMAS COMPUTACIONALES Página 4
CAPÍTULO I
INTRODUCCION
Este documento describe el trabajo realizado en el proyecto final de
carrera de ingeniería en sistemas computacionales. El proyecto consiste en
el desarrollo de un portal web para las academias de ingeniería en sistemas
computacionales e informática, del Instituto Tecnológico Superior de
Acayucan, situado en carretera costera del golfo Km. 216.4, colonia Agrícola
Michapan, Acayucan, Veracruz. El objetivo de dicho portal web es dar una
información completa sobre el tecnológico y los servicios de los que dispone,
así como proporcionar una serie de funcionalidades a los alumnos y
profesores de las carreras de ingeniería en sistemas computacionales e
informática del centro educativo.
La web es accesible desde cualquier navegador por Internet y tiene
información referente a su localización, sus miembros (profesores de las
academias de sistemas computacionales e informática) y su proyecto
educativo. Se trata de dar una visión lo más completa posible de la
institución, así como del funcionamiento de las academias de Ingeniería en
Sistemas Computacionales e Informática.
En cuanto a los usuarios, la página tiene varios tipos. Por un lado, están
los usuarios no registrados o visitantes, que únicamente pueden acceder a
información general sobre el centro. Por otro, están los usuarios registrados,
que pueden acceder a una mayor funcionalidad dentro de la aplicación. Entre
estos últimos se encuentra el usuario docente y el usuario administrador. El
usuario docente puede realizar acciones tales como cargar archivos y tener
acceso a sus respectivos apartados de academia, mientras que el usuario
administrador gestiona el sistema.
IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN
SISTEMAS COMPUTACIONALES E INFORMATICA
INGENIERIA EN SISTEMAS COMPUTACIONALES Página 5
IDENTIFICACION DEL PROBLEMA
La liberación de créditos es muy importante en la carrera del alumno,
contando que el alumno tiene que reunir con 5 créditos como requisito de la
escuela, los créditos se pueden cumplir con actividades extraescolares,
cursos impartidos por los docentes, congresos, entre otras que ayudan al
alumno a completar estos requisitos, estos créditos se tienen que cumplir a lo
largo de la carrera, pero no se lleva un control sobre estos, existiendo un
desorden y un desconocimiento de cuantos créditos faltan al alumno,
además que la publicación de dichas actividades para la realización de estos
es muy pobre y no se informa sobre la realización de cursos, haciéndose que
el registro en cursos y otras actividades sea de manera verbal o manual.
Las academias de ingeniería en sistemas computacionales y de informática
llevan a cabo reuniones de academia para tratar asuntos relacionados con
sus respectivas carreras, las reuniones son citadas por el presidente y
secretario, en la cual se estipula un día, lugar y horario para que se lleve a
cabo la junta, un problema que se presenta es el método de comunicado
para la información, ya sea para avisar de juntas de academia, entrega de
asignaciones de comisión y liberaciones se hace de manera personal,
haciendo que las notificaciones no se entreguen en la fecha correspondiente
y pueda ver un retraso o una falta en el caso de las reuniones de academia,
otro de los casos es el surgimiento de convocar reuniones rápidas (de un día
para otro) para tratar temas urgentes, haciéndose muy difícil la asistencia de
todos los miembros. Cada miembro de la academia puede encargársele
diferentes asignaciones, las cuales se guardan en un expediente con sus
respectivas liberaciones, si se llega a su cumplimiento, para llevar un
registro, estos registros se guardan de forma manual en carpetas con el
nombre de cada docente, el problema es que dichos documentos pueden
IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN
SISTEMAS COMPUTACIONALES E INFORMATICA
INGENIERIA EN SISTEMAS COMPUTACIONALES Página 6
extraviarse o revolverse con el paso del tiempo, haciéndose imposible poder
checar algún registro de fechas anteriores.
Un tema importante surge al no existir ningún dato sobre temas relacionados
con los anteproyectos, residencias y tesis, ya que al entregarse todos los
anteproyectos se estipulan fechas variadas para que el alumno acuda a las
instalaciones para verificar si su residencia procede o no y para rectificar a su
asesor interno asignado. Los asesores una vez teniendo el proyecto, no
pueden darse cuenta, si dicho proyecto ya antes se ha realizado, y no
pueden evaluar de una manera parcial al alumno, ya que pueden existir la
duplicidad de proyectos o pueden darse los casos en donde los proyectos
pueden repetirse pues las compañías pueden entregar proyectos que ya
antes se han elaborado.
Otro problema es la entrega de manuales y antologías que elaboran los
docentes, ya que estos hacen llegar su material en memorias o
fotocopiándolo y entregándolo al alumno, lo cual se hace un problema ya que
el material, no puede ser repartido a todos los alumnos, llegándose al caso
de extraviar dicha información retrasando al docente. Por último la
información que se le notifica al alumno se realiza de manera muy pobre,
pues los avisos de acontecimientos importantes se realizan de manera oral o
a través de avisos escritos que carecen de visibilidad, estos avisos pueden
ser talleres, cursos, promociones de becas, etc. imposibilitando al alumno de
trabajar en tiempo y forma con la institución.
IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN
SISTEMAS COMPUTACIONALES E INFORMATICA
INGENIERIA EN SISTEMAS COMPUTACIONALES Página 7
JUSTIFICACION
Debido a los diferentes problemas con el acceso y flujo de información entre
las comunidades de ingeniería en sistemas computacionales e ingeniería
informática del Instituto tecnológico Superior de Acayucan, se ha tomado en
cuenta realizar un portal en línea que facilite la información a las
comunidades antes mencionadas, mejorando diversos ámbitos,
planteándose que en dicho portal, las academias de sistemas
computacionales como la de informática, tendrán su propio sistema, dirigidos
por un administrador, que avisara de las juntas que se realizaran mandando
a los correos de los docentes una notificación que los enlazara con el portal,
mejorando así los comunicados de avisos de reuniones de academia, así
como se tendrá una lista con la información de cada docente de sus
respectivas academias, en donde se tendrá el archivamiento de forma digital
de las diversas asignaciones y comisiones asignadas a los docentes,
mejorando así perdida de archivos y búsqueda de manera inmediata de
estos.
Se tiene propuesto implementar en dicho portal, un apartado para que los
docentes y alumnos puedan consultar el nombre y una breve descripción de
residencias anteriores, para evitar el duplicado de estas, así como también
para los alumnos consulten de manera rápida si sus anteproyectos han sido
aceptados, como también que asesor le ha sido asignado. También se
asignara un apartado para que las antologías y manuales estén a disposición
de todos los alumnos, así los archivos podrán estar al alcance de todos de
una manera práctica y sencilla, agilizando el tiempo para el uso de dicho
material y evitando los extravíos o el mal manejo a la hora de repartir la
información. Se creara una ventana en la interfaz únicamente para
notificaciones y avisos importantes de la carrera, para mantener informado a
la comunidad de sistemas e informática de sucesos importantes que se
acontecen conforme a las carreras.
IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN
SISTEMAS COMPUTACIONALES E INFORMATICA
INGENIERIA EN SISTEMAS COMPUTACIONALES Página 8
Se realizara un apartado para que el alumno pueda ver los cursos que están
a disposición y este pueda tomarlos para completar sus actividades
complementarias para la acreditación de créditos, así como el administrador
de su respectiva academia tiene un control sobre los créditos del alumno,
creando más cursos para ayudarlo a cumplir estos requisitos.
OBJETIVOS
OBJETIVO GENERAL
Facilitar información a la comunidad de las carreras de ingeniería en
sistemas computacionales e ingeniería en informática así como también
para facilitar los procedimientos que se hacen en las respectivas academias,
mediante la implantación de plataforma en línea para el Instituto
Tecnológico Superior de Acayucan.
OBJETIVOS ESPECIFICOS
 Desarrollar interfaz gráfica para cada incidencia.
 Generar las bases de datos específicas y dedicadas para el flujo de
información.
 Implementar apartado para banco digital (anteproyectos, residencias,
tesis, antologías y manuales de práctica) para consulta y descarga.
 Implementar un apartado para asuntos de academia.
 Almacenar de manera más rápida la información diaria que se genere
en el departamento.
 Definir niveles de acceso a información.
 Determinar la seguridad de acceso a la interfaz.
IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN
SISTEMAS COMPUTACIONALES E INFORMATICA
INGENIERIA EN SISTEMAS COMPUTACIONALES Página 9
FACTIBILIDAD ECONÓMICA, TÉCNICA Y OPERATIVA
En esta fase del sistema se realizaron los estudios de factibilidad
económica, técnica y operativa y de recursos humanos para su aprobación
de desarrollo del sistema, a continuación se describe detalladamente los
estudios realizados.
Económica
Para que el sistema pueda ser desarrolladlo, es indispensable estudiar
profundamente los recursos económicos con que cuenta para que esto sea
posible se han considerado los siguientes costos:
concepto horas Costo por hora costo
Análisis de sistema 50 $60 $1 500. ºº
Determinación de los
requerimientos (diseño de la
base de datos)
60 $60 $3 000. ºº
Determinación de los
requerimientos (diseño de
interfaces)
80 $60 $4 000. ºº
Desarrollo e implantación 160 $60 $8 000. ºº
Costos indirectos generados
por el personal
$2 000. ºº
$18,500. ºº
El costo del sistema es de $18,500. ºº Más la cantidad de $3000. ºº De mano
de obra, nos arroja una cantidad de $21,500. ºº Como gasto total.
En este caso se ha determinado que es económicamente factible ejecutar el
desarrollo del sistema para la academia de ingeniería en sistemas, debido a
IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN
SISTEMAS COMPUTACIONALES E INFORMATICA
INGENIERIA EN SISTEMAS COMPUTACIONALES Página 10
que todos los gastos que puedan surgir en el desarrollo del sistema, serán
proporcionados por el instituto tecnológico superior de Acayucan.
Técnica
El instituto tecnológico superior de Acayucan tienen dentro de sus alcances
técnicos para el desarrollo del sistema “Implantación de plataforma web para
la comunidad de isc e informatica,en este caso el líder del proyecto”, será
quien diseñe y cree el sistema que requiere:
Hardware
En cuanto al hardware, específicamente el servidor donde se instalara el
sistema propuesto que servirá para la comunicación de los demás
computadores vía web, este debe cubrir con los siguientes requerimientos
mínimos:
 Procesador Pentium 166 MHz.
 Tarjeta Madre.
 512 MB de Memoria RAM
 Disco duro de 30 Gb.
 Unidad de CD-ROM.
 Tarjeta de Red.
 Tarjeta de Video.
 Monitor
 Teclado
 Mouse
Evaluando el hardware existente y tomando en cuenta la configuración
mínima necesaria, el tecnológico no requirió realizar una inversión inicial para
la adquisición de nuevos equipos, ya que los mismos satisfacen los
requerimientos establecidos tanto para el desarrollo y puesta en
funcionamiento del sistema propuesto.
IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN
SISTEMAS COMPUTACIONALES E INFORMATICA
INGENIERIA EN SISTEMAS COMPUTACIONALES Página 11
Software
En cuanto al software, la tecnológica cuenta con casi todas las aplicaciones
que se emplearan para el desarrollo del proyecto y funcionamiento del
sistema, a excepción del servidor web appserv o xampp, pero estos se
encuentran en el internet de forma gratuita, lo cual no amerita inversión
alguna para la adquisición de los mismos. Las estaciones de trabajo operan
bajo ambientes Windows - Linux.
 Windows 7, Salix OS
 Navegador Internet Explorer, Google Chrome y Mozilla Firefox
 Herramientas de Escritorio Office 2010 y Libre Office.
 Sistemas administrativos
 Antivirus
De acuerdo al estudio realizado al instituto tecnológico superior de Acayucan
de recursos técnicos o el equipo de cómputo con que cuenta necesario para
el desarrollo del sistema, se puede concluir que es factible desarrollar el
proyecto denominado “Implantación de plataforma web para la comunidad de
isc e informática”, para el departamento de academia de ingeniería en
sistemas, debido a que los equipos de cómputo con que se cuentan,
cumplen con el software y hardware básicos para el desarrollo del sistema.
Operativa
Debido a las determinaciones tomadas en los estudios de factibilidad
económica y técnica, llegamos a la conclusión que es operativamente te
factible económica y técnica, llegamos a la conclusión que es operativamente
factible construir el proyecto denominado “Implantación de plataforma web
para la comunidad de isc e informática” para la academia de ingeniería en
sistemas computacionales. Cuya función que desempeña es todo lo
relacionado con el trabajo del docente para asegurar el cumplimiento de los
programas de las asignaturas del plan de estudios de cada carrera de
licenciatura, impartidas en el instituto tecnológico superior de Acayucan.
IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN
SISTEMAS COMPUTACIONALES E INFORMATICA
INGENIERIA EN SISTEMAS COMPUTACIONALES Página 12
CAPITULO II
CARACTERIZACIÓN DEL ÁREA EN QUE PARTICIPÓ
Este proyecto se llevó acabo en el instituto tecnológico superior de
Acayucan en el departamento de desarrollo de academia a cargo del ing.
El siguiente esquema físico muestra la ubicación exacta de la empresa
donde se llevara a cabo el proyecto de residencia denominando implantación
de plataforma web para comunidad de ingeniería en sistemas
computacionales e informática.
Figura 1.0 ubicación de la institución.
Tabla 1: Datos generales de la empresa.
Nombre: instituto tecnológico superior de Acayucan
Área administrativa:
Dirección: carretera costera del golfo km.216.4 Desviación. A monte grande.
Col.Agricola michapan, Acayucan, Veracruz.
Teléfono: (01924)2 45 74 10 fax: (01 924)24 574 18
E-mail: itsa@itsacayucan.edu.mx;
Página web: www.itsacayucan.edu.mx;
IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN
SISTEMAS COMPUTACIONALES E INFORMATICA
INGENIERIA EN SISTEMAS COMPUTACIONALES Página 13
ANTECEDENTES DE LA EMPRESA
El instituto tecnológico superior de Acayucan es una institución joven con
apenas diez años de existencia. Durante este tiempo ha respondido a las
exigencias de una sociedad demandante de oportunidades de estudio a nivel
superior. Iniciando actividades el 25 de septiembre de 2000 con 103
estudiantes hoy se ha convertido en una institución cada vez más fuerte
experimentando un notable incremento de matrícula y de personal
adquiriendo cada vez mayor relevancia ante las autoridades educativas
federales, estatales y municipales y consolidándose entre la sociedad como
la máxima casa de estudio de la región.
Este crecimiento es la muestra de indiscutibles logros alcanzados por el
trabajo conjunto de la institución del gobierno en sus tres niveles y de la
comunidad tecnológica. Sin embargo los retos que debe afrontar son
muchos. El plan nacional de educación 2001-2006 (PNE) en el apartado
correspondiente a educación superior señala de rumbo que como institución
de educación superior pública hemos de seguir.
Sin duda que el proceso de superarse representa grandes esfuerzos sin
embargo dado nuestro compromiso y la capacidad de quienes estamos
involucrados tales retos son oportunidades para alcanzar un crecimiento que
nos permita responder de manera más eficiente y profunda expectativas que
tiene la sociedad en materia De educación superior de calidad con enfoque
humanístico e generación de conocimiento científicos de desarrollo
tecnológico de transferencia de tecnologías de divulgación cultural entre
otras. Las áreas sustantivas del instituto están comprometidas en conjunto
realizando primeramente un análisis de las fortalezas y debilidades para
reforzar y ampliar sus servicios. Este proceso involucra un reconocimiento
honesto de lo que se a echo bien y de lo que es necesario mejorar con todo
el esfuerzo que ello requiera una evaluación sería responsable autocritica
IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN
SISTEMAS COMPUTACIONALES E INFORMATICA
INGENIERIA EN SISTEMAS COMPUTACIONALES Página 14
que conduzca al mejoramiento integral de los procesos que serán el
fundamento de una institución de calidad.
Figura 1.2 .escudo del instituto tecnológico superior de Acayucan.
Actualmente la institución cuenta con las carreras siguientes:
 Sistema escolarizado
o Ingeniería bioquímica
o Ingeniería en sistemas computacional
o Licenciatura en informática
o Ingeniería industrial
o Ingeniería en gestión empresarial
o Ingeniería en Mecatrónica
o ingeniería en informática
o Ingeniería química
 Sistema abierto
o Licenciatura en informática
o Ingeniería en gestión empresarial
Política de calidad
El itsa establece el compromiso de implementar el sistema de gestión de
calidad (SGC) en todos sus procesos claves, orientándolos hacia la
satisfacción de sus alumnos sustentada en la calidad de proceso educativo
para cumplir con su requerimiento mediante la eficacia de un sistema de
gestión de la calidad y de mejora continua conforme a la norma ISO
9001:2000/mnx-cc-9001.IMNC-2000.
IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN
SISTEMAS COMPUTACIONALES E INFORMATICA
INGENIERIA EN SISTEMAS COMPUTACIONALES Página 15
Misión
Asegurar la formación integral de los estudiantes, en profesionistas e
investigadores de excelencia, capaces de desarrollar tecnologías para la vida
y el respeto al medio ambiente, utilizando el mejor capital intelectual en las
áreas del conocimiento correspondiente.
Visión
Ser una institución educativa vanguardista, reconocida a nivel nacional e
internacional para el 2018 por su actitud incluyente e innovadora por su
capacidad para desarrollar tecnología, investigación y comprometida siempre
con el uso sustentable del ambiente.
PROBLEMAS A RESOLVER, PRIORIZÁNDOLOS
La liberación de créditos es muy importante en la carrera del alumno,
contando que el alumno tiene que reunir con 5 créditos como requisito de la
escuela, los créditos se pueden cumplir con actividades extraescolares,
cursos impartidos por los docentes, congresos, entre otras que ayudan al
alumno a completar estos requisitos, estos créditos se tienen que cumplir a lo
largo de la carrera, pero no se lleva un control sobre estos, existiendo un
desorden y un desconocimiento de cuantos créditos faltan al alumno,
además que la publicación de dichas actividades para la realización de estos
es muy pobre y no se informa sobre la realización de cursos, haciéndose que
el registro en cursos y otras actividades sea de manera verbal o manual.
Las academias de ingeniería en sistemas computacionales y de informática
llevan a cabo reuniones de academia para tratar asuntos relacionados con
sus respectivas carreras, las reuniones son citadas por el presidente y
secretario, en la cual se estipula un día, lugar y horario para que se lleve a
cabo la junta, un problema que se presenta es el método de comunicado
IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN
SISTEMAS COMPUTACIONALES E INFORMATICA
INGENIERIA EN SISTEMAS COMPUTACIONALES Página 16
para la información, ya sea para avisar de juntas de academia, entrega de
asignaciones de comisión y liberaciones se hace de manera personal,
haciendo que las notificaciones no se entreguen en la fecha correspondiente
y pueda ver un retraso o una falta en el caso de las reuniones de academia,
otro de los casos es el surgimiento de convocar reuniones rápidas (de un día
para otro) para tratar temas urgentes, haciéndose muy difícil la asistencia de
todos los miembros. Cada miembro de la academia puede encargársele
diferentes asignaciones, las cuales se guardan en un expediente con sus
respectivas liberaciones, si se llega a su cumplimiento, para llevar un
registro, estos registros se guardan de forma manual en carpetas con el
nombre de cada docente, el problema es que dichos documentos pueden
extraviarse o revolverse con el paso del tiempo, haciéndose imposible poder
checar algún registro de fechas anteriores.
Un tema importante surge al no existir ningún dato sobre temas relacionados
con los anteproyectos, residencias y tesis, ya que al entregarse todos los
anteproyectos se estipulan fechas variadas para que el alumno acuda a las
instalaciones para verificar si su residencia procede o no y para rectificar a su
asesor interno asignado. Los asesores una vez teniendo el proyecto, no
pueden darse cuenta, si dicho proyecto ya antes se ha realizado, y no
pueden evaluar de una manera parcial al alumno, ya que pueden existir la
duplicidad de proyectos o pueden darse los casos en donde los proyectos
pueden repetirse pues las compañías pueden entregar proyectos que ya
antes se han elaborado.
Otro problema es la entrega de manuales y antologías que elaboran los
docentes, ya que estos hacen llegar su material en memorias o
fotocopiándolo y entregándolo al alumno, lo cual se hace un problema ya que
el material, no puede ser repartido a todos los alumnos, llegándose al caso
de extraviar dicha información retrasando al docente. Por último la
IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN
SISTEMAS COMPUTACIONALES E INFORMATICA
INGENIERIA EN SISTEMAS COMPUTACIONALES Página 17
información que se le notifica al alumno se realiza de manera muy pobre,
pues los avisos de acontecimientos importantes se realizan de manera oral o
a través de avisos escritos que carecen de visibilidad, estos avisos pueden
ser talleres, cursos, promociones de becas, etc. imposibilitando al alumno de
trabajar en tiempo y forma con la institución
ALCANCES Y LIMITACIONES
Al desarrollar un proyecto se presentan alcances del que dispone y
diferentes inconvenientes cuando se tiene la intención de ponerlo en marcha
a continuación se presentan los alcances y limitaciones para el desarrollo de
este proyecto. En la parte de alcances se presentan los recursos con los
que se pueden disponer de la Implantación de plataforma web para la
comunidad de isc e informática en las limitaciones, en las limitaciones se
mostraran los datos relacionados con los problemas para tener un
rendimiento eficaz del software.
Alcances
 Es compatibilidad con las versiones de Windows como son: XP, Vista
Y Seven.
 Actualización de los datos.
 Seguridad de información mediante un usuario determinado y
contraseña.
 Portabilidad: ya que podrá ser distribuido en múltiples equipos.
 El sistema podrá ser instalado en múltiples plataformas.
 La información será distribuida a través de internet.
IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN
SISTEMAS COMPUTACIONALES E INFORMATICA
INGENIERIA EN SISTEMAS COMPUTACIONALES Página 18
Limitaciones
 La aplicación será mono usuario.
 Tendrá acceso el encargado del departamento de academia isc e
info.
 El sistema no podrá ser un sistema distribuido.
CAPITULO III
FUNDAMENTO TEÓRICO
Es preciso conocer inicialmente fundamentos de base de datos
incluidos, términos y conceptos básicos, modelos de diseño de base de
datos y las características que debe contener una buena base de datos, el
lenguaje de consulta y almacenamiento de datos, el sistema operativo
compatible con el lenguaje de datos que además permita utilizar un lenguaje
de programación con el que se diseñara y programara la parte grafica con la
ayuda de programas que harán que el sistema pueda ser usado a través de
la red de la institución.
Por ello las investigaciones conllevan a elegir los programas adecuados
para lograr el cometido de este sistema; a continuación se presenta las
herramientas que se utilizaron para este proyecto explicando las causas que
encaminan a usarlas y los requerimientos de estos.
IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN
SISTEMAS COMPUTACIONALES E INFORMATICA
INGENIERIA EN SISTEMAS COMPUTACIONALES Página 19
QUÉ ES UN SERVIDOR
Un servidor es un equipo informático que forma parte de una red y provee
servicios a otros equipos cliente. Se denomina servidor dedicado, aquel que
dedica todos sus recursos a atender solicitudes de los equipos cliente. Sin
embargo un servidor compartido es aquel que no dedica todos sus recursos
a servir las peticiones de los clientes, sino que también es utilizado por un
usuario para trabajar de forma local.
SERVIDOR WEB
Un servidor web es un programa que se ejecuta continuamente en un
computador, manteniéndose a la espera de peticiones de ejecución que le
hará un cliente o un usuario de Internet. El servidor web se encarga de
contestar a estas peticiones de forma adecuada, entregando como resultado
una página web o información de todo tipo de acuerdo a los comandos
solicitados. En este punto es necesario aclarar lo siguiente: mientras que
comúnmente se utiliza la palabra servidor para referirnos a una computadora
con un software servidor instalado, en estricto rigor un servidor es el software
que permite la realización de las funciones descritas.
FUNCIÓN DE UN SERVIDOR
La función de un servidor es proveer servicios a otras computadoras
conectadas en red, llamadas clientes. El ejemplo más práctico de un
servidor, son los servidores web, por ejemplo, yahoo.com.
IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN
SISTEMAS COMPUTACIONALES E INFORMATICA
INGENIERIA EN SISTEMAS COMPUTACIONALES Página 20
Debían
Este sistema operativo esta Está mantenida por sus usuarios, Si algo
necesita ser arreglado o mejorado, simplemente lo hacemos.
Su Soporte incomparable, el correo enviado a las listas de
correo frecuentemente obtiene respuesta en quince minutos (o menos),
gratuitamente, y por las personas que lo desarrollaron. Compare ésto al
típico soporte telefónico: horas gastadas en el teléfono, pagando dinero, sólo
para tener a alguien que no conoce el sistema lo suficientemente bien como
para entender su pregunta.
No estará solo en su elección Un amplio abanico de organizaciones e
individuos usa ya Debian. Vea nuestra página ¿Quién está usando
Debian? Si desea una descripción de algunos sitios de prestigio que usan
Debian y han decidido enviar una corta descripción de cómo hacen uso de
Debian y por qué.
El mejor sistema de empaquetamiento de software del mundo ¿Cansado de
viejos archivos de software tres versiones anteriores al actual desordenando
su sistema? ¿O de instalar software sólo para encontrar que hace que su
sistema se colapse debido a conflictos de software?, el sólido sistema de
empaquetamiento de Debian, se encarga de estos asuntos por usted.
IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN
SISTEMAS COMPUTACIONALES E INFORMATICA
INGENIERIA EN SISTEMAS COMPUTACIONALES Página 21
Instalación sencilla Si ha oído que Debían es difícil de instalar entonces no
ha probado Debían últimamente. Estamos mejorando constantemente el
proceso de instalación. Puede realizar la instalación directamente desde un
CD, DOS o discos flexibles o incluso a través de la red.
La Increíble cantidad de software Debían viene con más de 37500 elementos
de software diferentes. Cada bit de éstos es libre. Si tiene software
propietario que corre bajo GNU/Linux o GNU/kFreeBSD, puede usarlo (de
hecho, puede que incluso exista un instalador en Debían que
automáticamente instale y configure todo por usted).
Paquetes bien integrados Debían sobrepasa a todas las otras distribuciones
en lo bien integrados que están sus paquetes. Como todo el software lo
empaqueta un grupo coherente, no sólo puede encontrar todos los paquetes
en un mismo sitio sino que puede estar seguro de que hemos eliminado
todos los problemas al respecto de complejas dependencias. Aunque
creemos que el formato deb tiene algunas ventajas sobre el rpm, es la
integración entre paquetes lo que hace a un sistema Debían más robusto.
Código fuente Si usted es un desarrollador de software, apreciará el hecho
de que haya cientos de herramientas y lenguajes de desarrollo, además de
millones de líneas de código fuente en el sistema base. Todo el software en
la distribución principal es conforme al criterio de las Directrices de Software
Libre de Debían (DFSG). Esto significa que usted puede usar libremente este
código para estudiarlo o para incorporarlo a un nuevo proyecto de software
libre. También hay una buena cantidad de herramientas y código apropiado
para el uso en proyectos propietarios.
Actualizaciones fáciles Actualizarse a una nueva versión de Debían es muy
fácil gracias a nuestro sistema de empaquetamiento. Sólo tiene que
ejecutar apt-get update; apt-get dist-upgrade (o aptitude update; aptitude dist-
upgrade, según la versión) y puede actualizarse desde un CD en cuestión de
IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN
SISTEMAS COMPUTACIONALES E INFORMATICA
INGENIERIA EN SISTEMAS COMPUTACIONALES Página 22
minutos o configurar apt para que utilice alguno de los trescientos espejos de
Debían y actualizarse desde la red.
Sistema de seguimiento de errores el sistema de seguimiento de errores de
Debían es público. No intentamos esconder la realidad de que el software no
siempre trabaja de la manera que los usuarios desean. Aconsejamos a los
usuarios que envíen informes de errores y serán notificados cuándo y por
qué el error ha sido solucionado. Este sistema permite que Debían responda
a los problemas rápida y honestamente.
Si usted aún no es usuario de Debían, puede también disfrutar de los
siguientes beneficios:
 Estabilidad
Existen muchos casos de máquinas que trabajan durante más de un año
seguido sin reiniciarse. De la misma forma, hay equipos que tan sólo son
reiniciados debido a un fallo en el suministro de corriente o a una
actualización del hardware. Compare esto con otros sistemas que se
colapsan varias veces al día.
 Rápido y ligero en memoria
Otros sistemas operativos pueden ser rápidos en una o dos áreas, pero,
estando basado en GNU/Linux o GNU/kFreeBSD, Debían es ligero y
humilde. El software para Windows se ejecuta bajo GNU/Linux usando un
emulador a veces más rápido que en su ambiente original.
 Los controladores para la mayoría del hardware están escritos
por usuarios de GNU/Linux / GNU/kFreeBSD, no por el fabricante.
Mientras que esto puede significar retrasos antes de que el nuevo hardware
sea soportado y la no existencia de soporte para algún hardware, permite
que continúe el soporte mucho después de que el fabricante haya detenido
IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN
SISTEMAS COMPUTACIONALES E INFORMATICA
INGENIERIA EN SISTEMAS COMPUTACIONALES Página 23
su producción o haya quebrado. La experiencia ha demostrado que los
controladores de fuentes abiertas son usualmente mejores que los
controladores propietarios.
 Buena seguridad del sistema
Debian y la comunidad del software libre son muy sensibles a asegurarse de
que los arreglos de problemas de seguridad entren en la distribución
rápidamente. Normalmente, los paquetes arreglados se hacen disponibles a
los pocos días. La disponibilidad del código fuente permite que la seguridad
en Debian se evalúe de forma abierta, lo que evita que se implementen
modelos de seguridad pobres. Además, la mayoría de los proyectos de
software libre tienen sistemas de revisión por terceras partes, que, como
primera medida, evitan que se introduzcan en el sistema problemas de
seguridad potenciales.
 Software de seguridad
Muchos desconocen que cualquier cosa enviada por la red puede ser leída
por cualquier máquina entre usted y el receptor. Debian tiene paquetes del
famoso software GPG (y PGP) que permite enviar correo entre usuarios
preservando su privacidad. Además, ssh permite crear conexiones seguras a
otras máquinas que tengan ssh instalado.
Virtualización
Para hacer más bajo el costo de un sistema preferido este software tiene
cualidades a muy bajo costo para empezar. ¿Qué es Virtualización? Es la
Creación de un Equipo Virtual usando una combinación de hardware y
software. Facilidad de poder ejecutar múltiples Sistemas Operativos en un
solo hardware.
IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN
SISTEMAS COMPUTACIONALES E INFORMATICA
INGENIERIA EN SISTEMAS COMPUTACIONALES Página 24
Muchas de la empresas les da curiosidad el ¿Por qué Virtualizar? Uno de los
muchas razones de esto es la reducción del tiempo ocioso (es el tiempo que
un procesador gasta esperando datos de otros procesadores).
 Disponibilidad de tecnología especializada para tales fines.
 Ahorro de recursos: Hardware, Energía y Costos
Qué se logra con la virtualización los siguientes puntos los muestran:
 Facilidad para la administración.
 Reemplazo rápido de sistemas completos en casos de averías.
 Los Sistemas de Prueba se pueden poner en producción fácil y
rápidamente.
 Portabilidad → Independencia del Hardware.
 Disponibilidad de sistemas completos probados por fabricantes.
 Máxima explotación de los recursos de hardware.
 Seguridad: Simulación de ambientes de trabajo para
entrenamiento/pruebas sin poner en riesgo los sistemas en
producción.
Importancia de la Virtualización refleja grandes cosas:
 En promedio sólo el 10% del tiempo de una computadora está
trabajando.
 “Virtualización = Liberación. Un computador o servidor puede hacer el
trabajo de muchos”
 Menos del 10% de los servidores o máquinas actuales son virtual
izados
IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN
SISTEMAS COMPUTACIONALES E INFORMATICA
INGENIERIA EN SISTEMAS COMPUTACIONALES Página 25
Las Ventajas más notables de esto son:
 Ahorro: Aumente perceptiblemente la utilización y la productividad.
 Protección: La utilización de tecnologías de virtualización facilita
mucho las soluciones.
 Automatización: Reduzca los tiempos y las tareas del
aprovisionamiento.
 Funcionamiento: Aumente su capacidad de trabajo, la facilidad de
reserva de recursos y los tiempos de reacción.
 Simplicidad y coste: Agregue o reorganice sus recursos de
almacenamiento o cálculo y sin tiempo muerto.
 Flexibilidad: Gane la independencia del hardware, la agilidad en
migraciones y la capacidad de crecimiento organizada.
Unas de las pocas Desventajas que se presentan:
 Aplicaciones son más lentas
 Interoperabilidad entre diferentes máquinas virtuales.
 A través de pruebas se ha determinado que se logran pequeñas
mejoras en servidores (Java, de correo, servidor), Web, servidor de
base de datos, y servidor de archivos) utilizando virtualización.
 Aplicaciones nativas del microprocesador
 Microsoft Virtual Server (de Windows Server 2008)
Software utilizado para el desarrollo del sistema.
Para la construcción y programación del sistema de base de datos, utilizaremos
MySql y para la elaboración de las interfaces con el usuario interactuara y
manipulara la información de la base de datos usaremos las herramientas para su
mejor diseño usaremos php, java script, css, jqueary.
IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN
SISTEMAS COMPUTACIONALES E INFORMATICA
INGENIERIA EN SISTEMAS COMPUTACIONALES Página 26
MySql
MySQL es un sistema de administración de bases de datos relacional (RDBMS). Se
trata de un programa capaz de almacenar una enorme cantidad de datos de gran
variedad y de distribuirlos para cubrir las necesidades de cualquier tipo de
organización, desde pequeños establecimientos comerciales a grandes empresas y
organismos administrativos. MySQL compite con sistemas RDBMS propietarios
conocidos, como Oracle, SQL Server y DB2.
MySQL incluye todos los elementos necesarios para instalar el programa, preparar
diferentes niveles de acceso de usuario, administrar el sistema y proteger y hacer
volcados de datos. Puede desarrollar sus propias aplicaciones de base de datos en
la mayor parte de 10s lenguajes de programación utilizados en la actualidad y
ejecutarlos en casi todos 10s sistemas operativos, incluyendo algunos de los que
probablemente no ha oído nunca hablar. MySQL utiliza el lenguaje de consulta
estructurado (SQL). Se trata del lenguaje utilizado por todas las bases de
relacionales, que presentaremos en una sección posterior. Este lenguaje permite
crear bases de datos, así como agregar, manipular y recuperar datos en Función de
criterios específicos.
Historia de MySQL
MySQL surgió como un intento de conectar el gestor mySQL a las tablas propias de
MySQL AB, usando sus propias rutinas a bajo nivel. Tras unas primeras pruebas,
vieron que mySQL no era lo bastante flexible para lo que necesitaban, por lo que
tuvieron que desarrollar nuevas funciones. Esto resultó en una interfaz SQL a su
base de datos, con una interfaz totalmente compatible a mySQL.
Características de MySql
Las principales características de este gestor de bases de datos son las
siguientes:
1. Aprovecha la potencia de sistemas multiprocesador, gracias a su
implementación multihilo.
IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN
SISTEMAS COMPUTACIONALES E INFORMATICA
INGENIERIA EN SISTEMAS COMPUTACIONALES Página 27
2. Soporta gran cantidad de tipos de datos para las columnas.
3. Dispone de API's en gran cantidad de lenguajes (C, C++, Java, PHP, etc.).
4. Gran portabilidad entre sistemas.
5. Soporta hasta 32 índices por tabla.
6. Gestión de usuarios y passwords, manteniendo un muy buen nivel de
seguridad en los datos.
PHP
PHP (acrónimo de "PHP: Hipertexto Preprocessor") es un lenguaje
interpretado de alto nivel embebido en páginas HTML y ejecutado en el
servidor. El PHP es un lenguaje de programación utilizado para crear
páginas web dinámicas. El PHP necesita que un servidor web con capacidad
PHP sea instalado y funcionando para poder ejecutar las páginas PHP.
A continuación se muestra una conexión de php y Mysql
IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN
SISTEMAS COMPUTACIONALES E INFORMATICA
INGENIERIA EN SISTEMAS COMPUTACIONALES Página 28
El servidor va a compilar el código PHP y tratarlo en tiempo real, con la
información viniendo del cliente web, para regresarle una página web
adaptada, en tiempo real.
El servidor tiene también capacidad de seguir el camino de un usuario, así
como de identificarlo.
Las características de este tipo de programación es que posee la capacidad
de ser multiplataforma, contar con la capacidad de conexión con la mayoría
de los manejadores de base de datos que se utilizan en la actualidad, es libre
lo que se presenta como una alternativa de fácil acceso para todos, de igual
forma permite las técnicas de Programación Orientada a Objetos.
Este posee las siguientes ventajas como la de ser multiplataforma, tiene la
capacidad de ser libre y de la conectividad con MYSQL, cuenta con
bibliotecas de funciones y permite la utilización de herramientas para la
programación orientada a objetos.
Las desventajas de este tipo de programación es que promueve creación de
código desordenado y con un mantenimiento complejo, no posee adecuado
manejo de Unicode, también que es muy difícil de optimizar, está diseñado
especialmente hacia un modo de realizar aplicaciones Web que es
problemático y obsoleto y no posee una abstracción de base de datos
estándar.
AppServ
Es una herramienta opensource, Windows con apache, mysql, php y
otras adicciones, en la cual estas aplicaciones se configuran en forma
automática, lo que permite ejecutar un servidor web completo.
Como extra incorpora phpMyAdmin para el manejo de MySQL
Inmediatamente después de la instalación está disponible completamente
funcional del servidor web Apache , que se ejecuta en el equipo local, que
IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN
SISTEMAS COMPUTACIONALES E INFORMATICA
INGENIERIA EN SISTEMAS COMPUTACIONALES Página 29
puede ejecutar un número ilimitado de sitios para ser muy eficaz para
desarrollar y depurar scripts PHP sin subir archivos a un servidor remoto. El
programa se distribuye gratuitamente bajo licencia GNU General Public
License y es gratis, fácil de usar web-servidor capaz de servir páginas
dinámicas. Con esta configuración, puede implementar rápidamente un
equipo hecho y derecho y el servidor web rápido, con acceso desde la red
local, sin necesidad de configuración adicional. Puede ser utilizado como un
servidor web público en la Internet
CSS
(Cascading Style Sheets, u Hojas de Estilo en Cascada) es la tecnología
desarrollada por el World Wide Web Consortium (W3C) con el fin de separar
la estructura de la presentación. A pesar de que la recomendación
oficial del grupo de trabajo de la W3C ya había alcanzado la estabilidad
requerida para que fuera soportada por los principales navegadores
comerciales, como Netscape e InternetExplorer, tan tempranamente como
en el año 1998, la situación de entonces, comúnmente conocida
como la “guerra de los navegadores”, hacía que los intereses comerciales de
las dos compañías en lucha por el mercado de usuarios de Internet se
interpusieran en el camino de las CSS.
Netscape 4 e Internet Explorer 4 incorporaron parcialmente un soporte a esta
recomendación, pero éste dejaba mucho que desear, especialmente en
Netscape 4, por lo que no era plausible la incorporación de las CSS en el
diseño de sitios salvo en un muy mínimo número de características, y esto
aún con reservas, puesto que la manera de tratar los estándares era muy
diferente y por eso ni aun así se podía asegurar una visualización correcta de
la misma hoja de estilos.
IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN
SISTEMAS COMPUTACIONALES E INFORMATICA
INGENIERIA EN SISTEMAS COMPUTACIONALES Página 30
El uso más amplio de las posibilidades de las CSS en Netscape 4, por
ejemplo, podía llegar a causar un"crash" en el browser sin explicación
alguna. Internet Explorer 4 tenía una mejor implementación de la
recomendación CSS nivel 1, pero, de nuevo, parcial -aunque permitía el uso
de un mayor número de características, cómo aquéllas que exceden a la
tipografía (la parte de las reglas de las CSS pensada para reemplazar al
tradicional uso de tablas en el diseño de "layouts").
La situación, hoy, es muy diferente. Netscape 4 acaparaba, según
estadísticas, el 80% de usuarios, al menos en Estados Unidos. Desde el
lanzamiento de Internet Explorer 5 -que tuvo problemas al principio, luego
solucionados mayormente con la versión 5.5-, esta situación cambió
radicalmente y hoy es éste el navegador más usado.
No obstante no incorporaba el soporte completo de las CSS nivel 1. Habría
que esperar a las recientes versiones 6, para esto, e incluso para un soporte
parcial de las CSS nivel 2.Otros navegadores, como Opera (el tercer
navegador más usado), cuya última y también reciente versión es la 6,
incluye el mismo soporte.
A diferencia de entonces, hoy, CSS ya no es una novedad, pero ahora ya no
hay pretextos para no usarla. Y es posible utilizar ciertas posibilidades más
amplias de las CSS, como el control de otras características gráficas tales
como imágenes y colores de fondo, márgenes exactos y bordes, para evitar
el trabajoso y a veces poco gratificante diseño de tablas complejas para un
"layout", que incluye frecuentemente tablas anidadas y complicados
algoritmos de combinación de celdas (me refiero a la forma en la que los
navegadores resuelven esto para su graficación), características que hacen
al archivo muy pesado para descargar, porque inundan el código con la
extensa serie de etiquetas requeridas. Y también, hoy, la "guerra de los
navegadores" ha terminado, y la W3C y los estándares empiezan a liderar el
IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN
SISTEMAS COMPUTACIONALES E INFORMATICA
INGENIERIA EN SISTEMAS COMPUTACIONALES Página 31
camino, por lo que ya no hay tantas trabas para un uso más extendido,
aunque medido, de las CSS.
En vista de esta breve recapitulación, entonces, podríamos decir que los
beneficios de usar CSS son dobles. Por un lado, evitamos hacer a los
archivos demasiado pesados (excluyendo el largo código requerido para las
tablas anidadas y el añadido de características gráficas), y definimos el
"estilo visual" de un sitio entero sin necesidad de hacerlo etiqueta por
etiqueta, para cada una de las páginas. Por otro, trabajamos
con estándares, y separamos hasta cierto punto la estructura (vale decir, el
código) de la presentación, logrando una manera más nítida de trabajar, y lo
que es más: en un sencillo documento CSS, definimos lo que yo llamaría una
"plantilla gráfica" para todo un sitio. Vale decir, que cualquier cambio hecho a
un estilo CSS, se reflejará en todos los elementos que sean referidos a éste,
automáticamente,
con sólo editar un sencillo documento CSS.
Este tutorial se centra en el diseño de un documento CSS pensado para un
sitio web entero, y sobre todo con el uso medido de las características de
CSS nivel 1, aunque recomendando un uso medido de tablas para el
"esqueleto" del "layout" de las páginas (no obstante, el tutorial no cubre este
aspecto; sólo el de creación, sintaxis y edición de un documento CSS
externo enlazado a los documentos HTML). Esto implica, por una
parte, un "target" de navegador que no sea exclusivo de la "última
generación" (la cual comprende: IE 5, 5.5, 6, Netscape 6, y Opera 6). Por lo
tanto, se intenta una correcta visualización de la página también en Internet
Explorer 4. Es posible que Netscape 4 muestre la página más o menos
correctamente, pero esto no debe preocuparnos ya que es un navegador
que no soporta estándares.
IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN
SISTEMAS COMPUTACIONALES E INFORMATICA
INGENIERIA EN SISTEMAS COMPUTACIONALES Página 32
XAMPP
es un servidor independiente de plataforma, software libre, que consiste
principalmente en la base de datos MySQL, el servidor web Apache y los
intérpretes para lenguajes de script: PHP y Perl. El nombre proviene del
acrónimo de X (para cualquiera de los diferentes sistemas
operativos), Apache, MySQL, PHP, Perl.
El programa está liberado bajo la licencia GNU y actúa como un servidor web
libre, fácil de usar y capaz de interpretar páginas dinámicas. Actualmente
XAMPP está disponible para Microsoft
Windows, GNU/Linux, Solaris y MacOS X.
Características y requisitos
XAMPP solamente requiere descargar y ejecutar un archivo zip, tar , exe o
fkl, con unas pequeñas configuraciones en alguno de sus componentes que
el servidor Web necesitará. XAMPP se actualiza regularmente para
incorporar las últimas versiones de Apache/MySQL/PHP y Perl. También
incluye otros módulos como OpenSSL y phpMyAdmin. Para instalar XAMPP
se requiere solamente una pequeña fracción del tiempo necesario para
descargar y configurar los programas por separado. Puede encontrarse tanto
en versión completa, así como en una versión más ligera que es portátil.
Oficialmente, los diseñadores de XAMPP sólo pretendían su uso como una
herramienta de desarrollo, para permitir a los diseñadores de sitios webs y
programadores testear su trabajo en sus propios ordenadores sin ningún
acceso a Internet. En la práctica, sin embargo, XAMPP es utilizado
actualmente como servidor de sitios Web, ya que, con algunas
modificaciones, es generalmente lo suficientemente seguro para serlo. Con
IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN
SISTEMAS COMPUTACIONALES E INFORMATICA
INGENIERIA EN SISTEMAS COMPUTACIONALES Página 33
el paquete se incluye una herramienta especial para proteger fácilmente las
partes más importantes.
Dobe Flash Player
Adobe Flash Player es una aplicación en forma de reproductor
multimedia creado inicialmente por Macromedia y actualmente distribuido por
Adobé. Permite reproducir archivos SWF que pueden ser creados con la
herramienta de autoría Adobe Flash, con Adobe Flex o con otras
herramientas de Adobe y de terceros. Estos archivos se reproducen en un
entorno determinado. En un sistema operativo tiene el formato de aplicación
del sistema, mientras que si el entorno es un navegador, su formato es el de
un Plug-in u objeto ActiveX.
Adobe Flash, o simplemente Flash, se refieren tanto al programa de creación
de animaciones como al reproductor. Estrictamente hablando, Adobe Flash
es el entorno de creación y Adobe Flash Player el reproductor o máquina
virtual. Sin embargo, en lenguaje coloquial, se usa el término Flash para
referirse al entorno, al reproductor e, incluso, a los archivos generados.
Java script
Es un lenguaje de programación interpretado es decir que no requiere
compilación utilizado principalmente en páginas web con una sintaxis
semejante ala del lenguaje java y el lenguaje c. al igual que java.
Java script es un lenguaje orientado a objeto propiamente dicho ya que
dispone de herencia si bien este se realiza siguiendo el paradigma de
programación basada en prototipos ya que las nuevas clases se generan
clonando las clases de base (prototipos) y extendiendo su funcionalidad.
Todos los navegadores modernos interpretan el código java script integrando
dentro de las páginas web. Para interactuar con una página web se provee al
lenguaje java script de una implementación del DOM.el lenguaje fue
IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN
SISTEMAS COMPUTACIONALES E INFORMATICA
INGENIERIA EN SISTEMAS COMPUTACIONALES Página 34
inventado por brendan eich en la empresa Netscape comunications que es
la que desarrollo los primeros navegadores web comerciales.aparecion por
primera vez en el producto Netscape llamada Netscape navigator
2.0.tradicionalmente se venía utilizando en páginas web HTML para realizar
tareas y operaciones en el marco de la aplicación únicamente cliente, sin
acceso a funciones del servidor.java Script se ejecuta en el agente de
usuario al mismo tiempo que las sentencias van descargándose junto con el
código html.los autores inicialmente lo llamaron mocha y más tarde liveScript
pero fue rebautizado como java Script en un anuncio en un anuncio
conjunto entre sun microsystems y Netscape el 4 de diciembre de 1995.En
1997 los autores propusieron java script para que fuera adoptado como
estándar de la european computer manufactures association ecma que a
pesar de su nombre no es europeo como un estándar iso. Jscript de
Netscape pero con ciertas diferencias en el modelo de objeto del navegador
que hacen a ambas versiones con frecuencia incompatibles. Para evitar
estas incompatibilidades, el World wide web consortium diseño el estándar
document object model (DOM o modelo de objeto del documento en
castellano) que incorporan konqueror, las versiones 6 de internet Explorer y
Netscape navigator opera versión 7 y Mozilla desde su primera versión.
XML
Siglas en inglés de eXtensible Markup Language ('lenguaje de
marcas extensible'), es un lenguaje de marcas desarrollado por el World
Wide Web Consortium (W3C) utilizado para almacenar datos en forma
legible. Deriva del lenguaje SGML y permite definir la gramática de lenguajes
específicos (de la misma manera que HTML es a su vez un lenguaje definido
por SGML) para estructurar documentos grandes. A diferencia de otros
lenguajes, XML da soporte a bases de datos, siendo útil cuando varias
aplicaciones se deben comunicar entre sí o integrar información. (Bases de
datos Silberschatz).
IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN
SISTEMAS COMPUTACIONALES E INFORMATICA
INGENIERIA EN SISTEMAS COMPUTACIONALES Página 35
XML no ha nacido sólo para su aplicación para Internet, sino que se propone
como un estándar para el intercambio de información estructurada entre
diferentes plataformas. Se puede usar en bases de datos, editores de texto,
hojas de cálculo y casi cualquier cosa imaginable.
XML es una tecnología sencilla que tiene a su alrededor otras que la
complementan y la hacen mucho más grande y con unas posibilidades
mucho mayores. Tiene un papel muy importante en la actualidad ya que
permite la compatibilidad entre sistemas para compartir la información de una
manera segura, fiable y fácil.
Ventajas de XML
 Es extensible: Después de diseñado y puesto en producción, es posible
extender XML con la adición de nuevas etiquetas, de modo que se pueda
continuar utilizando sin complicación alguna.
 El analizador es un componente estándar, no es necesario crear un
analizador específico para cada versión de lenguaje XML. Esto posibilita
el empleo de cualquiera de los analizadores disponibles. De esta manera
se evitan bugs y se acelera el desarrollo de aplicaciones.
 Si un tercero decide usar un documento creado en XML, es sencillo
entender su estructura y procesarla. Mejora la compatibilidad entre
aplicaciones. Podemos comunicar aplicaciones de distintas plataformas,
sin que importe el origen de los datos, es decir, podríamos tener una
aplicación en Linux con una base de datos Postgres y comunicarla con
otra aplicación en Windows y Base de Datos MS-SQL Server.
 Transformamos datos en información, pues se le añade un significado
concreto y los asociamos a un contexto, con lo cual tenemos flexibilidad
para estructurar documentos.
IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN
SISTEMAS COMPUTACIONALES E INFORMATICA
INGENIERIA EN SISTEMAS COMPUTACIONALES Página 36
Secure Hash Algorithm
La familia SHA (Secure Hash Algorithm, Algoritmo de Hash Seguro) es un
sistema de funciones hash criptográficas relacionadas de la Agencia de
Seguridad Nacional de los Estados Unidos y publicadas por el National
Institute of Standards and Technology (NIST). El primer miembro de la familia
fue publicado en 1993 es oficialmente llamado SHA. Sin embargo, hoy día,
no oficialmente se le llama SHA-0 para evitar confusiones con sus sucesores.
Dos años más tarde el primer sucesor de SHA fue publicado con el nombre
de SHA-1. Existen cuatro variantes más que se han publicado desde
entonces cuyas diferencias se basan en un diseño algo modificado y rangos
de salida incrementados: SHA-224, SHA-256, SHA-384, y SHA-
512 (llamándose SHA-2a todos ellos).
En 1998, un ataque a SHA-0 fue encontrado pero no fue reconocido para
SHA-1, se desconoce si fue la NSA quien lo descubrió pero aumentó la
seguridad del SHA-1.
SHA-256 ha sido examinado muy de cerca por la comunidad criptográfica
pública, y no se ha encontrado ningún ataque efectivo. No obstante, en el
año 2004, un número de ataques significativos fueron divulgados sobre
funciones criptográficas de hash con una estructura similar a SHA-1; lo que
ha planteado dudas sobre la seguridad a largo plazo de SHA-1.
SHA-0 y SHA-1 producen una salida resumen de 160 bits (20 bytes) de un
mensaje que puede tener un tamaño máximo de 264
bits, y se basa en
principios similares a los usados por el profesor Ronald L. Rivest del MIT en
el diseño de los algoritmos de resumen de mensaje MD4 y MD5.
La codificación hash vacía para SHA-1 corresponde a:
SHA 256 ("") = da39a3ee5e6b4b0d3255bfef95601890afd80709
IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN
SISTEMAS COMPUTACIONALES E INFORMATICA
INGENIERIA EN SISTEMAS COMPUTACIONALES Página 37
HTML5
HTML5 (HyperText Markup Language, versión 5) es la quinta revisión
importante del lenguaje básico de la World Wide Web, HTML. HTML5
especifica dos variantes de sintaxis para HTML: un «clásico» HTML
(text/html), la variante conocida como HTML5 y una variante XHTML
conocida como sintaxis XHTML5 que deberá ser servida como XML). Esta es
la primera vez que HTML y XHTML se han desarrollado en paralelo.
Todavía se encuentra en modo experimental, lo cual indica la misma W3C;
aunque ya es usado por múltiples desarrolladores web por sus avances,
mejoras y ventajas.
Al no ser reconocido en viejas versiones de navegadores por sus nuevas
etiquetas, se le recomienda al usuario común actualizar a la versión más
nueva, para poder disfrutar de todo el potencial que provee HTML5.
El desarrollo de este lenguaje de marcado es regulado por el
Consorcio W3C.
HTML5 establece una serie de nuevos elementos y atributos que reflejan el
uso típico de los sitios web modernos. Algunos de ellos son técnicamente
similares a las etiquetas <div> y<span>, pero tienen un significado
semántico, como por ejemplo <nav> (bloque de navegación del sitio web)
y <footer>. Otros elementos proporcionan nuevas funcionalidades a través
de una interfaz estandarizada, como los elementos <audio> y <video>.
Mejora el elemento <canvas>, capaz de renderizar elementos 3D en los
navegadores más importantes (Mozilla, Chrome, Opera, Safari e IE).
Algunos elementos de HTML 4.01 han quedado obsoletos, incluyendo
elementos puramente de presentación, como <font> y <center>, cuyos
efectos son manejados por Hojas de estilo en cascada. También hay un
IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN
SISTEMAS COMPUTACIONALES E INFORMATICA
INGENIERIA EN SISTEMAS COMPUTACIONALES Página 38
renovado énfasis en la importancia del scripting DOM para el
comportamiento de la web. 2.0
 Incorpora etiquetas (canvas 2D y 3D, audio, video) con codecs para
mostrar los contenidos multimedia. Actualmente hay una lucha entre
imponer codecs libres (WebM + VP8) o privados (H.264/MPEG-4
AVC).
 Etiquetas para manejar grandes conjuntos de datos: Datagrid, Details,
Menu y Command. Permiten generar tablas dinámicas que pueden
filtrar, ordenar y ocultar contenido en cliente.
 Mejoras en los formularios. Nuevos tipos de datos (eMail, number, url,
datetime …) y facilidades para validar el contenido sin Javascript.
 Visores: MathML (fórmulas matemáticas) y SVG (gráficos vectoriales).
En general se deja abierto a poder interpretar otros lenguajes XML.
 Drag & Drop. Nueva funcionalidad para arrastrar objetos como
imágenes.
JQuery
jQuery es una biblioteca de JavaScript, creada inicialmente por John Resig,
que permite simplificar la manera de interactuar con los documentos HTML,
manipular el árbol DOM, manejar eventos, desarrollar animaciones y agregar
interacción con la técnica AJAX a páginas web. Fue presentada el 14 de
enero de 2006 en el BarCamp NYC. JQuery es la biblioteca de JavaScript
más utilizada.
jquery es software libre y de código abierto, posee un doble licenciamiento
bajo la licencia mit y la licencia pública general de GNU v2, permitiendo su
uso en proyectos libres y privativos. jquery, al igual que otras bibliotecas,
ofrece una serie de funcionalidades basadas en JavaScript que de otra
manera requerirían de mucho más código, es decir, con las funciones
IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN
SISTEMAS COMPUTACIONALES E INFORMATICA
INGENIERIA EN SISTEMAS COMPUTACIONALES Página 39
propias de esta biblioteca se logran grandes resultados en menos tiempo y
espacio.
Las empresas Microsoft y Nokia anunciaron que incluirán la biblioteca en sus
plataformas. Microsoft la añadirá en su IDE Visual Studio y la usará junto con
los frameworks ASP.NET AJAX y ASP.NET MVC, mientras que Nokia los
integrará con su plataforma Web Run-Time.
Características
 Selección de elementos DOM.
 Interactividad y modificaciones del árbol DOM, incluyendo soporte
para CSS 1-3 y un plugin básico de XPath.
 Eventos.
 Manipulación de la hoja de estilos CSS.
 Efectos y animaciones.
 Animaciones personalizadas.
 AJAX.
 Soporta extensiones.
 Utilidades varias como obtener información del navegador, operar con
objetos y vectores, funciones para rutinas comunes, etc.
 Compatible con los navegadores Mozilla Firefox 2.0+, Internet
Explorer 6+, Safari 3+, Opera 10.6+ y Google Chrome 8+.
Adobe Dreamweaver
Es una aplicación en forma de estudio (basada en la forma de estudio de
Adobe Flash) que está destinada a la construcción, diseño y edición de sitios,
videos y aplicaciones Web basados en estándares. Creado inicialmente por
Macromedia (actualmente producido por Adobe Systems) es el programa
más utilizado en el sector del diseño y la programación web, por sus
IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN
SISTEMAS COMPUTACIONALES E INFORMATICA
INGENIERIA EN SISTEMAS COMPUTACIONALES Página 40
funcionalidades, su integración con otras herramientas como Adobe Flash y,
recientemente, por su soporte de los estándares del World Wide Web
Consortium.
Sus principales competidores son Microsoft Expresión Web y BlueGriffon
(que es de código abierto) y tiene soporte tanto para edición de imágenes
como para animación a través de su integración con otras. Hasta la versión
MX, fue duramente criticado por su escaso soporte de los estándares de la
web, ya que el código que generaba era con frecuencia sólo válido para
Internet Explorer y no validaba como HTML estándar. Esto se ha ido
corrigiendo en las versiones recientes.
Se vende como parte de la suite Adobe Creative Suite. A partir de la compra
de Macromedia por parte de Adobe. Las letras CS significan Creative Suite
La gran ventaja de este editor sobre otros es su gran poder de ampliación y
personalización del mismo, puesto que en este programa, sus rutinas (como
la de insertar un hipervínculo, una imagen o añadir un comportamiento) están
hechas en Javascript-C, lo que le ofrece una gran flexibilidad en estas
materias. Esto hace que los archivos del programa no sean instrucciones de
C++ sino rutinas de Javascript que hace que sea un programa muy fluido,
que todo ello hace, que programadores y editores web hagan extensiones
para su programa y lo ponga a su gusto.
Las versiones originales de la aplicación se utilizaban como simples editores
WYSIWYG. Sin embargo, versiones más recientes soportan otras
tecnologías web como CSS, JavaScript y algunos frameworks del lado
servidor.
Dreamweaver ha tenido un gran éxito desde finales de los años 1990 y
actualmente mantiene el 90% del mercado de editores HTML. Esta
aplicación está disponible tanto para la plataforma MAC como para Windows,
IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN
SISTEMAS COMPUTACIONALES E INFORMATICA
INGENIERIA EN SISTEMAS COMPUTACIONALES Página 41
aunque también se puede ejecutar en plataformas basadas en UNIX
utilizando programas que implementan las API's de Windows, tipo Wine.
Como editor WYSIWYG que es, Dreamweaver permite ocultar el código
HTML de cara al usuario, haciendo posible que alguien no entendido pueda
crear páginas y sitios web fácilmente sin necesidad de escribir código.
Algunos desarrolladores web criticaban esta propuesta ya que crean páginas
HTML más largas de lo que solían ser al incluir mucho código inútil, lo cual va
en detrimento de la ejecución de las páginas en el navegador web. Esto
puede ser especialmente cierto ya que la aplicación facilita en exceso el
diseño de las páginas mediante tablas. Además, algunos desarrolladores
web han criticado Dreamweaver en el pasado porque creaba código que no
cumplía con los estándares del consorcio Web (W3C).
No obstante, Adobe ha aumentado el soporte CSS y otras maneras de
diseñar páginas sin tablas en versiones posteriores de la aplicación,
haciendo que se reduzca el exceso de código.
Dreamweaver permite al usuario utilizar la mayoría de los navegadores Web
instalados en su ordenador para pre visualizar las páginas web. También
dispone de herramientas de administración de sitios dirigidas a principiantes
como, por ejemplo, la habilidad de encontrar y reemplazar líneas de texto y
código por cualquier tipo de parámetro especificado, hasta el sitio web
completo. El panel de comportamientos también permite crear JavaScript
básico sin conocimientos de código.
Con la llegada de la versión MX, Macromedia incorporó herramientas de
creación de contenido dinámico en Dreamweaver. En lo fundamental de las
herramientas HTML WYSIWYG, también permite la conexión a Bases de
Datos como MySQL y Microsoft Access, para filtrar y mostrar el contenido
utilizando tecnología de script como, por ejemplo, ASP, ASP.NET,
IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN
SISTEMAS COMPUTACIONALES E INFORMATICA
INGENIERIA EN SISTEMAS COMPUTACIONALES Página 42
ColdFusion, JSP (Java Server Pages) y PHP sin necesidad de tener
experiencia previa en programación.
Un aspecto de alta consideración de Dreamweaver es su funcionalidad con
extensiones. Es decir, permite el uso de "Extensiones". Las extensiones, tal y
como se conocen, son pequeños programas, que cualquier desarrollador
web puede escribir (normalmente en HTML y Javascript) y que cualquiera
puede descargar e instalar, ofreciendo así funcionalidades añadidas a la
aplicación. Dreamweaver goza del apoyo de una gran comunidad de
desarrolladores de extensiones que hacen posible la disponibilidad de
extensiones gratuitas y de pago para la mayoría de las tareas de desarrollo
web, que van desde simple efectos rollover hasta completas cartas de
compra.
También podría decirse que, para un diseño más rápido y a la vez fácil,
podría complementarse con Fireworks en donde se podría diseñar un menú
u otras creaciones de imágenes (gif web, gif websnap, gif adaptable, jpeg
calidad superior, jpeg archivo más pequeño, gif animado websnap) para un
sitio web y después exportar la imagen creada y así utilizarla como una sola
en donde ya llevará los vínculos para dicho sitio.
CSS · Bootstrap
Bootstrap es una colección de herramientas de software libre para la
creación de sitios y aplicaciones web. Es el proyecto más popular en GitHub
y es usado por la NASA y la MSNBC junto a demás organizaciones.
El origen de Bootstrap fue desarrollado por Mark Otto y Jacbod Thornton de
Twitter, como un marco de trabajo (framework) para fomentar la consistencia
a través de herramientas internas. Antes de Bootstrap, se usaban varias
librerías para el desarrollo de interfaces de usuario, las cuales guiaban a
inconsistencias y a una carga de trabajo alta en su mantenimiento. Según el
desarrollador de Twitter Mark Otto, frente a esos desafíos: "un pequeño
IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN
SISTEMAS COMPUTACIONALES E INFORMATICA
INGENIERIA EN SISTEMAS COMPUTACIONALES Página 43
grupo de desarrolladores y yo nos reunimos a diseñar y construir una nueva
herramienta interna y vimos una oportunidad de hacer más. A través de ese
proceso, nos vimos construir algo mucho más sustancial que otra
herramienta interna más. Meses después, terminamos con una primera
versión de Bootstrap como una manera de documentar y compartir bienes y
patrones de diseño comunes dentro de la compañía.
El primer desarrollo en condiciones reales ocurrió durante la primera
"Semana de Hackeo" (Hackweek) de Twitter.Mark Otto mostró a algunos
colegas como acelerar el desarrollo de sus proyectos con la ayuda de la
herramienta de trabajo. Como resultado, decenas de temas se han
introducido en el marco de trabajo.
En agosto del 2011, Twitter liberó a Bootstrap como código abierto. En
febrero del 2012, se convirtió en el proyecto de desarrollo más popular de
GitHub.
Las Características Bootstrap tiene un soporte relativamente incompleto
para HTML5 y CSS 3, pero es compatible con la mayoría de los navegadores
web. La información básica de compatibilidad de sitios web o aplicaciones
está disponible para todos los dispositivos y navegadores. Existe un
concepto de compatibilidad parcial que hace disponible la información básica
de un sitio web para todos los dispositivos y navegadores. Por ejemplo, las
propiedades introducidas en CSS3 para las esquinas redondeadas,
gradientes y sombras son usadas por Bootstrap a pesar de la falta de
soporte de navegadores antiguos. Esto extiende la funcionalidad de la
herramienta, pero no es requerida para su uso.
Desde la versión 2.0 también soporta diseños sensibles. Esto significa que el
diseño gráfico de la página se ajusta dinámicamente, tomando en cuenta las
características del dispositivo usado (Computadoras, tabletas, teléfonos
móviles).
IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN
SISTEMAS COMPUTACIONALES E INFORMATICA
INGENIERIA EN SISTEMAS COMPUTACIONALES Página 44
Bootstrap es de código abierto y está disponible en GitHub. Los
desarrolladores están motivados a participar en el proyecto y a hacer sus
propias contribuciones a la plataforma.
La Estructura y Función de Bootstrap es modular y consiste esencialmente
en una serie de hojas de estilo LESS que implementan la variedad de
componentes de la herramienta. Una hoja de estilo llamada bootstrap.less
incluye los componentes de las hojas de estilo. Los desarrolladores pueden
adaptar el mismo archivo de Bootstrap, seleccionando los componentes que
deseen usar en su proyecto.
Los ajustes son posibles en una medida limitada a través de una hoja de
estilo de configuración central. Los cambios más profundos son posibles
mediante las declaraciones LESS.
El uso del lenguaje de hojas de estilo LESS permite el uso de variables,
funciones y operadores, selectores anidados, así como clases mixin.
Desde la versión 2.0, la configuración de Bootstrap también tiene una opción
especial de "Personalizar" en la documentación. Por otra parte, los
desarrolladores eligen en un formulario los componentes y ajustes deseados,
y de ser necesario, los valores de varias opciones a sus necesidades. El
paquete consecuentemente generado ya incluye la hoja de estilo CSS pre-
compilada.
Sistema de cuadrilla y diseño sensible
Bootstrap viene con una disposición de cuadrilla estándar de 940 píxeles de
ancho. Alternativamente, el desarrollador puede usar un diseño de ancho-
variable. Para ambos casos, la herramienta tiene cuatro variaciones para
hacer uso de distintas resoluciones y tipos de dispositivos: teléfonos móviles,
formato de retrato y paisaje, tabletas y computadoras con baja y alta
IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN
SISTEMAS COMPUTACIONALES E INFORMATICA
INGENIERIA EN SISTEMAS COMPUTACIONALES Página 45
resolución (pantalla ancha). Esto ajusta el ancho de las columnas
automáticamente.
Entendiendo la hoja de estilo CSS
Bootstrap proporciona un conjunto de hojas de estilo que proveen
definiciones básicas de estilo para todos los componentes de HTML. Esto
otorga una uniformidad al navegador y al sistema de anchura, da una
apariencia moderna para el formateo de los elementos de texto, tablas y
formularios.
Componentes re-usables
En adición a los elementos regulares de HTML, Bootstrap contiene otra
interfaz de elementos comúnmente usados. Ésta incluye botones con
características avanzadas (e.g grupo de botones o botones con opción de
menú desplegable, listas de navegación, etiquetas horizontales y verticales,
ruta de navegación, paginación, etc.), etiquetas, capacidades avanzadas de
miniaturas tipográficas, formatos para mensajes de alerta y barras de
progreso.
Plug-ins de JavaScript
Los componentes de JavaScript para Bootstrap están basados en la
librería jQuery de JavaScript. Los plug-ins se encuentran en la herramienta
de plug-in de jQuery. Proveen elementos adicionales de interfaz de usuario
como diálogos, tooltips y carruseles. También extienden la funcionalidad de
algunos elementos de interfaz existentes, incluyendo por ejemplo una función
de auto-completar para campos de entrada (input). La versión 2.0 soporta los
siguientes plug-ins de JavaScript: Modal, Dropdown, Scrollspy, Tab, Tooltip,
Popover, Alert, Button, Collapse, Carousel y Typeahead.
IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN
SISTEMAS COMPUTACIONALES E INFORMATICA
INGENIERIA EN SISTEMAS COMPUTACIONALES Página 46
Una implementación de Twitter Bootstrap usando el Dojo Toolkit también
está disponible. Es llamada Dojo Bootstrap y es un puerto de los plug-ins de
Twitter Bootstrap. Usa el código Dojo al 100% y tiene soporte para AMD
(Asynchronous Module Definition).
Diseñador de base de datos
(batini, ceri, navathe, & shamkant 1995).un buen diseño de base de datos
garantiza su fácil mantenimiento. Los datos se almacenan en tablas y daca
tabla contiene datos acerca del tema por ejemplo clientes, por tanto cuando
se actualiza un parte de los datos concreta como una dirección se hace en
un solo lugar pero ese cambio aparece automáticamente en toda la base de
datos.
El primer paso para diseñar una base de datos es determinar su finalidad y
como se va a utilizar.
o Determinar la finalidad de la base de datos.
o Determinar los campos necesarios en la base de datos.
o Determinar a qué tabla pertenece cada campo
o Identificar el campo o los campos con valores únicos en daca registro.
o Determinar las relaciones entre las tablas.
o Perfeccionar el diseño.
o Utilidad en una base de datos
o Ordenar datos
o Búsquedas
o Cálculos y sumarios.
Aplicaciones de los lenguajes de programación.
API
Una API (interfaz de programación de aplicaciones) es un conjunto de
funciones que permiten al programador acceder a servicios de una aplicación
a través del uso de un lenguaje de programación.
IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN
SISTEMAS COMPUTACIONALES E INFORMATICA
INGENIERIA EN SISTEMAS COMPUTACIONALES Página 47
Una API ofrece al programador un cierto nivel de abstracción que en
mascara la complejidad de acceso a un sistema o aplicación proponiéndole
un conjunto de funciones de las cuales solo se conocen los parámetros y
los valores devueltos asimismo por analogía con un automóvil el conductor
no necesita conocer la mecánica del motor para conducir el automóvil.
El conductor solo tiene acceso a la interfaz compuesta por el volante los
pedales (acelerador, embargue, freno) los controles (indicadores luces
delanteras cajas de cambios) interruptores (luces de emergencia, luces
antiniebla, bocina, etc.).en cierta forma es simular a la interfaz presentada el
usuario.
Características
Una interfaz de programación representa a una interfaz de comunicación
entre componentes de software.se trata del conjunto de llamadas a ciertas
bibliotecas que ofrecen acceso a ciertos servicios desde los procesos y
representa un método para conseguir abstracción en la programación
generalmente (aunque no necesariamente) entre los niveles o capas de
inferiores y los superiores de software. Uno de los principales propósito de
una API consiste en proporcionar un conjunto de funciones de uso
general por ejemplo para dibujar ventanas o iconos en la pantalla. De esta
forma los programadores se benefician de las ventajas de la API haciendo
uso de su funcionalidad evitándose el trabajo de programar todo desde el
principio. Las APIS asimismo son abstractas; el software que proporciona
una cierta API generalmente es llamado la implementación de esa API.
Framework
La palabra inglesa "framework" (marco de trabajo) define, en términos
generales, un conjunto estandarizado de conceptos, prácticas y criterios para
enfocar un tipo de problemática particular que sirve como referencia, para
enfrentar y resolver nuevos problemas de índole similar.
IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN
SISTEMAS COMPUTACIONALES E INFORMATICA
INGENIERIA EN SISTEMAS COMPUTACIONALES Página 48
En el desarrollo de software, un framework o infraestructura digital, es una
estructura conceptual y tecnológica de soporte definido, normalmente con
artefactos o módulos de software concretos, que puede servir de base para
la organización y desarrollo de software. Típicamente, puede incluir soporte
de programas, bibliotecas, y un lenguaje interpretado, entre otras
herramientas, para así ayudar a desarrollar y unir los diferentes componentes
de un proyecto.
Representa una arquitectura de software que modela las relaciones
generales de las entidades del dominio, y provee una estructura y una
especial metodología de trabajo, la cual extiende o utiliza las aplicaciones del
dominio.
Siendo muy simple, es un esquema (un esqueleto, un patrón) para el
desarrollo y/o la implementación de una aplicación. Sí, es una definición muy
genérica, pero también puede serlo un framework: sin ir más lejos, el
paradigma MVC (Model-View-Controller) dice poco más que "separa en tu
aplicación la gestión de los datos, las operaciones, y la presentación". En el
otro extremo, otros frameworks pueden llegar al detalle de definir los
nombres de ficheros, su estructura, las convenciones de programación, etc.
Pongamos un ejemplo: una aplicación web que utilice Java como lenguaje de
programación puede implementarse de multitud de formas, mediante servlets
y JSPs. Hay algunas convenciones que es necesario seguir, como usar un
fichero de configuración web.xml, pero el programador sigue sin tener un
patrón claro a seguir para la creación de servlets, clases, JSPs, etc.
En una primera estandarización, la utilización de una arquitectura MVC
aconseja que separemos la lógica de la aplicación (en los servlets) de la
presentación (usando JSPs); en concreto, no sería correcto codificar lógica
de aplicación o accesos a base de datos dentro de los JSP.
IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN
SISTEMAS COMPUTACIONALES E INFORMATICA
INGENIERIA EN SISTEMAS COMPUTACIONALES Página 49
Un paso más allá: utilizando Faces como framework, la estructura de la
aplicación queda todavía más definida: un único servlet (FacesServlet) va a
controlar el flujo de la aplicación; además, el uso de un fichero concreto
(faces-config.xml) permite crear la navegación de la aplicación, definir los
objetos (beans) pasados como parámetros, etc., todo ello sin necesidad de
codificarlo en Java o JSP.
Los frameworks no necesariamente están ligados a un lenguaje concreto,
aunque sea así en muchas ocasiones. En el cada vez más popular Ruby on
Rails, 'Ruby' es el lenguaje de programación y 'Rails' el framework; por otro
lado, Java Server Faces está orientado a desarrollos en Java. Sin embargo,
nada impide definir el mismo framework para lenguajes diferentes: por
ejemplo, existe un framework llamado Biscuit cuyo objetivo es prácticamente
convertirse en un "PHP on Rails". Eso sí, cuanto más detallado es el
framework, más necesidad tendrá de ceñirse a un lenguaje concreto.
También es posible que el framework defina una estructura para una
aplicación completa, o bien sólo se centre en un aspecto de ella. Siguiendo
con los ejemplos, Ruby on Rails ofrece un marco para el desarrollo completo
de una aplicación web, mientras que Java Server Faces está más orientado
a la interfaz de usuario.
Las ventajas tienen utilizar un framework las que se derivan de utilizar un
estándar; entre otras: El programador no necesita plantearse una estructura
global de la aplicación, sino que el framework le proporciona un esqueleto
que hay que "rellenar".
Facilita la colaboración. Cualquiera que haya tenido que "pelearse" con el
código fuente de otro programador (¡o incluso con el propio, pasado algún
tiempo!) sabrá lo difícil que es entenderlo y modificarlo; por tanto, todo lo que
sea definir y estandarizar va a ahorrar tiempo y trabajo a los desarrollos
colaborativos.
IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN
SISTEMAS COMPUTACIONALES E INFORMATICA
INGENIERIA EN SISTEMAS COMPUTACIONALES Página 50
Es más fácil encontrar herramientas (utilidades, librerías) adaptadas al
framework concreto para facilitar el desarrollo. Los frameworks no
necesariamente están ligados a un lenguaje concreto, aunque sea así en
muchas ocasiones. En el cada vez más popular Ruby on Rails, 'Ruby' es el
lenguaje de programación y 'Rails' el framework; por otro lado, Java Server
Faces está orientado a desarrollos en Java. Sin embargo, nada impide definir
el mismo framework para lenguajes diferentes: por ejemplo, existe un
framework llamado Biscuit cuyo objetivo es prácticamente convertirse en un
"PHP on Rails". Eso sí, cuanto más detallado es el framework, más
necesidad tendrá de ceñirse a un lenguaje concreto.
También es posible que el framework defina una estructura para una
aplicación completa, o bien sólo se centre en un aspecto de ella. Siguiendo
con los ejemplos, Ruby on Rails ofrece un marco para el desarrollo
completo de una aplicación web, mientras que Java Server Faces está más
orientado a la interfaz de usuario.
Siendo muy simple, es un esquema (un esqueleto, un patrón) para el
desarrollo y/o la implementación de una aplicación. Sí, es una definición muy
genérica, pero también puede serlo un framework: sin ir más lejos, el
paradigma MVC (Model-View-Controller) dice poco más que "separa en tu
aplicación la gestión de los datos, las operaciones, y la presentación". En el
otro extremo, otros frameworks pueden llegar al detalle de definir los
nombres de ficheros, su estructura, las convenciones de programación, etc.
Pongamos un ejemplo: una aplicación web que utilice Java como lenguaje de
programación puede implementarse de multitud de formas, mediante servlets
y JSPs. Hay algunas convenciones que es necesario seguir, como usar un
fichero de configuración web.xml, pero el programador sigue sin tener un
patrón claro a seguir para la creación de servlets, clases, JSPs, etc.
IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN
SISTEMAS COMPUTACIONALES E INFORMATICA
INGENIERIA EN SISTEMAS COMPUTACIONALES Página 51
En una primera estandarización, la utilización de una arquitectura MVC
aconseja que separemos la lógica de la aplicación (en los servlets) de la
presentación (usando JSPs); en concreto, no sería correcto codificar lógica
de aplicación o accesos a base de datos dentro de los JSP.
Un paso más allá: utilizando Faces como framework, la estructura de la
aplicación queda todavía más definida: un único servlet (FacesServlet) va a
controlar el flujo de la aplicación; además, el uso de un fichero concreto
(faces-config.xml) permite crear la navegación de la aplicación, definir los
objetos (beans) pasados como parámetros, etc., todo ello sin necesidad de
codificarlo en Java o JSP.
PROCEDIMIENTOS Y DESCRIPCION DE LAS ACTIVIDADES
REALIZADAS.
Todo proyecto de ingeniería tiene sus fines ligados a la obtención de un
producto, proceso o servicio que es necesario generar a través de diversas
actividades. Algunas de estas actividades pueden agruparse en fases por
que globalmente contribuye a obtener un producto intermedio necesario para
continuar hacia el producto final y facilitar la gestión del proyecto.
Los sistemas y aplicaciones más basadas en web (webApps) ofrecen un
complejo arreglo de contenido y funcionabilidad a una amplia población de
usuario final. Ingeniería web (IWEB).es el proceso con el que se crea
WebApps de alta calidad. La IWEB no es un clon perfecto de la ingeniería
del software pero toma prestado muchos conceptos y principios
fundamentales de ella. Además el proceso IWEB acentúa actividades técnica
y administrativa similares. Existen sutiles diferencias en la manera como se
dirigen actividades pero el método primordial dicta un enfoque disciplinado
para el desarrollo de un sistema basado en la computadora.
IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN
SISTEMAS COMPUTACIONALES E INFORMATICA
INGENIERIA EN SISTEMAS COMPUTACIONALES Página 52
¿Quién lo hace? Los ingenieros web y los desarrolladores del contenido que
non es técnico crean las webApps.
¿Por qué es importante? Conforme las WebApps se integran cada vez cada
vez más en las estrategias de negocios para pequeñas y grandes empresas
(por ejemplo, en el comercio electrónico) crece en importancia la necesidad
de construir sistemas confiables prácticos y adaptables por tanto es
necesario un enfoque disciplinado en cuanto al desarrollo de webApps
¿Cuáles son los pasos? Al igual que cualquier disciplina de ingeniería, la
IWEB aplica un enfoque genérico que se suaviza mediante estrategia,
tácticas y métodos especializados. El proceso IWEB y se modelan requisitos
y el diseño de la web App. El sistema se construye con tecnologías y
herramientas especializados asociadas con la web. Entonces se entregan a
los usuarios finales y se evalúa mediante criterios tanto técnicos como
empresariales. Dado que la WebApps evoluciona continuamente se debe
establecer mecanismos para el control de configuraciones el aseguramiento
de la calidad y el soporte continúo.
¿Cuál es el producto obtenido? Se producen muchos productos de trabajo
IWeb.el resultado finales es la Web App operativa.
Metodología IWEB
Comunicación con el Cliente: Dentro del proceso IWeb la comunicación
con el cliente se caracteriza por medio de dos grandes tareas: el análisis del
negocio y la formulación. El análisis del negocio define el contexto
empresarial-organizativo para la Web App. Además, se identifican los
participantes, se predicen los potenciales cambios en el ambiente o los
requisitos del negocio, y se define la integración entre la Web App y otras
aplicaciones de negocios, base de datos y funciones. La formulación es una
actividad de recopilación de requisitos que involucra a todos los
participantes. El intento es describir el problema que la Web App habrá de
IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN
SISTEMAS COMPUTACIONALES E INFORMATICA
INGENIERIA EN SISTEMAS COMPUTACIONALES Página 53
resolver (junto con los requisitos básicos para la Web App) con el
aprovechamiento de la mejor información disponible. Además, se intenta
identificar áreas de incertidumbres y donde ocurrirán cambios potenciales.
Planeación: Se crea el plan del proyecto para el incremento de la Web App.
El plan consiste de una definición de tareas y un calendario de plazos
respecto al periodo (usualmente medido en semanas) proyectado para el
desarrollo del incremento de la Web App.
Modelado: Las labores convencionales de análisis y diseño de ingeniería del
software se adaptan al desarrollo de la Web App, se mezclan y luego se
funden en la actividad de modelado IWeb. El intento es desarrollar análisis
“rápidos” y modelos de diseños que definan requisitos y al mismo tiempo
representen una Web App que los satisfará.
Construcción: Las herramientas y la tecnología IWeb se aplican para
construir la Web App que se ha modelado. Una vez que se construye el
incremento de Web App, se dirige una serie de pruebas rápidas para
asegurar que se describan los errores en el diseño (es decir: contenido,
arquitectura, interface, navegación). Pruebas adicionales abordan otras
características Web App.
Despliegue: La Web App se configura para su ambiente operativo, se
entrega a los usuarios finales y luego comienza un periodo de evaluación. La
retroalimentación acerca de la evaluación se presenta al equipo de IWeb y el
incremento se modifica conforme se requiera.
IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN
SISTEMAS COMPUTACIONALES E INFORMATICA
INGENIERIA EN SISTEMAS COMPUTACIONALES Página 54
Atributos De Los Sistemas Y Aplicaciones Web
En la gran mayoría de las WebApps se encuentran los siguientes atributos:
Intensidad de Red: Una Web App reside en una red y debe satisfacer las
necesidades de una variada comunidad de clientes. Una Web App puede
residir en la Internet (y, en consecuencia, permitir una comunicación mundial
abierta). Alternativamente, una aplicación puede colocarse en una Intranet (lo
que implementa la comunicación en una organización) o una Extranet
(comunicación inter-red).
Concurrencia: Un gran número de usuarios pueden tener acceso a la Web
App al mismo tiempo. En muchos casos, los patrones de uso entre los
usuarios finales variaran enormemente.
Carga Impredecible: El número de usuarios de la Web App puede variar en
órdenes de magnitud de día con día. El lunes pueden mostrarse 100
usuarios, el martes pueden usar el sistema 10, 000.
IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN
SISTEMAS COMPUTACIONALES E INFORMATICA
INGENIERIA EN SISTEMAS COMPUTACIONALES Página 55
Desempeño: Si un usuario de Web App debe esperar demasiado (para
ingresar, para procesamiento en el lado del servidor, para formateo y
despliegue en el lado del cliente) puede decidir irse a cualquier otra parte.
Disponibilidad: Aunque la expectativa de una disponibilidad del total es
poco razonable, los usuarios de las WebApps populares con frecuencia
demandan acceso sobre una base de “24/7/365”. Los usuarios en Australia o
Asia pueden demandar acceso durante momentos cuando las tradicionales
aplicaciones de software doméstico en Norteamérica pueden estar fuera de
línea por mantenimiento.
Sensibilidad del Contenido: La calidad y naturaleza estética del contenido
sigue siendo un importante determinante de la calidad de una Web App.
Evolución Continua: A diferencia del software de aplicación convencional,
que evoluciona a lo largo de una serie de planeadas liberaciones espaciadas
cronológicamente, las aplicaciones Web evolucionan de manera continua. No
es raro que algunas Web App (específicamente, su contenido) se actualicen
sobre una agenda minuto a minuto, o que el contenido sea calculado de
manera independiente para cada solicitud.
Inmediatez: Aunque la inmediatez – la apremiante necesidad de poner un
software en el mercado rápidamente – es una característica de muchos
dominios de aplicación, las WebApps con frecuencia muestran un tiempo
para comercializar que puede ser cuestión de unos cuantos días o semanas.
Los ingenieros Web deben aplicar métodos de planeación, análisis, diseño,
implementación y puesta a prueba que han sido adaptados a los apretados
tiempos requeridos para el desarrollo de WebApps.
Seguridad: Puesto que las WebApps están disponibles mediante el acceso
a la red, es difícil, si no imposible, limitar la población de usuarios finales que
pueden tener acceso a la aplicación. Con la finalidad de proteger el
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf
Implantacion de plataforma web para la academia de isc e inf

Más contenido relacionado

Similar a Implantacion de plataforma web para la academia de isc e inf

Entrega sistema operativo
Entrega sistema operativoEntrega sistema operativo
Entrega sistema operativoelyzanabria
 
Entrega monografias pdf
Entrega monografias pdfEntrega monografias pdf
Entrega monografias pdfelyzanabria
 
JORGE WILLIAMS RODRIGUEZ MEZA - SOFTWARE PROCESOS ACADEMICOS Y ADMINISTRATIVO...
JORGE WILLIAMS RODRIGUEZ MEZA - SOFTWARE PROCESOS ACADEMICOS Y ADMINISTRATIVO...JORGE WILLIAMS RODRIGUEZ MEZA - SOFTWARE PROCESOS ACADEMICOS Y ADMINISTRATIVO...
JORGE WILLIAMS RODRIGUEZ MEZA - SOFTWARE PROCESOS ACADEMICOS Y ADMINISTRATIVO...ssuser0fe8b41
 
Proyecto ingenieria de software
Proyecto ingenieria de softwareProyecto ingenieria de software
Proyecto ingenieria de softwareHenry Trujillo
 
Proyecto portal web BATEMS
Proyecto portal web BATEMSProyecto portal web BATEMS
Proyecto portal web BATEMSCarlos Hdez
 
Guía de introducción a la Web 2.0: aspectos de privacidad y seguridad en las ...
Guía de introducción a la Web 2.0: aspectos de privacidad y seguridad en las ...Guía de introducción a la Web 2.0: aspectos de privacidad y seguridad en las ...
Guía de introducción a la Web 2.0: aspectos de privacidad y seguridad en las ...Enrique Ramos Ortiz
 
PROYECTO CONTROL DE ASISTENCIA código QRDAT 3.1 WINDOWS
PROYECTO CONTROL DE ASISTENCIA código QRDAT 3.1 WINDOWSPROYECTO CONTROL DE ASISTENCIA código QRDAT 3.1 WINDOWS
PROYECTO CONTROL DE ASISTENCIA código QRDAT 3.1 WINDOWSJhon Morales Ponce
 
Sistema de Información
Sistema de InformaciónSistema de Información
Sistema de Informaciónkamikaze6969
 
Manual usuario v3 de Arteco Fincas
Manual usuario v3 de Arteco FincasManual usuario v3 de Arteco Fincas
Manual usuario v3 de Arteco Fincasramonargo
 
Follower memoria final Universidad Tecnologica de Hermosillo
Follower memoria final Universidad Tecnologica de HermosilloFollower memoria final Universidad Tecnologica de Hermosillo
Follower memoria final Universidad Tecnologica de HermosilloJoaquin Peralta Carvajal
 
Norma. ntc iso-iec 27001
Norma. ntc iso-iec 27001Norma. ntc iso-iec 27001
Norma. ntc iso-iec 27001U.N.S.C
 
Web 2.0 presentación con videos
Web 2.0 presentación con videosWeb 2.0 presentación con videos
Web 2.0 presentación con videosmonicacorena
 
La red internet
La red internetLa red internet
La red internetDecadel
 
“CREACIÓN DE UN SITIO WEB PARA GESTIONAR LA INFORMACIÓN DEL DEPARTAMENTO DE A...
“CREACIÓN DE UN SITIO WEB PARA GESTIONAR LA INFORMACIÓN DEL DEPARTAMENTO DE A...“CREACIÓN DE UN SITIO WEB PARA GESTIONAR LA INFORMACIÓN DEL DEPARTAMENTO DE A...
“CREACIÓN DE UN SITIO WEB PARA GESTIONAR LA INFORMACIÓN DEL DEPARTAMENTO DE A...Jhonatan Pacheco
 
Plan de trabajo
Plan de trabajoPlan de trabajo
Plan de trabajoCDe WL
 

Similar a Implantacion de plataforma web para la academia de isc e inf (20)

Proyecto
ProyectoProyecto
Proyecto
 
Entrega sistema operativo
Entrega sistema operativoEntrega sistema operativo
Entrega sistema operativo
 
Entrega monografias pdf
Entrega monografias pdfEntrega monografias pdf
Entrega monografias pdf
 
Temta4anexos ide13115032
Temta4anexos ide13115032Temta4anexos ide13115032
Temta4anexos ide13115032
 
JORGE WILLIAMS RODRIGUEZ MEZA - SOFTWARE PROCESOS ACADEMICOS Y ADMINISTRATIVO...
JORGE WILLIAMS RODRIGUEZ MEZA - SOFTWARE PROCESOS ACADEMICOS Y ADMINISTRATIVO...JORGE WILLIAMS RODRIGUEZ MEZA - SOFTWARE PROCESOS ACADEMICOS Y ADMINISTRATIVO...
JORGE WILLIAMS RODRIGUEZ MEZA - SOFTWARE PROCESOS ACADEMICOS Y ADMINISTRATIVO...
 
Tesis de grado control automatizado de ingreso salida - cadav
Tesis de grado   control automatizado de ingreso salida - cadavTesis de grado   control automatizado de ingreso salida - cadav
Tesis de grado control automatizado de ingreso salida - cadav
 
Proyecto ingenieria de software
Proyecto ingenieria de softwareProyecto ingenieria de software
Proyecto ingenieria de software
 
Proyecto portal web BATEMS
Proyecto portal web BATEMSProyecto portal web BATEMS
Proyecto portal web BATEMS
 
Guía de introducción a la Web 2.0: aspectos de privacidad y seguridad en las ...
Guía de introducción a la Web 2.0: aspectos de privacidad y seguridad en las ...Guía de introducción a la Web 2.0: aspectos de privacidad y seguridad en las ...
Guía de introducción a la Web 2.0: aspectos de privacidad y seguridad en las ...
 
PROYECTO CONTROL DE ASISTENCIA código QRDAT 3.1 WINDOWS
PROYECTO CONTROL DE ASISTENCIA código QRDAT 3.1 WINDOWSPROYECTO CONTROL DE ASISTENCIA código QRDAT 3.1 WINDOWS
PROYECTO CONTROL DE ASISTENCIA código QRDAT 3.1 WINDOWS
 
Sistema de Información
Sistema de InformaciónSistema de Información
Sistema de Información
 
Manual usuario v3 de Arteco Fincas
Manual usuario v3 de Arteco FincasManual usuario v3 de Arteco Fincas
Manual usuario v3 de Arteco Fincas
 
Follower memoria final Universidad Tecnologica de Hermosillo
Follower memoria final Universidad Tecnologica de HermosilloFollower memoria final Universidad Tecnologica de Hermosillo
Follower memoria final Universidad Tecnologica de Hermosillo
 
Norma. ntc iso-iec 27001
Norma. ntc iso-iec 27001Norma. ntc iso-iec 27001
Norma. ntc iso-iec 27001
 
Web 2.0 presentación con videos
Web 2.0 presentación con videosWeb 2.0 presentación con videos
Web 2.0 presentación con videos
 
La red internet
La red internetLa red internet
La red internet
 
“CREACIÓN DE UN SITIO WEB PARA GESTIONAR LA INFORMACIÓN DEL DEPARTAMENTO DE A...
“CREACIÓN DE UN SITIO WEB PARA GESTIONAR LA INFORMACIÓN DEL DEPARTAMENTO DE A...“CREACIÓN DE UN SITIO WEB PARA GESTIONAR LA INFORMACIÓN DEL DEPARTAMENTO DE A...
“CREACIÓN DE UN SITIO WEB PARA GESTIONAR LA INFORMACIÓN DEL DEPARTAMENTO DE A...
 
Estructura_Proyecto.docx
Estructura_Proyecto.docxEstructura_Proyecto.docx
Estructura_Proyecto.docx
 
Informatización y uso de Internet en las empresas madrileñas 2010
Informatización y uso de Internet en las empresas madrileñas 2010Informatización y uso de Internet en las empresas madrileñas 2010
Informatización y uso de Internet en las empresas madrileñas 2010
 
Plan de trabajo
Plan de trabajoPlan de trabajo
Plan de trabajo
 

Último

CARGAS VIVAS Y CARGAS MUERTASEXPOCI.pptx
CARGAS VIVAS Y CARGAS MUERTASEXPOCI.pptxCARGAS VIVAS Y CARGAS MUERTASEXPOCI.pptx
CARGAS VIVAS Y CARGAS MUERTASEXPOCI.pptxvalenciaespinozadavi1
 
Propuesta para la creación de un Centro de Innovación para la Refundación ...
Propuesta para la creación de un Centro de Innovación para la Refundación ...Propuesta para la creación de un Centro de Innovación para la Refundación ...
Propuesta para la creación de un Centro de Innovación para la Refundación ...Dr. Edwin Hernandez
 
LA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdf
LA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdfLA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdf
LA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdfbcondort
 
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)ssuser563c56
 
tema05 estabilidad en barras mecanicas.pdf
tema05 estabilidad en barras mecanicas.pdftema05 estabilidad en barras mecanicas.pdf
tema05 estabilidad en barras mecanicas.pdfvictoralejandroayala2
 
Tinciones simples en el laboratorio de microbiología
Tinciones simples en el laboratorio de microbiologíaTinciones simples en el laboratorio de microbiología
Tinciones simples en el laboratorio de microbiologíaAlexanderimanolLencr
 
Obras paralizadas en el sector construcción
Obras paralizadas en el sector construcciónObras paralizadas en el sector construcción
Obras paralizadas en el sector construcciónXimenaFallaLecca1
 
Controladores Lógicos Programables Usos y Ventajas
Controladores Lógicos Programables Usos y VentajasControladores Lógicos Programables Usos y Ventajas
Controladores Lógicos Programables Usos y Ventajasjuanprv
 
DOCUMENTO PLAN DE RESPUESTA A EMERGENCIAS MINERAS
DOCUMENTO PLAN DE RESPUESTA A EMERGENCIAS MINERASDOCUMENTO PLAN DE RESPUESTA A EMERGENCIAS MINERAS
DOCUMENTO PLAN DE RESPUESTA A EMERGENCIAS MINERASPersonalJesusGranPod
 
Ejemplos de cadenas de Markov - Ejercicios
Ejemplos de cadenas de Markov - EjerciciosEjemplos de cadenas de Markov - Ejercicios
Ejemplos de cadenas de Markov - EjerciciosMARGARITAMARIAFERNAN1
 
Procesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptx
Procesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptxProcesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptx
Procesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptxJuanPablo452634
 
PERFORACIÓN Y VOLADURA EN MINERÍA APLICADO
PERFORACIÓN Y VOLADURA EN MINERÍA APLICADOPERFORACIÓN Y VOLADURA EN MINERÍA APLICADO
PERFORACIÓN Y VOLADURA EN MINERÍA APLICADOFritz Rebaza Latoche
 
INTEGRALES TRIPLES CLASE TEORICA Y PRÁCTICA
INTEGRALES TRIPLES CLASE TEORICA Y PRÁCTICAINTEGRALES TRIPLES CLASE TEORICA Y PRÁCTICA
INTEGRALES TRIPLES CLASE TEORICA Y PRÁCTICAJOSLUISCALLATAENRIQU
 
ECONOMIA APLICADA SEMANA 555555555544.pdf
ECONOMIA APLICADA SEMANA 555555555544.pdfECONOMIA APLICADA SEMANA 555555555544.pdf
ECONOMIA APLICADA SEMANA 555555555544.pdfmatepura
 
introducción a las comunicaciones satelitales
introducción a las comunicaciones satelitalesintroducción a las comunicaciones satelitales
introducción a las comunicaciones satelitalesgovovo2388
 
CAPITULO 4 ANODIZADO DE ALUMINIO ,OBTENCION Y PROCESO
CAPITULO 4 ANODIZADO DE ALUMINIO ,OBTENCION Y PROCESOCAPITULO 4 ANODIZADO DE ALUMINIO ,OBTENCION Y PROCESO
CAPITULO 4 ANODIZADO DE ALUMINIO ,OBTENCION Y PROCESOLUISDAVIDVIZARRETARA
 
Quimica Raymond Chang 12va Edicion___pdf
Quimica Raymond Chang 12va Edicion___pdfQuimica Raymond Chang 12va Edicion___pdf
Quimica Raymond Chang 12va Edicion___pdfs7yl3dr4g0n01
 
PPT ELABORARACION DE ADOBES 2023 (1).pdf
PPT ELABORARACION DE ADOBES 2023 (1).pdfPPT ELABORARACION DE ADOBES 2023 (1).pdf
PPT ELABORARACION DE ADOBES 2023 (1).pdfalexquispenieto2
 
Mapas y cartas topográficas y de suelos.pptx
Mapas y cartas topográficas y de suelos.pptxMapas y cartas topográficas y de suelos.pptx
Mapas y cartas topográficas y de suelos.pptxMONICADELROCIOMUNZON1
 
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.pptARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.pptMarianoSanchez70
 

Último (20)

CARGAS VIVAS Y CARGAS MUERTASEXPOCI.pptx
CARGAS VIVAS Y CARGAS MUERTASEXPOCI.pptxCARGAS VIVAS Y CARGAS MUERTASEXPOCI.pptx
CARGAS VIVAS Y CARGAS MUERTASEXPOCI.pptx
 
Propuesta para la creación de un Centro de Innovación para la Refundación ...
Propuesta para la creación de un Centro de Innovación para la Refundación ...Propuesta para la creación de un Centro de Innovación para la Refundación ...
Propuesta para la creación de un Centro de Innovación para la Refundación ...
 
LA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdf
LA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdfLA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdf
LA APLICACIÓN DE LAS PROPIEDADES TEXTUALES A LOS TEXTOS.pdf
 
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
 
tema05 estabilidad en barras mecanicas.pdf
tema05 estabilidad en barras mecanicas.pdftema05 estabilidad en barras mecanicas.pdf
tema05 estabilidad en barras mecanicas.pdf
 
Tinciones simples en el laboratorio de microbiología
Tinciones simples en el laboratorio de microbiologíaTinciones simples en el laboratorio de microbiología
Tinciones simples en el laboratorio de microbiología
 
Obras paralizadas en el sector construcción
Obras paralizadas en el sector construcciónObras paralizadas en el sector construcción
Obras paralizadas en el sector construcción
 
Controladores Lógicos Programables Usos y Ventajas
Controladores Lógicos Programables Usos y VentajasControladores Lógicos Programables Usos y Ventajas
Controladores Lógicos Programables Usos y Ventajas
 
DOCUMENTO PLAN DE RESPUESTA A EMERGENCIAS MINERAS
DOCUMENTO PLAN DE RESPUESTA A EMERGENCIAS MINERASDOCUMENTO PLAN DE RESPUESTA A EMERGENCIAS MINERAS
DOCUMENTO PLAN DE RESPUESTA A EMERGENCIAS MINERAS
 
Ejemplos de cadenas de Markov - Ejercicios
Ejemplos de cadenas de Markov - EjerciciosEjemplos de cadenas de Markov - Ejercicios
Ejemplos de cadenas de Markov - Ejercicios
 
Procesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptx
Procesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptxProcesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptx
Procesos-de-la-Industria-Alimentaria-Envasado-en-la-Produccion-de-Alimentos.pptx
 
PERFORACIÓN Y VOLADURA EN MINERÍA APLICADO
PERFORACIÓN Y VOLADURA EN MINERÍA APLICADOPERFORACIÓN Y VOLADURA EN MINERÍA APLICADO
PERFORACIÓN Y VOLADURA EN MINERÍA APLICADO
 
INTEGRALES TRIPLES CLASE TEORICA Y PRÁCTICA
INTEGRALES TRIPLES CLASE TEORICA Y PRÁCTICAINTEGRALES TRIPLES CLASE TEORICA Y PRÁCTICA
INTEGRALES TRIPLES CLASE TEORICA Y PRÁCTICA
 
ECONOMIA APLICADA SEMANA 555555555544.pdf
ECONOMIA APLICADA SEMANA 555555555544.pdfECONOMIA APLICADA SEMANA 555555555544.pdf
ECONOMIA APLICADA SEMANA 555555555544.pdf
 
introducción a las comunicaciones satelitales
introducción a las comunicaciones satelitalesintroducción a las comunicaciones satelitales
introducción a las comunicaciones satelitales
 
CAPITULO 4 ANODIZADO DE ALUMINIO ,OBTENCION Y PROCESO
CAPITULO 4 ANODIZADO DE ALUMINIO ,OBTENCION Y PROCESOCAPITULO 4 ANODIZADO DE ALUMINIO ,OBTENCION Y PROCESO
CAPITULO 4 ANODIZADO DE ALUMINIO ,OBTENCION Y PROCESO
 
Quimica Raymond Chang 12va Edicion___pdf
Quimica Raymond Chang 12va Edicion___pdfQuimica Raymond Chang 12va Edicion___pdf
Quimica Raymond Chang 12va Edicion___pdf
 
PPT ELABORARACION DE ADOBES 2023 (1).pdf
PPT ELABORARACION DE ADOBES 2023 (1).pdfPPT ELABORARACION DE ADOBES 2023 (1).pdf
PPT ELABORARACION DE ADOBES 2023 (1).pdf
 
Mapas y cartas topográficas y de suelos.pptx
Mapas y cartas topográficas y de suelos.pptxMapas y cartas topográficas y de suelos.pptx
Mapas y cartas topográficas y de suelos.pptx
 
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.pptARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
 

Implantacion de plataforma web para la academia de isc e inf

  • 1. INSTITUTO TECNOLÓGICO SUPERIOR DE ACAYUCAN INFORME FINAL DE RESIDENCIA PROFESIONAL ÁMBITO: social y productivo IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDAD DE INGENIERIA EN SISTEMAS COMPUTACIONALES E INFORMATICA INSTITUTO TECNOLOGICO SUPERIOR DE ACAYUCAN PRESENTA(N): C ALEXANDER VELAZQUEZ CORTES No. 090B0265 De la especialidad de INGENIERIA EN SISTEMA COMPUTACIONAL ISIC-2004-296 Período AGO 13 - ENE 14 Asesor Interno: MTI. VIANEY FUENTES MATEO. Asesor Externo: MTI. MIGUEL HERNANDEZ LINARES. Acayucan, Ver. Enero de 2014
  • 2. IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN SISTEMAS COMPUTACIONALES E INFORMATICA INGENIERIA EN SISTEMAS COMPUTACIONALES Página 2 Contenido CAPÍTULO I ............................................................................................................................ 4 INTRODUCCION ............................................................................................................... 4 JUSTIFICACION ................................................................................................................ 5 OBJETIVOS........................................................................................................................ 8 OBJETIVO GENERAL................................................................................................... 8 OBJETIVOS ESPECIFICOS ........................................................................................ 8 FACTIBILIDAD ECONÓMICA, TÉCNICA Y OPERATIVA .......................................... 9 Económica....................................................................................................................... 9 Técnica........................................................................................................................... 10 Operativa ....................................................................................................................... 11 CAPITULO II ......................................................................................................................... 12 CARACTERIZACIÓN DEL ÁREA EN QUE PARTICIPÓ........................................... 12 ANTECEDENTES DE LA EMPRESA........................................................................... 13 PROBLEMAS A RESOLVER, PRIORIZÁNDOLOS ................................................... 15 ALCANCES Y LIMITACIONES...................................................................................... 17 Alcances ........................................................................................................................ 17 Limitaciones .................................................................................................................. 18 CAPITULO III........................................................................................................................ 18 FUNDAMENTO TEÓRICO............................................................................................. 18 QUÉ ES UN SERVIDOR............................................................................................ 19 SERVIDOR WEB ......................................................................................................... 19 FUNCIÓN DE UN SERVIDOR................................................................................... 19 Debían............................................................................................................................ 20 Virtualización................................................................................................................. 23 Software utilizado para el desarrollo del sistema........................................................ 25 MySql ............................................................................................................................. 26 Historia de MySQL....................................................................................................... 26
  • 3. IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN SISTEMAS COMPUTACIONALES E INFORMATICA INGENIERIA EN SISTEMAS COMPUTACIONALES Página 3 Características de MySql ............................................................................................ 26 PHP ................................................................................................................................ 27 AppServ ......................................................................................................................... 28 CSS ................................................................................................................................ 29 Dobe Flash Player........................................................................................................ 32 Java script ......................................................................................................................... 33 XML ................................................................................................................................. 34 Secure Hash Algorithm ............................................................................................... 36 HTML5............................................................................................................................. 37 JQuery ................................................................................................................................. 38 Características.................................................................................................................. 39 Adobe Dreamweaver................................................................................................... 39 CSS · Bootstrap............................................................................................................ 42 Diseñador de base de datos....................................................................................... 46 Aplicaciones de los lenguajes de programación................................................... 46 Framework..................................................................................................................... 47 PROCEDIMIENTOS Y DESCRIPCION DE LAS ACTIVIDADES REALIZADAS. ............................................................................................................................................ 51 Metodología IWEB ....................................................................................................... 52 CAPITULO lV........................................................................................................................ 57 RESULTADOS, PLANOS, GRÁFICAS, PROTOTIPOS Y PROGRAMAS ............. 57 Entidades de la bd ....................................................................................................... 57 Descripción de los datos de la BD............................................................................. 59 CAPITULO V....................................................................................................................... 148 CONCLUSIONES Y RECOMENDACIONES ............................................................ 148 Conclusión................................................................................................................... 148 Recomendaciones ..................................................................................................... 148 CAPÍTULO VI...................................................................................................................... 150 Anexos ............................................................................................................................. 150 REFERENCIAS BIBLIOGRÁFICAS........................................................................... 151
  • 4. IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN SISTEMAS COMPUTACIONALES E INFORMATICA INGENIERIA EN SISTEMAS COMPUTACIONALES Página 4 CAPÍTULO I INTRODUCCION Este documento describe el trabajo realizado en el proyecto final de carrera de ingeniería en sistemas computacionales. El proyecto consiste en el desarrollo de un portal web para las academias de ingeniería en sistemas computacionales e informática, del Instituto Tecnológico Superior de Acayucan, situado en carretera costera del golfo Km. 216.4, colonia Agrícola Michapan, Acayucan, Veracruz. El objetivo de dicho portal web es dar una información completa sobre el tecnológico y los servicios de los que dispone, así como proporcionar una serie de funcionalidades a los alumnos y profesores de las carreras de ingeniería en sistemas computacionales e informática del centro educativo. La web es accesible desde cualquier navegador por Internet y tiene información referente a su localización, sus miembros (profesores de las academias de sistemas computacionales e informática) y su proyecto educativo. Se trata de dar una visión lo más completa posible de la institución, así como del funcionamiento de las academias de Ingeniería en Sistemas Computacionales e Informática. En cuanto a los usuarios, la página tiene varios tipos. Por un lado, están los usuarios no registrados o visitantes, que únicamente pueden acceder a información general sobre el centro. Por otro, están los usuarios registrados, que pueden acceder a una mayor funcionalidad dentro de la aplicación. Entre estos últimos se encuentra el usuario docente y el usuario administrador. El usuario docente puede realizar acciones tales como cargar archivos y tener acceso a sus respectivos apartados de academia, mientras que el usuario administrador gestiona el sistema.
  • 5. IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN SISTEMAS COMPUTACIONALES E INFORMATICA INGENIERIA EN SISTEMAS COMPUTACIONALES Página 5 IDENTIFICACION DEL PROBLEMA La liberación de créditos es muy importante en la carrera del alumno, contando que el alumno tiene que reunir con 5 créditos como requisito de la escuela, los créditos se pueden cumplir con actividades extraescolares, cursos impartidos por los docentes, congresos, entre otras que ayudan al alumno a completar estos requisitos, estos créditos se tienen que cumplir a lo largo de la carrera, pero no se lleva un control sobre estos, existiendo un desorden y un desconocimiento de cuantos créditos faltan al alumno, además que la publicación de dichas actividades para la realización de estos es muy pobre y no se informa sobre la realización de cursos, haciéndose que el registro en cursos y otras actividades sea de manera verbal o manual. Las academias de ingeniería en sistemas computacionales y de informática llevan a cabo reuniones de academia para tratar asuntos relacionados con sus respectivas carreras, las reuniones son citadas por el presidente y secretario, en la cual se estipula un día, lugar y horario para que se lleve a cabo la junta, un problema que se presenta es el método de comunicado para la información, ya sea para avisar de juntas de academia, entrega de asignaciones de comisión y liberaciones se hace de manera personal, haciendo que las notificaciones no se entreguen en la fecha correspondiente y pueda ver un retraso o una falta en el caso de las reuniones de academia, otro de los casos es el surgimiento de convocar reuniones rápidas (de un día para otro) para tratar temas urgentes, haciéndose muy difícil la asistencia de todos los miembros. Cada miembro de la academia puede encargársele diferentes asignaciones, las cuales se guardan en un expediente con sus respectivas liberaciones, si se llega a su cumplimiento, para llevar un registro, estos registros se guardan de forma manual en carpetas con el nombre de cada docente, el problema es que dichos documentos pueden
  • 6. IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN SISTEMAS COMPUTACIONALES E INFORMATICA INGENIERIA EN SISTEMAS COMPUTACIONALES Página 6 extraviarse o revolverse con el paso del tiempo, haciéndose imposible poder checar algún registro de fechas anteriores. Un tema importante surge al no existir ningún dato sobre temas relacionados con los anteproyectos, residencias y tesis, ya que al entregarse todos los anteproyectos se estipulan fechas variadas para que el alumno acuda a las instalaciones para verificar si su residencia procede o no y para rectificar a su asesor interno asignado. Los asesores una vez teniendo el proyecto, no pueden darse cuenta, si dicho proyecto ya antes se ha realizado, y no pueden evaluar de una manera parcial al alumno, ya que pueden existir la duplicidad de proyectos o pueden darse los casos en donde los proyectos pueden repetirse pues las compañías pueden entregar proyectos que ya antes se han elaborado. Otro problema es la entrega de manuales y antologías que elaboran los docentes, ya que estos hacen llegar su material en memorias o fotocopiándolo y entregándolo al alumno, lo cual se hace un problema ya que el material, no puede ser repartido a todos los alumnos, llegándose al caso de extraviar dicha información retrasando al docente. Por último la información que se le notifica al alumno se realiza de manera muy pobre, pues los avisos de acontecimientos importantes se realizan de manera oral o a través de avisos escritos que carecen de visibilidad, estos avisos pueden ser talleres, cursos, promociones de becas, etc. imposibilitando al alumno de trabajar en tiempo y forma con la institución.
  • 7. IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN SISTEMAS COMPUTACIONALES E INFORMATICA INGENIERIA EN SISTEMAS COMPUTACIONALES Página 7 JUSTIFICACION Debido a los diferentes problemas con el acceso y flujo de información entre las comunidades de ingeniería en sistemas computacionales e ingeniería informática del Instituto tecnológico Superior de Acayucan, se ha tomado en cuenta realizar un portal en línea que facilite la información a las comunidades antes mencionadas, mejorando diversos ámbitos, planteándose que en dicho portal, las academias de sistemas computacionales como la de informática, tendrán su propio sistema, dirigidos por un administrador, que avisara de las juntas que se realizaran mandando a los correos de los docentes una notificación que los enlazara con el portal, mejorando así los comunicados de avisos de reuniones de academia, así como se tendrá una lista con la información de cada docente de sus respectivas academias, en donde se tendrá el archivamiento de forma digital de las diversas asignaciones y comisiones asignadas a los docentes, mejorando así perdida de archivos y búsqueda de manera inmediata de estos. Se tiene propuesto implementar en dicho portal, un apartado para que los docentes y alumnos puedan consultar el nombre y una breve descripción de residencias anteriores, para evitar el duplicado de estas, así como también para los alumnos consulten de manera rápida si sus anteproyectos han sido aceptados, como también que asesor le ha sido asignado. También se asignara un apartado para que las antologías y manuales estén a disposición de todos los alumnos, así los archivos podrán estar al alcance de todos de una manera práctica y sencilla, agilizando el tiempo para el uso de dicho material y evitando los extravíos o el mal manejo a la hora de repartir la información. Se creara una ventana en la interfaz únicamente para notificaciones y avisos importantes de la carrera, para mantener informado a la comunidad de sistemas e informática de sucesos importantes que se acontecen conforme a las carreras.
  • 8. IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN SISTEMAS COMPUTACIONALES E INFORMATICA INGENIERIA EN SISTEMAS COMPUTACIONALES Página 8 Se realizara un apartado para que el alumno pueda ver los cursos que están a disposición y este pueda tomarlos para completar sus actividades complementarias para la acreditación de créditos, así como el administrador de su respectiva academia tiene un control sobre los créditos del alumno, creando más cursos para ayudarlo a cumplir estos requisitos. OBJETIVOS OBJETIVO GENERAL Facilitar información a la comunidad de las carreras de ingeniería en sistemas computacionales e ingeniería en informática así como también para facilitar los procedimientos que se hacen en las respectivas academias, mediante la implantación de plataforma en línea para el Instituto Tecnológico Superior de Acayucan. OBJETIVOS ESPECIFICOS  Desarrollar interfaz gráfica para cada incidencia.  Generar las bases de datos específicas y dedicadas para el flujo de información.  Implementar apartado para banco digital (anteproyectos, residencias, tesis, antologías y manuales de práctica) para consulta y descarga.  Implementar un apartado para asuntos de academia.  Almacenar de manera más rápida la información diaria que se genere en el departamento.  Definir niveles de acceso a información.  Determinar la seguridad de acceso a la interfaz.
  • 9. IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN SISTEMAS COMPUTACIONALES E INFORMATICA INGENIERIA EN SISTEMAS COMPUTACIONALES Página 9 FACTIBILIDAD ECONÓMICA, TÉCNICA Y OPERATIVA En esta fase del sistema se realizaron los estudios de factibilidad económica, técnica y operativa y de recursos humanos para su aprobación de desarrollo del sistema, a continuación se describe detalladamente los estudios realizados. Económica Para que el sistema pueda ser desarrolladlo, es indispensable estudiar profundamente los recursos económicos con que cuenta para que esto sea posible se han considerado los siguientes costos: concepto horas Costo por hora costo Análisis de sistema 50 $60 $1 500. ºº Determinación de los requerimientos (diseño de la base de datos) 60 $60 $3 000. ºº Determinación de los requerimientos (diseño de interfaces) 80 $60 $4 000. ºº Desarrollo e implantación 160 $60 $8 000. ºº Costos indirectos generados por el personal $2 000. ºº $18,500. ºº El costo del sistema es de $18,500. ºº Más la cantidad de $3000. ºº De mano de obra, nos arroja una cantidad de $21,500. ºº Como gasto total. En este caso se ha determinado que es económicamente factible ejecutar el desarrollo del sistema para la academia de ingeniería en sistemas, debido a
  • 10. IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN SISTEMAS COMPUTACIONALES E INFORMATICA INGENIERIA EN SISTEMAS COMPUTACIONALES Página 10 que todos los gastos que puedan surgir en el desarrollo del sistema, serán proporcionados por el instituto tecnológico superior de Acayucan. Técnica El instituto tecnológico superior de Acayucan tienen dentro de sus alcances técnicos para el desarrollo del sistema “Implantación de plataforma web para la comunidad de isc e informatica,en este caso el líder del proyecto”, será quien diseñe y cree el sistema que requiere: Hardware En cuanto al hardware, específicamente el servidor donde se instalara el sistema propuesto que servirá para la comunicación de los demás computadores vía web, este debe cubrir con los siguientes requerimientos mínimos:  Procesador Pentium 166 MHz.  Tarjeta Madre.  512 MB de Memoria RAM  Disco duro de 30 Gb.  Unidad de CD-ROM.  Tarjeta de Red.  Tarjeta de Video.  Monitor  Teclado  Mouse Evaluando el hardware existente y tomando en cuenta la configuración mínima necesaria, el tecnológico no requirió realizar una inversión inicial para la adquisición de nuevos equipos, ya que los mismos satisfacen los requerimientos establecidos tanto para el desarrollo y puesta en funcionamiento del sistema propuesto.
  • 11. IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN SISTEMAS COMPUTACIONALES E INFORMATICA INGENIERIA EN SISTEMAS COMPUTACIONALES Página 11 Software En cuanto al software, la tecnológica cuenta con casi todas las aplicaciones que se emplearan para el desarrollo del proyecto y funcionamiento del sistema, a excepción del servidor web appserv o xampp, pero estos se encuentran en el internet de forma gratuita, lo cual no amerita inversión alguna para la adquisición de los mismos. Las estaciones de trabajo operan bajo ambientes Windows - Linux.  Windows 7, Salix OS  Navegador Internet Explorer, Google Chrome y Mozilla Firefox  Herramientas de Escritorio Office 2010 y Libre Office.  Sistemas administrativos  Antivirus De acuerdo al estudio realizado al instituto tecnológico superior de Acayucan de recursos técnicos o el equipo de cómputo con que cuenta necesario para el desarrollo del sistema, se puede concluir que es factible desarrollar el proyecto denominado “Implantación de plataforma web para la comunidad de isc e informática”, para el departamento de academia de ingeniería en sistemas, debido a que los equipos de cómputo con que se cuentan, cumplen con el software y hardware básicos para el desarrollo del sistema. Operativa Debido a las determinaciones tomadas en los estudios de factibilidad económica y técnica, llegamos a la conclusión que es operativamente te factible económica y técnica, llegamos a la conclusión que es operativamente factible construir el proyecto denominado “Implantación de plataforma web para la comunidad de isc e informática” para la academia de ingeniería en sistemas computacionales. Cuya función que desempeña es todo lo relacionado con el trabajo del docente para asegurar el cumplimiento de los programas de las asignaturas del plan de estudios de cada carrera de licenciatura, impartidas en el instituto tecnológico superior de Acayucan.
  • 12. IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN SISTEMAS COMPUTACIONALES E INFORMATICA INGENIERIA EN SISTEMAS COMPUTACIONALES Página 12 CAPITULO II CARACTERIZACIÓN DEL ÁREA EN QUE PARTICIPÓ Este proyecto se llevó acabo en el instituto tecnológico superior de Acayucan en el departamento de desarrollo de academia a cargo del ing. El siguiente esquema físico muestra la ubicación exacta de la empresa donde se llevara a cabo el proyecto de residencia denominando implantación de plataforma web para comunidad de ingeniería en sistemas computacionales e informática. Figura 1.0 ubicación de la institución. Tabla 1: Datos generales de la empresa. Nombre: instituto tecnológico superior de Acayucan Área administrativa: Dirección: carretera costera del golfo km.216.4 Desviación. A monte grande. Col.Agricola michapan, Acayucan, Veracruz. Teléfono: (01924)2 45 74 10 fax: (01 924)24 574 18 E-mail: itsa@itsacayucan.edu.mx; Página web: www.itsacayucan.edu.mx;
  • 13. IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN SISTEMAS COMPUTACIONALES E INFORMATICA INGENIERIA EN SISTEMAS COMPUTACIONALES Página 13 ANTECEDENTES DE LA EMPRESA El instituto tecnológico superior de Acayucan es una institución joven con apenas diez años de existencia. Durante este tiempo ha respondido a las exigencias de una sociedad demandante de oportunidades de estudio a nivel superior. Iniciando actividades el 25 de septiembre de 2000 con 103 estudiantes hoy se ha convertido en una institución cada vez más fuerte experimentando un notable incremento de matrícula y de personal adquiriendo cada vez mayor relevancia ante las autoridades educativas federales, estatales y municipales y consolidándose entre la sociedad como la máxima casa de estudio de la región. Este crecimiento es la muestra de indiscutibles logros alcanzados por el trabajo conjunto de la institución del gobierno en sus tres niveles y de la comunidad tecnológica. Sin embargo los retos que debe afrontar son muchos. El plan nacional de educación 2001-2006 (PNE) en el apartado correspondiente a educación superior señala de rumbo que como institución de educación superior pública hemos de seguir. Sin duda que el proceso de superarse representa grandes esfuerzos sin embargo dado nuestro compromiso y la capacidad de quienes estamos involucrados tales retos son oportunidades para alcanzar un crecimiento que nos permita responder de manera más eficiente y profunda expectativas que tiene la sociedad en materia De educación superior de calidad con enfoque humanístico e generación de conocimiento científicos de desarrollo tecnológico de transferencia de tecnologías de divulgación cultural entre otras. Las áreas sustantivas del instituto están comprometidas en conjunto realizando primeramente un análisis de las fortalezas y debilidades para reforzar y ampliar sus servicios. Este proceso involucra un reconocimiento honesto de lo que se a echo bien y de lo que es necesario mejorar con todo el esfuerzo que ello requiera una evaluación sería responsable autocritica
  • 14. IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN SISTEMAS COMPUTACIONALES E INFORMATICA INGENIERIA EN SISTEMAS COMPUTACIONALES Página 14 que conduzca al mejoramiento integral de los procesos que serán el fundamento de una institución de calidad. Figura 1.2 .escudo del instituto tecnológico superior de Acayucan. Actualmente la institución cuenta con las carreras siguientes:  Sistema escolarizado o Ingeniería bioquímica o Ingeniería en sistemas computacional o Licenciatura en informática o Ingeniería industrial o Ingeniería en gestión empresarial o Ingeniería en Mecatrónica o ingeniería en informática o Ingeniería química  Sistema abierto o Licenciatura en informática o Ingeniería en gestión empresarial Política de calidad El itsa establece el compromiso de implementar el sistema de gestión de calidad (SGC) en todos sus procesos claves, orientándolos hacia la satisfacción de sus alumnos sustentada en la calidad de proceso educativo para cumplir con su requerimiento mediante la eficacia de un sistema de gestión de la calidad y de mejora continua conforme a la norma ISO 9001:2000/mnx-cc-9001.IMNC-2000.
  • 15. IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN SISTEMAS COMPUTACIONALES E INFORMATICA INGENIERIA EN SISTEMAS COMPUTACIONALES Página 15 Misión Asegurar la formación integral de los estudiantes, en profesionistas e investigadores de excelencia, capaces de desarrollar tecnologías para la vida y el respeto al medio ambiente, utilizando el mejor capital intelectual en las áreas del conocimiento correspondiente. Visión Ser una institución educativa vanguardista, reconocida a nivel nacional e internacional para el 2018 por su actitud incluyente e innovadora por su capacidad para desarrollar tecnología, investigación y comprometida siempre con el uso sustentable del ambiente. PROBLEMAS A RESOLVER, PRIORIZÁNDOLOS La liberación de créditos es muy importante en la carrera del alumno, contando que el alumno tiene que reunir con 5 créditos como requisito de la escuela, los créditos se pueden cumplir con actividades extraescolares, cursos impartidos por los docentes, congresos, entre otras que ayudan al alumno a completar estos requisitos, estos créditos se tienen que cumplir a lo largo de la carrera, pero no se lleva un control sobre estos, existiendo un desorden y un desconocimiento de cuantos créditos faltan al alumno, además que la publicación de dichas actividades para la realización de estos es muy pobre y no se informa sobre la realización de cursos, haciéndose que el registro en cursos y otras actividades sea de manera verbal o manual. Las academias de ingeniería en sistemas computacionales y de informática llevan a cabo reuniones de academia para tratar asuntos relacionados con sus respectivas carreras, las reuniones son citadas por el presidente y secretario, en la cual se estipula un día, lugar y horario para que se lleve a cabo la junta, un problema que se presenta es el método de comunicado
  • 16. IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN SISTEMAS COMPUTACIONALES E INFORMATICA INGENIERIA EN SISTEMAS COMPUTACIONALES Página 16 para la información, ya sea para avisar de juntas de academia, entrega de asignaciones de comisión y liberaciones se hace de manera personal, haciendo que las notificaciones no se entreguen en la fecha correspondiente y pueda ver un retraso o una falta en el caso de las reuniones de academia, otro de los casos es el surgimiento de convocar reuniones rápidas (de un día para otro) para tratar temas urgentes, haciéndose muy difícil la asistencia de todos los miembros. Cada miembro de la academia puede encargársele diferentes asignaciones, las cuales se guardan en un expediente con sus respectivas liberaciones, si se llega a su cumplimiento, para llevar un registro, estos registros se guardan de forma manual en carpetas con el nombre de cada docente, el problema es que dichos documentos pueden extraviarse o revolverse con el paso del tiempo, haciéndose imposible poder checar algún registro de fechas anteriores. Un tema importante surge al no existir ningún dato sobre temas relacionados con los anteproyectos, residencias y tesis, ya que al entregarse todos los anteproyectos se estipulan fechas variadas para que el alumno acuda a las instalaciones para verificar si su residencia procede o no y para rectificar a su asesor interno asignado. Los asesores una vez teniendo el proyecto, no pueden darse cuenta, si dicho proyecto ya antes se ha realizado, y no pueden evaluar de una manera parcial al alumno, ya que pueden existir la duplicidad de proyectos o pueden darse los casos en donde los proyectos pueden repetirse pues las compañías pueden entregar proyectos que ya antes se han elaborado. Otro problema es la entrega de manuales y antologías que elaboran los docentes, ya que estos hacen llegar su material en memorias o fotocopiándolo y entregándolo al alumno, lo cual se hace un problema ya que el material, no puede ser repartido a todos los alumnos, llegándose al caso de extraviar dicha información retrasando al docente. Por último la
  • 17. IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN SISTEMAS COMPUTACIONALES E INFORMATICA INGENIERIA EN SISTEMAS COMPUTACIONALES Página 17 información que se le notifica al alumno se realiza de manera muy pobre, pues los avisos de acontecimientos importantes se realizan de manera oral o a través de avisos escritos que carecen de visibilidad, estos avisos pueden ser talleres, cursos, promociones de becas, etc. imposibilitando al alumno de trabajar en tiempo y forma con la institución ALCANCES Y LIMITACIONES Al desarrollar un proyecto se presentan alcances del que dispone y diferentes inconvenientes cuando se tiene la intención de ponerlo en marcha a continuación se presentan los alcances y limitaciones para el desarrollo de este proyecto. En la parte de alcances se presentan los recursos con los que se pueden disponer de la Implantación de plataforma web para la comunidad de isc e informática en las limitaciones, en las limitaciones se mostraran los datos relacionados con los problemas para tener un rendimiento eficaz del software. Alcances  Es compatibilidad con las versiones de Windows como son: XP, Vista Y Seven.  Actualización de los datos.  Seguridad de información mediante un usuario determinado y contraseña.  Portabilidad: ya que podrá ser distribuido en múltiples equipos.  El sistema podrá ser instalado en múltiples plataformas.  La información será distribuida a través de internet.
  • 18. IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN SISTEMAS COMPUTACIONALES E INFORMATICA INGENIERIA EN SISTEMAS COMPUTACIONALES Página 18 Limitaciones  La aplicación será mono usuario.  Tendrá acceso el encargado del departamento de academia isc e info.  El sistema no podrá ser un sistema distribuido. CAPITULO III FUNDAMENTO TEÓRICO Es preciso conocer inicialmente fundamentos de base de datos incluidos, términos y conceptos básicos, modelos de diseño de base de datos y las características que debe contener una buena base de datos, el lenguaje de consulta y almacenamiento de datos, el sistema operativo compatible con el lenguaje de datos que además permita utilizar un lenguaje de programación con el que se diseñara y programara la parte grafica con la ayuda de programas que harán que el sistema pueda ser usado a través de la red de la institución. Por ello las investigaciones conllevan a elegir los programas adecuados para lograr el cometido de este sistema; a continuación se presenta las herramientas que se utilizaron para este proyecto explicando las causas que encaminan a usarlas y los requerimientos de estos.
  • 19. IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN SISTEMAS COMPUTACIONALES E INFORMATICA INGENIERIA EN SISTEMAS COMPUTACIONALES Página 19 QUÉ ES UN SERVIDOR Un servidor es un equipo informático que forma parte de una red y provee servicios a otros equipos cliente. Se denomina servidor dedicado, aquel que dedica todos sus recursos a atender solicitudes de los equipos cliente. Sin embargo un servidor compartido es aquel que no dedica todos sus recursos a servir las peticiones de los clientes, sino que también es utilizado por un usuario para trabajar de forma local. SERVIDOR WEB Un servidor web es un programa que se ejecuta continuamente en un computador, manteniéndose a la espera de peticiones de ejecución que le hará un cliente o un usuario de Internet. El servidor web se encarga de contestar a estas peticiones de forma adecuada, entregando como resultado una página web o información de todo tipo de acuerdo a los comandos solicitados. En este punto es necesario aclarar lo siguiente: mientras que comúnmente se utiliza la palabra servidor para referirnos a una computadora con un software servidor instalado, en estricto rigor un servidor es el software que permite la realización de las funciones descritas. FUNCIÓN DE UN SERVIDOR La función de un servidor es proveer servicios a otras computadoras conectadas en red, llamadas clientes. El ejemplo más práctico de un servidor, son los servidores web, por ejemplo, yahoo.com.
  • 20. IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN SISTEMAS COMPUTACIONALES E INFORMATICA INGENIERIA EN SISTEMAS COMPUTACIONALES Página 20 Debían Este sistema operativo esta Está mantenida por sus usuarios, Si algo necesita ser arreglado o mejorado, simplemente lo hacemos. Su Soporte incomparable, el correo enviado a las listas de correo frecuentemente obtiene respuesta en quince minutos (o menos), gratuitamente, y por las personas que lo desarrollaron. Compare ésto al típico soporte telefónico: horas gastadas en el teléfono, pagando dinero, sólo para tener a alguien que no conoce el sistema lo suficientemente bien como para entender su pregunta. No estará solo en su elección Un amplio abanico de organizaciones e individuos usa ya Debian. Vea nuestra página ¿Quién está usando Debian? Si desea una descripción de algunos sitios de prestigio que usan Debian y han decidido enviar una corta descripción de cómo hacen uso de Debian y por qué. El mejor sistema de empaquetamiento de software del mundo ¿Cansado de viejos archivos de software tres versiones anteriores al actual desordenando su sistema? ¿O de instalar software sólo para encontrar que hace que su sistema se colapse debido a conflictos de software?, el sólido sistema de empaquetamiento de Debian, se encarga de estos asuntos por usted.
  • 21. IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN SISTEMAS COMPUTACIONALES E INFORMATICA INGENIERIA EN SISTEMAS COMPUTACIONALES Página 21 Instalación sencilla Si ha oído que Debían es difícil de instalar entonces no ha probado Debían últimamente. Estamos mejorando constantemente el proceso de instalación. Puede realizar la instalación directamente desde un CD, DOS o discos flexibles o incluso a través de la red. La Increíble cantidad de software Debían viene con más de 37500 elementos de software diferentes. Cada bit de éstos es libre. Si tiene software propietario que corre bajo GNU/Linux o GNU/kFreeBSD, puede usarlo (de hecho, puede que incluso exista un instalador en Debían que automáticamente instale y configure todo por usted). Paquetes bien integrados Debían sobrepasa a todas las otras distribuciones en lo bien integrados que están sus paquetes. Como todo el software lo empaqueta un grupo coherente, no sólo puede encontrar todos los paquetes en un mismo sitio sino que puede estar seguro de que hemos eliminado todos los problemas al respecto de complejas dependencias. Aunque creemos que el formato deb tiene algunas ventajas sobre el rpm, es la integración entre paquetes lo que hace a un sistema Debían más robusto. Código fuente Si usted es un desarrollador de software, apreciará el hecho de que haya cientos de herramientas y lenguajes de desarrollo, además de millones de líneas de código fuente en el sistema base. Todo el software en la distribución principal es conforme al criterio de las Directrices de Software Libre de Debían (DFSG). Esto significa que usted puede usar libremente este código para estudiarlo o para incorporarlo a un nuevo proyecto de software libre. También hay una buena cantidad de herramientas y código apropiado para el uso en proyectos propietarios. Actualizaciones fáciles Actualizarse a una nueva versión de Debían es muy fácil gracias a nuestro sistema de empaquetamiento. Sólo tiene que ejecutar apt-get update; apt-get dist-upgrade (o aptitude update; aptitude dist- upgrade, según la versión) y puede actualizarse desde un CD en cuestión de
  • 22. IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN SISTEMAS COMPUTACIONALES E INFORMATICA INGENIERIA EN SISTEMAS COMPUTACIONALES Página 22 minutos o configurar apt para que utilice alguno de los trescientos espejos de Debían y actualizarse desde la red. Sistema de seguimiento de errores el sistema de seguimiento de errores de Debían es público. No intentamos esconder la realidad de que el software no siempre trabaja de la manera que los usuarios desean. Aconsejamos a los usuarios que envíen informes de errores y serán notificados cuándo y por qué el error ha sido solucionado. Este sistema permite que Debían responda a los problemas rápida y honestamente. Si usted aún no es usuario de Debían, puede también disfrutar de los siguientes beneficios:  Estabilidad Existen muchos casos de máquinas que trabajan durante más de un año seguido sin reiniciarse. De la misma forma, hay equipos que tan sólo son reiniciados debido a un fallo en el suministro de corriente o a una actualización del hardware. Compare esto con otros sistemas que se colapsan varias veces al día.  Rápido y ligero en memoria Otros sistemas operativos pueden ser rápidos en una o dos áreas, pero, estando basado en GNU/Linux o GNU/kFreeBSD, Debían es ligero y humilde. El software para Windows se ejecuta bajo GNU/Linux usando un emulador a veces más rápido que en su ambiente original.  Los controladores para la mayoría del hardware están escritos por usuarios de GNU/Linux / GNU/kFreeBSD, no por el fabricante. Mientras que esto puede significar retrasos antes de que el nuevo hardware sea soportado y la no existencia de soporte para algún hardware, permite que continúe el soporte mucho después de que el fabricante haya detenido
  • 23. IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN SISTEMAS COMPUTACIONALES E INFORMATICA INGENIERIA EN SISTEMAS COMPUTACIONALES Página 23 su producción o haya quebrado. La experiencia ha demostrado que los controladores de fuentes abiertas son usualmente mejores que los controladores propietarios.  Buena seguridad del sistema Debian y la comunidad del software libre son muy sensibles a asegurarse de que los arreglos de problemas de seguridad entren en la distribución rápidamente. Normalmente, los paquetes arreglados se hacen disponibles a los pocos días. La disponibilidad del código fuente permite que la seguridad en Debian se evalúe de forma abierta, lo que evita que se implementen modelos de seguridad pobres. Además, la mayoría de los proyectos de software libre tienen sistemas de revisión por terceras partes, que, como primera medida, evitan que se introduzcan en el sistema problemas de seguridad potenciales.  Software de seguridad Muchos desconocen que cualquier cosa enviada por la red puede ser leída por cualquier máquina entre usted y el receptor. Debian tiene paquetes del famoso software GPG (y PGP) que permite enviar correo entre usuarios preservando su privacidad. Además, ssh permite crear conexiones seguras a otras máquinas que tengan ssh instalado. Virtualización Para hacer más bajo el costo de un sistema preferido este software tiene cualidades a muy bajo costo para empezar. ¿Qué es Virtualización? Es la Creación de un Equipo Virtual usando una combinación de hardware y software. Facilidad de poder ejecutar múltiples Sistemas Operativos en un solo hardware.
  • 24. IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN SISTEMAS COMPUTACIONALES E INFORMATICA INGENIERIA EN SISTEMAS COMPUTACIONALES Página 24 Muchas de la empresas les da curiosidad el ¿Por qué Virtualizar? Uno de los muchas razones de esto es la reducción del tiempo ocioso (es el tiempo que un procesador gasta esperando datos de otros procesadores).  Disponibilidad de tecnología especializada para tales fines.  Ahorro de recursos: Hardware, Energía y Costos Qué se logra con la virtualización los siguientes puntos los muestran:  Facilidad para la administración.  Reemplazo rápido de sistemas completos en casos de averías.  Los Sistemas de Prueba se pueden poner en producción fácil y rápidamente.  Portabilidad → Independencia del Hardware.  Disponibilidad de sistemas completos probados por fabricantes.  Máxima explotación de los recursos de hardware.  Seguridad: Simulación de ambientes de trabajo para entrenamiento/pruebas sin poner en riesgo los sistemas en producción. Importancia de la Virtualización refleja grandes cosas:  En promedio sólo el 10% del tiempo de una computadora está trabajando.  “Virtualización = Liberación. Un computador o servidor puede hacer el trabajo de muchos”  Menos del 10% de los servidores o máquinas actuales son virtual izados
  • 25. IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN SISTEMAS COMPUTACIONALES E INFORMATICA INGENIERIA EN SISTEMAS COMPUTACIONALES Página 25 Las Ventajas más notables de esto son:  Ahorro: Aumente perceptiblemente la utilización y la productividad.  Protección: La utilización de tecnologías de virtualización facilita mucho las soluciones.  Automatización: Reduzca los tiempos y las tareas del aprovisionamiento.  Funcionamiento: Aumente su capacidad de trabajo, la facilidad de reserva de recursos y los tiempos de reacción.  Simplicidad y coste: Agregue o reorganice sus recursos de almacenamiento o cálculo y sin tiempo muerto.  Flexibilidad: Gane la independencia del hardware, la agilidad en migraciones y la capacidad de crecimiento organizada. Unas de las pocas Desventajas que se presentan:  Aplicaciones son más lentas  Interoperabilidad entre diferentes máquinas virtuales.  A través de pruebas se ha determinado que se logran pequeñas mejoras en servidores (Java, de correo, servidor), Web, servidor de base de datos, y servidor de archivos) utilizando virtualización.  Aplicaciones nativas del microprocesador  Microsoft Virtual Server (de Windows Server 2008) Software utilizado para el desarrollo del sistema. Para la construcción y programación del sistema de base de datos, utilizaremos MySql y para la elaboración de las interfaces con el usuario interactuara y manipulara la información de la base de datos usaremos las herramientas para su mejor diseño usaremos php, java script, css, jqueary.
  • 26. IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN SISTEMAS COMPUTACIONALES E INFORMATICA INGENIERIA EN SISTEMAS COMPUTACIONALES Página 26 MySql MySQL es un sistema de administración de bases de datos relacional (RDBMS). Se trata de un programa capaz de almacenar una enorme cantidad de datos de gran variedad y de distribuirlos para cubrir las necesidades de cualquier tipo de organización, desde pequeños establecimientos comerciales a grandes empresas y organismos administrativos. MySQL compite con sistemas RDBMS propietarios conocidos, como Oracle, SQL Server y DB2. MySQL incluye todos los elementos necesarios para instalar el programa, preparar diferentes niveles de acceso de usuario, administrar el sistema y proteger y hacer volcados de datos. Puede desarrollar sus propias aplicaciones de base de datos en la mayor parte de 10s lenguajes de programación utilizados en la actualidad y ejecutarlos en casi todos 10s sistemas operativos, incluyendo algunos de los que probablemente no ha oído nunca hablar. MySQL utiliza el lenguaje de consulta estructurado (SQL). Se trata del lenguaje utilizado por todas las bases de relacionales, que presentaremos en una sección posterior. Este lenguaje permite crear bases de datos, así como agregar, manipular y recuperar datos en Función de criterios específicos. Historia de MySQL MySQL surgió como un intento de conectar el gestor mySQL a las tablas propias de MySQL AB, usando sus propias rutinas a bajo nivel. Tras unas primeras pruebas, vieron que mySQL no era lo bastante flexible para lo que necesitaban, por lo que tuvieron que desarrollar nuevas funciones. Esto resultó en una interfaz SQL a su base de datos, con una interfaz totalmente compatible a mySQL. Características de MySql Las principales características de este gestor de bases de datos son las siguientes: 1. Aprovecha la potencia de sistemas multiprocesador, gracias a su implementación multihilo.
  • 27. IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN SISTEMAS COMPUTACIONALES E INFORMATICA INGENIERIA EN SISTEMAS COMPUTACIONALES Página 27 2. Soporta gran cantidad de tipos de datos para las columnas. 3. Dispone de API's en gran cantidad de lenguajes (C, C++, Java, PHP, etc.). 4. Gran portabilidad entre sistemas. 5. Soporta hasta 32 índices por tabla. 6. Gestión de usuarios y passwords, manteniendo un muy buen nivel de seguridad en los datos. PHP PHP (acrónimo de "PHP: Hipertexto Preprocessor") es un lenguaje interpretado de alto nivel embebido en páginas HTML y ejecutado en el servidor. El PHP es un lenguaje de programación utilizado para crear páginas web dinámicas. El PHP necesita que un servidor web con capacidad PHP sea instalado y funcionando para poder ejecutar las páginas PHP. A continuación se muestra una conexión de php y Mysql
  • 28. IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN SISTEMAS COMPUTACIONALES E INFORMATICA INGENIERIA EN SISTEMAS COMPUTACIONALES Página 28 El servidor va a compilar el código PHP y tratarlo en tiempo real, con la información viniendo del cliente web, para regresarle una página web adaptada, en tiempo real. El servidor tiene también capacidad de seguir el camino de un usuario, así como de identificarlo. Las características de este tipo de programación es que posee la capacidad de ser multiplataforma, contar con la capacidad de conexión con la mayoría de los manejadores de base de datos que se utilizan en la actualidad, es libre lo que se presenta como una alternativa de fácil acceso para todos, de igual forma permite las técnicas de Programación Orientada a Objetos. Este posee las siguientes ventajas como la de ser multiplataforma, tiene la capacidad de ser libre y de la conectividad con MYSQL, cuenta con bibliotecas de funciones y permite la utilización de herramientas para la programación orientada a objetos. Las desventajas de este tipo de programación es que promueve creación de código desordenado y con un mantenimiento complejo, no posee adecuado manejo de Unicode, también que es muy difícil de optimizar, está diseñado especialmente hacia un modo de realizar aplicaciones Web que es problemático y obsoleto y no posee una abstracción de base de datos estándar. AppServ Es una herramienta opensource, Windows con apache, mysql, php y otras adicciones, en la cual estas aplicaciones se configuran en forma automática, lo que permite ejecutar un servidor web completo. Como extra incorpora phpMyAdmin para el manejo de MySQL Inmediatamente después de la instalación está disponible completamente funcional del servidor web Apache , que se ejecuta en el equipo local, que
  • 29. IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN SISTEMAS COMPUTACIONALES E INFORMATICA INGENIERIA EN SISTEMAS COMPUTACIONALES Página 29 puede ejecutar un número ilimitado de sitios para ser muy eficaz para desarrollar y depurar scripts PHP sin subir archivos a un servidor remoto. El programa se distribuye gratuitamente bajo licencia GNU General Public License y es gratis, fácil de usar web-servidor capaz de servir páginas dinámicas. Con esta configuración, puede implementar rápidamente un equipo hecho y derecho y el servidor web rápido, con acceso desde la red local, sin necesidad de configuración adicional. Puede ser utilizado como un servidor web público en la Internet CSS (Cascading Style Sheets, u Hojas de Estilo en Cascada) es la tecnología desarrollada por el World Wide Web Consortium (W3C) con el fin de separar la estructura de la presentación. A pesar de que la recomendación oficial del grupo de trabajo de la W3C ya había alcanzado la estabilidad requerida para que fuera soportada por los principales navegadores comerciales, como Netscape e InternetExplorer, tan tempranamente como en el año 1998, la situación de entonces, comúnmente conocida como la “guerra de los navegadores”, hacía que los intereses comerciales de las dos compañías en lucha por el mercado de usuarios de Internet se interpusieran en el camino de las CSS. Netscape 4 e Internet Explorer 4 incorporaron parcialmente un soporte a esta recomendación, pero éste dejaba mucho que desear, especialmente en Netscape 4, por lo que no era plausible la incorporación de las CSS en el diseño de sitios salvo en un muy mínimo número de características, y esto aún con reservas, puesto que la manera de tratar los estándares era muy diferente y por eso ni aun así se podía asegurar una visualización correcta de la misma hoja de estilos.
  • 30. IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN SISTEMAS COMPUTACIONALES E INFORMATICA INGENIERIA EN SISTEMAS COMPUTACIONALES Página 30 El uso más amplio de las posibilidades de las CSS en Netscape 4, por ejemplo, podía llegar a causar un"crash" en el browser sin explicación alguna. Internet Explorer 4 tenía una mejor implementación de la recomendación CSS nivel 1, pero, de nuevo, parcial -aunque permitía el uso de un mayor número de características, cómo aquéllas que exceden a la tipografía (la parte de las reglas de las CSS pensada para reemplazar al tradicional uso de tablas en el diseño de "layouts"). La situación, hoy, es muy diferente. Netscape 4 acaparaba, según estadísticas, el 80% de usuarios, al menos en Estados Unidos. Desde el lanzamiento de Internet Explorer 5 -que tuvo problemas al principio, luego solucionados mayormente con la versión 5.5-, esta situación cambió radicalmente y hoy es éste el navegador más usado. No obstante no incorporaba el soporte completo de las CSS nivel 1. Habría que esperar a las recientes versiones 6, para esto, e incluso para un soporte parcial de las CSS nivel 2.Otros navegadores, como Opera (el tercer navegador más usado), cuya última y también reciente versión es la 6, incluye el mismo soporte. A diferencia de entonces, hoy, CSS ya no es una novedad, pero ahora ya no hay pretextos para no usarla. Y es posible utilizar ciertas posibilidades más amplias de las CSS, como el control de otras características gráficas tales como imágenes y colores de fondo, márgenes exactos y bordes, para evitar el trabajoso y a veces poco gratificante diseño de tablas complejas para un "layout", que incluye frecuentemente tablas anidadas y complicados algoritmos de combinación de celdas (me refiero a la forma en la que los navegadores resuelven esto para su graficación), características que hacen al archivo muy pesado para descargar, porque inundan el código con la extensa serie de etiquetas requeridas. Y también, hoy, la "guerra de los navegadores" ha terminado, y la W3C y los estándares empiezan a liderar el
  • 31. IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN SISTEMAS COMPUTACIONALES E INFORMATICA INGENIERIA EN SISTEMAS COMPUTACIONALES Página 31 camino, por lo que ya no hay tantas trabas para un uso más extendido, aunque medido, de las CSS. En vista de esta breve recapitulación, entonces, podríamos decir que los beneficios de usar CSS son dobles. Por un lado, evitamos hacer a los archivos demasiado pesados (excluyendo el largo código requerido para las tablas anidadas y el añadido de características gráficas), y definimos el "estilo visual" de un sitio entero sin necesidad de hacerlo etiqueta por etiqueta, para cada una de las páginas. Por otro, trabajamos con estándares, y separamos hasta cierto punto la estructura (vale decir, el código) de la presentación, logrando una manera más nítida de trabajar, y lo que es más: en un sencillo documento CSS, definimos lo que yo llamaría una "plantilla gráfica" para todo un sitio. Vale decir, que cualquier cambio hecho a un estilo CSS, se reflejará en todos los elementos que sean referidos a éste, automáticamente, con sólo editar un sencillo documento CSS. Este tutorial se centra en el diseño de un documento CSS pensado para un sitio web entero, y sobre todo con el uso medido de las características de CSS nivel 1, aunque recomendando un uso medido de tablas para el "esqueleto" del "layout" de las páginas (no obstante, el tutorial no cubre este aspecto; sólo el de creación, sintaxis y edición de un documento CSS externo enlazado a los documentos HTML). Esto implica, por una parte, un "target" de navegador que no sea exclusivo de la "última generación" (la cual comprende: IE 5, 5.5, 6, Netscape 6, y Opera 6). Por lo tanto, se intenta una correcta visualización de la página también en Internet Explorer 4. Es posible que Netscape 4 muestre la página más o menos correctamente, pero esto no debe preocuparnos ya que es un navegador que no soporta estándares.
  • 32. IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN SISTEMAS COMPUTACIONALES E INFORMATICA INGENIERIA EN SISTEMAS COMPUTACIONALES Página 32 XAMPP es un servidor independiente de plataforma, software libre, que consiste principalmente en la base de datos MySQL, el servidor web Apache y los intérpretes para lenguajes de script: PHP y Perl. El nombre proviene del acrónimo de X (para cualquiera de los diferentes sistemas operativos), Apache, MySQL, PHP, Perl. El programa está liberado bajo la licencia GNU y actúa como un servidor web libre, fácil de usar y capaz de interpretar páginas dinámicas. Actualmente XAMPP está disponible para Microsoft Windows, GNU/Linux, Solaris y MacOS X. Características y requisitos XAMPP solamente requiere descargar y ejecutar un archivo zip, tar , exe o fkl, con unas pequeñas configuraciones en alguno de sus componentes que el servidor Web necesitará. XAMPP se actualiza regularmente para incorporar las últimas versiones de Apache/MySQL/PHP y Perl. También incluye otros módulos como OpenSSL y phpMyAdmin. Para instalar XAMPP se requiere solamente una pequeña fracción del tiempo necesario para descargar y configurar los programas por separado. Puede encontrarse tanto en versión completa, así como en una versión más ligera que es portátil. Oficialmente, los diseñadores de XAMPP sólo pretendían su uso como una herramienta de desarrollo, para permitir a los diseñadores de sitios webs y programadores testear su trabajo en sus propios ordenadores sin ningún acceso a Internet. En la práctica, sin embargo, XAMPP es utilizado actualmente como servidor de sitios Web, ya que, con algunas modificaciones, es generalmente lo suficientemente seguro para serlo. Con
  • 33. IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN SISTEMAS COMPUTACIONALES E INFORMATICA INGENIERIA EN SISTEMAS COMPUTACIONALES Página 33 el paquete se incluye una herramienta especial para proteger fácilmente las partes más importantes. Dobe Flash Player Adobe Flash Player es una aplicación en forma de reproductor multimedia creado inicialmente por Macromedia y actualmente distribuido por Adobé. Permite reproducir archivos SWF que pueden ser creados con la herramienta de autoría Adobe Flash, con Adobe Flex o con otras herramientas de Adobe y de terceros. Estos archivos se reproducen en un entorno determinado. En un sistema operativo tiene el formato de aplicación del sistema, mientras que si el entorno es un navegador, su formato es el de un Plug-in u objeto ActiveX. Adobe Flash, o simplemente Flash, se refieren tanto al programa de creación de animaciones como al reproductor. Estrictamente hablando, Adobe Flash es el entorno de creación y Adobe Flash Player el reproductor o máquina virtual. Sin embargo, en lenguaje coloquial, se usa el término Flash para referirse al entorno, al reproductor e, incluso, a los archivos generados. Java script Es un lenguaje de programación interpretado es decir que no requiere compilación utilizado principalmente en páginas web con una sintaxis semejante ala del lenguaje java y el lenguaje c. al igual que java. Java script es un lenguaje orientado a objeto propiamente dicho ya que dispone de herencia si bien este se realiza siguiendo el paradigma de programación basada en prototipos ya que las nuevas clases se generan clonando las clases de base (prototipos) y extendiendo su funcionalidad. Todos los navegadores modernos interpretan el código java script integrando dentro de las páginas web. Para interactuar con una página web se provee al lenguaje java script de una implementación del DOM.el lenguaje fue
  • 34. IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN SISTEMAS COMPUTACIONALES E INFORMATICA INGENIERIA EN SISTEMAS COMPUTACIONALES Página 34 inventado por brendan eich en la empresa Netscape comunications que es la que desarrollo los primeros navegadores web comerciales.aparecion por primera vez en el producto Netscape llamada Netscape navigator 2.0.tradicionalmente se venía utilizando en páginas web HTML para realizar tareas y operaciones en el marco de la aplicación únicamente cliente, sin acceso a funciones del servidor.java Script se ejecuta en el agente de usuario al mismo tiempo que las sentencias van descargándose junto con el código html.los autores inicialmente lo llamaron mocha y más tarde liveScript pero fue rebautizado como java Script en un anuncio en un anuncio conjunto entre sun microsystems y Netscape el 4 de diciembre de 1995.En 1997 los autores propusieron java script para que fuera adoptado como estándar de la european computer manufactures association ecma que a pesar de su nombre no es europeo como un estándar iso. Jscript de Netscape pero con ciertas diferencias en el modelo de objeto del navegador que hacen a ambas versiones con frecuencia incompatibles. Para evitar estas incompatibilidades, el World wide web consortium diseño el estándar document object model (DOM o modelo de objeto del documento en castellano) que incorporan konqueror, las versiones 6 de internet Explorer y Netscape navigator opera versión 7 y Mozilla desde su primera versión. XML Siglas en inglés de eXtensible Markup Language ('lenguaje de marcas extensible'), es un lenguaje de marcas desarrollado por el World Wide Web Consortium (W3C) utilizado para almacenar datos en forma legible. Deriva del lenguaje SGML y permite definir la gramática de lenguajes específicos (de la misma manera que HTML es a su vez un lenguaje definido por SGML) para estructurar documentos grandes. A diferencia de otros lenguajes, XML da soporte a bases de datos, siendo útil cuando varias aplicaciones se deben comunicar entre sí o integrar información. (Bases de datos Silberschatz).
  • 35. IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN SISTEMAS COMPUTACIONALES E INFORMATICA INGENIERIA EN SISTEMAS COMPUTACIONALES Página 35 XML no ha nacido sólo para su aplicación para Internet, sino que se propone como un estándar para el intercambio de información estructurada entre diferentes plataformas. Se puede usar en bases de datos, editores de texto, hojas de cálculo y casi cualquier cosa imaginable. XML es una tecnología sencilla que tiene a su alrededor otras que la complementan y la hacen mucho más grande y con unas posibilidades mucho mayores. Tiene un papel muy importante en la actualidad ya que permite la compatibilidad entre sistemas para compartir la información de una manera segura, fiable y fácil. Ventajas de XML  Es extensible: Después de diseñado y puesto en producción, es posible extender XML con la adición de nuevas etiquetas, de modo que se pueda continuar utilizando sin complicación alguna.  El analizador es un componente estándar, no es necesario crear un analizador específico para cada versión de lenguaje XML. Esto posibilita el empleo de cualquiera de los analizadores disponibles. De esta manera se evitan bugs y se acelera el desarrollo de aplicaciones.  Si un tercero decide usar un documento creado en XML, es sencillo entender su estructura y procesarla. Mejora la compatibilidad entre aplicaciones. Podemos comunicar aplicaciones de distintas plataformas, sin que importe el origen de los datos, es decir, podríamos tener una aplicación en Linux con una base de datos Postgres y comunicarla con otra aplicación en Windows y Base de Datos MS-SQL Server.  Transformamos datos en información, pues se le añade un significado concreto y los asociamos a un contexto, con lo cual tenemos flexibilidad para estructurar documentos.
  • 36. IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN SISTEMAS COMPUTACIONALES E INFORMATICA INGENIERIA EN SISTEMAS COMPUTACIONALES Página 36 Secure Hash Algorithm La familia SHA (Secure Hash Algorithm, Algoritmo de Hash Seguro) es un sistema de funciones hash criptográficas relacionadas de la Agencia de Seguridad Nacional de los Estados Unidos y publicadas por el National Institute of Standards and Technology (NIST). El primer miembro de la familia fue publicado en 1993 es oficialmente llamado SHA. Sin embargo, hoy día, no oficialmente se le llama SHA-0 para evitar confusiones con sus sucesores. Dos años más tarde el primer sucesor de SHA fue publicado con el nombre de SHA-1. Existen cuatro variantes más que se han publicado desde entonces cuyas diferencias se basan en un diseño algo modificado y rangos de salida incrementados: SHA-224, SHA-256, SHA-384, y SHA- 512 (llamándose SHA-2a todos ellos). En 1998, un ataque a SHA-0 fue encontrado pero no fue reconocido para SHA-1, se desconoce si fue la NSA quien lo descubrió pero aumentó la seguridad del SHA-1. SHA-256 ha sido examinado muy de cerca por la comunidad criptográfica pública, y no se ha encontrado ningún ataque efectivo. No obstante, en el año 2004, un número de ataques significativos fueron divulgados sobre funciones criptográficas de hash con una estructura similar a SHA-1; lo que ha planteado dudas sobre la seguridad a largo plazo de SHA-1. SHA-0 y SHA-1 producen una salida resumen de 160 bits (20 bytes) de un mensaje que puede tener un tamaño máximo de 264 bits, y se basa en principios similares a los usados por el profesor Ronald L. Rivest del MIT en el diseño de los algoritmos de resumen de mensaje MD4 y MD5. La codificación hash vacía para SHA-1 corresponde a: SHA 256 ("") = da39a3ee5e6b4b0d3255bfef95601890afd80709
  • 37. IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN SISTEMAS COMPUTACIONALES E INFORMATICA INGENIERIA EN SISTEMAS COMPUTACIONALES Página 37 HTML5 HTML5 (HyperText Markup Language, versión 5) es la quinta revisión importante del lenguaje básico de la World Wide Web, HTML. HTML5 especifica dos variantes de sintaxis para HTML: un «clásico» HTML (text/html), la variante conocida como HTML5 y una variante XHTML conocida como sintaxis XHTML5 que deberá ser servida como XML). Esta es la primera vez que HTML y XHTML se han desarrollado en paralelo. Todavía se encuentra en modo experimental, lo cual indica la misma W3C; aunque ya es usado por múltiples desarrolladores web por sus avances, mejoras y ventajas. Al no ser reconocido en viejas versiones de navegadores por sus nuevas etiquetas, se le recomienda al usuario común actualizar a la versión más nueva, para poder disfrutar de todo el potencial que provee HTML5. El desarrollo de este lenguaje de marcado es regulado por el Consorcio W3C. HTML5 establece una serie de nuevos elementos y atributos que reflejan el uso típico de los sitios web modernos. Algunos de ellos son técnicamente similares a las etiquetas <div> y<span>, pero tienen un significado semántico, como por ejemplo <nav> (bloque de navegación del sitio web) y <footer>. Otros elementos proporcionan nuevas funcionalidades a través de una interfaz estandarizada, como los elementos <audio> y <video>. Mejora el elemento <canvas>, capaz de renderizar elementos 3D en los navegadores más importantes (Mozilla, Chrome, Opera, Safari e IE). Algunos elementos de HTML 4.01 han quedado obsoletos, incluyendo elementos puramente de presentación, como <font> y <center>, cuyos efectos son manejados por Hojas de estilo en cascada. También hay un
  • 38. IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN SISTEMAS COMPUTACIONALES E INFORMATICA INGENIERIA EN SISTEMAS COMPUTACIONALES Página 38 renovado énfasis en la importancia del scripting DOM para el comportamiento de la web. 2.0  Incorpora etiquetas (canvas 2D y 3D, audio, video) con codecs para mostrar los contenidos multimedia. Actualmente hay una lucha entre imponer codecs libres (WebM + VP8) o privados (H.264/MPEG-4 AVC).  Etiquetas para manejar grandes conjuntos de datos: Datagrid, Details, Menu y Command. Permiten generar tablas dinámicas que pueden filtrar, ordenar y ocultar contenido en cliente.  Mejoras en los formularios. Nuevos tipos de datos (eMail, number, url, datetime …) y facilidades para validar el contenido sin Javascript.  Visores: MathML (fórmulas matemáticas) y SVG (gráficos vectoriales). En general se deja abierto a poder interpretar otros lenguajes XML.  Drag & Drop. Nueva funcionalidad para arrastrar objetos como imágenes. JQuery jQuery es una biblioteca de JavaScript, creada inicialmente por John Resig, que permite simplificar la manera de interactuar con los documentos HTML, manipular el árbol DOM, manejar eventos, desarrollar animaciones y agregar interacción con la técnica AJAX a páginas web. Fue presentada el 14 de enero de 2006 en el BarCamp NYC. JQuery es la biblioteca de JavaScript más utilizada. jquery es software libre y de código abierto, posee un doble licenciamiento bajo la licencia mit y la licencia pública general de GNU v2, permitiendo su uso en proyectos libres y privativos. jquery, al igual que otras bibliotecas, ofrece una serie de funcionalidades basadas en JavaScript que de otra manera requerirían de mucho más código, es decir, con las funciones
  • 39. IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN SISTEMAS COMPUTACIONALES E INFORMATICA INGENIERIA EN SISTEMAS COMPUTACIONALES Página 39 propias de esta biblioteca se logran grandes resultados en menos tiempo y espacio. Las empresas Microsoft y Nokia anunciaron que incluirán la biblioteca en sus plataformas. Microsoft la añadirá en su IDE Visual Studio y la usará junto con los frameworks ASP.NET AJAX y ASP.NET MVC, mientras que Nokia los integrará con su plataforma Web Run-Time. Características  Selección de elementos DOM.  Interactividad y modificaciones del árbol DOM, incluyendo soporte para CSS 1-3 y un plugin básico de XPath.  Eventos.  Manipulación de la hoja de estilos CSS.  Efectos y animaciones.  Animaciones personalizadas.  AJAX.  Soporta extensiones.  Utilidades varias como obtener información del navegador, operar con objetos y vectores, funciones para rutinas comunes, etc.  Compatible con los navegadores Mozilla Firefox 2.0+, Internet Explorer 6+, Safari 3+, Opera 10.6+ y Google Chrome 8+. Adobe Dreamweaver Es una aplicación en forma de estudio (basada en la forma de estudio de Adobe Flash) que está destinada a la construcción, diseño y edición de sitios, videos y aplicaciones Web basados en estándares. Creado inicialmente por Macromedia (actualmente producido por Adobe Systems) es el programa más utilizado en el sector del diseño y la programación web, por sus
  • 40. IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN SISTEMAS COMPUTACIONALES E INFORMATICA INGENIERIA EN SISTEMAS COMPUTACIONALES Página 40 funcionalidades, su integración con otras herramientas como Adobe Flash y, recientemente, por su soporte de los estándares del World Wide Web Consortium. Sus principales competidores son Microsoft Expresión Web y BlueGriffon (que es de código abierto) y tiene soporte tanto para edición de imágenes como para animación a través de su integración con otras. Hasta la versión MX, fue duramente criticado por su escaso soporte de los estándares de la web, ya que el código que generaba era con frecuencia sólo válido para Internet Explorer y no validaba como HTML estándar. Esto se ha ido corrigiendo en las versiones recientes. Se vende como parte de la suite Adobe Creative Suite. A partir de la compra de Macromedia por parte de Adobe. Las letras CS significan Creative Suite La gran ventaja de este editor sobre otros es su gran poder de ampliación y personalización del mismo, puesto que en este programa, sus rutinas (como la de insertar un hipervínculo, una imagen o añadir un comportamiento) están hechas en Javascript-C, lo que le ofrece una gran flexibilidad en estas materias. Esto hace que los archivos del programa no sean instrucciones de C++ sino rutinas de Javascript que hace que sea un programa muy fluido, que todo ello hace, que programadores y editores web hagan extensiones para su programa y lo ponga a su gusto. Las versiones originales de la aplicación se utilizaban como simples editores WYSIWYG. Sin embargo, versiones más recientes soportan otras tecnologías web como CSS, JavaScript y algunos frameworks del lado servidor. Dreamweaver ha tenido un gran éxito desde finales de los años 1990 y actualmente mantiene el 90% del mercado de editores HTML. Esta aplicación está disponible tanto para la plataforma MAC como para Windows,
  • 41. IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN SISTEMAS COMPUTACIONALES E INFORMATICA INGENIERIA EN SISTEMAS COMPUTACIONALES Página 41 aunque también se puede ejecutar en plataformas basadas en UNIX utilizando programas que implementan las API's de Windows, tipo Wine. Como editor WYSIWYG que es, Dreamweaver permite ocultar el código HTML de cara al usuario, haciendo posible que alguien no entendido pueda crear páginas y sitios web fácilmente sin necesidad de escribir código. Algunos desarrolladores web criticaban esta propuesta ya que crean páginas HTML más largas de lo que solían ser al incluir mucho código inútil, lo cual va en detrimento de la ejecución de las páginas en el navegador web. Esto puede ser especialmente cierto ya que la aplicación facilita en exceso el diseño de las páginas mediante tablas. Además, algunos desarrolladores web han criticado Dreamweaver en el pasado porque creaba código que no cumplía con los estándares del consorcio Web (W3C). No obstante, Adobe ha aumentado el soporte CSS y otras maneras de diseñar páginas sin tablas en versiones posteriores de la aplicación, haciendo que se reduzca el exceso de código. Dreamweaver permite al usuario utilizar la mayoría de los navegadores Web instalados en su ordenador para pre visualizar las páginas web. También dispone de herramientas de administración de sitios dirigidas a principiantes como, por ejemplo, la habilidad de encontrar y reemplazar líneas de texto y código por cualquier tipo de parámetro especificado, hasta el sitio web completo. El panel de comportamientos también permite crear JavaScript básico sin conocimientos de código. Con la llegada de la versión MX, Macromedia incorporó herramientas de creación de contenido dinámico en Dreamweaver. En lo fundamental de las herramientas HTML WYSIWYG, también permite la conexión a Bases de Datos como MySQL y Microsoft Access, para filtrar y mostrar el contenido utilizando tecnología de script como, por ejemplo, ASP, ASP.NET,
  • 42. IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN SISTEMAS COMPUTACIONALES E INFORMATICA INGENIERIA EN SISTEMAS COMPUTACIONALES Página 42 ColdFusion, JSP (Java Server Pages) y PHP sin necesidad de tener experiencia previa en programación. Un aspecto de alta consideración de Dreamweaver es su funcionalidad con extensiones. Es decir, permite el uso de "Extensiones". Las extensiones, tal y como se conocen, son pequeños programas, que cualquier desarrollador web puede escribir (normalmente en HTML y Javascript) y que cualquiera puede descargar e instalar, ofreciendo así funcionalidades añadidas a la aplicación. Dreamweaver goza del apoyo de una gran comunidad de desarrolladores de extensiones que hacen posible la disponibilidad de extensiones gratuitas y de pago para la mayoría de las tareas de desarrollo web, que van desde simple efectos rollover hasta completas cartas de compra. También podría decirse que, para un diseño más rápido y a la vez fácil, podría complementarse con Fireworks en donde se podría diseñar un menú u otras creaciones de imágenes (gif web, gif websnap, gif adaptable, jpeg calidad superior, jpeg archivo más pequeño, gif animado websnap) para un sitio web y después exportar la imagen creada y así utilizarla como una sola en donde ya llevará los vínculos para dicho sitio. CSS · Bootstrap Bootstrap es una colección de herramientas de software libre para la creación de sitios y aplicaciones web. Es el proyecto más popular en GitHub y es usado por la NASA y la MSNBC junto a demás organizaciones. El origen de Bootstrap fue desarrollado por Mark Otto y Jacbod Thornton de Twitter, como un marco de trabajo (framework) para fomentar la consistencia a través de herramientas internas. Antes de Bootstrap, se usaban varias librerías para el desarrollo de interfaces de usuario, las cuales guiaban a inconsistencias y a una carga de trabajo alta en su mantenimiento. Según el desarrollador de Twitter Mark Otto, frente a esos desafíos: "un pequeño
  • 43. IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN SISTEMAS COMPUTACIONALES E INFORMATICA INGENIERIA EN SISTEMAS COMPUTACIONALES Página 43 grupo de desarrolladores y yo nos reunimos a diseñar y construir una nueva herramienta interna y vimos una oportunidad de hacer más. A través de ese proceso, nos vimos construir algo mucho más sustancial que otra herramienta interna más. Meses después, terminamos con una primera versión de Bootstrap como una manera de documentar y compartir bienes y patrones de diseño comunes dentro de la compañía. El primer desarrollo en condiciones reales ocurrió durante la primera "Semana de Hackeo" (Hackweek) de Twitter.Mark Otto mostró a algunos colegas como acelerar el desarrollo de sus proyectos con la ayuda de la herramienta de trabajo. Como resultado, decenas de temas se han introducido en el marco de trabajo. En agosto del 2011, Twitter liberó a Bootstrap como código abierto. En febrero del 2012, se convirtió en el proyecto de desarrollo más popular de GitHub. Las Características Bootstrap tiene un soporte relativamente incompleto para HTML5 y CSS 3, pero es compatible con la mayoría de los navegadores web. La información básica de compatibilidad de sitios web o aplicaciones está disponible para todos los dispositivos y navegadores. Existe un concepto de compatibilidad parcial que hace disponible la información básica de un sitio web para todos los dispositivos y navegadores. Por ejemplo, las propiedades introducidas en CSS3 para las esquinas redondeadas, gradientes y sombras son usadas por Bootstrap a pesar de la falta de soporte de navegadores antiguos. Esto extiende la funcionalidad de la herramienta, pero no es requerida para su uso. Desde la versión 2.0 también soporta diseños sensibles. Esto significa que el diseño gráfico de la página se ajusta dinámicamente, tomando en cuenta las características del dispositivo usado (Computadoras, tabletas, teléfonos móviles).
  • 44. IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN SISTEMAS COMPUTACIONALES E INFORMATICA INGENIERIA EN SISTEMAS COMPUTACIONALES Página 44 Bootstrap es de código abierto y está disponible en GitHub. Los desarrolladores están motivados a participar en el proyecto y a hacer sus propias contribuciones a la plataforma. La Estructura y Función de Bootstrap es modular y consiste esencialmente en una serie de hojas de estilo LESS que implementan la variedad de componentes de la herramienta. Una hoja de estilo llamada bootstrap.less incluye los componentes de las hojas de estilo. Los desarrolladores pueden adaptar el mismo archivo de Bootstrap, seleccionando los componentes que deseen usar en su proyecto. Los ajustes son posibles en una medida limitada a través de una hoja de estilo de configuración central. Los cambios más profundos son posibles mediante las declaraciones LESS. El uso del lenguaje de hojas de estilo LESS permite el uso de variables, funciones y operadores, selectores anidados, así como clases mixin. Desde la versión 2.0, la configuración de Bootstrap también tiene una opción especial de "Personalizar" en la documentación. Por otra parte, los desarrolladores eligen en un formulario los componentes y ajustes deseados, y de ser necesario, los valores de varias opciones a sus necesidades. El paquete consecuentemente generado ya incluye la hoja de estilo CSS pre- compilada. Sistema de cuadrilla y diseño sensible Bootstrap viene con una disposición de cuadrilla estándar de 940 píxeles de ancho. Alternativamente, el desarrollador puede usar un diseño de ancho- variable. Para ambos casos, la herramienta tiene cuatro variaciones para hacer uso de distintas resoluciones y tipos de dispositivos: teléfonos móviles, formato de retrato y paisaje, tabletas y computadoras con baja y alta
  • 45. IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN SISTEMAS COMPUTACIONALES E INFORMATICA INGENIERIA EN SISTEMAS COMPUTACIONALES Página 45 resolución (pantalla ancha). Esto ajusta el ancho de las columnas automáticamente. Entendiendo la hoja de estilo CSS Bootstrap proporciona un conjunto de hojas de estilo que proveen definiciones básicas de estilo para todos los componentes de HTML. Esto otorga una uniformidad al navegador y al sistema de anchura, da una apariencia moderna para el formateo de los elementos de texto, tablas y formularios. Componentes re-usables En adición a los elementos regulares de HTML, Bootstrap contiene otra interfaz de elementos comúnmente usados. Ésta incluye botones con características avanzadas (e.g grupo de botones o botones con opción de menú desplegable, listas de navegación, etiquetas horizontales y verticales, ruta de navegación, paginación, etc.), etiquetas, capacidades avanzadas de miniaturas tipográficas, formatos para mensajes de alerta y barras de progreso. Plug-ins de JavaScript Los componentes de JavaScript para Bootstrap están basados en la librería jQuery de JavaScript. Los plug-ins se encuentran en la herramienta de plug-in de jQuery. Proveen elementos adicionales de interfaz de usuario como diálogos, tooltips y carruseles. También extienden la funcionalidad de algunos elementos de interfaz existentes, incluyendo por ejemplo una función de auto-completar para campos de entrada (input). La versión 2.0 soporta los siguientes plug-ins de JavaScript: Modal, Dropdown, Scrollspy, Tab, Tooltip, Popover, Alert, Button, Collapse, Carousel y Typeahead.
  • 46. IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN SISTEMAS COMPUTACIONALES E INFORMATICA INGENIERIA EN SISTEMAS COMPUTACIONALES Página 46 Una implementación de Twitter Bootstrap usando el Dojo Toolkit también está disponible. Es llamada Dojo Bootstrap y es un puerto de los plug-ins de Twitter Bootstrap. Usa el código Dojo al 100% y tiene soporte para AMD (Asynchronous Module Definition). Diseñador de base de datos (batini, ceri, navathe, & shamkant 1995).un buen diseño de base de datos garantiza su fácil mantenimiento. Los datos se almacenan en tablas y daca tabla contiene datos acerca del tema por ejemplo clientes, por tanto cuando se actualiza un parte de los datos concreta como una dirección se hace en un solo lugar pero ese cambio aparece automáticamente en toda la base de datos. El primer paso para diseñar una base de datos es determinar su finalidad y como se va a utilizar. o Determinar la finalidad de la base de datos. o Determinar los campos necesarios en la base de datos. o Determinar a qué tabla pertenece cada campo o Identificar el campo o los campos con valores únicos en daca registro. o Determinar las relaciones entre las tablas. o Perfeccionar el diseño. o Utilidad en una base de datos o Ordenar datos o Búsquedas o Cálculos y sumarios. Aplicaciones de los lenguajes de programación. API Una API (interfaz de programación de aplicaciones) es un conjunto de funciones que permiten al programador acceder a servicios de una aplicación a través del uso de un lenguaje de programación.
  • 47. IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN SISTEMAS COMPUTACIONALES E INFORMATICA INGENIERIA EN SISTEMAS COMPUTACIONALES Página 47 Una API ofrece al programador un cierto nivel de abstracción que en mascara la complejidad de acceso a un sistema o aplicación proponiéndole un conjunto de funciones de las cuales solo se conocen los parámetros y los valores devueltos asimismo por analogía con un automóvil el conductor no necesita conocer la mecánica del motor para conducir el automóvil. El conductor solo tiene acceso a la interfaz compuesta por el volante los pedales (acelerador, embargue, freno) los controles (indicadores luces delanteras cajas de cambios) interruptores (luces de emergencia, luces antiniebla, bocina, etc.).en cierta forma es simular a la interfaz presentada el usuario. Características Una interfaz de programación representa a una interfaz de comunicación entre componentes de software.se trata del conjunto de llamadas a ciertas bibliotecas que ofrecen acceso a ciertos servicios desde los procesos y representa un método para conseguir abstracción en la programación generalmente (aunque no necesariamente) entre los niveles o capas de inferiores y los superiores de software. Uno de los principales propósito de una API consiste en proporcionar un conjunto de funciones de uso general por ejemplo para dibujar ventanas o iconos en la pantalla. De esta forma los programadores se benefician de las ventajas de la API haciendo uso de su funcionalidad evitándose el trabajo de programar todo desde el principio. Las APIS asimismo son abstractas; el software que proporciona una cierta API generalmente es llamado la implementación de esa API. Framework La palabra inglesa "framework" (marco de trabajo) define, en términos generales, un conjunto estandarizado de conceptos, prácticas y criterios para enfocar un tipo de problemática particular que sirve como referencia, para enfrentar y resolver nuevos problemas de índole similar.
  • 48. IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN SISTEMAS COMPUTACIONALES E INFORMATICA INGENIERIA EN SISTEMAS COMPUTACIONALES Página 48 En el desarrollo de software, un framework o infraestructura digital, es una estructura conceptual y tecnológica de soporte definido, normalmente con artefactos o módulos de software concretos, que puede servir de base para la organización y desarrollo de software. Típicamente, puede incluir soporte de programas, bibliotecas, y un lenguaje interpretado, entre otras herramientas, para así ayudar a desarrollar y unir los diferentes componentes de un proyecto. Representa una arquitectura de software que modela las relaciones generales de las entidades del dominio, y provee una estructura y una especial metodología de trabajo, la cual extiende o utiliza las aplicaciones del dominio. Siendo muy simple, es un esquema (un esqueleto, un patrón) para el desarrollo y/o la implementación de una aplicación. Sí, es una definición muy genérica, pero también puede serlo un framework: sin ir más lejos, el paradigma MVC (Model-View-Controller) dice poco más que "separa en tu aplicación la gestión de los datos, las operaciones, y la presentación". En el otro extremo, otros frameworks pueden llegar al detalle de definir los nombres de ficheros, su estructura, las convenciones de programación, etc. Pongamos un ejemplo: una aplicación web que utilice Java como lenguaje de programación puede implementarse de multitud de formas, mediante servlets y JSPs. Hay algunas convenciones que es necesario seguir, como usar un fichero de configuración web.xml, pero el programador sigue sin tener un patrón claro a seguir para la creación de servlets, clases, JSPs, etc. En una primera estandarización, la utilización de una arquitectura MVC aconseja que separemos la lógica de la aplicación (en los servlets) de la presentación (usando JSPs); en concreto, no sería correcto codificar lógica de aplicación o accesos a base de datos dentro de los JSP.
  • 49. IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN SISTEMAS COMPUTACIONALES E INFORMATICA INGENIERIA EN SISTEMAS COMPUTACIONALES Página 49 Un paso más allá: utilizando Faces como framework, la estructura de la aplicación queda todavía más definida: un único servlet (FacesServlet) va a controlar el flujo de la aplicación; además, el uso de un fichero concreto (faces-config.xml) permite crear la navegación de la aplicación, definir los objetos (beans) pasados como parámetros, etc., todo ello sin necesidad de codificarlo en Java o JSP. Los frameworks no necesariamente están ligados a un lenguaje concreto, aunque sea así en muchas ocasiones. En el cada vez más popular Ruby on Rails, 'Ruby' es el lenguaje de programación y 'Rails' el framework; por otro lado, Java Server Faces está orientado a desarrollos en Java. Sin embargo, nada impide definir el mismo framework para lenguajes diferentes: por ejemplo, existe un framework llamado Biscuit cuyo objetivo es prácticamente convertirse en un "PHP on Rails". Eso sí, cuanto más detallado es el framework, más necesidad tendrá de ceñirse a un lenguaje concreto. También es posible que el framework defina una estructura para una aplicación completa, o bien sólo se centre en un aspecto de ella. Siguiendo con los ejemplos, Ruby on Rails ofrece un marco para el desarrollo completo de una aplicación web, mientras que Java Server Faces está más orientado a la interfaz de usuario. Las ventajas tienen utilizar un framework las que se derivan de utilizar un estándar; entre otras: El programador no necesita plantearse una estructura global de la aplicación, sino que el framework le proporciona un esqueleto que hay que "rellenar". Facilita la colaboración. Cualquiera que haya tenido que "pelearse" con el código fuente de otro programador (¡o incluso con el propio, pasado algún tiempo!) sabrá lo difícil que es entenderlo y modificarlo; por tanto, todo lo que sea definir y estandarizar va a ahorrar tiempo y trabajo a los desarrollos colaborativos.
  • 50. IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN SISTEMAS COMPUTACIONALES E INFORMATICA INGENIERIA EN SISTEMAS COMPUTACIONALES Página 50 Es más fácil encontrar herramientas (utilidades, librerías) adaptadas al framework concreto para facilitar el desarrollo. Los frameworks no necesariamente están ligados a un lenguaje concreto, aunque sea así en muchas ocasiones. En el cada vez más popular Ruby on Rails, 'Ruby' es el lenguaje de programación y 'Rails' el framework; por otro lado, Java Server Faces está orientado a desarrollos en Java. Sin embargo, nada impide definir el mismo framework para lenguajes diferentes: por ejemplo, existe un framework llamado Biscuit cuyo objetivo es prácticamente convertirse en un "PHP on Rails". Eso sí, cuanto más detallado es el framework, más necesidad tendrá de ceñirse a un lenguaje concreto. También es posible que el framework defina una estructura para una aplicación completa, o bien sólo se centre en un aspecto de ella. Siguiendo con los ejemplos, Ruby on Rails ofrece un marco para el desarrollo completo de una aplicación web, mientras que Java Server Faces está más orientado a la interfaz de usuario. Siendo muy simple, es un esquema (un esqueleto, un patrón) para el desarrollo y/o la implementación de una aplicación. Sí, es una definición muy genérica, pero también puede serlo un framework: sin ir más lejos, el paradigma MVC (Model-View-Controller) dice poco más que "separa en tu aplicación la gestión de los datos, las operaciones, y la presentación". En el otro extremo, otros frameworks pueden llegar al detalle de definir los nombres de ficheros, su estructura, las convenciones de programación, etc. Pongamos un ejemplo: una aplicación web que utilice Java como lenguaje de programación puede implementarse de multitud de formas, mediante servlets y JSPs. Hay algunas convenciones que es necesario seguir, como usar un fichero de configuración web.xml, pero el programador sigue sin tener un patrón claro a seguir para la creación de servlets, clases, JSPs, etc.
  • 51. IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN SISTEMAS COMPUTACIONALES E INFORMATICA INGENIERIA EN SISTEMAS COMPUTACIONALES Página 51 En una primera estandarización, la utilización de una arquitectura MVC aconseja que separemos la lógica de la aplicación (en los servlets) de la presentación (usando JSPs); en concreto, no sería correcto codificar lógica de aplicación o accesos a base de datos dentro de los JSP. Un paso más allá: utilizando Faces como framework, la estructura de la aplicación queda todavía más definida: un único servlet (FacesServlet) va a controlar el flujo de la aplicación; además, el uso de un fichero concreto (faces-config.xml) permite crear la navegación de la aplicación, definir los objetos (beans) pasados como parámetros, etc., todo ello sin necesidad de codificarlo en Java o JSP. PROCEDIMIENTOS Y DESCRIPCION DE LAS ACTIVIDADES REALIZADAS. Todo proyecto de ingeniería tiene sus fines ligados a la obtención de un producto, proceso o servicio que es necesario generar a través de diversas actividades. Algunas de estas actividades pueden agruparse en fases por que globalmente contribuye a obtener un producto intermedio necesario para continuar hacia el producto final y facilitar la gestión del proyecto. Los sistemas y aplicaciones más basadas en web (webApps) ofrecen un complejo arreglo de contenido y funcionabilidad a una amplia población de usuario final. Ingeniería web (IWEB).es el proceso con el que se crea WebApps de alta calidad. La IWEB no es un clon perfecto de la ingeniería del software pero toma prestado muchos conceptos y principios fundamentales de ella. Además el proceso IWEB acentúa actividades técnica y administrativa similares. Existen sutiles diferencias en la manera como se dirigen actividades pero el método primordial dicta un enfoque disciplinado para el desarrollo de un sistema basado en la computadora.
  • 52. IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN SISTEMAS COMPUTACIONALES E INFORMATICA INGENIERIA EN SISTEMAS COMPUTACIONALES Página 52 ¿Quién lo hace? Los ingenieros web y los desarrolladores del contenido que non es técnico crean las webApps. ¿Por qué es importante? Conforme las WebApps se integran cada vez cada vez más en las estrategias de negocios para pequeñas y grandes empresas (por ejemplo, en el comercio electrónico) crece en importancia la necesidad de construir sistemas confiables prácticos y adaptables por tanto es necesario un enfoque disciplinado en cuanto al desarrollo de webApps ¿Cuáles son los pasos? Al igual que cualquier disciplina de ingeniería, la IWEB aplica un enfoque genérico que se suaviza mediante estrategia, tácticas y métodos especializados. El proceso IWEB y se modelan requisitos y el diseño de la web App. El sistema se construye con tecnologías y herramientas especializados asociadas con la web. Entonces se entregan a los usuarios finales y se evalúa mediante criterios tanto técnicos como empresariales. Dado que la WebApps evoluciona continuamente se debe establecer mecanismos para el control de configuraciones el aseguramiento de la calidad y el soporte continúo. ¿Cuál es el producto obtenido? Se producen muchos productos de trabajo IWeb.el resultado finales es la Web App operativa. Metodología IWEB Comunicación con el Cliente: Dentro del proceso IWeb la comunicación con el cliente se caracteriza por medio de dos grandes tareas: el análisis del negocio y la formulación. El análisis del negocio define el contexto empresarial-organizativo para la Web App. Además, se identifican los participantes, se predicen los potenciales cambios en el ambiente o los requisitos del negocio, y se define la integración entre la Web App y otras aplicaciones de negocios, base de datos y funciones. La formulación es una actividad de recopilación de requisitos que involucra a todos los participantes. El intento es describir el problema que la Web App habrá de
  • 53. IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN SISTEMAS COMPUTACIONALES E INFORMATICA INGENIERIA EN SISTEMAS COMPUTACIONALES Página 53 resolver (junto con los requisitos básicos para la Web App) con el aprovechamiento de la mejor información disponible. Además, se intenta identificar áreas de incertidumbres y donde ocurrirán cambios potenciales. Planeación: Se crea el plan del proyecto para el incremento de la Web App. El plan consiste de una definición de tareas y un calendario de plazos respecto al periodo (usualmente medido en semanas) proyectado para el desarrollo del incremento de la Web App. Modelado: Las labores convencionales de análisis y diseño de ingeniería del software se adaptan al desarrollo de la Web App, se mezclan y luego se funden en la actividad de modelado IWeb. El intento es desarrollar análisis “rápidos” y modelos de diseños que definan requisitos y al mismo tiempo representen una Web App que los satisfará. Construcción: Las herramientas y la tecnología IWeb se aplican para construir la Web App que se ha modelado. Una vez que se construye el incremento de Web App, se dirige una serie de pruebas rápidas para asegurar que se describan los errores en el diseño (es decir: contenido, arquitectura, interface, navegación). Pruebas adicionales abordan otras características Web App. Despliegue: La Web App se configura para su ambiente operativo, se entrega a los usuarios finales y luego comienza un periodo de evaluación. La retroalimentación acerca de la evaluación se presenta al equipo de IWeb y el incremento se modifica conforme se requiera.
  • 54. IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN SISTEMAS COMPUTACIONALES E INFORMATICA INGENIERIA EN SISTEMAS COMPUTACIONALES Página 54 Atributos De Los Sistemas Y Aplicaciones Web En la gran mayoría de las WebApps se encuentran los siguientes atributos: Intensidad de Red: Una Web App reside en una red y debe satisfacer las necesidades de una variada comunidad de clientes. Una Web App puede residir en la Internet (y, en consecuencia, permitir una comunicación mundial abierta). Alternativamente, una aplicación puede colocarse en una Intranet (lo que implementa la comunicación en una organización) o una Extranet (comunicación inter-red). Concurrencia: Un gran número de usuarios pueden tener acceso a la Web App al mismo tiempo. En muchos casos, los patrones de uso entre los usuarios finales variaran enormemente. Carga Impredecible: El número de usuarios de la Web App puede variar en órdenes de magnitud de día con día. El lunes pueden mostrarse 100 usuarios, el martes pueden usar el sistema 10, 000.
  • 55. IMPLANTACION DE PLATAFORMA WEB PARA LA COMUNIDADDE INGENIERIA EN SISTEMAS COMPUTACIONALES E INFORMATICA INGENIERIA EN SISTEMAS COMPUTACIONALES Página 55 Desempeño: Si un usuario de Web App debe esperar demasiado (para ingresar, para procesamiento en el lado del servidor, para formateo y despliegue en el lado del cliente) puede decidir irse a cualquier otra parte. Disponibilidad: Aunque la expectativa de una disponibilidad del total es poco razonable, los usuarios de las WebApps populares con frecuencia demandan acceso sobre una base de “24/7/365”. Los usuarios en Australia o Asia pueden demandar acceso durante momentos cuando las tradicionales aplicaciones de software doméstico en Norteamérica pueden estar fuera de línea por mantenimiento. Sensibilidad del Contenido: La calidad y naturaleza estética del contenido sigue siendo un importante determinante de la calidad de una Web App. Evolución Continua: A diferencia del software de aplicación convencional, que evoluciona a lo largo de una serie de planeadas liberaciones espaciadas cronológicamente, las aplicaciones Web evolucionan de manera continua. No es raro que algunas Web App (específicamente, su contenido) se actualicen sobre una agenda minuto a minuto, o que el contenido sea calculado de manera independiente para cada solicitud. Inmediatez: Aunque la inmediatez – la apremiante necesidad de poner un software en el mercado rápidamente – es una característica de muchos dominios de aplicación, las WebApps con frecuencia muestran un tiempo para comercializar que puede ser cuestión de unos cuantos días o semanas. Los ingenieros Web deben aplicar métodos de planeación, análisis, diseño, implementación y puesta a prueba que han sido adaptados a los apretados tiempos requeridos para el desarrollo de WebApps. Seguridad: Puesto que las WebApps están disponibles mediante el acceso a la red, es difícil, si no imposible, limitar la población de usuarios finales que pueden tener acceso a la aplicación. Con la finalidad de proteger el