jueves, 14 de noviembre de 2013

Proyecto academico Docencial - Estudiantil

"ListNot"

1.       Introducción.-

La administración adecuada de la información se ha convertido en  una de las herramientas esenciales  en  la vida cotidiana de una persona, en la actualidad estas herramientas están gestionadas por sistemas informáticos que pueden ser manejados desde dispositivos móviles, tales sistemas tiene la aceptación de las personas por el fácil manejo y portabilidad que presentan.

La dedicación de los integrantes “docentes y estudiantes que desde ha ora serán definidos como Stakeholders”, por las materias tomadas en el periodo correspondiente de estudio, originan la falta de información en ciertos detalles, que en el caso de los estudiantes podrían ser los que definan si aprueba la materia o no.

La  implementación de “ListNot” integra una parte tal vez no tan importante del manejo de la información de los  Stakeholders,     
    
2.       Problemas.-

Actual mente en los  Stakeholders  no tienen una forma de organizar, verificar, anotar los detalles de una cierta materia y poder ser recordados con anticipación, la organización de la misma y la verificación.

El problema radica en que un Stakeholders realiza sus anotaciones de forma manual en hojas, cuadernos, libretas, etc.   Y por la apretada agenda que tiene suele olvidarse sobre los pendientes anotados, ocasionando perdida de puntos, tiempo, organización, etc.    

2.1.    Listado de problemas.-

·         Es difícil recordar la información sobre los detalles de una materia.
·         No se recupera la información de forma anticipada.
·         La  mayoría de las anotaciones se pierden con el tiempo.

3.       Objetivos.-

3.1.    Objetivo general.-

Desarrollar e implementar un sistema de información para la administración de materias, exámenes, y notas para los Stakeholders.

3.2.    Objetivos específicos.-

·         Desarrollo de un modulo de materias, par la obtención de los detalles de las mismas.
·         Desarrollo de un modulo de agenda de exámenes, par el recordatorio de los mismos.
·         Desarrollo de un modulo de calculo de notas.
·         Desarrollo de un modulo de obtención de datos.
  
4.       Marco conceptual.-

4.1. Introducción.- En el desarrollo del presente se describe las metodologías, tecnologías y herramientas utilizadas para la realización del presente proyecto.

4.2.  Android.-  Sistema operativo libre de alto rendimiento diseñado para  dispositivos móviles “tablets, Ipats, celulares”, con la capacidad de manejar pantalla táctil, android está   basado en Linux, por lo cual contiene ciertos requisitos de un software libre.

4.3.  Java.- lenguaje orientado a objetos,  creado para programar dispositivos electrónicos domésticos en particular, como también está orientado a el desarrollo de aplicaciones Web, Java es independiente del hardware por que se ejecuta en una maquina virtual el cual garantiza la independencia del mismo, este lenguaje de programación hereda la sintaxis de C++, y mejora las calidades de ejecución de un sistema hecho en otro lenguaje.

4.4.  Entorno de desarrollo eclipse indigo.-  Es un entorno de desarrollo integrado de código abierto y multiplataforma, la arquitectura plug-in que utiliza le permite escribir cualquier extensión deseada en el ambiente. Eclipse  indigo provee al programador con Frameworks muy ricos para el desarrollo de aplicaciones gráficas, definición y manipulación de modelos de Software, Aplicaciones web, lo cual es una buena opción al omento de desarrollar aplicaciones para un sistema android.

4.5.   Estructura de datos.-  La estructura de datos es una forma de organizar un conjunto de datos con el objetivo de facilitar su manipulación.

En una estructura de datos se define la organización e interrelación de datos y un conjunto de operaciones que se pueden realizar sobre ellos. Las operaciones básicas son:
·         Adicionar un nuevo valor a la estructura.
·         Borrar un valor de la estructura.
·         Encontrar un determinado valor en la estructura para realizar una operación con este valor.
4.6. Persistencia.-   la persistencia es la capacidad de un lenguaje de o de un entrono de desarrollo, para poder almacenar y recuperar el estado de los objetos de forma que sobrevivan a los procesos que los manipulan.

4.7. Serializacion.- En ciencias de la computación, la serialización (o marshalling en inglés)  consiste en un proceso de codificación de un objeto en un medio de almacenamiento (como puede ser un archivo, o un buffer de memoria) con el fin de ser usado para crear un nuevo objeto que esidéntico en todo al original, incluido su estado interno (por tanto, el nuevo objeto es un clon del original). La serialización es utillizada para realizar la  persistencia de un objeto en un archivo o base de datos, o para distribuir objetos idénticos  a varias aplicaciones  o localizaciones.

4.8. Pruebas de calidad.- las pruebas de calidad permiten descubrir errores  que no se  avían descubierto antes, estas  tienen éxito si descubren un error. 

4.8.1.     Caja  blanca.-  Se los utiliza para ver el funcionamiento del producto desde el código fuente, para que aseguren “que todas las piezas encajan” siendo un examen minucioso de los detalles procedimentales.

4.8.2.    Caja negra.- Se lo utiliza para ver que cada función es operativa y las salidas de los datos son los correctos, permitiéndonos encontrar funciones incorrectas o ausentes, siendo esta una prueba realizada al interfaz del software presentado al usuario.

5.       Cuerpo de solución.-

5.1. Planificación.- Para poder obtener los beneficios del desarrollo de la  aplicación se procede a dividir a los participantes, con el fin de realizar pequeños estudios y  encuestas que nos permitirán definir mas  el “que” y facilitarnos el “como”. De este mondo también nos permitirá definir o aproximarnos a los costos que implicara el desarrollo de la aplicación.  

5.1.1. Stakeholders.-

·         Docentes.
·         Estudiantes.

5.1.2.   Preguntas.- las siguientes preguntas fueron realizadas a los Stakeholders de la carrera de informática, como también a amigos de otras  carreras de la Umsa.

5.1.2.1.             Preguntas a estudiantes.-

1.       ¿Conoces el nombre de tu docente y grado académico?
2.       ¿Te acuerdas de las fechas para los exámenes?
3.       ¿Sabes como pondera la materia el docente?
4.       ¿te acuerdas si existe tarea pendiente?

5.1.2.2.             Preguntas a docentes.-

1.       ¿Tiene la facilidad de ver las notas de los estudiantes?
2.       ¿Se acuerda  de las fechas para los exámenes?
3.       ¿se acuerda si dejo tarea pendiente?
4.       ¿se acuerda del temario que asigno?
5.       ¿que metodología de calificación usa?

5.2. Requerimientos.- los requerimientos obtenidos fuero captados de acuerdo a las preguntas realizadas  en los puntos anteriores.

5.2.1.    Requerimiento general.- El sistema debe permitir a los usuarios la facilidad de recordar y buscar detalles a cerca de su periodo académico.

5.2.1.1.             Docente.-

1.       Se requiere que el docente tenga un listado de las materias que dicta.
2.       Se requiere que el docente tenga un listado de los alumnos inscritos en una o más de las materias que dicta.
3.       Se requiere que el docente sepa donde y cuando dictar la x materia.
4.       Se requiere que el docente sepa el temario asignado a la materia.
5.       Se requiere que el docente anote la fecha, hora y lugar del examen.
6.       Se requiere que el docente anote y administre las notas de los estudiantes.

5.2.1.2.             Estudiante.-

1.       Se requiere que el estudiante tenga un listado de las materias a las que se inscribió.
2.       Se requiere que el estudiante sepa los detalles de la materia “nombre docente, lugar donde se dicta, hora, día”.
3.       Se requiere que el estudiante sepa el temario de la materia.
4.       Se requiere que el estudiante sepa la ponderación de la materia.
5.       Se requiere que el estudiante anote la hora, fecha y lugar del examen.  

5.2.2.       Requisitos funcionales.-

·       El sistema debe de ser axsesado por primera vez con nombre usuario y contraseña.
·       El sistema debe recordar  al docente y estudiante las anotaciones programados por los mismos.
·       El sistema debe calcular las notas finales automáticamente.
·       La interfaz de usurario se implementara mediante los activyties del sistema android. 

5.2.3.       Requisitos no funcionales.-

·       El sistema no bebe modificar notas.
·       El sistema debe modificar horarios y materias asignadas o inscritas.  

5.2.4.       Restricciones.-

·       El sistema solo funciona  un usuario en varios  dispositivos.
·       El sistema solo un dispositivo un usuario.
·       El sistema deberá calcular las notas con la siguiente formula:
·       El sistema se implementara en java y con  sdk  para android 2.2.
·   El sistema será ejecutado y funcional con cualquier dispositivo que contenga sistema android 2.2 o superior.     

5.3.    Análisis.-

5.3.1. Diagrama de casos de uso general.-

  

  
5.3.2. Diagrama de casos de uso Especifico “Estudiante”


Caso de Uso: Ver listado de Materias.
Actores: Estudiante.
Resumen: El estudiante da Un vistazo a las materias a las que se inscribió, permitiendo le ver los Detalles y la  Ponderación.     
Tipo: Primario Esencial.
Precondiciones: El sistema debe tener  el archivo generado por el sistema de la carrera.
Curso normal de Eventos:
Acción de Actores:
Respuesta del sistema:
El estudiante selecciona una materia
El sistema le muestra los detalles de la materia seleccionada
El estudiante actualiza su información
El sistema le muestra actualización de la ponderación
Excepciones:
El sistema no mostrara los detalles de la materia si el sistema no posee en el archivo, o el estudiante no registra mas detalles al mismo. 


Caso de Uso: Registrar Tareas y Exámenes
Actores: Estudiante
Resumen: el estudiante podrá registrar tareas pendientes y los detalles de los exámenes que ejecutara en todo su periodo académico.
Tipo: Primario Esencial.
Precondiciones: Ninguna.
Curso normal de Eventos:
Acción de Actores:
Respuesta del sistema:
El estudiante registra los detalles de la tarea o examen.
El sistema almacenara los datos del mismo, para recordarlos con anticipación.
Excepciones:
Ninguna.


Caso de Uso: Registrar Materias
Actores: Estudiante
Resumen: En caso de que el estudiante no tuviera el archivo generador de materias este podrá crearse manualmente. Permitiéndole registrar las materias y la ponderación.        
Tipo: Secundario.
Precondiciones: Ninguna.
Curso normal de Eventos:
Acción de Actores:
Respuesta del sistema:
El estudiante registra una materia   
El sistema guarda la materia inscrita.
El estudiante registra ponderación
El sistema guarda los detalles correspondientemente.
Excepciones:
Ninguna.


5.3.3. Diagrama de casos de uso Especifico “Docente”


Caso de Uso: Ver listado de Materias.
Actores: Docente.
Resumen: El docente da Un vistazo a las materias a las que dictara, permitiendo le ver los Detalles y la  lista de estudiantes, y lo más importante registrar las notas.     
Tipo: Primario Esencial.
Precondiciones: El sistema debe tener  el archivo generado por el sistema de la carrera.
Curso normal de Eventos:
Acción de Actores:
Respuesta del sistema:
El Docente  selecciona una materia
El sistema le muestra una lista de estudiantes pertenecientes a la misma.
El Docente  Selecciona un  Estudiante
El sistema le muestra los detalles de ponderación
Excepciones:
El sistema no mostrara los detalles de la materia si el sistema no posee en el archivo, o el docente no registro mas detalles al mismo.



Caso de Uso: Registrar Tareas y Exámenes.
Actores: Docente.
Resumen: El docente podrá registrar tareas pendientes y los detalles de los exámenes que ejecutara en todo su periodo académico.
Tipo: Primario Esencial.
Precondiciones: Ninguna.
Curso normal de Eventos:
Acción de Actores:
Respuesta del sistema:
El docente registra los detalles de la tarea o examen.
El sistema almacenara los datos del mismo, para recordarlos con anticipación.
Excepciones:
Ninguna.



Caso de Uso: Registrar Materias.
Actores: Docente.
Resumen: En caso de que el docente no tuviera el archivo generador de materias este podrá crearse manualmente. Permitiéndole registrar las materias, ponderación y  estudiantes inscritos a la materia.       
Tipo: Secundario.
Precondiciones: Ninguna.
Curso normal de Eventos:
Acción de Actores:
Respuesta del sistema:
El Docente registra una materia  
El sistema guarda la materia inscrita.
El Docente registra, ponderación y Estudiantes.
El sistema guarda los detalles correspondientemente.
Excepciones:
Ninguna.



5.3.4. Diagrama de clases conceptuales.-



5.3.5. Diagrama de secuencia.-

5.3.5.1.             Diagrama de secuencia estudiante.-




5.3.5.2.             Diagrama de secuencia docente.-




5.3.5.3.             Diagrama de secuencia Registro de Agenda.-




  
5.4.    Diseño.-


5.4.1. Diagrama de clases y objetos.-




5.4.2. Diagrama de Colaboración.-

5.4.2.1.             Diagrama de colaboración estudiante.-

  
5.4.2.2.             Diagrama de colaboración docente.-





5.4.2.3.             Diagrama de colaboración Registro de Agenda.-






     5.5.    Implementación.-

En esta sección se pondrá en práctica todo lo mencionado anteriormente, tratando de explicar de forma clara los aspectos más relevantes que existen en el sistema propuesto.
Aunque muchas metodologías ágiles han sido revisadas durante la última década, casi ninguna se ha centrado en los requerimientos tan específicos que el  desarrollo móvil necesita. Como se verá a continuación, las metodologías ágiles poseen ciertas propiedades que las hacen totalmente aplicables al dominio del software en los móviles.

Los métodos agiles se identifican como una  solución potencial para el desarrollo de software en móviles. Estas se apoya en las bases (home ground) haciendo un análisis comparativo para probar la idoneidad de los métodos ágiles sobre el desarrollo de software para móviles.
 


5.5.1. Metodología Xp.-

5.5.1.1.             Planificación del Proyecto.-

5.5.1.1.1.               Recopilación de requerimientos.-  los requerimientos generales del sistema es el poder registrar y obtener  los datos de una materia “x”  para los  Stakeholders. Cada uno tiene requerimientos algo distintos. Que fueron desarrollados específicamente en la sección 5.2.1.

5.5.1.1.2.             Interecciín con el usuario.- las interacciones con el usuario fueron realizadas mediante preguntas acorde a las funcionalidades de cada Stakeholders , estas preguntas nos permitieron especificar mas los requerimientos que se tuvieron anteriormente, el cual se lo puede apreciar con mayor detenimiento en la sección 5.1.

5.5.1.2.        Diseño.-  El diseño  para el producto software es la de colocar en un Activitie una  TabHost con 2 pestañas.

·         Pestaña 1.- En esta se encontrara 3 ListView,  la primera brindara la lista de materias inscritas, la segunda muestra el detalle de la materia seleccionada en la primera lista en el caso del usuario, pero para el docente contendrá la lista de los estudiante, la tercera muestra un detalle o mas información de la materia.

·         Pestaña 2.- En esta pestaña se contendrán 2 Listview,  la primera contendrá opciones para el usuario como la más importante  registrar los acontecimientos que el docente o usuario pueda tener. La  segunda muestra todos los acontecimientos que puedan existir.

Pretendiendo que la siguiente interfaz  sea como  la siguiente imagen. 



Esto permitirá la utilización del sistema en la mayoría de los dispositivos móviles  y es apto por que los mismos tienen distintas resoluciones y dimensiones en  los Activities.
   
5.5.1.3.       Codificación.- Esta sección estará contenida por las Historias más Importantes  de los usuarios.

5.5.1.3.1.         Historia de Ingreso.-  para que el usuario pueda tener todo el contenido referente a su actividad es necesario que el usuario se identifique  con el usuario y contraseña del sistema de  administración de su carrera, en este caso con el sia.informatica.edu.bo.  el cual le permitirá bajar toda la información que necesita, en caso de que no cuente con una cuenta o la descarga del archivo se a interrumpida por “x” razón, el sistema permitirá al usuario registrar todos los detalles manualmente. Esta operación es necesaria para poder saber si el   Stakeholder es Docente o Estudiante.
  
5.5.1.3.2.          Historia de Registro de Materia.-  los datos con que se debe de contar para el registro de una materia es  “sigla, nombre de la materia, horario, y lugar donde se pasaría la materia en este último caso se deberá tener 2 horarios y lugares puesto que no siempre se pasa en la misma hora y en el mismo lugar ”.

5.5.1.3.3.      Historia de Registro de Docente o lista de estudiante.- cuando se selecciones una materia y este no tenga los detalles del mismo (docente o lista de estudiantes) automáticamente el sistema procederá a el registro del mismo,  si el Stakeholder es estudiante registrara al docente, si es docente este registrara al estuiante.

5.5.1.3.4.               Historia de  Registro de Evaluación.-

5.5.1.3.4.1.Docente.- al seleccionar una materia y  un estudiante le permitirá registra su desempeño  de acuerdo con los siguientes términos.

·         Examen.
·         Ayudantía.
·         Extras.

5.5.1.3.4.2.Estudiante.- al seleccionar una materia el estudiante podrá actualizar su evaluación con los siguientes términos.


·         Examen.
·         Ayudantía.
·         Extras.

5.5.1.3.5.                   Persistencia.- a continuación se presenta el  modelo de codificación para el sistema ListNot el cual utiliza una Serializacion en cada objeto.
   
5.5.1.3.5.1.IdUsuario.- en esta parte se hace uso de herramientas de conexión a internet de esta manera se definirá si el  Stakeholder es estudiante o docente esta para te permitirá crear toda la funcionalidad del sistema (crea el objeto AppNot).

 


















5.5.1.3.5.2.Registro de Materias.-  Es utilizada cuando el sistema no contiene el archivo de inscripción del usuario, para lo cual se hace uso de un Activitie que le permitirá al usuario registrar las materias. 





5.5.1.3.5.3.Llenado de materias.- en esta parte se hace uso de Listview que listara todos los detalles  de la materia seleccionada.  

public void onCreate(Bundle savedInstanceState)
{
   label=(TextView)findViewById(R.id.textView1Up);
   Abrir();//abre el archivo
   if(this.app==null)
      this.Lista.add("Identificate");
   else
   {
      Llenar();
      if(this.app.GetId())
         this.label.setText("Listado de                    
                                     Estudiantes");
      else
         this.label.setText("Detalle de la
                                      Materia");
   }
        this.List_left=(ListView)findViewById(R.id.listView1);
        this.List_left.setAdapter(new ArrayAdapter(this, R.layout.listrow, this.Lista));
        Click();
  }

public void Llenar()
{
  int k=this.app.GetTammateria();
  if(k>0)
  {
    if(this.app.GetId())
    {
      for(int i=0;i<k;i++)          
       this.Lista.add(this.app.GetMateria(i).GetSigla()
       +" Pralelo : "+this.app.GetMateria(i)
       .GetParalelo());
    }
    else
    {
      for(int i=0;i<k;i++)
                             this.Lista.add(this.app.GetMateria(i).GetSigla());
    }
  }
  else
      this.Lista.add("No tienes Materias Registralo");
                 
}
Codigo 1.3
 


·                              Registrar datos.- en esta parte se hace huso de un segundo actyvitie  que le permitirá al usuario registrar los datos necesarios para la poder tener información más adelante. 


Public void List_Click(int i)
{
      String t=””;
      this.ListaNot.clear();
      if(this.Lista.get(i).equals(“Identificate”))
      {
            Intent intent=new Intent(this,IdUsuario.class);
                  this.startActivity(intent);
      }
      else
      {    
      if(!(this.Lista.get(i).endsWith(“No tienes Materias Registralo”)))
      {
            if(this.app.GetId())
            {
            t=this.app.GetMateria(i).GetSigla()+” Pralelo :
              +this.app.GetMateria(i).GetParalelo();
                  ListarEstudiante(t);
            }
            else
            {
                  t=this.app.GetMateria(i).GetSigla();
                  ListarDocente();
            }
      }
    }
    this.Nombre=t;
}
Codigo 1.4
 
 
5.5.1.3.5.4.Estudiante.-  para el estudiante se listar los datos del mismo una vez seleccionando una materia   esto le permitirá al estudiante ver los datos de la materia como también actualizar su evaluación.


Public void ListarDocente()
{
  int k=this.app.GetTammateria();
  int nota=0;
  int f=0;
  int extra=0;
  int e=0;
  ondera g=false;
  Materia materia;
  Docente docente;
  LinkedList<Ponderacion> onderación;
  if(k>0)
  {
    for(int i=0;i<k;i++)
    {
      onderac=this.app.GetMateria(i);
      if(onderac.GetSigla().equals(this.Nombre))
      {
         docente=onderac.GetDocente();
         if(docente!=null)
         {
            this.ListaNot.add(onderac.GetSigla()+” : “+onderac.GetNombre());
            this.ListaNot.add(“Docente : “+docente.GetGrado()+”. “+docente.GetNombre());
            this.ListaNot.add(“Paralelo : “+materia.GetParalelo());
            this.ListaNot.add(“Horario 1 :”);
            this.ListaNot.add(“\t”+materia.GetDetalle(0));
            this.ListaNot.add(“\t”+materia.GetCurso(0));
            this.ListaNot.add(“Horario 2: “);
            this.ListaNot.add(“\t”+materia.GetDetalle(1));
            this.ListaNot.add(“\t”+materia.GetCurso(1));
            onderación=materia.GetEvalueParaEstudiante();
            this.ListaPont.clear();
            if(ponderacion!=null)
            {
               for(int j=0;j<ponderacion.get(i).GetTamExamen();j++)
               {
                  f=ponderacion.get(i).GetExamen(j);
                  nota+=f;
                  this.ListaPont.add(“Examen : “+(j+1)+” : “+f);
               }
               for(int j=0;j<ponderacion.get(i).GetTamExtra();j++)
               {
                  e=onderación.get(i).GetExtra(j);
                  extra+=e;
                  this.ListaPont.add(“Extra : “+(j+1)+” : “+e);
               }
               this.ListaPont.add(“Auxiliatura : “+onderación.get(i).GetAyudantia());
               this.ListaPont.add(“Nota Final sin Extras
                                   :”+(nota+onderación.get(i).GetAyudantia()));
               this.ListaPont.add(“Nota Final con Extras
                                  :”+(extra+nota+onderación.get(i).GetAyudantia()));
               this.ListaPont.add(“Actualizar”);
            }
            else
               this.ListaPont.add(“Actualizar”);
        }
        else
            g=true;
        break;
      }
   }
   if(g)
   {
      Intent intent=new Intent(this,registrar.class);
      intent.putExtra(“listView1”, this.Nombre);
      this.startActivity(intent);
   }             
}
this.List_RigtUp=(ListView)findViewById(R.id.listView2lista);
this.List_RigtUp.setAdapter(new ArrayAdapter(this, R.layout.listamateria, this.ListaNot));
this.List_RigtDown=(ListView)findViewById(R.id.listView3detalle);
this.List_RigtDown.setAdapter(new ArrayAdapter(this, R.layout.listamateria, this.ListaPont));
this.List_RigtDown.setOnItemClickListener(new OnItemClickListener()
{
      public void onItemClick(AdapterView<?> arg0, View arg1, int index,long arg3)
                  {
                        ListaDetalle_Click(index);
                  }}
      );
}
Código 1.5

5.5.1.3.5.5.Docente.- en esta parte se lista los estudiantes inscritos en la material seleccionada, como también la forma en la que se evaluaran.  

Public void ListarEstudiante(String t)
{
   int k=this.app.GetNmateria();
   int ne;
   Materia aterial;
   String ud;
   this.Aux=t;
   for(int i=0;i<k;i++)
   {
      aterial=this.app.GetMateria(i);
      ud=materia.GetSigla()+” Pralelo : “+materia.GetParalelo();             if(ud.equals(t))
      {
            ne =aterial.GetNEstudiante();
            for(int j=0;j<ne;j++)
                  this.ListaNot.add(aterial.GetDatos(i));
            break;
      }
   }
   this.ListaNot.add(“Nuevo Estudiante”);
   this.List_RigtUp=(ListView)findViewById(R.id.listView2lista);
   this.List_RigtUp.setAdapter(new ArrayAdapter(this, R.layout.listrow, this.ListaNot));
   this.List_RigtUp.setOnItemClickListener(new OnItemClickListener()
   {
      public void onItemClick(AdapterView<?> arg0, View arg1, int index,long arg3)
      {
            ListaNot_Click();
      }}
   );
}
Código 1.6

5.6.    Pruebas.- las pruebas se realizaron el máximo de errores del sistema  para los cuales se analizaran dos casos en el entorno del estudiante.

5.6.1.       Prueba de caja blanca.- esta prueba se lo realizara con el empleado de los grafos de flujo;

       5.6.1.1.             Listado de Materias.-



Grafo de flujo verificando al Stakeholder para llenar las materias. Correspondiente al código 1.3

V(G) = a-n+2
V(G)= r
V(G)= c+1
12-11+2=3
3
2+1=3



Grafo de flujo verificando Llenando materias  correspondiente al código 1.3

V(G) = a-n+2
V(G)= r
V(G)= c+1
14-11+2=5
5
4+1=5
 



Grafo de flujo verificando Llenando materias  correspondiente al código 1.5

V(G) = a-n+2
V(G)= r
V(G)= c+1
31-24+2=9
9
8+1=9
 

















 









  












5.6.2.  Prueba de caja Negra.-  se realizara el caso de prueba para el listado de materias del sistema. 

Caso de prueba listado de materias
Código caso de prueba : 01
Caso de Uso :01
Descripción: listado de laterías:
·        Permite ver el listado de las materias registradas o inscritas  
Condiciones de ejecución: el usuario debe de tener registrado al menos una materia  para realizar la selección.
Entrada y pasos de ejecución: el usuario selecciona una materia
·         El sistema muestra en un listview la información detallada de la materia como también los datos de evaluación.
Resultado esperado: el sistema debe de mostrar los datos solo de la materia seleccionada como también la evaluación
Evaluación de la prueba: la evacuación de la prueba se muestra en  la siguiente imagen.




        5.7.    Mantenimiento.-


5.7.1. Portabilidad.- el sistema podrá ejecutarse en las siguientes características:

Dispositivo
Todo tipo de dispositivo que contenga S.O. android y conexión a internet.
Versión del sistema
Android 2.2 en adelante

6.   Conclusiones.- este proyecto permite  al usuario administrar de mejor manera la información que se maneja en todo un semestre que por cuestiones de aprendizaje no se toma con  mucha atención, además que con la construcción del proyecto se tuvo como experiencia la construcción de un software con una metodología de desarrollo.
 

No hay comentarios:

Publicar un comentario