WEB BLOG
this site the web

4.3.4 Aspectos de diseño para el sistema.

Aspectos complementarios para el diseño

Seguridad

El análisis va a determinar las acciones que los usuarios pueden o no realizar en función de su situación en el juego, pero hay diversas formas de saltarse estas reglas mediante el funcionamiento normal de las páginas web. A continuación se detallan algunas medidas para evitar esto:
• Comprobar que el usuario puede ver la página o realizar la acción solicitada, ya que la web permite acceder directamente escribiendo la dirección de una página, pudiendo acceder de esta forma a páginas que no tienen un enlace directo por no estar permitidas a ese usuario.
• Comprobar cada parámetro recibido, asegurándose de que los valores que toma son coherente, ya que ha podido modificarlos mediante el método anterior e incluso creando sus propios formularios.
• No permitir que el texto introducido por el usuario pueda mostrar etiquetas HTML, ya que esto permitiría a un jugador incluir enlaces u otros mecanismos que al ser usados por otros jugadores les podría conducir a realizar acciones sin su conocimiento.

Rendimiento

Gran parte de las decisiones que se han de tomar, y que pueden influir incluso en el análisis recaen sobre la necesidad de ajustar el consumo de recursos del sistema a las posibilidades de la máquina. Para lograr incorporar el mayor número de características y jugadores es necesario afinar cada uno de los mecanismos intentando sacar el máximo rendimiento a los siguientes recursos:

• Ancho de banda: Es la cantidad de información que se puede enviar desde el servidor hasta los ordenadores clientes en un periodo de tiempo. El mejor aliado para mejorar el rendimiento en este concepto es la caché. Tanto el cliente como algunos servidores intermedios almacenan páginas del servidor de manera que solo tienen que descargarlas una vez. Es trabajo del servidor indicar cuando va a volver a cambiar la página, lo que muchas veces no se sabe con exactitud, pero se puede aproximar. En nuestro caso hay páginas que no cambiarán, y otras que lo harán con una periodicidad definida. Hay que estudiar todas las posibilidades adaptando el sistema para que consuma el menor ancho de banda posible.
• Capacidad de proceso: El proceso de datos en nuestro caso se puede dividir en aquel necesario para la creación de las páginas dinámicas, y los procesos periódicos que simulan el mundo. El primer caso es mas sencillo y a veces innecesario gracias a la caché. Aún así hay muchas peticiones debido al alto número de usuarios, con lo que habrá que tratar de optimizar cada petición de página. Los procesos periódicos si consumirán mas recursos ya que alguno tendrá incluso que tratar variables en todo el mundo de Legendarya. Quizás se pueda para mejorar la productividad dividiendo estos procesos para realizalos en varios pasos en distintos momentos en vez de todos seguidos.
• Capacidad de almacenamiento: Otro problema a tratar es la capacidad del disco duro ya que se va a almacenar mucha información, pero sobre todo por que el consumo de espacio dependerá entre otras cosas de las acciones de los usuarios. Se pueden diferenciar dos tipos de recursos: aquellos mas sencillos pero imprescindibles (como ejércitos, ciudades, edificios), y aquellos complicados y de gran tamaño pero a veces irrelevantes (como libros, obras de arte, objetos,...) que pueden caer en desuso. Para los primeros se ha de reservar un espacio fijo por si los usuarios terminan aprovechando todas las posibilidades del juego, mientras que los segundos se conformarán con el espacio restante, en principio bastante amplio, pero que podrá ir reduciéndose al aumentar el otro. En caso de que el espacio se reduzca demasiado se utilizará un algoritmo que liberará estos recursos irrelevantes, comenzando por aquellos que menos uso han recibido.

Accesibilidad

Al sistema se va a poder acceder de tres maneras distintas:
• Mediante un interfaz complejo, que use las últimas tecnologías (XHTML, ecmascript, CSS, SVG,...), que pueda ser usado por la mayoría de las personas pero que no sacrifique la calidad a un acceso generalizado con cualquier navegador.
• Con un interfaz diseñado para usuarios invidentes mediante el uso de XHTML, y que por extensión pueda ser usado por cualquier otro usuario. Se podrán añadir hojas de estilo e incluso scripts siempre que el incluirlos no impida el buen funcionamiento para los usuarios invidentes o con software limitado (navegadores antiguos).
• A través de teléfonos móviles con un interfaz WML.

Usabilidad

Mide la facilidad de uso del interfaz. En este campo el objetivo es que no sea necesario leer un manual para saber como realizar las distintas acciones, que la intuición sea suficiente para que cualquie usuario pueda navegar por el interfaz. Se realizarán abundantes pruebas con usuarios reales mediante diversos prototipos hasta sacar la versión definitiva.

Aspectos legales

Hay dos leyes que van a afectar al diseño en mayor o menor medida:

• Ley de Servicios de la Sociedad de la Información (LSSI): El aspecto que nos interesa de esta ley es aquel que obliga a controlar los contenidos de un sitio, no permitiendo aquellos que atenten contra los derechos humanos. Esto se traduce en que cualquier contenido que pueda editar el usuario debe poder eliminarse fácilmente.
• Ley Orgánica de Protección de Datos (LOPD): Legisla sobre el tratamiento de los datos de carácter personal. Estos son definidos como cualquier información concerniente a personas físicas identificadas o identificables. Hay que aclarar si se va a almacenar esta información y si es así adaptar el sistema a los requisitos establecidos por esta ley.

Posibilidad de ampliación

El sistema va a ser planteado para 50.000 usuarios, pero si todo va bien es posible que se quede corto en poco tiempo. En vez de diseñar un nuevo sistema es preferible dejar este preparado para poder adaptarlo llegada la necesidad. A continuación se muestran un par de ideas a seguir en este sentido:

• Durante el diseño se harán cálculos sobre las necesidades Hardware para un sistema de hasta un millón de usuarios. Para conocer estos requisitos con exactitud habrá también que realizar seguimiento del funcionamiento del sistema en la fase de pruebas y una vez puesto en marcha.
• Se diseñará también unas funciones que permitan exportar el personaje de un usuario del viejo servidor al nuevo, lo que incluirá sus conocimientos y los objetos que lleve encima.

0 comentarios:

Publicar un comentario

 

W3C Validations

Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Morbi dapibus dolor sit amet metus suscipit iaculis. Quisque at nulla eu elit adipiscing tempor.

Usage Policies