viernes, 27 de abril de 2012

20. Creación del curso de un usuario

Este es un escenario de la aplicación Android.


Descripción:  Creación del curso de un usuario
Resumen: El usuario que entra por primera vez en la aplicación debe poder crearse uno o más cursos. Estos cursos se utilizan para asignarles después clases y eventos relacionados.


Prerrequisitos: El usuario tiene un perfil y se ha autenticado en la aplicación.
Escenario normal:


1. El usuario usuario selecciona la creación de un curso.
2. La aplicación pide todos los datos relativos a un curso.
3. El usuario introduce todos los datos relativos a un curso.
4. La aplicación valida los datos.
5. La aplicación envía al usuario a la pagina general del curso.


Escenario alternativo:
El usuario ya ha creado un curso.


1. La aplicación muestra la lista de cursos disponible para el usuario.
2. El usuario selecciona un curso o crear un nuevo curso.
3. La aplicación envía al usuario a la pagina general del curso.

miércoles, 18 de abril de 2012

10. Creación del perfil del usuario

Este es un escenario de la aplicación Android.

Id: 10
Descripción: Creación del perfil del usuario
Resumen: El usuario que entra por primera vez en la aplicación debe poder crearse un perfil en la aplicación. Este perfil es necesario por si queremos identificar al usuario para una posible copia de seguridad en un servidor remoto y también para que el usuario tenga una experiencia más personalizada.
Escenario normal:

  1. El usuario abre la aplicación.
  2. La aplicación detecta si es la primera vez que se abre la aplicación.
  3. La aplicación muestra un mensaje de bienvenida.
  4. La aplicación pide introducir los datos personales al usuario.
  5. La aplicación valida los datos.
  6. La aplicación pregunta si el perfil creado debe ser utilizado por defecto.
  7. La aplicación muestra un mensaje de agradecimiento.
  8. La aplicación redirige al usuario a la pagina de selección de estudios.
Escenario alternativo:
La aplicación tiene uno o más perfiles y ninguno es por defecto.
  1. El usuario abre la aplicación.
  2. La aplicación muestra un mensaje de bienvenida.
  3. La aplicación muestra una lista de perfiles que el usuario puede seleccionar.
  4. El usuario selecciona un perfil.
  5. La aplicación pregunta si ese es el usuario por defecto.
  6. La aplicación redirige al usuario a la pagina de selección de estudios.
Escenario alternativo:
La aplicación tiene un perfil seleccionado por defecto.
  1. El usuario abre la aplicación.
  2. La aplicación muestra un mensaje de bienvenida.
  3. La aplicación redirige al usuario a la pagina de selección de estudios.

viernes, 13 de abril de 2012

La aplicación android

Ya hemos comentado que, aunque la tecnología debería responder a las necesidades y no al revés, vamos a realizar la aplicación móvil  en un entorno Android.

Antes de definir cuales son los requisitos que nuestra aplicación debe reunir tanto funcionales (lo que la aplicación tiene que hacer) como los no funcionales (las características que debe reunir la aplicación), vamos a definir el objetivo del producto, que  como veremos no son necesariamente los mismos que los del proyecto.

La aplicación Android debe permitir al usuario registrar uno o varios cursos escolares, definiendo horarios semanales, fechas de entrega de trabajos, notas sobre clases y fechas de exámenes.

Pues así de simple. Queremos una aplicación que sea una ayuda para el estudiante. En principio podría parecer una agenda como otra cualquiera, pero también nos deberá permitir hacer notas de las clases. Una idea práctica puede ser la de ir a clase con una tableta android y tomar notas de la clase. También podría ser una opción permitir guardar fotos, vídeos o grabaciones de sonido.

Las próximas dos semanas estaré un poco liado, pero espero poder crear algún que otro caso de uso.

Saludos.


martes, 10 de abril de 2012

Android? Java? XML? Como creo la aplicación?

Aunque todavía no he escrito sobre la aplicación si que he decidido hacerla en la plataforma Android. Tengo experiencia como programador en Java, aunque eso importa relativamente poco. Lo cierto es que existe una gran comunidad de desarrolladores y además es bastante activa. No hay más que darse una vuelta por blogger para ver la cantidad de blogs y páginas dedicadas al mundo Android.

Otro motivo bastante importante es la distribución de la aplicación. No es que piense que vaya a tener millones de descargas, pero lo cierto y verdad es que para Iphone hay que pagar una cuota anual mientras que en Google Play sólo se realiza un pago único de 25$.

Por último está el mercado (no el mercado de la prima de riesgo...) Uno de cada dos smarphones lleva Android por dentro y son activados casi un millón cada día. Por supuesto no es que piense que voy a tener ni siquiera mil descargas de la aplicación pero es bueno tener una base amplia de mercado...

Ya más metidos en la tecnología he visto que Google ha hecho una especie de MVC para la presentación de las pantallas. El diseño se hace a través de ficheros XML y la lógica en clases Java. Aunque también hay herramientas que permiten crear aplicaciones sin ningún tipo de conocimientos de Java o XML.

He hecho un primer ejemplo de aplicación para estimar cuanto tiempo tardaría en aprender a utilizar la tecnología y lo cierto es que en menos de dos horas tenia una aplicación funcionando. Lo único que me ha costado un poco de entender ha sido como manejar los diferentes layouts, pero no ha sido nada grave.

Pronto empezaré a definir los objetivos del producto (no necesariamente son los mismos que los del proyecto) y sus requisitos, tanto los funcionales como los no funcionales.

miércoles, 4 de abril de 2012

Objetivos del proyecto

Fijarse objetivos es imprescindible para saber si un proyecto ha tenido éxito o no, para ello es imprescindible poder medir de una manera sencilla estos objetivos. Aunque no todos los objetivos que tengo son medibles, vamos a intentar dar algún tipo de indicador para saber si al final los he cumplido o no...

Con respecto al proyecto tengo estos objetivos:

  1. El proyecto debe generar una aplicación para móviles. Este es fácil de medir :)
  2. El proyecto debe permitirme adquirir los conocimientos necesarios para trabajar de manera profesional en proyectos de Android. Vaya, este no es tan sencillo de medir...
  3. El proyecto debe generar un sitio web que servirá de soporte a la aplicación Android y también de posible soporte a otras aplicaciones o desarrollos.
  4. El proyecto va a estar enfocado al área de la educación.
  5. La inversión monetaria del proyecto no debe superar el coste de la licencia para publicar aplicaciones en  el entorno oficial de Android y el coste del dominio del sitio web.
No son muchos, ni falta que hace. También tengo la idea para la aplicación. Ya existen aplicaciones que hacen algo parecido y por tanto no tengo muchos problemas para compartir la idea. Sobre todo porque esta aplicación será completamente gratuita :)

lunes, 2 de abril de 2012

Como me voy a organizar el trabajo

En principio voy a tener tres áreas de trabajo.

La primera y una de las más importantes es la concepción de la aplicación. Quiero que la aplicación sea útil y eficiente. Algo que este relacionado con el mundo de la educación que pueda servir a la gente. También me gustaría que tuviese un público lo suficientemente amplio para poder llegar a un buen número de descargas. Ya tengo una idea más o menos pensada, pero todavía esta en desarrollo.

La segunda el la aplicación Android. Este área incluye el tiempo que tendré que destinar a aprender todo lo necesario para implementar la aplicación y el tiempo que pasaré implementándola. En principio utilizaré una implementación basada en prototipos, pero eso será mucho más tarde.

Por último crearé la web de la aplicación. En ella tendré la descripción de la aplicación, una pequeña ayuda y por supuesto la información de contacto. La idea es que se pueda extender para más aplicaciones aunque no será nada del otro mundo, algo simple y efectivo.

Todas las entradas del blog irán asociadas a alguna de estas tres categorías y por supuesto vuestros comentarios son bienvenidos!

El principio

Este blog pretende ser un poco un diario que relate mi viaje en el mundo de las aplicaciones móviles.
El objetivo principal no es solo crear una aplicación de android, sino también aplicar los conocimientos adquiridos en elicitación de requisitos. Para ello me apoyo en varios años de experiencia en el mundo Java y en diversos proyectos de gestión.
En principio no tengo intereses monetarios por lo que la primera aplicación será gratuita y sin publicidad.
La tematica estará relacionada con el mundo de la educación, aunque el tema concreto no lo tengo muy definido.  Se admiten sugerencias :-)
¡Que comience el viaje!