Tarea II - Servicios Web - Juego

El objetivo de esta tarea es aprender sobre Servicios Web (interoperabilidad - cliente/servidor).

Esta tarea consiste en programar el juego de naipe 21. Usted tendrá total creatividad en cuanto a la "idiosincracia" del 21, pero debe implementar un 21 al final y al cabo. No es necesario que gane, pero no lo haga totalmente estúpido, es necesario que juegue.

La lógica del juego debe estar programada en PHP. Por ejemplo:

<?php
$juego = new Juego();
$juego->jugar(); // juega la máquina
$juego->adversario("parar"); // juega el humano pidiendo que no le den más naipes
//etc.
?>

Note que el ejemplo anterior es únicamente una ilustración del nombre que se le podría poner al objeto para jugar y de dos posibles métodos que el objeto podría tener.

Además usted deberá programar la interfaz gráfica para poder jugar en Java, .Net o Flash. Para ello deberá compartir su juego con el mundo por medio de SOAP. O sea que las interfaces gráficas consumidoras de la lógica de su juego serán clientes SOAP. Con SOAP puede utilizar la implementación de PHP 5. No podrá utilizar ninguna de las tres implementaciones siguientes: PEAR::SOAP, NuSOAP o XML-RPC.

Deberá haber una opción para ver los diez mejores jugadores ordenados en tiempo de duración, de sus juegos, en segundos. (Guárdelos en una base de datos).

Debe entregar un Manual de Diseño con indicaciones de cómo resolvió el problema. El manual debe contemplar los siguientes apartados y cualquier otro que usted considere necesario:

  1. Portada
  2. Tabla de Contenido
  3. Introducción
  4. Análisis del Problema
  5. Diseño de Clases (UML) o Diagramas de Flujo
  6. Casos de Prueba
  7. Resultados de los Casos de Prueba
  8. Análisis de los Resultados de las Pruebas
  9. Código Fuente impreso con su respectiva documentación interna

La tarea debe ser entregada el 7 de noviembre del 2008 sin falta. No habrán prorrogas. Habrá una reducción de 2.5% por día natural de atraso (sobre el porcentaje, no sobre la nota).

Este ejemplo le puede ser útil.