Está en la página 1de 6

Evaluación arquitectónica de la página web http://www.hotmail.com

1)

Definición de la arquitectura funcional.

La arquitectura funcional del sistema es la siguiente:

a. Inicio de Sesión por Login de Usuarios

b. Registro de Usuarios

c. Recordatorio de contraseña

d. Bandeja de Entrada

e. Bandeja de Salida

f. Elementos Enviados

g. Elementos Eliminados

h. Leer Correos

i. Responder Correos

j. Eliminar Correos

k. Reenviar Correos

l. Cerrar Sesión

Como vemos se deben definir y enumerar cuales son las funciones principales del sistema para poder deducir en los diagramas cuales son los componentes necesarios para plantear una arquitectura lógica adecuada a las necesidades del mismo.

Punto importante para este paso es ver el sistema como un usuario no como un programador, esto nos ayudara a identificar cuáles son las funcionalidades que nos ofrece el mismo, por lo que definiendo estas mencionadas funcionalidades podemos enfocarnos en ir planteando los componentes adecuados para cada funcionalidad en un diagrama macro que englobe todo el sistema.

Base de Datos SQL Server Tabla de Usuarios 2) Definición de la arquitectura basada en
Base de Datos SQL Server
Tabla de Usuarios
2)
Definición de la arquitectura basada en componentes
Se crea la variable de
sesion “correo”
Se crea una solicitud web para
insertar un nuevo usuario en la
BD
<<AJAX>>Para validar los
datos de registro
XML de entrada con
usuario y contraseña
XML de Salida Usuario
Valido o Inválido
De ser válido el
usuario el
TCP- IP
2
TCP- IP
HTTP
XML también devuelve la
información personal de la
cuenta
HTTPS
Página ASP.NET
Bandeja de Entrada
Base de Datos SQL Server
Elementos enviados
Registro de Usuarios
Tabla de Usuarios
Encriptado MD5
1
HTTP
Elementos Eliminados
HTTP
5
Se obtiene de la tabla usuario
las preguntas de seguridad o se
obtiene el correo alternativo
para mandar la contraseña
6
Bandeja de Salida
HTTP
Página ASP.NET
Web Service de Autenticación de
Usuarios
Página ASP.NET
Formulario de Login de Usuarios
HTTP
3
HTTP
TCP- IP
Eliminar Mensaje
Base de Datos SQL Server
Página de Inicio con la información
links a los diferentes buzones de
mensajes
4
Página ASP.NET
Tabla de Usuarios
Base de Datos SQL Server
Base de Datos SQL Server
Olvido su contraseña
Tabla de Mensajes
SMTP
TCP- IP
En caso de solicitar enviar la
pregunta de seguridad al mail
alternativo se utiliza un servidor
de envió de Emails al correo
obtenido de BD
Taba de Contactos para
determinar a quienes le
TCP- IP
9
enviamos el correo
Crear Nuevo Mensaje
HTTP
Se genera un XML de entrada que
contiene las variables: - correo electrónico
y - tipo de buzón solicitado para filtrar los
correos en la búsqueda de BD.
<<AJAX>>
Responder Mensaje
8
7
HTTP
Página ASP.Net
10
Reenviar Mensaje
HTTP
Para redactar un mensaje
Se genera un XML de salida que contiene
todos los correos y la información de los
contactos relacionados a esos emails.
WebService para
buscar correos
SMTP
Página ASP.NET
<<AJAX>>
Mediante el servidor de correo por
Página ASP.Net
11
HTTP
SMTP envió el correo nuevo, el que
12
respondí, o el que reenvié según sea
Para responder un mensaje
el caso
<<AJAX>>
Página que muestra todos los
correos en una tabla del formulario
según el tipo de buzón que se filtró
en base de datos con el link que
recibió el webService desde la
página de inicio
Tabla de Mensajes

Página ASP.Net

Para reenviar un mensaje

HTTP

TCP- IP

Base de Datos SQL Server

y Tabla de contactos

Posibles Tablas utilizadas

Tabla de Usuarios

ID_Usuario

Correo

Nombre y Apellido

Contraseña

Dirección

Tabla de Contactos

ID_contacto

ID_Usuario

Perfil

Status

Conectado

Tabla de Mensajes

ID_Mensaje

ID_Usuario

Contenido del mensaje

Destinatarios

Archivos Adjuntos

Posibles XML utilizados:

Autenticación

Entrada

Salida

<Autenticacion>

<Autenticacion> <Valido>True </Valido> <Nombre>Larry Catarine</Password> <Direccion>Chuao</Direccion> </Autenticacion>

<Password>123</Password>

</Autenticacion>

Buscar mensajes

Entrada

Salida

<Mensajes> <Correo>lacd@hotmail.com</Valido> <Canal>Bandeja de Entrada</Canal> </Mensajes>

<Mensajes> <Correo>lacd@hotmail.com</Correo> <Mail> <Destinatarios>mariap@hotmail.com;carmenD@hotmail.com</Destinatarios> <Hora>23-Oct-2010 10:00 pm</hora> <Mensaje>Hola Saludos a Todos</Mensaje>

</Mail> <Mail> <Destinatarios>ccc@hotmail.com;luis@hotmail.com</Destinatarios> <Hora>24-Oct-2010 10:00 pm</hora> <Mensaje>Hola… ¿Cómo están?</Mensaje>

</Mail>

</Mensajes>

Buscar Contactos

Entrada

Salida

<Contactos> <Correo>lacd@hotmail.com</Valido> </ Contactos >

< Contactos > <CorreoContacto>maria@hotmail.com</CorreoContacto> <CorreoContacto>carmen@hotmail.com</CorreoContacto> <CorreoContacto>luis@hotmail.com</CorreoContacto> <CorreoContacto>petrad@hotmail.com</CorreoContacto> </ Contactos >

3)

Diagrama de Arquitectura de la aplicación

Router HTTP App.properties Aplicación Hotmail SOAP WSAutentication WSMails
Router
HTTP
App.properties
Aplicación Hotmail
SOAP
WSAutentication
WSMails
SMTP Switch mail TCP/IP Pop3 10.20.20.86 :25 Cable de Red RJ45 Base de Datos Hotmail
SMTP
Switch
mail
TCP/IP
Pop3
10.20.20.86 :25
Cable de Red RJ45
Base de Datos Hotmail

10.20.20.80 :80

Servidor WEB

Servidor de Correo SMTP

10.20.20.87 :1521

Servidor SQLServer

El archivo app.properties tiene toda la información para que la aplicación y los webservice pueden consultar leyendo este archivo en donde están ubicados en la red, los otros componentes con los que necesitan comunicarse y su contenido es el siguiente:

aplication.url=http://10.20.20.80:80/Hotmail

wsCorreos.url= http://10.20.20.80:80/WSMail wsCorreos.url= http://10.20.20.80:80/WSAutentication

dataBase.location=tcp://10.20.20.87:1521/SQLServer

dataBase.name=hotmail

smtp.location=tcp://10.20.20.86:25

smtp.mail.location=tcp://10.20.20.86:25/mail

smtp.pop.location=tcp://10.20.20.86:25/pop3

En cuanto a conceptos le recomiendo no que se lo aprendan al caletre pero si que comprendan e interpreten los siguientes conceptos:

Arquitectura del Software Requerimientos no funcionales Aplicación WEB WebService: es un conjunto de protocolos y estándares que sirven para intercambiar datos entre aplicaciones. Distintas aplicaciones de software desarrolladas en lenguajes de programación diferentes, y ejecutadas sobre cualquier plataforma, pueden utilizar los servicios web para intercambiar datos en redes de ordenadores como Internet. La interoperabilidad se consigue mediante la adopción de estándares abiertos. Las organizaciones OASIS y W3C son los comités responsables de la arquitectura y reglamentación de los servicios Web. Para mejorar la interoperabilidad entre distintas implementaciones de servicios Web se ha creado el organismo WS-I, encargado de desarrollar diversos perfiles para definir de manera más exhaustiva estos estándares.

Base de Datos Tablas Relacionales Protocolos http, https, tcp-ip, smtp Servidor Web XML Archivos de propiedades Formularios Encriptación Red de Computadoras Variable de Sesion Sesiones Plataformas de desarrollo Microsoft y unix Comparaciones entre java y .net