Verificación: Es corroborar que se estén hacienda las cosas correctamente de acuerdo a sus especificaciones
Enviado por Edgar Eduardo Ramos Maldonado • 28 de Octubre de 2015 • Ensayo • 2.059 Palabras (9 Páginas) • 153 Visitas
Verificación: Es corroborar que se estén hacienda las cosas correctamente de acuerdo a sus especificaciones.
Su pregunta es, estamos construyendo el producto correctamente?
Validación: Es validar que se esté haciendo lo que realmente quiere el cliente.
Estamos construyendo el producto concreto?
Dos técnicas de comprobación y análisis de sistema,
Las inspecciones del software analizan y comprueba las representaciones del sistema como el documento de requerimientos, los diagramas de diseño y el código fuente del programa.
Pruebas del software consiste en contrastar las respuestas de una implementación del software a series de datos de prueba y examinar las respuestas del sw y su comportamiento operacional.
Pruebas: Es una activada en la cual un sistema o uno de sus componentes se ejecutan para verificar el funcionamiento de un proceso, los resultados se observan y registran para realizar una evolución de dicho proceso.
El testing son los procesos que permiten verificar y revelar la calidad de un producto software.
Test case: Un conjunto de entradas, condiciones de ejecución y resultados esperados desarrollados para un objetivo particular, son utilizados por el analista para determinar si el requisito de una aplicación es parcial o satisfactorio.
Defecto: Es el resultado de un fallo o deficiencia durante el proceso de creación.
Error: Es una equivocación cometida por un desarrollador, ejemplo divisiones entre cero.
Falla: Es la incapacidad de un sistema o de algunos componentes para realizar funciones requeridas dentro de los requisitos de rendimiento especificados.
Cliente servidor, es un modelo de aplicación distribuidas en el que las tareas se reparten entre los proveedores de recursos o servicios, llamados servidores, y los demandantes, llamados clientes.
Un cliente realiza peticiones a otro programa, el servidor, quien le da respuesta. Algunos ejemplos correo electrónico, servidor de impresión, WWW. World wide web.
La capacidad de proceso está repartida entre el cliente y el servidor, gestión de la información y separación de responsabilidades es lo más importante en este modelo.
EL servidor no necesariamente se ejecuta sobre una sola maquina ni es necesariamente un solo programa.
Ejecutados por diferentes computadores aumentando así el grado de distribución del sistema. En pocas palabras es una red de comunicaciones entre los clientes están conectados al servidor y se centralizan los diversos recursos y aplicaciones con que se cuenta.
Caracteristicas.
Cliente:
- Tiene un papel activo
- Espera y recibe respuestas del servidor.
- Puede conectarse con varios servidores a la vez.
- Interactúa con usuarios finales por medio de una interfaz gráfica.
Servidor.
- Espera a que lleguen solicitudes
- Recibe, procesa y envía respuestas al cliente.
- Acepta las conexiones de un gran número de clientes, puede estar limitado.
Arquitecturas multi-capa.
Dos tipos de nodos. Cliente servidor. Aveces se refiere como arquitectura de dos niveles o dos capas.
Estimación de costos
Representa un indicador para medir la eficiencia económica.
Clasificación de costos.
Costos variables, fijos, mixtos, semivariables.
Variables: Cambian.
Fijos. Son Permanecen constantes.
Mixtos: ambos de los dos anteriores.
Semivariables: Parte fija generalmente representa un cargo mínimo al hacer un determinado artículo o un servicio.
Los costos pueden ser cuantificables y estimables en unidades económicas, el dinero, tiempo, recuerdos son indispensables para analizar los costos de un proyecto.
Costo/Beneficio. Fundamental proporcionar una medida de los costos en que se incurre en la realización de un proyecto.
Algunas técnicas como:
Cocomo, cocomo II, costmodeler, cocots, estimación de costos por 3 puntos.
Pruebas para asegurar la calidad del producto software
Toda aplicación es propensa a tener fallos, pueden contribuir al fracaso de un proyecto software.
Pruebas de software.
Cumplan con las especificaciones planteadas desde un inicio por el analista o por el propio cliente, y eliminar los posibles errores que se hayan cometido en cualquier etapa del desarrollo.
Son las investigaciones empíricas y técnicas cuyo fin es proporcionar información e independiente sobre la calidad del producto.
Las pruebas son básicamente un conjunto de actividades dentro del desarrollo de sw y dependiente del tipo de pruebas estas actividades podrán ser implementadas en cualquier momento.
Porque es necesario?
Asegurar el trabajo realizado para acercarse a la perfección.
Cuando hacer el testing?
Durante algún punto del desarrollo pueden iniciarse la etapa de pruebas. Para esto es necesario un ambiente aislado del de desarrollo y el de producción.
Se disponen de dos casos de test.
Casos de prueba llamados Scripted testing., otro basado en pruebas exploratorias llamado exploratory testing.
- Caja blanca, caja negra, caja gris
Clasificados según el nivel de cada test.
- Pruebas unitarias, integración, sistema.
Scripted testing.
Guion de pruebas, en este escenario se realiza un proceso de creación de documentación relativo a las pruebas que se requieren realizar. Este guion de casos se dará al tester los pasos a seguir para ejecutar la aplicación e interpretar los resultados obtenidos de las pruebas y completar un informe detallado, que formara parte de la documentación para la siguiente fase.
SCRUM.
Proceso en que se aplican de manera regular el conjunto de buenas prácticas para trabajar colaborativamente, en equipo y obtener el mejor resultado posible de un proyecto.
Se realizan entregas parciales y regular del producto final, priorizadas por el beneficio que aportan al receptor del proyecto. Esta especialmente indicado para proyectos en entornos complejos, donde se necesita obtener prontos resultados, donde los requisitos son cambiantes.
Beneficios.
- Entrega mensuales.
- Expectativas del cliente y basada en resultados tangibles.
- Resultados anticipados
- Flexibilidad y adaptación respecto a las necesidades del cliente
- Gestión sistemática del retorno de inversión (ROI).
- Productividad y calidad.
- Alineamiento entre cliente y equipo de desarrollo
- Equipo motivado
Fundamentos.
- Desarrollo incremental de los requisitos del proyecto en bloques.
- Priorización de los requisitos
- Control empírico del proyecto
- Potenciación del equipo
- Sistematización de la colaboración y comunicaciones entre el equipo y el cliente.
- Tomar decisiones y conseguir resultados por medio de timeboxing.
Proceso:
Un proyecto se ejecuta en bloques temporales cortos y fijos. El proceso parte de la lista de objetivos/requisitos priorizada del producto. En esta lista el cliente prioriza los objetivos balanceando el valor que le aportan respecto a su coste y quedan repartidos en iteraciones y entregas.
...