• No se han encontrado resultados

15. SPRINT 1

15.1. SPRINT BACKLOG

Tabla 4.1 Sprint Backlog - Sprint 1

ID Nombre Historia Estado Tamaño Sprint Prioridad Tipo de

Historia Comentarios

1 Modela base de datos Hecho 3 1 1 Desarrollo Se realizó según lo planeado

2 Estructurar proyecto en

Visual Studio Hecho 2 1 2 Desarrollo

Realiza las funciones

requeridas por el cliente

4 Gestionar mantenedor de

proyecto Hecho 8 1 4 Desarrollo

Engloba las funciones

requeridas en cada nuevo proyecto

15.2. PRUEBAS

15.2.1. CAJA NEGRA Caso: Crear Proyecto

Tabla 4.2 Prueba caja negra - Crear Proyecto

PARÁMETRO VALOR RESULTADO

1 FechaInicio 2018-11-25 Valido

2 FechaFin 2018-12-03asd El campo debe ser una fecha

Caso: Asignar Usuario a Proyecto

Tabla 4.3 Prueba caja negra - Asignar usuario a proyecto

PARÁMETRO VALOR RESULTADO

1 Usuarios Asd Usuario no encontrado

15.2.2. CAJA BLANCA

Se realizaron pruebas mediante depuración en Chrome para la ejecución de código Javascript (frontend) y mediante depuración de Visual Studio para el código backend.

El comando “Bind” ayuda a parametrizar cuales son los nombres de los parámetros que recibe el controlador, procediendo después con los modelos POCO a validar que los tipos de datos sean correctos

En conjunto con las clases de metadata, filtran la información pasada.

[HttpPost]

[ValidateAntiForgeryToken]

public async Task<ActionResult> Create([Bind(Include =

"ID,Nombre,NombreCorto,FechaInicio,FechaFin,PIP,Activo")] PS_PROYECTO

pS_PROYECTO) {

var user = (Usuarios)System.Web.HttpContext.Current.Session["user"]; if (user == null) { Response. Redirect("~/Autenticacion/LogOut"); } using (var transaction = db.Database.BeginTransaction())

{

try{#CrearObjeto}

catch (System.Data.Entity.Validation.DbEntityValidationException dex){} catch (Exception ex) {}

}

public class PS_PROYECTOMetadata

{

[RegularExpression(@"^\d{6}$", ErrorMessage = "El codigo PIP contiene solo digitos, hasta 6")]

public string PIP;

[DisplayFormat(ApplyFormatInEditMode = true, ConvertEmptyStringToNull = true, DataFormatString = "{0:yyyy-MM-dd}")]

public System.DateTime FechaInicio;

[DisplayFormat(ApplyFormatInEditMode = true, ConvertEmptyStringToNull = true, DataFormatString = "{0:yyyy-MM-dd}")]

public Nullable<System.DateTime> FechaFin; }

15.3. INTERFACES

Figura 4-1 Interfaz principal

Figura 4-3 Interfaz Crear Proyecto

Figura 4-5 Interfaz Visualizar Detalles de proyecto

Figura 4-6 Interfaz Asignar Usuarios a proyecto

16. SPRINT 2

16.1. SPRINT BACKLOG

Tabla 4.4 Sprint Backlog - Sprint 2

ID Nombre Historia Estado Tamaño Sprint Prioridad Tipo de

Historia Comentarios

16.2. PRUEBAS 16.2.1. CAJA NEGRA Caso: Iniciar Sesión

Tabla 4.5 Prueba de caja negra - Iniciar sesión

PARAMETRO VALOR RESULTADO

1 Usuario (vacío) Ingresa tu usuario

2 Contraseña (vacío) Ingresa tu clave

3 Usuario o Contraseña A1”#a Usuario/Password incorrecto o sin

permisos suficientes

4 Proyecto Seleccione una opción Usuario/Password incorrecto o sin

permisos suficientes

16.2.2. CAJA BLANCA

Se realizaron pruebas mediante depuración en Chrome para la ejecución de código Javascript (frontend) y mediante depuración de Visual Studio para el código backend.

Se valida mediante código Ajax, con el controlador, devolviéndonos los mensajes personalizados $.ajax({ type: "POST", data: { UserName: usuario, UserPass: clave, IdProyecto: idproyecto }, url: raiz+"../Autenticacion/ValidarInicioSesion", success: function (data) {

if (data.Resultado == 3) {

$("#mensaje_login").removeClass("alert alert-block alert-danger fade in"); $("#mensaje_login").addClass("alert alert-success alert-block fade in"); $("#mensaje_login").html(data.Mensaje + " ...Cargando"); $("#mensaje_login").slideDown(); window.location.href = "/" + data.Url; setTimeout(function () { $("#redirecciona_dashboard").html(data.Url); }, 3000); $("#btn_iniciar_sesion").attr("disabled", "disabled"); }else if(data.Resultado == 2){ swal({ title: "Atención!", text: data.Mensaje, type: "warning", timer: 4000, showConfirmButton: false });

window.setTimeout(function () {window.location.href = "/" + data.Url;}, 4000);

}else{

$("#mensaje_login").removeClass("alert alert-success alert-block fade in"); $("#mensaje_login").addClass("alert alert-block alert-danger fade in"); $("#mensaje_login").html(data.Mensaje);

$("#mensaje_login").slideDown(); }

},

error: function (xhr, ajaxOptions, thrownError) { alert(xhr.status);

alert(thrownError); }

16.3. INTERFACES

Figura 4-7 Interfaz Inicio de sesión

17. SPRINT 3

17.1. SPRINT BACKLOG

Tabla 4.6 Sprint Backlog - Sprint 3

ID Nombre Historia Estado Tamaño Sprint Prioridad Tipo de

Historia Comentarios

5 Gestionar mantenedor

usuarios Hecho 2 3 8 Desarrollo

Realiza las funciones requeridas

6 Gestionar mantenedor de

arqueólogos Hecho 2 3 9 Desarrollo

Realiza las funciones requeridas

7 Gestionar mantenedor de

estratos Hecho 3 3 10 Desarrollo

Realiza las funciones requeridas

8 Gestionar mantenedor de

área geográfica Hecho 3 3 11 Desarrollo

Realiza las funciones requeridas

10 Gestionar mantenedor de

tipo de material Hecho 2 3 12 Desarrollo

Realiza las funciones requeridas

17.2. PRUEBAS 17.2.1. CAJA NEGRA Caso: Crear usuario

Tabla 4.7 Prueba de caja negra - Crear Usuario

PARÁMETRO VALOR RESULTADO

1 Proyecto Asd El valor debe ser un proyecto

2 Rol (vacío) El usuario debe tener un rol

Caso: Crear arqueólogo

Tabla 4.8 Prueba de caja negra - Crear Arqueólogo

PARÁMETRO VALOR RESULTADO

1 Nombre Asd Correcto, puede ser cualquier valor

2 Registro addasda El Registro debe contener solo iniciales,

máximo 6 caracteres

Caso: Crear Estrato

Tabla 4.9 Prueba de caja negra - Crear Estrato

PARÁMETRO VALOR RESULTADO

1 Descripción Asd Correcto, el estrato acepta cualquier tipo de

nombre

2 Tipo (vacío) El tipo de estrato debe ser alguno de los

indicados

Caso: Crear Área Geográfica

Tabla 4.10 Prueba de caja negra - Crear área geográfica

PARÁMETRO VALOR RESULTADO

1 Nombre Asd Correcto, el estrato acepta cualquier tipo de

nombre

2 Nivel Sector Correcto

3 Pertenece a (vacío) Correcto, el tipo de nivel lo permite

17.2.2. CAJA BLANCA

Se realizaron pruebas mediante depuración en Chrome para la ejecución de código Javascript (frontend) y mediante depuración de Visual Studio para el código backend.

El comando “Bind” ayuda a parametrizar cuales son los nombres de los parámetros que recibe el controlador, procediendo después con los modelos POCO a validar que los tipos de datos sean correctos

[HttpPost]

[ValidateAntiForgeryToken]

public async Task<ActionResult> Create([Bind(Include =

"ID,UserName,UserPass,Nombre,Email,Activo,IdUsuarioJefatura,Sociedad,Unidad,Flag

N,Foto,Cargo,Dni,RPC,Anexo,Password,IdRol,IdProyectos")] TI_USUARIO tI_USUARIO)

{

var user = (Usuarios)System.Web.HttpContext.Current.Session["user"]; if (user == null) { Response.Redirect("~/Autenticacion/LogOut"); } using (var transaction = db.Database.BeginTransaction())

{

try{#CreaObjeto}

catch (System.Data.Entity.Validation.DbEntityValidationException dex)

{}

catch (Exception ex) {} }

}

public class TI_USUARIOMetadata

{

[Display(Name = "Jefe inmediato")]

[DisplayFormat(ApplyFormatInEditMode = true, ConvertEmptyStringToNull = true, NullDisplayText = "No tiene")]

public Nullable<int> IdUsuarioJefatura;

[RegularExpression(@"^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[^\da-zA-

Z]).{4,15}$", ErrorMessage = "Incluya números, letras en mayúsculas y símbolos, minimo 4 caracteres")]

public string Password; }

17.3. INTERFACES

Figura 4-8 Interfaz Mantenedor Usuarios

Figura 4-10 Interfaz Visualizar detalles de Usuario

Figura 4-12 Interfaz Mantenedor Arqueólogo

Figura 4-13 Interfaz Mantenedor Estratos

Figura 4-15 Interfaz Mantenedor Tipo de material

18. SPRINT 4

18.1. SPRINT BACKLOG

Tabla 4.11 Sprint Backlog - Sprint 4

ID Nombre Historia Estado Tamaño Sprint Prioridad Tipo de

Historia Comentarios

12 Gestionar registros Hecho 5 4 6 Desarrollo Se incluyó las herramientas

necesarias

11 Elaborar registros Hecho 5 4 5 Desarrollo Se incluyó las herramientas

necesarias

18.2. PRUEBAS

18.2.1. CAJA NEGRA

Caso: Gestionar registro en inventario

Tabla 4.12 Prueba de caja negra - Gestionar registro en inventario

PARÁMETRO VALOR RESULTADO

1 Buscar Asd Error , el parámetro debe ser una fecha

2 Buscar 2011-05-22 Correcto, el campo acepta valores de tipo fecha

Caso: Crea registro en inventario

Tabla 4.13 Prueba de caja negra - Crear registro en inventario

PARÁMETRO VALOR RESULTADO

1 Sector Asd Correcto, el estrato acepta cualquier tipo de nombre

2 Subsector Sector Correcto

3 Unidad (vacío) Correcto, el tipo de nivel lo permite

4 Capa Vacío Correcto

5 Nivel Vacío Correcto

6 Numero de bolsa asd No se copia pues sólo admite números

7 Contexto asd Correcto, admite cualquier valor

8 Cuadricula asd No se copia pues sólo admite números

9 Tipo material Carbón Correcto

10 Cantidad asd No se copia pues solo admite números

11 Peso (Vacío) El campo es obligatorio

12 Fecha Hallazgo asd El campo debe tener un formato fecha dd-mm-yyyy

13 Descripción asd correcto

18.2.2. CAJA BLANCA

Se realizaron pruebas mediante depuración en Chrome para la ejecución de código Javascript (frontend) y mediante depuración de Visual Studio para el código backend.

[HttpPost]

[ValidateAntiForgeryToken]

public async Task<ActionResult> Create([Bind(Include =

"ID,IdAreaGeografica,IdMaterial,IdEstratos,NumBolsa,Contexto,Cuadricula,Peso,Can tidad,FechaHallazgo,Descripcion,UsuarioCrea,FechaCrea,UsuarioModi,FechaModi,Acti

vo")] MM_INVENTARIO mM_INVENTARIO)

El comando “Bind” ayuda a parametrizar cuales son los nombres de los parámetros que recibe el controlador, procediendo después con los modelos POCO a validar que los tipos de datos sean correctos

public class MM_INVENTARIOAMetadata

{

[Display(Name = "Tipo Material")] public int IdMaterial;

[Display(Name = "Num. Bolsa")] public Nullable<int> NumBolsa;

[Required]

[Range(0, 99999.99)]

[DisplayFormat(DataFormatString ="{0} g")] public decimal Peso;

[RegularExpression(@"^(\d*;)*\d+$",ErrorMessage = "La cuadricula deben ser numeros enteros separados por ;")]

public string Cuadricula;

[DisplayFormat(ApplyFormatInEditMode=true,ConvertEmptyStringToNull=true,DataForm atString = "{0:yyyy-MM-dd}")]

public System.DateTime FechaHallazgo;

[Display(Name = "Tipo de material",ShortName = "Tip. Mat.")]

public MM_TIPOMATERIAL MM_TIPOMATERIAL;

[Display(Name = "Unidad de excavación", ShortName = "Lug. Excv.")] public MM_AREAGEOGRAFICA MM_AREAGEOGRAFICA;

18.3. INTERFACES

Figura 4-16 Interfaz Mantener registro de inventario

Figura 4-17 Interfaz Crear Registro de Inventario

19. SPRINT 5

19.1. SPRINT BACKLOG

Tabla 4.14 Sprint Backlog - Sprint 5

ID Nombre Historia Estado Tamaño Sprint Prioridad Tipo de

Historia Comentarios

13 Elaborar reporte

individual Hecho 5 5 13 Desarrollo

Cargar datos filtrados por proyecto y fecha

14 Elaborar reporte por

subsector Hecho 5 5 14 Desarrollo

Cargar datos filtrados por proyecto y fecha

15 Elaborar reporte

general Hecho 5 5 15 Desarrollo

Cargar datos filtrados por proyecto y fecha

19.2. PRUEBAS 19.2.1. CAJA NEGRA Caso: Elaborar reporte individual

Tabla 4.15 Prueba de caja negra – Reporte individual

PARÁMETRO VALOR RESULTADO

1 Fecha Inicio Asd Error , el parámetro debe ser una fecha

2 Fecha Fin 2011-05-22 Correcto, el campo acepta valores de tipo fecha

Caso: Elaborar reporte por subsector

Tabla 4.16 Prueba de caja negra – Reporte por subsector

PARÁMETRO VALOR RESULTADO

1 Fecha Inicio Asd Error , el parámetro debe ser una fecha

2 Fecha Fin 2011-05-22 Correcto, el campo acepta valores de tipo fecha

3 Sector Suroeste Correcto

4 Subsector Huaca los Gavilanes Correcto

5 Unidad IP Correcto

Caso: Elaborar reporte general

Tabla 4.17 Prueba de caja negra – Reporte general

PARÁMETRO VALOR RESULTADO

1 Fecha Inicio Asd Error , el parámetro debe ser una fecha

2 Fecha Fin 2011-05-22 Correcto, el campo acepta valores de tipo fecha

19.2.2. CAJA BLANCA

Se realizaron pruebas mediante depuración en Chrome para la ejecución de código Javascript (frontend) y mediante depuración de Visual Studio para el código backend.

Se validan siempre el estado de la sesión, para poder hacer el llamado, y consiguientemente el proyecto al cual se ha iniciado sesión.

19.3. IINTERFACES

Figura 4-18 Interfaz Reporte individual

public ActionResult RptIndiv()

{

var user = (Usuarios)System.Web.HttpContext.Current.Session["user"]; if (user == null)

{

var auth = new AutenticacionController(); auth.LogOut(); } else if (user.IdProyecto == 0) { return RedirectToRoute(new { area = "", controller = "Principal", action = "Principal",

message = "No tiene un proyecto seleccionado" });

}

return View(); }

Figura 4-19 Interfaz Reporte por subsector

20. SPRINT 6

20.1. SPRINT BACKLOG

Tabla 4.18 Sprint Backlog - Sprint 6

ID Nombre Historia Estado Tamaño Sprint Prioridad Tipo de

Historia Comentarios

16 Exportar reporte Hecho 3 6 7 Desarrollo Realiza las funciones requeridas

20.2. PRUEBAS

20.2.1. CAJA NEGRA Caso: Exportar reporte

Tabla 4.19 Prueba de caja negra – Exportar reportes

PARÁMETRO VALOR RESULTADO

1 Exportar Clic Selección de tipo a exportar

20.2.2. CAJA BLANCA

Se realizaron pruebas mediante depuración en Chrome para la ejecución de código Javascript (frontend) y mediante depuración de Visual Studio para el código backend.

Se obtienen los datos mediante una combinación de EF5 y ObjectsDataSource, en uso de IFrames, permitiendo que los objetos estándar de .net controlen el flujo, control y gestión de los datos mostrados y exportados.

20.3. INTERFACES

Figura 4-20 Interfaz Exportar reportes <div style="width: 100%">

<rsweb:ReportViewer ID="ReportViewer1" runat="server"

SizeToReportContent="True" Width="100%" Font-Names="Verdana" Font-Size="8pt"

WaitMessageFont-Names="Verdana" WaitMessageFont-Size="14pt"

AsyncRendering="False" CssClass="reportviewer" ZoomMode="PageWidth"> <LocalReport ReportPath="Areas\MM\Reportes\RptGeneral.rdlc"> <DataSources>

<rsweb:ReportDataSource DataSourceId="ObjectDataSource1"

Name="RptGeneral" /> </DataSources> </LocalReport> </rsweb:ReportViewer>

<asp:ObjectDataSource ID="ObjectDataSource1" runat="server"

OldValuesParameterFormatString="original_{0}" SelectMethod="GetData"

TypeName="VIRUNET.Areas.MM.Reportes.InventarioRptTableAdapters.RPT_MM_INVENTARIO _INDIVTableAdapter">

<SelectParameters>

<asp:ControlParameter ControlID="TextBox1" Name="FechaInicio"

PropertyName="Text" Type="DateTime" />

<asp:ControlParameter ControlID="TextBox2" Name="FechaFin"

PropertyName="Text" Type="DateTime" /> </SelectParameters>

</asp:ObjectDataSource> </div>

CAPÍTULO 5: MODELO DE

Documento similar