Professional Documents
Culture Documents
TEMA:
DESARROLLO DE UN SOFTWARE CHAT V.1 EN NETBEANS 7.0 A
Desde diferentes puntos de vista se ha analizado lo que son las nuevas tecnologas, en
especial el uso del Chat. Los problemas de adiccin, o de otros que afectan en lo
profundo las relaciones familiares, amistosas, pasionales y personales que pueden
afectar el presente y sobre todo el futuro prximo.
Esto nos ha creado una gran incgnita y nos ha cuestionado la problemtica que se
est presentando, en especial en los jvenes con el uso del Chat.
Hemos decidido realizar esta proyecto, para que no solo quede plasmado en estas
hojas de papel sino que sea bien proyectado a los jvenes ayudndolos para que ellos
se cuestionen y encuentren lo que verdaderamente es bueno para sus vidas.
1
4. OBJETO
2
6. OBJETIVOS
a. Objetivo general
b. Objetivos especficos
3
7. JUSTIFICACION E IMPORTACIA
7.1 Justificacin:
En una era completamente computarizada y ubicados en una ciudad ampliamente
competitiva, es necesaria la comunicacin del ms mnimo detalle, para facilitar el
trabajo en el mbito laboral, ya sea en una empresa grande, mediana o pequea,
permitiendo as, ingresar al mundo de la comunicacin mejorando la competitividad, con
iguales ventajas que los dems. Es por eso que la comunicacin de MONICHAT debe
contar con un sistema computarizado para producir y mejorar sus actividades.
7.2 Importancia:
El chat. El casi nuevo sistema de comunicacin, cada vez va adquiriendo mayor
importancia, sobretodo el chat es para muchos el medio ms fcil y cmodo para
divertirse y pasar el rato, aunque no slo sirve para eso, hay quien encuentra a su
media naranja en el chat, o gente que se hace muy amigos, o... El chat sirve para
muchas cosas.
4
8. MAGNITUD Y LIMITACION
8.1 Magnitud:
Las funciones del proyecto que se va ejecutar abarca un 100% del diseo
cliente/servidor ya que se va a controlar: el chat entre 2 computadoras.
5.2 Limitacin:
El sistema que se implantara para la comunicacin de computadoras para su respectivo
chat en redes locales privadas.
9. MARCO TEORICO
Un Chat est conformado por una o varias salas o canales, los cuales son cuartos
virtuales en donde la gente se rene para comunicarse e intercambiar ideas sobre un
tema en particular, o puedes platicar en privado con personas conocidas o
desconocidas. Puedes crear tu propio club de amigos o hacerte miembro de alguno de
5
los clubes que ya existen, estos clubes estn clasificados por temas como salud,
romance, medicina, msica, cine, cultura, etc.
Tcnicamente podemos decir que los Chat room son cuartos virtuales que se
encuentran en un servidor de Internet el cual administra todos los mensajes, tanto los
que mandas como los que recibes.
Los programas de chat ms populares son:
Google Talk (ingls) Google Talk es un programa gratuito de Google que te permite
llamar o enviar mensajes instantneos gratis a tus amigos a cualquier hora y a cualquier
lugar del mundo. Para utilizarlo es necesario tener una cuenta de correo Gmail. Las
cuentas de correo Gmail se obtienen por invitacin de otro usuario Gmail.
6
ICQ (espaol), fue el primer programa de mensajera instantnea de Internet. Permite
conversacin de texto, de voz y de vdeo.
Parece que los orgenes del Chat y toda su psicologa asociada que ha modificado las
relaciones interhumanas no tuvieron lugar en las computadoras, ni en las arquitecturas
de redes, ni en la globalizacin, ni en la nueva sociedad competitiva ni con stress, sino
en algo mucho ms sencillo y humano. Comunicarse, para el hombre es tan natural e
imprescindible como respirar. Y durante las ltimas dcadas del siglo xx, las diversas
formas de hacerlo han sufrido cambios tan profundos y vertiginosos que sus redes
constituyen la nueva atmsfera del planeta. La comunicacin es pues un fenmeno en
el que convergen todas las ciencias del hombre y los ms increbles avances tcnicos.
7
NetBeans es un entorno de desarrollo, hecho principalmente para el lenguaje de
programacin Java. Existe adems un nmero importante de mdulos para extender el
NetBeans IDE. NetBeans IDE es un producto libre y gratuito sin restricciones de uso.
El Visual Web Pack Permite rpida y visualmente, construir aplicaciones web estndar,
incluido Soporte para AJAX y componentes JSF.
Ruby Posee facilidades para el desarrollo de aplicaciones en ruby y ruby on rails, con
mejoras sobresalientes en las nuevas versiones del IDE.
PHP NetBeans permite crear aplicaciones Web con PHP 5, un potente debugger
integrado y adems viene con soporte para Symfony un gran framework MVC escrito en
php. Al tener tambin soporte para AJAX, cada vez ms desarrolladores de
aplicaciones LAMP o WAMP, estn utilizando NetBeans como IDE.
Python NetBeans permite crear aplicaciones con python ya que posee un motor para
escribir (resaltando la sintaxis), identificar errores y el debugger. Sin duda alguna,
netbeans se ha convertido en un IDE apto para la mayora de los lenguajes de
programacin opensource modernos. Tambin se estima que dar para soporte GUI
para varias libreras grficas como son PyQt y GTK. Se espera que salga una versin
con motor para soporte para Jython, con acceso a todos las libreras de java e
incluyendo soporte para Swing y tambin para las libreras grficas de python que ya
mencionamos.
8
Cableado de Red:
El cableado estructurado es un sistema de cables de cuatro pares retorcido
(Twisteados) de 100 denominados UTP, que permite su uso con cualquier tipo de red
de datos y comunicaciones, lneas de telefona, audio, video, etc.
Redes:
Infraestructura cableada, conexiones, elementos de comunicacin configuraciones de
redes informticas.
Base de Datos:
Normalmente ingresamos informacin en ellas y buscamos respuestas que aparecen
en los listados que se obtienen de ellas para realizar cualquier programa es lo primero.
9
10. IDEA A DEFENDER
Los chats tienen toda una serie de cdigos o smbolos que se utilizan frecuentemente
para expresar estados de nimo o simplemente comentarios especiales
INDEPENDIENTE DEPENDIETE
Protocolos de comunicaciones SISTEMA PARA EL Chat de
Computadoras
10
12. METODOLOGIA INVESTIGATIVA
11
13. RESULTADOS ESPERADOS
NOVEDAD
12
14. VIABILIDAD
Legal. Segn nuestra propia apreciacin el desarrollo de este sistema no tendr ningn
problema legal pero eso si la reproduccin del mismo solo nos compete a las
programadores.
Econmica. Nosotros contamos con los recursos necesarios para realizar la inversin
y la elaboracin de este proyecto y el costo real de la puesta en marcha del proyecto;
para lo cual hemos realizado un presupuesto de la inversin que realizaremos hasta
que el sistema est en funcionamiento. , ya que los resultados sern exitosos
13
15. MARCO ADMINISTRATIVO
Recursos Humanos
Investigadores
Tutor
Docente
Recursos Materiales
Computadora
Impresora
Cableado de Red
Ponchadora
Conectores
Hojas de papel bond
Cd
Tinta de Impresora
Recursos Tcnicos
Windows xp
Windows 7
Red LAN
Netbeans
Java
14
CAPTULO I: FUNDAMENTACIN TERICA DE LA PROPUESTA
COMUNICACIN EN JAVA
En Java, crear una conexin socket TCP/IP se realiza directamente con el paquete
java.net.
El cliente establece una conexin con la mquina host a travs del puerto que se
designe en puerto# .
Hay una cuestin al respecto de los sockets, que viene impuesta por la implementacin
del sistema de seguridad de Java. Actualmente, los applets slo pueden establecer
conexiones con el nodo desde el cual se transfiri su cdigo.
15
MODELO OSI
Durante los aos 60 y 70 se crearon muchas tecnologas de redes, cada una basada en
un diseo especfico de hardware. Estos sistemas eran construidos de una sola pieza,
una arquitectura monoltica. Esto significa que los diseadores deban ocuparse de
todos los elementos involucrados en el proceso, estos elementos forman una cadena
de transmisin que tiene diversas partes: Los dispositivos fsicos de conexin, los
protocolos software y hardware usados en la comunicacin.
Capa de Red o Capa Internet: Es la encargada de enviar los datos a travs de las
distintas redes fsicas que pueden conectar una mquina origen con la de destino de la
informacin. Los protocolos de transmisin, como el IP estn ntimamente asociados a
esta capa.
Capa de Aplicacin: Conformada por los protocolos que sirven directamente a los
programas de usuario, navegador, e-mail, FTP, TELNET, etc.
16
Respondiendo a la teora general imperante el mundo de la computacin, de disear el
hardware por mdulos y el software por capas, en 1978 la organizacin ISO
(International Standards Organization), propuso un modelo de comunicaciones para
redes al que titularon "The reference model of Open Systems Interconnection",
generalmente conocido como MODELO OSI.
Esto supone por ejemplo, que dos softwares de comunicacin distintos puedan utilizar
el mismo medio fsico de comunicacin.
17
en las capas 1, 2 y 3. Finalmente una estacin de trabajo de usuario generalmente
maneja las capas 5, 6 y 7.
En lo que respecta al software, hay que sealar que cada capa utiliza un protocolo
especfico para comunicarse con las capas adyacentes, y que aade a la cabecera del
paquete cierta informacin adicional.
18
Tipos de Protocolos de Comunicaciones
Privado.- es aquel que ha sido desarrollado por una sola compaa para uso exclusivo
de sus clientes, por lo que, sus caractersticas no se hace pblicas.
Abierto.- aquel en el cual sus caractersticas son de libre acceso, tanto a empresas
como a usuarios, los cuales pueden obtener la suficiente documentacin para su
implementacin.
Vamos a exponer otras clases que resultan tiles cuando estamos desarrollando
programas de comunicaciones, aparte de las que ya se han visto. El problema es que la
mayora de estas clases se prestan a discusin, porque se encuentran bajo el directorio
sun. Esto quiere decir que son implementaciones Solaris y, por tanto, especficas del
Unix Solaris. Adems su API no est garantizada, pudiendo cambiar. Pero, a pesar de
todo, resultan muy interesantes y vamos a comentar un grupo de ellas solamente que
se encuentran en el paquete sun.net.
Socket
19
ServerSocket
Es un objeto utilizado en las aplicaciones servidor para escuchar las peticiones que
realicen los clientes conectados a ese servidor. Este objeto no realiza el servicio, sino
que crea un objeto Socket en funcin del cliente para realizar toda la comunicacin a
travs de l.
DatagramSocket
DatagramPacket
MulticastSocket
Clase utilizada para crear una versin multicast de las clase socket datagrama.
Mltiples clientes/servidores pueden transmitir a un grupo multicast (un grupo de
direcciones IP compartiendo el mismo nmero de puerto).
NetworkServer
NetworkClient
20
SocketImpl
BASE DE DATOS
Tablas: unidad donde crearemos el conjunto de datos de nuestra base de datos. Estos
datos estarn ordenados en columnas verticales. Aqu definiremos los campos y sus
caractersticas. Ms adelante veremos qu es un campo.
Consultas: aqu definiremos las preguntas que formularemos a la base de datos con el
fin de extraer y presentar la informacin resultante de diferentes formas (pantalla,
impresora...)
Formulario: elemento en forma de ficha que permite la gestin de los datos de una
forma ms cmoda y visiblemente ms atractiva.
Informe: permite preparar los registros de la base de datos de forma personalizada para
imprimirlos.
Campo: unidad bsica de una base de datos. Un campo puede ser, por ejemplo, el
nombre de una persona. Los nombres de los campos, no pueden empezar con
espacios en blanco y caracteres especiales. No pueden llevar puntos, ni signos de
exclamacin o corchetes. Si pueden tener espacios en blanco en el medio. La
21
descripcin de un campo, permite aclarar informacin referida a los nombres del
campo. El tipo de campo, permite especificar el tipo de informacin que cargaramos en
dicho campo, esta puede ser:
S/No: campo lgico. Este tipo de campo es slo si queremos un contenido del tipo
S/No, Verdadero/Falso, etc.
Objeto OLE: para introducir una foto, grfico, hoja de clculo, sonido, etc.
Asistente para bsquedas: crea un campo que permite elegir un valor de otra tabla o de
una lista de valores mediante un cuadro de lista o un cuadro combinado
El lenguaje Java proporciona una serie de paquetes que incluyen ventanas, utilidades,
un sistema de entrada/salida general, herramientas y comunicaciones. En la versin
actual del JDK, los paquetes Java que se incluyen son:
java.applet
Este paquete contiene clases diseadas para usar con applets. Hay una clase Applet y
tres interfaces: AppletContext, AppletStub y AudioClip.
22
java.awt
El paquete Abstract Windowing Toolkit (awt) contiene clases para generar widgets y
componentes GUI (Interfaz Grfico de Usuario). Incluye las clases Button, Checkbox,
Choice, Component, Graphics, Menu, Panel, TextArea y TextField.
java.io
java.lang
Este paquete incluye las clases del lenguaje Java propiamente dicho: Object, Thread,
Exception, System, Integer, Float, Math, String, etc.
java.net
Este paquete da soporte a las conexiones del protocolo TCP/IP y, adems, incluye las
clases Socket, URL y URLConnection.
java.util
Este paquete es una miscelnea de clases tiles para muchas cosas en programacin.
Se incluyen, entre otras, Date (fecha), Dictionary (diccionario), Random (nmeros
aleatorios) y Stack (pila FIFO).
23
SIMBOLOS DE FLUJOGRAMA
El flujo grama utiliza un conjunto de smbolos para representar las etapas del proceso
24
Mientras (Fin Mientras): estructura repetitiva lgica,
permite repetir un bloque de procesos mientras se evalu
como verdadera la condicin propuesta.
25
1.3 ARQUITECTURA CLIENTE / SERVIDOR
1.3.1 Antecedentes
1.3.2 Cliente/Servidor
26
los servicios estndares de alto nivel propuestos en Internet funcionan segn este
modelo.
Los principales componentes del esquema cliente/servidor son entonces los Clientes,
los Servidores y la infraestructura de comunicaciones.
En este modelo, las aplicaciones se dividen de forma que el servidor contiene la parte
que debe ser compartida por varios usuarios, y en el cliente permanece slo lo
particular de cada usuario.
27
servicio particular, por ejemplo: servidores de impresin, servidor de archivos, servidor
de correo electrnico, etc.
Por su parte los servidores realizan, entre otras, las siguientes funciones:
Para que los clientes y los servidores puedan comunicarse se requiere una
infraestructura de comunicaciones, la cual proporciona los mecanismos bsicos de
direccionamiento y transporte.
El servidor presenta a todos sus clientes una interfase nica y bien definida.
El cliente no necesita conocer la lgica del servidor, slo su interfase externa.
El cliente no depende de la ubicacin fsica del servidor, ni del tipo de equipo
fsico en el que se encuentra, ni de su sistema operativo.
28
Los cambios en el servidor implican pocos o ningn cambio en el cliente.
Como ejemplos de clientes pueden citarse interfaces de usuario para enviar comandos
a un servidor, APIs para el desarrollo de aplicaciones distribuidas, herramientas en el
cliente para hacer acceso a servidores remotos (por ejemplo, servidores de SQL) o
aplicaciones que solicitan acceso a servidores para algunos servicios. Como ejemplos
de servidores pueden citarse servidores de ventanas como X-Windows, servidores de
archivos como NFS, servidores para el manejo de bases de datos (como los servidores
de SQL), servidores de diseo y manufactura asistidos por computador, etc.
1) Ventajas
a) Aumento de la productividad:
Los usuarios pueden utilizar herramientas que le son familiares, como hojas de clculo
y herramientas de acceso a bases de datos.
29
mquinas considerablemente ms baratas que las requeridas por una solucin
centralizada, basada en sistemas grandes.
Se puede integrar PCs con sistemas medianos y grandes, sin que todas las mquinas
tengan que utilizar el mismo sistema operacional.
30
siempre necesario transmitir informacin grfica por la red, pues sta puede residir en
el cliente, lo cual permite aprovechar mejor el ancho de banda de la red.
Tanto el cliente como el servidor pueden escalar para ajustarse a las necesidades de
las aplicaciones. Las UCPs utilizadas en los respectivos equipos, pueden
dimensionarse a partir de las aplicaciones y el tiempo de respuesta que se requiera.
La existencia de varias UCPs proporciona una red ms fiable: una falla en uno de los
equipos, no significa necesariamente que el sistema deje de funcionar.
En una arquitectura como sta, los clientes y los servidores son independientes los
unos de los otros, con lo que pueden renovarse para aumentar sus funciones y
capacidad de forma independiente, sin afectar al resto del sistema.
2) Desventajas
31
Hay una alta complejidad tecnolgica al tener que integrar una gran variedad de
productos.
Por un lado, es importante que los clientes y los servidores utilicen el mismo
mecanismo (por ejemplo sockets o RPC), lo cual implica que se deben tener
mecanismos generales que existan en diferentes plataformas.
32
centralizada). Tambin la interface grfica de usuario puede a veces ralentizar el
funcionamiento de la aplicacin.
Proyecto
33
CAPTULO II: DIAGNSTICO DEL PROBLEMA
REQUERIMIENTOS:
34
2.2 FUENTES DE INVESTIGACIN
Se utilizara las fuentes de informacin primarias, ya que son las herramientas que
ayudaran directamente a la recopilacin ms exacta de datos para su anlisis.
Primarias
Encuestas
Entrevistas
Observacin
Encuestas
35
2.3 SEGMENTACIN
2.3.1. GEOGRAFICA
SEGMENTACIN GEOGRFICA
PAIS
PROVINCIA ECUADOR
CIUDAD
SIERRA
CIUDAD
36
2.3.2. DEMOGRAFICA
2.3.3. PSICOGRAFICA
Programadores
Tcnicos
Usuario normal
2.3.4. COMERCIAL
Comerciantes
Distribuidores
Detallistas
37
2.4 INVESTIGACIN DE MERCADOS
2.4.1. ENCUESTA
NOMBRE:..............
DIRECCIN:...........................................CI:
SI.. NO..
Diario... ( )
38
Semanal. ( )
Mensual( )
Nunca.( )
Si
Contado.
Cheque...
Cheque posfechado
Si.. No.
39
Si.. No
Si.. No.
Porque:
Gracias.
Firma
40
2.4.2 MUESTRA
k: es una constante que depende del nivel de confianza que asignemos. El nivel de
confianza indica la probabilidad de que los resultados de nuestra investigacin sean
ciertos: un 95,5 % de confianza es lo mismo que decir que nos podemos equivocar
con una probabilidad del 4,5%.
41
Los valores k ms utilizados y sus niveles de
confianza son:
K 1,15 1,28 1,44 1,65 1,96 2 2,58
Nivel de
75% 80% 85% 90% 95% 95,5% 99%
confianza
N 350.000
K 2
E 5%
P 0.2
Q O.8
CALCULAR
MUESTRA
42
2.4.4. ANALISIS DE LA INVESTIGACION DE MERCADOS
Frecuencias
SI 95%
NO 5%
95
ANALISIS.
43
CAPTULO III
44
FASE 4. EVALUACION DEL SISTEMA: Cuando el experto y el ingeniero de
conocimiento quedan satisfechos de que el sistema est completo, puede ser
probado ya contra los criterios de desempeo establecidos en etapas anteriores.
Es tambin tiempo de de mostrar el sistema a al institucin e invitar a otros
expertos a probarlo y presentar nuevos casos.
45
3.1.1. Descripcin del Producto.
1. Se inicia el servidor
2. El servidor se mantiene escuchando cualquier peticin de un cliente para
conectarse.
3. El servidor acepta al cliente.
4. El servidor lanza un hilo de comunicacin con el cliente.
5. Por el hilo se envan y reciben mensajes a travs del servidor entre todos los
clientes.
6. Si el cliente cierra la comunicacin el hilo se rompe y se corta la comunicacin
con ese cliente.
1. Se inicia el cliente
2. El cliente lanza una peticin al servidor para conectarse
3. El servidor asigna un hilo al cliente al ser aceptado.
4. El cliente enva y recibe mensajes por el hilo hacia todos o hacia algn usuario
especfico, usando al servidor como puente para las comunicaciones.
46
Hilos: Un hilo es un flujo de ejecucin de cdigo, y mediante hilos, podemos hacer que
nuestros programas aparentemente realicen varias tareas al mismo tiempo. Por
ejemplo, un cdigo podra interaccionar con el usuario mientras realiza tareas de
segundo plano de gran consumo de tiempo. Los hilos separados realmente no se
ejecutan al mismo tiempo(a menos que se tenga una maquina multiprocesador); en
realidad cada hilo obtiene secuencias de tiempo del mismo procesador. Ayuda para la
aplicacin: Siga los siguientes pasos:
47
3.1.2. Detalle de herramientas utilizadas (hardware y software)
El Sistema de chat en java fue desarrollado, bajo los siguientes parmetros, los
mismos que se han dividido en:
Hardware
1GB RAM
Laptop HP tx2000
2GB RAM
Generales
Parmetro Sistema
Plataforma Windows 7
Sistema Windows 7
Operativo
Lenguaje de Programacin
Parmetro Sistema
48
Herramientas de desarrollo
Parmetro Sistema
El diagrama de flujo es una herramienta que permite visualizar un sistema como una
red de procesos funcionales, conectados entre s por conductos y tanques de
almacenamiento de datos. Siendo ste, una de las herramientas ms comnmente
usadas, sobre todo por sistemas operacionales en los cuales las funciones del sistema
son de gran importancia y son ms complejos que los datos que ste maneja.
el diagrama de clases
49
50
3.1.3. Esquema del Software
51
3.1.5 Diseo de interfaces
1 MENU DEL SOFTWARE
OPCION 1 REGISTRARSE
52
OPCION 2 PARA EL SERVIDOR SE INGRESA
53
AQU EN INTRODUCIR IP SE INGRESA IP DONDE ESTA EL SERVIDOR EN ESTE
CASO ES LOCALHOST PUEDE SER COMPU-PC
54
INCLUSIVE TIENES LA AYUDA
55
3.2. CONCLUSIONES
Los Chats en nuestra poca estn dando un gran giro comercial, ya que no solo
se utiliza para intercomunicar a un grupo de gente, sino que tambin, para
establecer una relacin Cliente-Vendedor.
Se logr cumplir con los objetivos planteados, del Proyecto Integrador, adems,
se cumpli el cronograma establecido y se ha utilizado en forma eficiente la parte
econmica.
Existen varias funcionabilidades, que tiene Java, puesto que facilita el trabajo en
todos los sentidos al programador.
En el desarrollo del diseo de las interfaces, increment el potencial creativo en
el momento de aplicar ideas en cada una de las aplicaciones de las interfaces.
3.3. RECOMENDACIONES
56
11. CRONOGRAMA DE ACTIVIDADES
57
12. BIBLIOGRAFIA
- Sitioargentina.com.ar.
- http://www.mitecnologico.com
- Howstuffworks, como los cambios trabajan
- http://ibs.howstuffwork.com/john/exchange-rute.htm
- http://www.mailxmail.com/curso-mantenimiento-computadoras-
pc/mantenimiento
- http://eliana-10-21.blogspot.com/
- http://www.microsoft.com/latam/technet/articulos/tn/sep06-
02.mspx
- http://es.wikipedia.org/wiki/NetBeans
- http://www.netbeans.org/kb/60/java/quick
http://wiki.netbeans.org/Avbravo_Tutoria
http://java.sun.com/docs/books/tutorial/
58