Seguimos pensando en este supuesto proyecto.
Me pongo la gorra de analista de dominio y me entrevisto con el cliente (el ayuntamiento de Alcalá de Henares) y establecemos un Dominio del Problema.
Con el Dominio del Problema vamos a pretende establecer contribuir más a la comprensión del problema. Determinar un lenguaje común entre los desarrolladores y los clientes.
Dominio del Problema de ISemaphoresComplutum
La ciudad de Alcalá de Henares ha crecido bastante en los ultimos años, generandose atascos en las horas puntas en las vias principales. Los coches a la entrada de la carretera principal por la vía complutense se van a cumulando y los semaforos no regulan está densidad de tráfico.
Entonces, el sistema ISemaphoresComplutum, detectará a través de sensores instalados en las vías, la velocidad de los coches y el número. De esta forma, a través de estos datos, controlará los semáforos para permitir disminuir está densidad de tráfico.
Debido a que para permitir un tráfico menos denso, los semaforos tienen que estar en verde más tiempo, y los contrarios en rojo, es posible que mientras se está impidiendo que aumente la densidad del tráfico en un tramo, aumente la densidad del tráfico en otro tramo. El sistema debe de balancear este problema y permitir que ningún trámo hay mucha densidad. Pero si el sistema no puede, por exceso de tráfico, dará prioridad a un tramo (normalmente el principal).
Los semaforos deberán prevenir un flujo importante de coches. Si en un tramo están entrando muchos coches, de forma que haya un posible atasco, el sistema deberá poner este semáforo en verde para que el flujo grande de coches no forme un atasco. Esto es posible si en el cruze hay poco tráfico. Si hay tráfico, el sistema deberá balancear y permitir que hay un minimo de atasco. De nuevo, el tramo tendrá su prioridad con respecto a otros.
Si por ejemplo, en un cruze, todos los tramos están con una alta densidad, el sistema deberá balancear los tiempos de verde y rojo de cada semaforo de forma se reduzca la densidad en cada tramo dependiendo de la prioridad de cada uno.
Si hay una alta densidad en tramos consecutimos, el sistema dará a estos la máxima prioridad para minimizar la densidad del tráfico, siempre y cuendo en los demás tramos no alcanze la misma densidad de tráfico.
Hasta aquí, establecemos el dominio del problema que como siempre es posible añadir o moficiar en el futuro (proceso iterativo).
Como RUP va dirigido principalmente a reducir el RIESGO del proyecto. Un primer riesgo identificado es ¿COMO el sistema controlará los semáforos? es decir ¿qué algoritmo se usará para que el tráfico de Alcalá sea más fluido?. Este es un riesgo crítico. Si no se resuelve este riesgo, el proyecto se va traste.
Acciones a tomar para minimizar el riesgo anterior.
- Indagar por los métodos de inteligencia artificial sobre temas de control de tráfico (lógica difusa?)
- Crear un prototipo rápido donde se vea que el sistema inteligente de ISemaphoresComplutum es capaz de regular el tráfico. Para esto supondremos que:
* Un calle recta donde se cruzan dos calles.
* Los coches se moveran a una velocidad constante en un tramo. Es decir, o a V1 o a 0 km/h. Cambiaran la velocidad según este el semaforo en verde o en rojo. El comportamiento de los coches ya se mejorará en la próxima iteración.
* Las calles serán de un solo sentido.
Con lo anterior queda definida la primera iteración y los objetivos a alcanzar en la primera iteración en la fase de Concepción.
miércoles, 16 de julio de 2008
lunes, 7 de julio de 2008
ISemaphoresComplutum Fase Concepción (2)
Después de unos días, tenemos preparado un primer borrador del Documento de Visión. A si que con esto, vamos a una entrevista con los técnicos del Alcalde de Alcalá de Henares y estamos de acuerdo en este documento.
Con este documento, las dos partes tenemos un visión común del producto a desarrollar. Así de tal forma, que nos servirá a la hora de la entrega si cumple o no las espectativas del cliente.
Por supuesto, este documento será siempre revisado, y cuando el documento Visión, permanezca estable, es un sintoma de que casi todos los requisitos de usuario han sido reocogidos.
Ahora, uno de los siguientes pasos, es identificar los riesgos asociados, e intentar mitigarlos.
Visión de ISemaphoresComplutum
Roles afectados
Los operadores de la policía local.
Restricciones
- El sistema ISemaphoreComplutum se tendrá que comunicar con el sistema de señalamiento actual de semáforos. Es decir, con el sistema que controla el funcionamiento de los semáforos.
- El sistema leerá el tráfico a través del Sistema de lectura del tráfico en Alcalá.
Enunciado del problema
El problema del tráfico en Alcalá se está agravando, y más aún cuando se construyan más viviendas y se entierren las vías del tren. Todo esto ocasionará más contaminación, ya que los vehículos estarán más tiempo parados y disminuirá la calidad de vida en Alcalá.
Todo esto afecta tanto al gobierno municipal como al ciudadano de a pie y el impacto sería una sensación de pérdida de calidad de vida en Alcalá. Desviándose así el gobierno municipal de sus objetivos.
Una solución exitosa sería instalar un sistema de control de semáforos inteligente. Este sistema leerá en tiempo real el tráfico en Alcalá y en función de esta lectura controlaría los semáforos para permitir un tráfico fluido.
Lista de características
-Leer el tráfico de Alcalá y en base a esto, controlar los semáforos para permitir un tráfico fluido.
- Permitir la edición de calles y semáforos para las actuales y futuras construcciones de calles.
- Crear simulaciones de tráfico para ver como ISemaphoresComplutum controla el tráfico.
- Ser muy seguro contra ataques, muy estable y de recuperación rápida.
Con este documento, las dos partes tenemos un visión común del producto a desarrollar. Así de tal forma, que nos servirá a la hora de la entrega si cumple o no las espectativas del cliente.
Por supuesto, este documento será siempre revisado, y cuando el documento Visión, permanezca estable, es un sintoma de que casi todos los requisitos de usuario han sido reocogidos.
Ahora, uno de los siguientes pasos, es identificar los riesgos asociados, e intentar mitigarlos.
Visión de ISemaphoresComplutum
Roles afectados
Los operadores de la policía local.
Restricciones
- El sistema ISemaphoreComplutum se tendrá que comunicar con el sistema de señalamiento actual de semáforos. Es decir, con el sistema que controla el funcionamiento de los semáforos.
- El sistema leerá el tráfico a través del Sistema de lectura del tráfico en Alcalá.
Enunciado del problema
El problema del tráfico en Alcalá se está agravando, y más aún cuando se construyan más viviendas y se entierren las vías del tren. Todo esto ocasionará más contaminación, ya que los vehículos estarán más tiempo parados y disminuirá la calidad de vida en Alcalá.
Todo esto afecta tanto al gobierno municipal como al ciudadano de a pie y el impacto sería una sensación de pérdida de calidad de vida en Alcalá. Desviándose así el gobierno municipal de sus objetivos.
Una solución exitosa sería instalar un sistema de control de semáforos inteligente. Este sistema leerá en tiempo real el tráfico en Alcalá y en función de esta lectura controlaría los semáforos para permitir un tráfico fluido.
Lista de características
-Leer el tráfico de Alcalá y en base a esto, controlar los semáforos para permitir un tráfico fluido.
- Permitir la edición de calles y semáforos para las actuales y futuras construcciones de calles.
- Crear simulaciones de tráfico para ver como ISemaphoresComplutum controla el tráfico.
- Ser muy seguro contra ataques, muy estable y de recuperación rápida.
miércoles, 2 de julio de 2008
Primer Encuentro (ISemaphoresComplutum)
Vamos a imaginar (por hacer los post más amenos) que un día me encuentro con el alcalde de mi ciudad, y charlando y charlando, me propone la creación de un sistema de control de semáforos inteligente, para que el sistema, dependiendo del tráfico que haya en Alcalá de Henares, se auto regulen los semáforos de forma que el tráfico sea más fluido, se reduzca la contaminación de la ciudad y los alcalaínos ganen en calidad de vida.
Seguimos charlando sobre el sistema y tomando unas cervezas en el Indalo, se nos ocurrio ponerle a la criatura el nombre de "ISemaphoresComplutum", pero luego al final, lo dejamos en S.C.S.I.A (Sistema de Control de Semaforos Inteligente de Alcalá), pero el nombre en clave se queda en ISemaphoresComplutum.
A si que con esto, quedamos en vernos otro día con sus técnicos para preparar un Documento de Visión para tener una base por donde empezar a trabajar y tener las dos partes una visión conjunta e igual del proyecto. Con lo cual, nos metemos en la Fase de Concepción del RUP. Este documento contendrá:
- Una lista de los roles afectados por el sistema (stakeholders).
- Restricciones
- Enunciado del problema a resolver
- Lista de caracteristicas principales del sistema.
Seguimos charlando sobre el sistema y tomando unas cervezas en el Indalo, se nos ocurrio ponerle a la criatura el nombre de "ISemaphoresComplutum", pero luego al final, lo dejamos en S.C.S.I.A (Sistema de Control de Semaforos Inteligente de Alcalá), pero el nombre en clave se queda en ISemaphoresComplutum.
A si que con esto, quedamos en vernos otro día con sus técnicos para preparar un Documento de Visión para tener una base por donde empezar a trabajar y tener las dos partes una visión conjunta e igual del proyecto. Con lo cual, nos metemos en la Fase de Concepción del RUP. Este documento contendrá:
- Una lista de los roles afectados por el sistema (stakeholders).
- Restricciones
- Enunciado del problema a resolver
- Lista de caracteristicas principales del sistema.
Primer post
En este primer post quería explicar el motivo de este blog.
Y el motivo es muy sencillo. La forma de aprender y mejorar en un área, es practicando. Y si se quiere mejorar en la instanciación del RUP (Rational Unified Process) en un desarrollo software, hay que aplicarlo a los desarrollos software.
A si que, dicho y hecho, vamos a desarrollar, los proyectos que se me ocurran, siguiendo RUP, tanto para bien o como para mal. Pero así, es como se aprende.
Salu2.
Y el motivo es muy sencillo. La forma de aprender y mejorar en un área, es practicando. Y si se quiere mejorar en la instanciación del RUP (Rational Unified Process) en un desarrollo software, hay que aplicarlo a los desarrollos software.
A si que, dicho y hecho, vamos a desarrollar, los proyectos que se me ocurran, siguiendo RUP, tanto para bien o como para mal. Pero así, es como se aprende.
Salu2.
Suscribirse a:
Entradas (Atom)