Upload
others
View
0
Download
0
Embed Size (px)
Citation preview
Capítulo 4
Diseño e implementación
4.1 Diagrama de flujo de datos SISTEMA AUTOMATIZADO PARA EL CONTROL DE TRÁFICO VIAL: SACTVi Los DFDs que representan el funcionamiento a detalle se pueden apreciar en
el apéndice D.
USUARIO
SACTVi
ADMINISTRADOR
USUARIOADMINISTRADOR
SOLICITUD DE RUTA ÓPTIMA
SOLICITUD DE OPERACION
RUTA ÓPTIMA GENERADA
OPERACIÓN REALIZADA
4.2 Diccionario de datos SOLICITUD DE RUTA ÓPTIMA= origen + destino.
SOLICITUD DE OPERACIÓN = altas bajas o modificaciones a base de datos.
OPERACIÓN REALIZADA = final de operación realizada.
RUTA ÓPTIMA GENERADA = Dijkstra genera ruta óptima, se visualiza en mapa.
CONFIRMACIÓN DE RUTA ÓPTIMA = ruta es mandada a vigilancia continua.
SOLICITUD GENERACIÓN NUEVA RUTA = si ruta optima tiene problemas, se
solicita una nueva.
SOLICITUD DE LUGAR ORIGEN = identificar el lugar origen.
SOLICITUD DE LUGAR DESTINO = identificar el lugar destino.
SOLICITUD DE TIPO DE OPERACIÓN = identificar que tipo de operación va a hacer
el administrador, altas, bajas o modificaciones.
DESTINO DEFINIDO =el destino ya identificado es mandado a generar ruta óptima.
ORIGEN DEFINIDO = el origen ya identificado es mandado a generar ruta óptima.
TIPO DE OPERACIÓN = la operación identificada es mandada es mandada a realizar
operación.
OPERACIÓN REALIZADA = se ejecuta la operación deseada y se manda la
notificación al administrador.
MODO ORIGEN PREDEFINIDO = se identifica que el modo de origen fue predefinido
y este dato se manda a definir origen predefinido.
MODO ORIGEN POR MAPA = se identifica que el modo de origen fue por mapa y
este dato se manda a definir origen por mapa.
MODO ORIGEN LLENADO FORMA =se identifica que el modo de origen fue por
usuario y este dato se manda a definir origen por usuario.
MODO DESTINO PREDEFINIDO = usuario prefiere seleccionar destino identificado
en base de datos de manera directa
MODO DESTINO POR MAPA = se identifica que el modo de destino fue por mapa y
este dato se manda a definir destino por mapa.
MODO DESTINO LLENADO FORMA = se identifica que el modo de destino fue por
usuario y este dato se manda a definir destino por usuario.
RUTA ÓPTIMA DEFINIDA = Dijsktra genera la ruta optima.
ANÁLISIS OBTENIDO = ruta optima es analizada a través de imágenes de la misma.
NOMBRE DE BASE DE DATOS
COMPOSICIÓN ORGANIZACIÓN
sactvi Aeropuertos bloqueoImagen calle callesAdyacentes caracteristicasClave centrosComerciales escuelas estructurasFisica gasolineras horasPico hospitales
idCalle nombreAeropuerto idCalle Tipo idCalle nombre nombreImagen limiteVelocidad situación longitud sentido tipo carriles idCalle idCalleAd idCalle nombreC caracteristicas clave idCalle nombreCC idCalle nombreEscuelas Tipo Nivel idCalle estado nsemáforos ntopes idCalle nombreGasolinera idCalle horaInicial horaFinal idCalle nombreHospital horario especialidad
hoteles iglesias lugaresRecreativos monumentos museos oficinasGobierno parques plantilla restaurantes rutaOptima
tipo idCalle nombreHotel caracteristicas estrellas idCalle nombreIglesia caracteristicas idCalle nombreLR tipo idCalle nombreMonumento caracteristicas idCalle nombreMuseo horario tipo idCalle nombreOG idCalle nombreParque idCalle nombreImagen rangoPixeles nodoInicial nodoFinal idCalle nombreRestaurante tipo idCalle nombreImagen rangoPixeles nodoInicial nodoFinal
4.3 Miniespecificaciones 1.1 IDENTIFICAR TAREA A REALIZAR
1. Por cada Solicitud de Servicio o Tarea hacer lo siguiente:
2. Identificar el tipo de acción la cuál puede ser:
3. Generar una ruta óptima
4. Realizar una operación
5. Generar renovación de ruta óptima
1.2.1 IDENTIFICAR MODO DE DEFINICIÓN ORÍGEN
1. Por cada Solicitud de Lugar Origen hacer lo siguiente:
2. Identificar el tipo de selección del lugar origen que puede ser:
3. Por mapa
4. Por usuario
5. Por origen predefinido
1.2.2 DEFINIR ORIGEN POR MAPA
1. Por cada Solicitud de Origen por Mapa hacer lo siguiente:
2. Localizar la zona sobre mapa donde mouse hizo referencia
3. Relacionar zona de mapa con datos en la base correspondientes a calles
1.2.3 DEFINIR ORIGEN POR USUARIO
1. Por cada Solicitud de Origen por Usuario hacer lo siguiente:
2. Solicitar a usuario dato que identifique al origen y puede ser:
3. Dirección
4. Colonia
5. Calle
6. Claves
7. Relacionar dato de usuario con datos en la base correspondientes a calles
1.2.4 DEFINIR ORIGEN PREDEFINIDO
1. Por cada Solicitud de Origen Predefinido:
2. Obtener de base de datos lugares mas importantes de zona especificada por
el usuario
1.3.1 IDENTIFICAR MODO DE DEFINICIÓN DESTINO
1. Por cada Solicitud de Lugar Destino hacer lo siguiente:
2. Identificar el tipo de selección del lugar destino que puede ser:
3. Por mapa
4. Por usuario
5. Por destino predefinido
1.3.2 DEFINIR DESTINO POR MAPA
1. Por cada Solicitud de Destino por Mapa hacer lo siguiente:
2. Localizar la zona sobre mapa donde mouse hizo referencia
3. Relacionar zona de mapa con datos en la base correspondientes a calles
1.3.3 DEFINIR DESTINO POR USUARIO
1. Por cada Solicitud de Destino por Usuario hacer lo siguiente:
2. Solicitar a usuario dato que identifique al destino y puede ser:
3. Dirección
4. Colonia
5. Calle
6. Claves
7. Relacionar dato de usuario con datos en la base correspondientes a calles
1.3.4 DEFINIR DESTINO PREDEFINIDO
1. Por cada Solicitud de Destino Predefinido:
2. Obtener de base de datos lugares mas importantes de zona especificada por
usuario
1.4.1 APLICAR ALGORITMO DIJKSTRA
1. Por cada Solicitud de Generar Ruta Optima se ejecutará el algoritmo
del camino más corto restringido por datos de base
1.4.2 VISUALIZAR RUTA ÓPTIMA
1. Por cada Solicitud de Generar Ruta Optima se visualizará en un mapa la ruta
resultado del algoritmo
1.5 DEFINIR TIPO DE OPERACIÓN
1. Por cada Solicitud de Operación de Administrador se realiza lo siguiente:
2. Identificar el tipo de Operación que puede ser:
3. Alta de algún dato de la red vial
4. Baja de algún dato de la red vial
5. Modificación de datos de la red vial
1.6 REALIZAR OPERACIÓN
1. Por cada Solicitud de Operación de Administrador identificada hacer lo siguiente:
2. Conectar a base de datos
3. Realizar operación
2.1 ANALIZAR RUTA ÓPTIMA
1. Por cada Solicitud de Generar Ruta Optima hacer lo siguiente:
2. Vigilar ruta óptima generada
3. Procesar imagen y definir problemas en zona de ruta óptima
2.2 DECIDIR ESTADO DE RUTA ÓPTIMA
1. Por cada Solicitud de Análisis de Ruta Optima hacer lo siguiente:
2. Establecer condiciones y concluir características de ruta óptima
3. Definir si la ruta óptima es aún factible o no
idCalleAd
callesAdyacentes
idCalle
nombreCalleAd
Calle-callesAdy
acentes
mapaDivision-Calle
claveEstado
mapaDivision
claveMunicipio estado
municipio
password
administradores
id nombres
apellidoP
apellidoM
estructuraFisica
idCalle nTopes
nSemaforos
estado
Calle-estructura
Fisica
calle
Tipo
situacion idCalle
caracteristicasClave
nombreImagen
nombre carriles
limiteVelocidad
claveMunicipio
sentido
longitud
costo
Calle-
horasPico
horasPico idCalle
horasPico
4.4 Diagrama entidad-relación de la base de datos SAC i
La definición detallada del diagrama entidad-relación se encuentra en el
apéndice D.
4.5 Información de la Base de Datos
Las tablas utilizadas por el sistema SACTVi son las siguientes: administradores,
aeropuertos, calle, callesAdyacentes, centrosComerciales, escuelas, estructuraFisica,
gasolineras, horasPico, hospitales, hoteles, iglesias, imagenesSatelite,
lugaresRecreativos, mapaDivision, monumentos, museos, oficinasGobierno, parques,
pixelsImagen, plantilla, puntosImagen, restaurantes, rutaOptima.
4.5.1 Descripción de las Relaciones y Campos
Administradores: Relación que almacena los nombres completos, passwords, y
ids de las personas que pueden tener acceso a la base de datos de SACTVi con el fin de
administrarla.
Nombre
del Campo Tipo de Dato Nulo Llave Valor por
default Extra Descripción del
Campo Id varchar(10) No Primary
key Ninguno Nada Id del
administrador. Password varchar(10) No No Ninguno Nada Password del
administrador. Nombres varchar(40) No No Ninguno Nada Nombres del
administrador. ApellidoP varchar(30) No No Ninguno Nada Apellido Paterno
del administrador. ApellidoM varchar(30) No No Ninguno Nada Apellido Materno
del administrador.
Aeropuertos: Relación que almacena el nombre de los aeropuertos que hay en
una calle en particular.
Nombre del Campo Tipo de
Dato Nulo Llave Valor por
default Extra Descripción
del Campo IdCalle bigint(8) No No 0 Nada Id de la calle
donde se encuentra el aeropuerto.
nombreAeropuerto varchar(100) No Primary key
Ninguno Nada Nombre del aeropuerto.
Calle: Relación que almacena las características principales de cada una de las
calles dadas de alta por el administrador.
Nombre del
Campo Tipo de
Dato Nulo Llave Valor
por default
Extra Descripción del Campo
IdCalle bigint(8) No Primary key
Null auto_ incre-ment
Id de la calle.
claveMunicipio varchar(10) No No Ninguno Nada Clave del municipio al que pertenece la calle.
Nombre varchar(100) No No Ninguno Nada Nombre de la calle. nombreImagen varchar(100) No No Ninguno Nada Nombre de la
imagen a la que esta asociada la calle.
limiteVelocidad smallint(3) No No 0 Nada Limite de velocidad de la calle.
Situación Varchar(40) No No Ninguno Nada Situación de la calle. Longitud int(5) No No 0 Nada Longitud de la calle. Sentido Varchar(40) No No Ninguno Nada Sentido de la calle. Tipo Varchar(40) No No Ninguno Nada Tipo de material del
que esta hecha la calle.
Carriles tinyint(1) No No Ninguno Nada Carriles que tiene calle.
caracteristicasClave Text No No Ninguno Nada Características que pueden ser relevantes sobre la calle.
Costo int(8) No No 0 Nada Costo que se le da a la calle al momento de darla de alta en base a ciertas características.
CallesAdyacentes: Relación que almacena las calles adyacentes que tiene cada
calle almacenada en la relación calle.
Nombre del
Campo Tipo de Dato Nulo Llave Valor por
default Extra Descripción
del Campo IdCalle bigint(8) No No 0 Nada Id de la calle a
la que está relacionada la calle adyacente.
nombreCalleAd Varchar(100) No No Ninguno Nada Nombre de la calle adyacente.
idCalleAd bigint(8) Primary key
null auto_ incre-ment
Id de la calle adyacente.
La definición del resto de las tablas se encuentra en el apéndice D.
4.6 Definición de clases y operaciones
4.6.1 Diagrama de paquetes
Jsps
+ErrorDecisionUsuario +origenDestino +decisiones +ErrorOrigenDestino
Htmls Classes +caracteristicas +caracteristicasCalle +decisionesDefinicion +decisionUsuario +OrigenDestino +principal +PrinPuebla +Recorridob +sactviSACholula
+Arista +BajaImagenes +BDSactvi +calle +callesImagen +callesInfo +camino +camposActualizar +caracteristicasCallesServlet +Consultas +ConsultasCosto +controlRuta +coordenadas +Costos +crearNodosImagen +datosEscuela +datosHospital +datosHotel +datosIglesia +datosLugarRecreativo +datosMonumento +datosMuseo +datosRestaurante +decisionDefineServlet +DecisionServlet +desicionAdmin +Dijkstra +ecuacionRecta +editarCalles +espacio +estadoFlujo +ImageFileView +ImageFilter +ImagePreview +muestraSeleccion +Nodo
+nodos +OrigenDestinoServlet +polar +principalSACTi +procesoImagen2 +punto +puntoNodo +puntoRecta +Recorridob +regionCalle +ruta +rutab +rutaOptimaBase +Satelite +suministradorImagenes +Tres +Triple +Utils +zona
4.6.2 Factores críticos de éxito
a) El administrador del programa debe usar ortofotos (fotos en escala de grises de
las calles del municipio en cuestión) escala 1 a 1000.
b) La imagen no es dada de alta en la base, solo el nombre de ésta, por lo cual la
imagen que se dé de alta debe estar en un path especificado.
c) El administrador al procesar la foto deberá dar click en todas las esquinas de las
calles para que el programa pueda identificar que es calle y que no en la imagen
y así poder construir el grafo correspondiente.
d) La base de datos se debe encontrar estable y sus datos deben ser consistentes.
4.6.3 Diagramas de Clase
Nombre: BajaImagenes
-frame: JFrame -nuevof: JFrame -file: File -fc : JFileChooser -principal: JPanel -des :int -campo : JTextField -sampleJList : JList -dato: String -sampleModel: DefaultListModel -ff: JFrame -f: JFrame -activar: int -botonBaja: JButton -botonModificar: JButton -botonVisualizar: JButton -layerStrings: String[] -contador: int -muni: String -estad: String -administrador: String -gg: int -r: int
+setDialogo(f: JFrame) +BajaImagenes(estado:String,municipio:String, administra: String) +buscadorImagenes(): Vector +darDeBajaImagen(compara: String) +baja(nIma: String) +mostrarInformacion(compara: String) +guardaImagen(archivo: String)
Nombre: Arista
-origen: String -destino: String -peso: String
Nombre: BDSactvi
-driver: String -url_User_Password: String -select: String -con: String
+BDSactvi() +ObtenerConexion() +crear_statmt () +instruccion_a_ejecutar(instruction: String) +instruccion_que_actualiza(instruction2: String) +Desconexion()
Nombre: calle
+encuentraCallesAnulado(nodos: Vector, verdes: Vector) +encuentraCalles(nodos: Vector, verdes: Vector) +defineExtremosCalles(nodos: Vector) +nodosDeCalles(nodos: Vector, calles: Vector) +definiendoAristas(callesdeRed: Vector, nombreImagen: String) +buscaPeso( origen: coordenadas, destino: coordenadas, pesos:Vector)
Nombre: callesImagen
-Frame: frame -principal: JPanel -campo: JTextField -nombreC: String -eCalles editarCalles -xs: int -muni: String -entreCalle: int -ancho: int -altura: int -areaScrollPane: JScrollPane -m: JPanel -displayPanel: JPanel -phaseIconLabel: JLabel -ff: JFrame -f: JFrame -bandera: int -bad: int -contenedorNodos: Vector -nod: nodos -ad: String -calC: Vector -zz: int -callesSeleccionadas: int []
+setDialogo(f: JFrame) +callesImagen(archivo: String, administrador: String, xx int, edC: editarCalles,callesCompletas: Vector, municipio: String) +addWidgets() +emergente(nodoInicial: String, nodoFinal String, pixels: String) +setRegreso(z: int) +busquedaCalles(): Vector +ConsultaImagen(): Vector +guardaImagen(archivo: String): int
Nombre: callesInfo
-f: JFrame -principal: JPanel -splitPane: JSplitPane -Campo_nombreCalle: JTextField -Campo_limiteVelocidad: JTextField -Campo_longitud: JTextField -Campo_calleAdyacente1: JTextField -Campo_calleAdyacente2: JTextField -Campo_calleAdyacente3: JTextField -Campo_calleAdyacente4: JTextField -Campo_calleAdyacente5: JTextField -Campo_Horas: JTextField -cImagen: callesImagen -nInicial: String -nFinal: String -pixels: String -nombreCalleBase: String -LimiteVelocidadCalleBase: String -SituacionCalleBase: String -LongitudCalleBase: String -SentidoCalleBase: String -TipoCalleBase: String -CarrilesBase: String -CaracteristicasClaveCalleBase: String -EstadoCalleBase: String -NSemaforosCalleBase: String -NTopesCalleBase: String -HorasPicoCalleBase: String -aerop: Vector -centroc: Vector -esc: Vector - gas: Vector -hosp: Vector -igl: Vector -hotl: Vector
+ cambiar() + infoCalle() + calculaCostoCalle() + callesInfo(cI: callesImagen, nI: String, nF: String, pix String, muni: String, nombreC: String) + cambioAeropuerto() + cambioCentroComercial() + cambioEscuela() + cambioGasolinera() + cambioHospital() + cambioIglesia() + cambioHotel() + cambioLugarRecreativo() + cambioMonumento()
-lr: Vector -mon: Vector -mus: Vector -ofg: Vector -par: Vector -restaurant: Vector -dato1: String -dato2: String -dato3: String -dato4: String -dato5: String -dato6: String -dato7: String -dato8: String -dato9: String -dato10: String -dato11: String -dato12: String -dato13: String -dato14: String -dato15: String -dato16: String -dato17: String -municipio: String -nombreImagen: String -num: String[] -model: SpinnerModel -spinner: JSpinner -num2: String[] -model2: SpinnerModel -spinner2: JSpinner -claves1: JTextArea
Los diagramas del resto de nuestras clases se encuentran en el apéndice D. 4.7 Procesos Detallados
4.7.1 Sistema Automatizado para el Control del tráfico vial (SACTVi)
El sistema está conformado por dos bloques (administrador, usuario), el que se
encarga de administrar la base de datos y dar de alta las calles de los estados y
municipios; y el otro que es una página dinámica con la que cualquier persona podrá
interactuar vía Internet. A través de ella el usuario podrá visualizar la información que
se solicite referente a las redes de calles que estén dadas de alta en la base.
4.8 Descripción y terminología
4.8.1 Administrador SACTVi
El programa administrador de SACTVi tiene como fin proporcionar al
administrador una interfaz por la cual él pueda manejar la base de datos de SACTVi de
una manera sencilla. Para ello, la herramienta cuenta con tres secciones las cuales son
altas y actualizaciones de una imagen, baja de la imagen y actualización de los datos.
Antes de poder ingresar a una de estas tres opciones, el sistema pedirá un id y password
previamente asignado para poder entrar. Cada vez que se seleccione una de las tres
opciones, el sistema pide el password del estado y del municipio con el que se desee
trabajar.
4.8.1.1 Altas y actualizaciones de una imagen
En esta sección, el administrador puede:
a) Dar de alta el nombre de las ortofotos, así como sus esquinas para que el
programa identifique la red de calles de determinada zona. También, al terminar el
+ cambioMuseo() + cambioOficinaGobierno() +cambioParque() + cambioRestaurante() + revisaCalle(): int + darAltaCalle()
proceso anterior el administrador podrá dar de alta las características propias de cada
una de las calles identificadas, tales como su nombre, el número de semáforos que tiene,
sus horas pico en cuanto al tráfico, la velocidad máxima de la calle, el número de topes,
la longitud de la calle, las calles adyacentes de ésta, el estado de la calle, el material del
que esta hecha, su situación actual y los establecimientos o zonas importantes
localizadas en ellas.
b) Si el administrador por alguna razón no terminó de definir todas las esquinas,
podrá hacerlo en el momento que el quiera, ya que la herramienta te permite seguir
editando la imagen tantas veces que tu quieras, pero solo las partes de la imagen que no
han sido editadas ya que si tratas de editar una parte ya editada, el programa te lo
indicará.
c) Si hubo algún problema con la identificación de las calles, la imagen se podrá
dar de baja con la sección baja de la imagen.
d) Después de haber editado la imagen, nuestra herramienta procede a identificar
las calles mediante la aplicación de un filtro que genera una imagen de color anaranjado
rojizo útil para diferenciar las calles del resto de la imagen; después, ésta imagen es
filtrada nuevamente eliminando los colores menos fuertes de la imagen a un color
blanco y los colores más fuertes a un color azul. Terminado esto, la imagen es
segmentada en n partes iguales y en cada una de ellas es aplicada la transformada de
Hough, la cuál obtiene pendientes infinitas usando píxeles alineados (calles), estos
píxeles y los nodos dados por el usuario ayudarán a definir el grafo.
e) Al terminar este procedimiento (no mayor a 5 minutos), el usuario ya podrá
dar de alta las características de las calles reconocidas, únicamente tendrá que dar un
clic en la calle que desea dar de alta y entonces se le presentará una nueva ventana con
campos de texto que se tendrán que llenar con la información que se pide. Una vez
llenada tal forma, se confirmará el almacenado de la información.
f) Si no se terminó el proceso de dar de alta a todas las calles reconocidas, el
usuario podrá volver a entrar sin ningún problema y continuar. Con la información de la
calle, a ésta se le dará un costo de ruta, el cual será útil para determinar las rutas que
permitirán llegar de un punto a otro a través de la red de grafos que se construye con
Dijkstra. Este costo es calculado en base al estado de la calle, la situación actual de ésta,
y por el número de semáforos, topes y carriles con los que cuenta.
4.8.1.2 Baja de la imagen
En esta sección, el usuario podrá dar de baja toda una red de calles de una zona
al momento de dar de baja la imagen correspondiente a esas calles.
a) Para dar de baja una imagen, el sistema muestra una lista de las imágenes que
están dadas de alta para determinada zona (en este caso una imagen), esto da la
oportunidad de seleccionar una imagen para eliminarla del sistema.
4.8.1.3 Actualización de los datos
En esta parte del sistema, el administrador podrá realizar modificaciones a la
información correspondiente a una calle de una zona en particular.
a) El administrador deberá elegir una zona, luego, el sistema proporciona una
lista de las calles ingresadas al sistema dentro la zona seleccionada. La información de
cada calle de la lista podrá ser actualizada afectando algún dato de la misma, se podrán
agregar calles adyacentes, establecimientos, o algún otro dato.
b) También se podrá conocer la información referente a una calle y dar de alta
alguna calle.
4.8.2 Usuario, página dinámica de SACTVi
Este bloque contempla la interacción con el usuario de la web que se interese en
saber el estado de una calle, su situación actual, y conocer la ruta que más le convenga
en relación al lugar en donde se encuentra y al lugar a donde desea ir. Una vez calculada
la ruta, se simulará una constante vigilancia en ella ya que podría surgir un problema en
una de las calles pertenecientes a la ruta dada. Si ocurre algún problema, la ruta se
calcula nuevamente y se muestra al usuario otra vía alterna dependiendo del nuevo
punto de origen en el que se encuentre.
Para que se pueda realizar esto último, se simula la situación: mediante una
animación que proporciona la posición en la que se encuentra el móvil y que simula la
obtención de las imágenes que informan la situación actual de la ruta, el sistema decide
si recalculará o no la ruta. La decisión se basa en comparar imágenes que se obtienen
para determinar si hubo un cambio o no en la escena que se refiere la ruta.
4.9 Funcionalidad
4.9.1 Descripción de pantallas
4.9.1.1 Administrador SACTVi
Interfaz Principal
Descripción de campos Nombre Tipo Longitud Valor
InicialPropiedades Liga Campo en BD
Ingresa tu ID
Campo de
texto
10 - Su contenido es variable y depende de
los datos que se tengan en
la base.
- Mysql.Sactvi.id
Ingresa tu
password
Campo de
texto
10 - Su contenido es variable y depende de
los datos que se tengan en
la base.
- Mysql.Sactvi.password
Operaciones
Nombre Evento Operación Argumentos Outputs Continuar Clic ingresar El id y
password ingresados
Si el id o password
fueron incorrectos entonces te
avisa del error. Si el id y
password son correctos
entonces el proceso se
direcciona a la siguiente venta de selección de
operaciones. Limpiar Clic borrar ninguno Borra los
campos de texto.
Interfaz de Bienvenida y de selección de las operaciones principales
Descripción de campos
Nombre Tipo Longitud Valor Inicial
Propiedades Liga Campo en BD
Dar de alta o
modificar una
imagen
Selector - No esta seleccionado
Depende si lo selecciona o
no el administrador
- -
Dar de baja una imagen
Selector - No esta seleccionado
Depende si lo selecciona o
no el administrador
- -
Actualizar datos
Selector - No esta seleccionado
Depende si lo selecciona o
no el administrador
- -
Operaciones
Nombre Evento Operación Argumentos Outputs
Continuar click Continuar con el siguiente
El tipo de elección
elegida por el administrador
Si se selecciono dar
de alta o modificar una
imagen el proceso te
direcciona al siguiente
proceso que consiste en
seleccionar la región del país
en la cual deseas trabajar.
Esto mismo ocurre en las
otras dos opciones.
Salir click Salir del programa
- -
Interfaz de selección del estado y municipio
Descripción de campos
Nombre Tipo Longitud Valor Inicial
Propiedades Liga Campo en BD
Clave del estado
Campo de
texto
10 - Depende de lo que este
dado de alta en la base.
- Mysql.Sactvi.mapaDivision.claveEstado
Clave del municipio
Campo de
texto
10 - Depende de lo que este
dado de alta en la base.
- Mysql.Sactvi.mapaDivision.claveMunicipio
Operaciones
Nombre Evento Operación Argumentos Outputs Continuar click Continuar con
el proceso La clave del estado y del municipio
dados por el administrador
Si la clave del estado o del municipio
estuvo mal, te aparece una
pantalla que te indicara esto.
En caso contrario, el proceso se
direcciona a la pantalla de dar
de alta una imagen
Limpiar click Borrar - Borra lo que se halla escrito los
campos de texto
La definición detallada del resto de nuestro sistema se puede apreciar en el apéndice D
4.9.1.2 Página dinámica SACTVi
Página principal
http://localhost:8080/SACTVi/htmls/principal.html
Descripción de campos
Nombre Tipo Longitud Valor
Inicial Propiedades Liga Campo
en BD ¿Quienes somos?
Link - - - localhost:8080/SACTVi/htmls/quienesSomos.html -
Nuestro objetivo
Link - - - localhost:8080/SACTVi/htmls/nuestroObjetivo.html -
Proyectos Link - - - localhost:8080/SACTVi/htmls/Proyectos.html - Estado Link - - - localhost:8080/SACTVi/htmls/PrinPuebla.html -
Página Principal de Puebla
http://localhost:8080/SACTVi/htmls/PrinPuebla.html
Descripción de campos
Nombre Tipo Longitud Valor
InicialPropiedades Liga Campo
en BD ¿Quiénes somos?
Link - - - localhost:8080/SACTVi/htmls/ quienesSomos.html
-
Nuestro objetivo
Link - - - localhost:8080/SACTVi/htmls/ nuestroObjetivo.html
-
Proyectos Link - - - localhost:8080/SACTVi/htmls/ Proyectos.html
-
Municipio Link - - - localhost:8080/SACTVi/htmls/ sactviSACholula.html
-
Página principal de SACTVi-San Andrés Cholula
http://localhost:8080/SACTVi/htmls/sactviSACholula.html
Descripción de campos
Nombre Tipo Longitud Valor
InicialPropiedades Liga Campo
en BD Información Link - - - localhost:8080/SACTVi/htmls/
Info.html -
Ayuda Link - - - localhost:8080/SACTVi/htmls/ ayuda.html
-
Características de Ruta
Link - - - localhost:8080/SACTVi/htmls/ caracteris.html
-
Obtención de Ruta
Link - - - localhost:8080/SACTVi/htmls/ decisionUsuario.html
-
Mapa de México
Link - - - Localhost:8080/SACTVi/htmls/principal.html
-
Página Principal
Link - - - localhost:8080/SACTVi/htmls/ sactviSACholula.html
-
SCT Link - - - www.sct.gob.mx/ - Transito Link - - - www.roadsafety.cl/html/lineas/
conductor/reglas.html -
Red de caminos
Link - - - comercial.mural.com/mapas/ -
Decisión usuario 1
Opciones:
1.1 Si 1.2 No 1.3
Descripción de campos
Nombre Tipo Longitud Valor Inicial
Propiedades Liga Campo en BD
Información Link - - - localhost:8080/SACTVi/htmls/ Info.html
-
Ayuda Link - - - localhost:8080/SACTVi/htmls/ ayuda.html
-
Características de Ruta
Link - - - localhost:8080/SACTVi/htmls/ caracteris.html
-
Obtención de Ruta
Link - - - localhost:8080/SACTVi/htmls/ decisionUsuario.html
-
Mapa de México
Link - - - localhost:8080/SACTVi/htmls/ principal.html
-
Página Principal
Link - - - localhost:8080/SACTVi/htmls/ sactviSACholula.html
-
SCT Link - - - www.sct.gob.mx/ - Transito Link - - - www.roadsafety.cl/html/lineas/
conductor/reglas.html -
Red de caminos
Link - - - Comercial.mural.com/mapas/ -
Operaciones
Nombre Evento Operación Argumentos Outputs Continuar Clic continuar La decisión
dada por el usuario
Si el usuario eligió si,
entonces el proceso se
direcciona a mostrarle al usuario otra pantalla de
selección. Si eligió no
entonces el proceso se
direcciona a mostrarle a usuario dos
áreas de texto en donde el
usuario podrá dar
características de las calle en
que se encuentra y de la que quiere ir.
4.9.1.2.1 Definiendo la forma de definir el origen y destino
http://localhost:8080/SACTVi/servlet/Sactvi.DecisionServlet
Opciones: a) Definir el origen y el destino desde un mapa. b) Definir el origen y el destino desde una lista de calles del municipio.
Descripción de campos
Nombre Tipo Longitud Valor Inicial
Propiedades Liga Campo en BD
Información Link - - - localhost:8080/SACTVi/htmls/ Info.html
-
Ayuda Link - - - localhost:8080/SACTVi/htmls/ ayuda.html
-
Características de Ruta
Link - - - localhost:8080/SACTVi/htmls/ caracteris.html
-
Obtención de Ruta
Link - - - localhost:8080/SACTVi/htmls/ decisionUsuario.html
-
Mapa de México
Link - - - Localhost:8080/SACTVi/htmls/principal.html
-
Página Principal
Link - - - localhost:8080/SACTVi/htmls/ sactviSACholula.html
-
SCT Link - - - www.sct.gob.mx/ - Transito Link - - - www.roadsafety.cl/html/lineas/
conductor/reglas.html -
Red de caminos
Link - - - comercial.mural.com/mapas/ -
Operaciones
Nombre Evento Operación Argumentos Outputs
Continuar Clic continuar La decisión dada por el
usuario
Si el usuario eligió desde un mapa, entonces el proceso se direcciona a mostrarle al usuario un
mapa sensitivo donde elegirá
el origen y destino. Si
eligió desde una lista,
entonces el proceso se
direcciona a mostrarle al usuario una lista de las
calles que hay dadas de alta en la base,
tanto para el origen y destino.
4.9.1.2.2 Definir el origen y el destino desde una lista de calles del
municipio
http://localhost:8080/SACTVi/servlet/Sactvi.decisionDefineServlet
Descripción de campos
Nombre Tipo Longitud Valor Inicial
Propiedades Liga Campo en BD
Información Link - - - localhost:8080/ SACTVi/htmls/
Info.html
-
Ayuda Link - - - localhost:8080/ SACTVi/htmls/
ayuda.html
-
Características de Ruta
Link - - - localhost:8080/ SACTVi/htmls/ caracteris.html
-
Obtención de Ruta
Link - - - localhost:8080/ SACTVi/htmls/
decisionUsuario.html
-
Mapa de México
Link - - - Localhost:8080/ SACTVi/htmls/ principal.html
-
Página Principal
Link - - - localhost:8080/ SACTVi/htmls/
sactviSACholula.html
-
SCT Link - - www.sct.gob.mx/ - Transito Link - - www.roadsafety.cl/ -
html/lineas/ conductor/reglas.html
Red de caminos
Link - - Comercial.mural.com/ mapas/
-
Conjunto de selectores
selectores 100 Las calles dadas de alta en la base de
este municipio
Las calles que escogió el usuario.
- Mysql.Sactvi.calle.nombre
Operaciones
Nombre Evento Operación Argumentos Outputs
Continuar click Continuar La calle elegida por el usuario como
origen y la calle elegida
como destino.
Si el usuario eligió
correctamente las calles
entonces se calculara la
ruta óptima, en caso contrario se indicara en
donde se encontró el
error.
Proceso de obtención de ruta exitoso
http://localhost:8080/SACTVi/servlet/Sactvi.OrigenDestinoServlet
Descripción de campos
Nombre Tipo Longitud Valor Inicial
Propiedades Liga Campo en BD
Información Link - - - localhost:8080/SACTVi/htmls/ Info.html
-
Ayuda Link - - - localhost:8080/SACTVi/htmls/ ayuda.html
-
Características de Ruta
Link - - - localhost:8080/SACTVi/htmls/ caracteris.html
-
Obtención de Ruta
Link - - - localhost:8080/SACTVi/htmls/ decisionUsuario.html
-
Mapa de México
Link - - - Localhost:8080/SACTVi/htmls/principal.html
-
Página Principal
Link - - - localhost:8080/SACTVi/htmls/ sactviSACholula.html
-
SCT Link - - - www.sct.gob.mx/ - Transito Link - - - www.roadsafety.cl/html/lineas/
conductor/reglas.html -
Red de caminos
Link - - - Comercial.mural.com/mapas/ -
Mediante una animación
Link - - -
Mediante un mapa
Link - - - -
Animación del resultado de la ruta Óptima
D:\tomcat\Tomcat41\webapps\SACTVi\WEB-INF\classes\Recorridob.html
Operaciones
Nombre Evento Operación Argumentos Outputs Inicio click Inicia la
animación Los puntos de la ruta óptima
Se mueve una pelotita blanca que simula a
un carro recorriendo la ruta óptima.
Fin click Termina con la animación
Los puntos de la ruta óptima
Se termina la simulación.
Desastre click Simula un desastre
- Se calcula otra ruta.
4.9.1.2.3 Definición de la calle origen y destino mediante características dadas por el usuario
http://localhost:8080/SACTVi/servlet/Sactvi.DecisionServlet
Descripción de campos
Nombre Tipo Longitud Valor Inicial
Propiedades Liga Campo en BD
Información Link - - - localhost:8080/SACTVi/htmls/ Info.html
-
Ayuda Link - - - localhost:8080/SACTVi/htmls/ ayuda.html
-
Características de Ruta
Link - - - localhost:8080/SACTVi/htmls/ caracteris.html
-
Obtención de Ruta
Link - - - localhost:8080/SACTVi/htmls/ decisionUsuario.html
-
Mapa de México
Link - - - Localhost:8080/SACTVi/htmls/principal.html
-
Página Principal
Link - - - localhost:8080/SACTVi/htmls/ sactviSACholula.html
-
SCT Link - - - www.sct.gob.mx/ - Transito Link - - - www.roadsafety.cl/html/lineas/
conductor/reglas.html -
Red de caminos
Link - - - Comercial.mural.com/mapas/ -
Operaciones
Nombre Evento Operación Argumentos Outputs Aceptar click Continua con
el proceso Las
características del origen y
destino dadas por el usuario.
Obtiene una lista de las
calles que se asemejan a las características
que diste. Limpiar click Borrar - Borra las áreas
de texto
http://localhost:8080/SACTVi/servlet/Sactvi.OrigenDestinoServlet
Descripción de campos Nombre Tipo Longitud Valor
InicialPropiedades Liga Campo
en BD Información Link - - localhost:8080/SACTVi/htmls/
Info.html -
Ayuda Link - - localhost:8080/SACTVi/htmls/ ayuda.html
-
Características de Ruta
Link - - localhost:8080/SACTVi/htmls/ caracteris.html
-
Obtención de Ruta
Link - - localhost:8080/SACTVi/htmls/ decisionUsuario.html
-
Mapa de México
Link - - Localhost:8080/SACTVi/htmls/ principal.html
-
Página Principal
Link - - localhost:8080/SACTVi/htmls/ sactviSACholula.html
-
SCT Link - - www.sct.gob.mx/ - Transito Link - - www.roadsafety.cl/html/lineas/
conductor/reglas.html -
Red de caminos
Link - - Comercial.mural.com/mapas/ -
Intentalo nuevamente
Link - - localhost:8080/SACTVi/ htmls/
decisionesDefinicion.html
- -
http://localhost:8080/SACTVi/servlet/Sactvi.OrigenDestinoServlet
Descripción de campos
Nombre Tipo Longitud Valor
InicialPropiedades Liga Campo
en BD Información Link - - - localhost:8080/SACTVi/htmls/
Info.html -
Ayuda Link - - - localhost:8080/SACTVi/htmls/ ayuda.html
-
Características de Ruta
Link - - - localhost:8080/SACTVi/htmls/ caracteris.html
-
Obtención de Ruta
Link - - - localhost:8080/SACTVi/htmls/ decisionUsuario.html
-
Mapa de México
Link - - - Localhost:8080/SACTVi/htmls/principal.html
-
Página Principal
Link - - - localhost:8080/SACTVi/htmls/ sactviSACholula.html
-
SCT Link - - - www.sct.gob.mx/ - Transito Link - - - www.roadsafety.cl/html/lineas/
conductor/reglas.html -
Red de caminos
Link - - - Comercial.mural.com/mapas/ -
Intentalo nuevamente
Link - - - localhost:8080/SACTVi/htmls/ decisionesDefinicion.html
-
4.10 Análisis de Requerimientos
4.10.1 Panorama general
Este sistema tiene los 3 objetivos siguientes:
1.- Considerar el procesamiento de imágenes como un medio para generar información
que es útil en el control del tráfico vial.
2.- Proporcionar una nueva aplicación open source para administrar la información
referentes a las características de una red vial.
3.- Proporcionar al usuario una herramienta de información vial desde la Internet.
4.10.2 Clientes
- Público en general que se interese en conocer la situación actual en la que se
encuentran las calles de su ciudad.
- Cualquier persona que sea capacitada para poder manejar nuestro administrador
de la base de datos.
4.10.3 Metas
Demostrar que el procesamiento de imágenes es muy útil para el tipo de sistema
que estamos proponiendo.
Crear un software que sea fácil de manejar por cualquier persona, en el cual
pueda administrar una base de datos sin ningún problema y controlar de manera eficaz y
sencilla la situación actual de la red de calles de una ciudad en particular.
Crear una página de Internet dinámica con la cual el usuario podrá conocer la
situación actual del estado en el que se encuentran las calles en el momento de la
consulta.
4.10.4 Funciones del sistema
Categorías de las funciones
Categoría de la función Significado
Evidente Debe realizarse, y el usuario debe saber que se ha realizado
Oculta Debe realizarse, no es visible para los usuarios.
Superflua Opcionales, su inclusión no repercute significativamente en el costo ni en otras funciones.
4.10.4.1 Funciones básicas
#Referencia Función Categoría
F1.1 Da de alta el nombre de una imagen que se encuentra en el disco duro en la base de datos. Oculta
F1.2 Da de baja el nombre de una imagen que se encuentra en el disco duro en la base de datos. Oculta
F1.3 Actualiza datos de la base de datos. Oculta
F1.4 Visualiza la imagen que se va a utilizar para definir los nodos de las calles. Evidente
F1.5 Visualiza la imagen que se va a utilizar para dar de de alta las calles. Evidente
F1.6 Calcula el costo que tendrá una calle, en relación a las características que se dieron de alta referente a la calle
Oculta
F1.7 Muestra el nombre de las imágenes que han sido editadas. Evidente
F1.8 Muestra el nombre de las calles que han sido dadas de alta. Evidente
F1.9 Muestra toda la información referente a una calle en particular. Evidente
F1.10 El administrador debe introducir los datos que deben ser dados de alta. Evidente
F1.11 El administrador debe definir los nodos de las calles (esquinas de cada calle), para que se puedan Evidente
identificar las calles.
F1.12 Se identifican las calles que el usuario eligió dentro de la imagen seleccionada. Oculta
F1.13 El administrador indica la calle que quiere actualizar Evidente
F1.14 El administrador indica las características de la calle que quiere modificar. Evidente
F1.15 El administrador indica en que región desea trabajar. Evidente
F1.16 El administrador introduce un id y password para que pueda trabajar con el sistema. Evidente
F1.17 El administrador selecciona que operación quiere realizar. Evidente
F1.18 El administrador decide si continua o no trabajando. Evidente
F2.1 El usuario de la página elegirá el nombre de la calle en la que se localiza y el nombre de la calle a la que desea ir.
Evidente
F2.2 El usuario definirá en que región se encuentra. Evidente
F2.3 Se calculara la ruta que mas le conviene al usuario para llegar a su destino desde el punto en que se encuentra en base a los costos de las calles.
Oculto
F2.4 Se mostrara al usuario la ruta óptima encontrada. Evidente
F2.5
Se tendrá una vigilancia constante de la ruta optima encontrada con base a las imágenes que se obtengan del simulador del satélite, y se recalculara la ruta si es necesario.
Oculto
F2.6 El usuario elegirá que tipo de consultas quiere hacer referentes a una calle en particular. Evidente
F2.7 El sistema hará las consultas necesarias a la base para obtener la información solicitada. Oculto
F2.8 Se mostrará la información solicitada al usuario. Evidente
4.10.5 Atributos del Sistema
Atributo Detalles y restricciones de frontera Tiempo de respuesta En cuestión de respuesta de la base de
datos tanto para hacer consultas y otras operaciones como altas y actualizaciones, el tiempo de respuesta es máximo 2 segundos. En relación a la identificación de las calles en la imagen, depende del número de calles que le diste que identificara, pero si tiempo máximo de respuesta en el peor de los casos son 5 minutos.
Interfaz El esquema seguido para la creación de la interfaz fue el que tradicionalmente se ve en plataformas como Windows o Mac,
para que el usuario se pueda familiarizar más rápido con ella. Esto en cuestión del programa que administra la base. Con relación la página dinámica creada, se siguió un diseño creado por nosotros pero semejante a lo que comúnmente se puede encontrar en la red.
Facilidad de uso La interfaz tanto en la página como en la aplicación, fue hecha de tal forma que su uso fuera intuitivo. Pero para facilitar aun mas las cosas, ciertas ventanas traen con ella la opción de ayuda para que el usuario pueda comprender mejor el uso de estas.
Plataformas del sistema operativo Windows XP Base de datos MySQL Servidor Tomcat Leguajes de Programación Java, html, JavaScript
4.10.6 Dependencias
Se necesita contar con una base de datos para que la aplicación funciones, en
este caso se utlizó Mysql como base de datos.
Se necesita contar con un servidor para poder subir la página a la web, en este
caso se utlizó Tomcat como servidor.
Se necesita que las imágenes (ortofotos) que se van a editar se encuentren en el
fólder que nosotros especificamos.
4.10.7 Modelo del usuario
4.10.7.1 Sistema Administrativo de SACTVi
Alta y modificación de una imagen
Baja de una imagen
Actualizar datos Administrador Administrador
4.10.7.2 Página Dinámica SACTVi
4.10.8 Casos de uso reales
4.10.8.1 Alta y modificación de una imagen
Consultas
Obtención de una ruta Óptima Usuario Usuario
Administrador Sistema
Elegir la imagen a editar
Seleccionar las esquinas de las calles de la imagen
Dar de alta las calles
Salir de esta opción o del programa
Elegir el estado y municipio
4.10.8.2 Dar de baja imagen
4.10.8.3 Actualizar datos
Administrador Sistema
Elegir el estado y municipio
Elegir el nombre de la imagen a dar de baja
Confirmar Operación
Salir de esta opción o del programa
Administrador Sistema
Elegir el estado y municipio
Elegir la calle a la que se desea modificar o actualizar, saber su información o dar de baja
Elegir características de la calle a modificar o actualizar
Salir de esta opción o del programa
Modificar o actualizar características
Elegir opción a realizar
4.10.8.4 Consultas
4.10.8.5 Obtención de una ruta Óptima
Usuario Sistema
Elegir el estado y municipio
Escoger la opción Información
Dar el nombre de la calle o establecimiento a consultar
Salir de esta opción o de la página
Elegir que tipo de consulta realizar
4.10.9 Casos de uso
Dar de alta o modificar una imagen Caso de uso: Dar de alta o modificar una imagen utilizando nuestra aplicación llamada administrador SACTVi. Actores: Administrador, Sistema administrador SACTVi Propósito: Proporcionar al administrador de la base de una interfaz con la que le sea fácil dar de alta las calles que se encuentran en las imágenes que se den de alta. Resumen: El administrador edita la imagen que eligió desde la interfaz, definiendo los nodos de las calles. Después de esto, el sistema procede a analizar la imagen con respecto a los nodos dados para poder identificar las calles, una vez que realizó esto el sistema, el administrador ya podrá dar de alta las calles que se identificaroncon tan solo llenar los campos que se le piden. Tipo: Primario y esencial. Referencias Cruzadas: F1.1, F1.4, F1.5, F1.6, F1.10, F1.11, F1.12, F1.15, F1.16, F1.17, F1.18
Curso normal de los eventos
Acción del actor 1. Este caso de uso empieza cuando el administrador ingresa al sistema. El administrador como primer paso introduce su id y password asignado. 4. El administrador elige la opción de dar de alta o modificar una imagen.
Respuesta del sistema
2. El sistema revisa en la base de datos si el password y el id es valido. Si no es valido, entonces le manda una pantalla de aviso al usuario de esto. 3. Si el administrador es aceptado el sistema le da la bienvenida al usuario y le muestra las opciones que el administrador puede realizar. 5. El sistema le muestra al administrador una pantalla en donde el usuario debe ingresar el nip del estado y del municipio en el que quiere trabajar.
Dar el nombre de la calle origen y destino
Elegir la opción visualizar desde mapa
calle origen y destino
Salir de esta opción o de la página
15. El administrador da de alta las calles identificadas, con la simple operación de dar click en medio de la calle que quiere darse de alta en la base de datos. 18. El administrador llena los campos y áreas de texto, con las características que definen a la calle. Cuando el administrador haya terminado de dar todos los datos que se piden, entonces debe de oprimir el botón continuar. 20. El administrador debe oprimir el botón terminar, para que el proceso de dar de alta termine. Si no se dieron de alta todas las calles en ese momento, el administrador podrá hacerlo en otro momento sin ningún problema entrando nuevamente a esta opción como se estableció en el punto 4. 22. El administrador decide si continuar en el programa o salir.
16. Cada vez que se de click sobre una calle, el sistema revisa si la calle ya a sido de alta y si la parte en donde se dio click pertenece es una calle identificada o no. 17. Si la zona donde se dio clic no viola ninguna de las restricciones anteriores, entonces el sistema le muestra al administrador una nueva ventana con selectores y campos de texto que el usuario debe llenar. 19. Si lo introducido no viola ninguna restricción establecida, entonces la calle con todas sus características son almacenadas en la base de datos y le proporciona un costo determinado a la calle en base a las propias características dadas de alta, y con esto, el sistema cierra esta ventana. 21. El sistema con esto, muestra una ventana para que el usuario elija si quiere terminar con el programa o realizar otra operación.
Dar de baja una imagen Caso de uso: Dar de baja una imagen utilizando nuestra aplicación llamada administrador SACTVi. Actores: Administrador, Sistema administrador SACTVi Propósito: Proporcionar al administrador de la base de una interfaz con la que le sea fácil dar de baja cualquier imagen dada de alta y con esto a las calles que estén vinculadas con ésta. Resumen: El administrador elige el nombre de la imagen que quiere dar de baja dentro de una lista que le proporciona el sistema, la cual esta formada por las imágenes que han sido dadas de alta. Tipo: Primario y esencial. Referencias Cruzadas: F1.8, F1.15, F1.16, F1.17, F1.18 Curso normal de los eventos
Acción del actor
1. Este caso de uso empieza cuando el administrador ingresa al sistema. El administrador como primer paso introduce su id y password asignado. 4. El administrador elige la opción de dar de baja una imagen.
Respuesta del sistema 2. El sistema revisa en la base de datos si el password y el id es valido. Si no es valido, entonces le manda una pantalla de aviso al usuario de esto. 3. Si el administrador es aceptado el sistema le da la bienvenida al usuario y le muestra las opciones que el administrador puede realizar.
6. El administrador ingresa el nip del estado y del municipio en el que quieren trabajar. 10. El administrador deberá seleccionar de la lista presentada el nombre de la imagen que desee darde baja y después oprimir el botón que dice dar de baja. 12. El administrador debe confirmar si desea continuar con el procedimiento. 14. El administrador puede continuar dando de baja las imágenes o puede oprimir el botón salir
t i t
5. El sistema le muestra al administrador una pantalla en donde el usuario debe ingresar el nip del estado y del municipio en el que quiere trabajar. 7. Si el nip del estado o del municipio estuvo incorrecto, el sistema le informa de esto al administrador. 8. Si los nips son aceptados, el sistema muestra al usuario una interfaz en donde podrá dar de baja una imagen. 9. En esta interfaz, el sistema desplegara una lista con los nombre de las imágenes que han sido dadas de alta por el administrador dentro del municipio y estado elegido. 11. El sistema mostrara con esto una ventana de advertencia, donde el usuario decidirá si continuar con el procedimiento o no. 13. El sistema da de baja la imagen de la base así como todas las calles vinculada con ésta. Después de esto, el sistema volverá a mostrar la interfaz principal de dar de baja una imagen. 15. El sistema con esto, muestra una ventana para que el usuario elija si quiere terminar con el
li t ió
Actualizar datos Caso de uso: Modificar las características de una calle en particular que han sido dadas de alta utilizando nuestra aplicación llamada administrador SACTVi. Actores: Administrador, Sistema administrador SACTVi. Propósito: Proporcionar al administrador de la base de una interfaz con la que le sea fácil modificar las
características de una calle en particular, así como saber la información de una calle. Resumen: El administrador elige el nombre de la calle. Tipo: Primario y esencial. Referencias Cruzadas: F1.8, F1.13, F1.14, F1.15, F1.16, F1.17, F1.18
Curso normal de los eventos
Acción del actor 1. Este caso de uso empieza cuando el administrador ingresa al sistema. El administrador como primer paso introduce su id y password asignado.
Respuesta del sistema 2. El sistema revisa en la base de datos si el password y el id es valido. Si no es valido, entonces le manda una pantalla de aviso al usuario de esto.
4. El administrador elige la opción de actualizar datos. 6. El administrador ingresa el nip del estado y del municipio en el que quieren trabajar. 10. El administrador deberá seleccionar de la lista presentada el nombre de la calle en la que desee modificar sus características, saber toda la información referente a ella. O también si se quiere dar de alta otra calle entonces no se debe seleccionar una calle.
3. Si el administrador es aceptado el sistema le da la bienvenida al usuario y le muestra las opciones que el administrador puede realizar. 5. El sistema le muestra al administrador una pantalla en donde el usuario debe ingresar el nip del estado y del municipio en el que quiere trabajar. 7. Si el nip del estado o del municipio estuvo incorrecto, el sistema le informa de esto al administrador. 8. Si los nips son aceptados, el sistema muestra al usuario una interfaz en donde podrá modificar las características de una calle o saber toda la información referente a esta calle. 9. En esta interfaz, el sistema desplegara una lista con los nombre de las calles que han sido dadas de alta por el administrador dentro del municipio y estado elegido. 11. Si el usuario eligió dar de alta una nueva calle, entonces el sistema direccionará el proceso a la opción de dar de alta o modificar una imagen. Si el administrador eligió ver la información de la calle seleccionada, el sistema mostrara al usuario una ventana con toda la información referente a la
ll P i li ió l ió difi t
Consultas Caso de uso: Hacer consultas referentes a una calle en particular o a una característica de ésta utilizando nuestra página dinámica SACTVi. Actores: Usuario, Página dinámica SACTVi Propósito: Proporcionar al usuario de una página que pueda visitar desde Internet donde pueda consultar la situación actual de las calles de la ciudad dadas de alta en la base de datos SACTVi. Resumen: El usuario ingresara a la página y escogerá el estado y municipio al que pertenece, y después elegirá
la opción información, en donde dirá que consulta es la que quiere hacer y así el sistema podrá proporcionarla la información solicitada.
Tipo: Primario y esencial. Referencias Cruzadas: F2.2, F2.6, F2.7, F2.8.
Curso normal de los eventos
Acción del actor 1. Este caso de uso empieza cuando el usuario entra a la página y define en que estado y municipio se encuentra. 3. El usuario elige el link llamado información de las calles. 5. El usuario elige que consulta quiere hacer. 7. El usuario da el nombre de la calle o del establecimiento a encontrar. 9 El i d h l
Respuesta del sistema
2. El sistema se direcciona a la página principal de la región dada. 4. El sistema se direcciona a una página en donde el usuario podrá definir que tipo de consulta desea hacer. 6. El sistema le pide al usuario el nombre de la calle de la que quiere saber la información. 8. El sistema le muestra al usuario los resultados obtenidos.
Obtención de una ruta óptima Caso de uso: Obtener una ruta óptima con un origen y destino dado por el usuario utilizando nuestra página dinámica SACTVi. Actores: Usuario, Página dinámica SACTVi Propósito: Proporcionar al usuario de una página que pueda visitar desde Internet donde pueda obtener la ruta
mas viable para llegar a un lugar en particular desde la calle en la que se encuentra el usuario. Resumen: El usuario ingresara a la página y escogerá el estado y municipio al que pertenece, y después elegirá
la opción información, en donde dirá que consulta es la que quiere hacer y así el sistema podrá proporcionarla la información solicitada.
Tipo: Primario y esencial. Referencias Cruzadas: F2.1, F2.2, F2.3, F2.4, F2.5.
Curso normal de los eventos
Acción del actor 1. Este caso de uso empieza cuando el usuario entra a la página y define en que estado y municipio se encuentra.
Respuesta del sistema
2. El sistema se direcciona a la página principal de la región dada.
3. El usuario elige el link llamado calcula ruta. 5. El usuario hace su elección. 7. El usuario si eligió que no sabia el nombre de las calles, debe de llenar los campos de texto con las características de la calle, si eligió que si sabia los nombres, entonces se el usuario debe elegir el nombre de las calles desde una lista dada por el sistema de las calles dadas de alta de la región o de un mapa sensitivo. 9. El usuario debe elegir como quiere visualizar el resultado. 12. El usuario podrá hacer esta operación tantas veces quiera o si desea puede salir de la página.
4. El sistema se direcciona a una página en donde el usuario debe decir si conoce el nombre de la calle en donde se encuentra y a la que quiere ir o si no lo conoce. 6. Si el usuario eligió que conoce los nombres de las calles, entonces el sistema se direcciona a una página en donde el usuario debe elegir si quiere escoger las calles desde un mapa sensitivo o desde una lista de calles. Si eligió que no conoce el nombre de las calles entonces direccionara el proceso a una página en donde se le pedirá al usuario que de ciertas características del lugar en donde se encuentra y del lugar a donde quiere ir. 8. El sistema toma el nombre de las calles escogidas y verifica que no viole ninguna de las restricciones establecidas. Si esto no pasa, entonces el sistema calcula la ruta óptima utilizando el algoritmo de Dijktra, y después de esto el resultado es mostrado por vías, ya sea gráficamente o por una animación simple. 10. El sistema procede a mostrar el resultado. 11. Mediante un pequeño simulador que no se visualiza, el sistema estará en constante vigilancia de la ruta dada usuario, para saber si la ruta debe ser recalculada o no.
4.11 Conclusiones La administración de la información es indispensable en el sistema.
En este capítulo encontramos el análisis de manera detallada del sistema que
desarrollamos. Las herramientas que utilizamos para ello, fueron los diagramas de UML
para indicar el contenido de cada una de nuestras clases, el diagrama entidad-relación
para describir la estructura de la base de datos, DFD’s para una descripción general del
sistema y los casos de uso en los que especificamos a detalle como funciona cada una de
las herramientas del sistema.
El diseño es una parte muy importante para el desarrollo de software, ya que con
el mejoramos el tiempo de implementación, se aclaran las ideas de lo que se pretende
hacer y a su vez se mejoran los objetivos planteados referentes al software.