Download Sistema Traductor para un Dispositivo Móvil

Document related concepts
no text concepts found
Transcript
Sistema Traductor para un
Dispositivo Móvil
Proyecto Fin de Carrera - ITIS
Miriam Durán Gavilán
Septiembre 2008
Índice












Introducción
Objetivos
Método de Trabajo
Casos de Uso
Arquitectura del Sistema
J2ME (Java MicroEdition)
Caso de uso “Traducir”
Implementación
Diagrama de Clases
Gestión del Proyecto
Conclusiones
Demostración
Introducción
 Proyecto
 Aplicación con soporte para dispositivos móviles.
 Situación actual de la tecnología móvil
 Nuevas prestaciones: Resolución Gráfica, Memoria …
 Aplicaciones (p.e. Localizadores)
Objetivos
 Creación de un software capaz de traducir una palabra introducida
por el usuario.
 Ofrecer la posibilidad de cambiar el idioma de la aplicación.
 Idiomas disponibles de traducción y navegación:
 Euskera
 Castellano
Método de Trabajo
 Fases principales del desarrollo




Captura de Requisitos
Análisis
Diseño
Implementación y Pruebas
 Ciclo de vida en cascada
 Seguir una Planificación estimada y crear un Plan de Contingencia
para evitar problemas.
Casos de Uso
 Traducir
 Traduce la palabra introducida a
la palabra destino
 Intercambiar idiomas
 Guarda el estado del sentido de la
traducción
 Euskera – Castellano
 Castellano – Euskera
 Cambiar idioma
 Guarda el estado del idioma de la
aplicación
Arquitectura del Sistema
 Estructura
SISTEMA DE INFORMACIÓN
Capa de Presentación y de Dominio
Capa de Gestión de Datos
Estructura de Datos
Responsable de la
interacción con el usuario
y de las funcionalidades
Responsable de la
interacción con la
estructura de datos
Arquitectura del Sistema
 Elección Tecnológica
 Java MicroEdition (J2ME)
 Subconjunto de la plataforma Java orientada al desarrollo de aplicaciones
para dispositivos pequeños con capacidades limitadas
 Teléfonos móviles, Buscas, PCs de bolsillo …
 Sun Java Wireless Toolkit (WTK)
 “Caja de Herramientas” para desarrollar aplicaciones Wireless con un perfil
y configuración específico.
 Incluye emuladores, documentación, utilidades (p.e. monitor de memoria),
etc.
J2ME – Java MicroEdition
 Agrupa algunas de las clases de la edición estándar (java.lang,
java.util y java.io) y añade el paquete javax.microedition.
 Una aplicación en J2ME se compone de:
 Máquina Virtual Java (JVM):
 Dos tipos: CVM (Compact Virtual Machine) y KVM (Kilobyte Virtual Machine)
 Configuración CLDC ó CDC
 Perfil según el dispositivo:
 MIDProfile, PDAProfile, Foundation Profile
 El “Traductor” es una aplicación Java con el perfil MIDP sobre
una configuración CLDC, más conocido como MiDlet.
Caso de Uso Traducir (I)
 Captura de Requisitos:
 Permite al Usuario de un teléfono móvil traducir una palabra del idioma
fuente al idioma destino y viceversa.
 Análisis:
Caso de Uso Traducir (II)
 Análisis
 Contrato
 Nombre: Traducir()
 Responsabilidades: Extraer la palabra introducida y buscar la palabra en el
diccionario. Devolver el resultado obtenido o una lista de los más parecidos.
 Precondición: Palabra no nula.
 Poscondición:
 Salida: Si la palabra introducida se encuentra en el diccionario el sistema
mostrará la palabra origen y su resultado. En caso de que la palabra esté
mal escrita y/o no aparezca entre almacenadas se mostrará una pantalla
con un listado de los términos más parecidos a la palabra origen.
Caso de Uso Traducir (III)
 Diseño
Implementación (I)
 Definición del MIDlet: Aplicación que usa la especificación MIDP
diseñada para ser ejecutada en dispositivos de poca capacidad gráfica, de
cómputo y de memoria.
 Estructura general
 Clase MIDlet y métodos abstractos startApp(), pauseApp() y
destroyApp().
 Clase Display
 Interfaces gráficas de alto y bajo nivel
 Manejo de los botones y eventos
 CommandAction() e ItemStateChanged()
Implementación (II)
 Acceso a los Datos
 getResourceAsStream()
 Utilización de Threads
 Restricciones del CLDC
 Librerías limitadas
 Seguridad
 Limitaciones en el manejo de errores
Diagrama de Clases
Gestión del Proyecto (I)
 Planificación Estimada
 Procesos Tácticos
 Procesos Operativos
 Procesos Formativos
 Diagrama de Gantt
80 hrs.
243 hrs.
95 hrs.
TOTAL = 418 hrs.
Gestión del Proyecto (II)
 Esfuerzo Real
 Procesos Tácticos
 Procesos Operativos
 Procesos Formativos
103 hrs.
271 hrs.
186 hrs.
TOTAL
= 560 hrs.
 Tabla Comparativa
horas
243 271
300
200
100
80 103
186
95
0
P. Tácticos
P. Operativos
P. Formativos
Planificado
Real
Gestión del Proyecto (III)
Esfuerzo estimado
23%
19%
58%
Procesos
Tácticos
Procesos
Operativos
Procesos
Formativos
Esfuerzo real
33%
18%
49%
 142 horas más de esfuerzo  aumento del 34%
 Clara diferencia en los procesos de formación.
 Menos esfuerzo real en los operativos.
Procesos
Tácticos
Procesos
Operativos
Procesos
Formativos
Conclusiones
 Desarrollo de la aplicación:
 Dificultad en algunas funciones como acceder al diccionario
 Librerías limitadas
 Aportación:
 Experiencia en el ámbito de la programación móvil
 Nuevas tecnologías (Android)
 Valoración personal:
 Satisfacción por haber creado una aplicación por mí misma en una
plataforma sin experiencia.
 Futuras mejorías y posibles funcionalidades
Demostración