UNIDAD 2

ASEGURAMIENTO DE LA CALIDAD DEL SOFTWARE

 

La función de aseguramiento de la calidad tiene como finalidad primaria el determinar si las necesidades de los usuarios están siendo satisfechas adecuadamente. Otra de sus funciones, aunque no se tocará mucho en la presente investigación, es la de determinar los costos que puede causar el añadir ciertas características al producto, ya que tarde o temprano, la economía resulta ser un factor decisivo para obtener un producto de calidad. Para determinar si las necesidades de los usuarios están siendo satisfechas, se deben de evaluar tres áreas:

Objetivos: Los objetivos de la organización son primero, luego vienen los requerimientos del usuario. Los objetivos de cualquier usuario deben de estar en armonía con los objetivos de la organización,

Métodos: Deben de utilizarse métodos que contengan u observen las políticas, procedimientos y estándares de la organización, Ejecución: Optimización del uso de hardware y software al implementar los productos de software.

2.1 RELACION INGENIERIA SOFTWARE CON SQA

 

SQA: (Software Quality Assurance; esp. Garantia de la Calidad del Software)

Esta relación implica a varios responsables durante el proceso de la elaboracion del software de calidad, estos son:

  • Ingenieros de software
  • Jefes de proyecto
  • Clientes
  • Vendedores
  • Quienes trabajan dentro de un grupo de la SQA

Estos últimos pueden ser independientes y tendran las siguientes actividades para llegar al objetivo de la SQA:

  1. Establecimiento de un plan de la SQA para un proyecto.

En este plan se identifica:

  • Evaluaciones a realizar
  • Auditorías y revisiones a realizar
  • Estándares que se pueden aplicar al proyecto
  • Procedimientos para información y seguimiento de errores
  • Documentos producidos por el grupo SQA
  • Realimentación de información proporcionada al equipo de proyecto del software

2.2 Definicion Proposito Sqa

QA es un set de actividades sistematicas que aseguran que el proceso del software y productos conformados por requerimientos, estandares, y procedimientos. Los procesos incluyen todas las actividades involucradas en el diseño, codificacion, pruebas y mantenimiento; Los productos incluyen software, datos asociados, documentacion, y toda la documentacion para soporte y reportes.

El Rol:

El rol para SQA es brindar a la administracion la aseguranza de que procesos oficialmente establecidos estan siendo implementados. Y asegura que:

1.-Una metodologia de desarrollo apropiada este establecida

2.-Que los proyectos utilizen estandares y procedimientos en su trabajo

3.-Que la documentacion sea creada para mantenimiento y mejoramiento

4.-La administracion de configuracion de software este adecuada para controlar cambios

5.-Se realizen pruebas y que se apruben

6.-Cualquier deficiencia

y desviaciones sean identificadas y llevadas con atencion a la administracion.

Propósito:

Proporcionar visibilidad sobre los procesos utilizados por el proyecto de software y sobre los productos que genera.

 

2.3 PROBLEMAS QUE RESUELVE SQA

Aumenta las posibilidades del éxito final del proyecto

Ayuda a definir los parámetros de medición de la calidad del software

Verifica que los estándares sean aplicados correctamente

Define un plan de monitoreo del proceso de desarrollo del software (ciclo de vida)

 

2.4 CALIDAD SOFTWARE EN CICLO DE VIDA DEL MISMO

Ciclo de vida del software

El término ciclo de vida del software describe el desarrollo de software, desde la fase inicial hasta la fase final. El propósito de este programa es definir las distintas fases intermedias que se requieren para validar el desarrollo de la aplicación, es decir, para garantizar que el software cumpla los requisitos para la aplicación y verificación de los procedimientos de desarrollo: se asegura de que los métodos utilizados son apropiados.

Estos programas se originan en el hecho de que es muy costoso rectificar los errores que se detectan tarde dentro de la fase de implementación. El ciclo de vida permite que los errores se detecten lo antes posible y por lo tanto, permite a los desarrolladores concentrarse en la calidad del software, en los plazos de implementación y en los costos asociados.

 

2.5 ROLES Y RESPONSABILIDADES EQUIPOS DESARROLLO

El desarrollo de software es una actividad que requiere de roles y de responsabilidades, esas responsabilidades deben estar bien delimitadas.

 

Los roles y responsabilidades varían de empresa a empresa y están dados por las metodologías y características de los equipos de trabajos.

 

Ejemplos típicos de personal involucrado en equipos de desarrollo: gerente o líder de proyecto, analista, programador, diseñador, tester, etc. A continuación unos ejemplos:

 


Líder de Proyecto

Responsabilidades

§  Preparar y administrar los planes y cronogramas de tareas e identificar prioridades técnicas y dependencias.

 

§  Coordinar las actividades del equipo de trabajo para lograr la adecuada y oportuna implementación de los diferentes componentes del sistema.

 

§  Provee una interfaz directa con el gerente de Proyecto de la empresa.

 

§  Proporcionar revisiones de estado y de problemas.

 

§  Verificar la calidad de los entregables del proyecto.

 

§  Controlar que se cumplan los estándares estipulados para el proyecto.

 

 

Analista Funcional

Responsabilidades

§  Identificación de Actores

§  Definición y descripción de casos de uso

§  Especificación de los requerimientos.

 

 

 

Desarrollador

Responsabilidades

§  Desarrollo de los diferentes módulos del sistema según la especificación del análisis y diseño de la solución.

 

§  Realización de tareas designadas sobre el diseño detallado de tablas y desarrollo de interfases con la base de datos.

 

§  Realizar el testeo de los módulos desarrollados y de la integración con el resto del sistema.

 

 

Tester

Responsabilidades

§  Pruebas de los módulos independientes del sistema.

§  Pruebas del sistema unificado.

§  Diseño de las pruebas a realizar sobre el sistema.

 


 

 

 

 

 

2.6 HABILIDADES CAPACIDADES PERSONAL SQA

 

Es responsable de asegurar la calidad de los productos generados en el proyecto y del proceso utilizado. Para asegurar la calidad debe revisar la calidad de los entregables de planificación del proyecto y los entregables de valoración del proyecto. Además revisa el nivel de apego al modelo de proceso de desarrollo de software y a los planes de Verificación, Gestión de Proyecto y Gestión de Calidad, documentando las desviaciones encontradas.

Debe conocer los conceptos y técnicas de Gestión de Calidad del Software. Debe identificar las propiedades de calidad que deben cumplir los productos del proyecto.

Centralizar y revisar las entregas que se realizan durante el ciclo de vida del proyecto.

Realiza las Revisiones Técnicas Formales con los responsables de los productos a revisar.

El Responsable de SQA debe:

•Asegurarse de que se desarrollen prototipos para probar y eliminar riesgos técnicos que hagan fracasar el proyecto así como también disminuir la calidad del mismo

•Asegurarse de que se realicen estudios de factibilidad

•Realizar mediciones para comprobar la calidad del proyecto

•Asegurarse de que se realice la actividad de implementación y se haga según los estándares de calidad propuestos

•Evitar el desperdicio de esfuerzo en conjunto con el Administrador y el Arquitecto

•Registrar las métricas de aceptación tomando en cuenta el Documento de Validación con el Cliente.

 

 

2.7 ACTIVIDADES DEL SQA

 

Actividades

Para poder lograr una buena adherencia con los estándares se debe medir cuantitativamente, donde sea posible, los aspectos de calidad (por ejemplo complejidad, confiabilidad, mantenimiento, seguridad, defectos, número de problemas) utilizando métricas bien establecidas. Para cumplir con esto, se deben realizar chequeos de:

- Administración.

- Documentación.

- Estándares, prácticas, convenciones y métricas.

- Revisiones e intervenciones.

- Actividades de testeo.

- Reporte de errores y acciones correctivas.

- Herramientas, técnicas y métodos.

- Control del código

- Control de medios.

- Colección de registros, mantenimiento y retención.

- Control de los proveedores

- Entrenamiento.

- Administración del riesgo.

 

 

 

2.8 METODOS Y HERRAMIENTAS SQA

Entrevistas y Cuestionarios

Las entrevistas y cuestionarios se emplean para reunir información proveniente de personas o de grupos. Durante la entrevista, el analista conversa con el encuestado; el cuestionario consiste en una serie de preguntas relacionadas con varios aspectos de un sistema.

Por lo común, los encuestados son usuarios de los sistemas existentes o usuarios en potencia del sistema propuesto. En algunos casos, son gerentes o empleados que proporcionan datos para el sistema propuesto o que serán afectados por él.

Las preguntas que deben realizarse en esta técnica, deben ser preguntas de alto nivel y abstractas que pueden realizarse al inicio del proyecto para obtener información sobre aspectos globales del problema del usuario y soluciones potenciales.

Con frecuencia, se utilizan preguntas abiertas para descubrir sentimientos, opiniones y experiencias generales, o para explorar un proceso o problema. Este tipo de preguntas son siempre apropiadas, además que ayudan a entender la perspectiva del afectado y no están influenciadas por el conocimiento de la solución.

Las preguntas pueden ser enfocadas a un elemento del sistema, tales como usuarios, procesos, etc. El siguiente ejemplo muestra algunos tipos de preguntas abiertas.

Del Usuario

·         ¿Quién es el cliente?

·         ¿Quién es el usuario?

·         ¿Son sus necesidades diferentes?

·         ¿Cuáles son sus habilidades, capacidades, ambiente?

Del Proceso

·         ¿Cuál es la razón por la que se quiere resolver este problema?

·         ¿Cuál es el valor de una solución exitosa?

·         ¿Cómo usted resuelve el problema actualmente?

·         ¿Qué retrasos ocurren o pueden ocurrir?

Del Producto

·         ¿Qué problemas podría causar este producto en el negocio?

·         ¿En qué ambiente se usará el producto?

·         ¿Cuáles son sus expectativas para los conceptos fácil de usar, confiable, rendimiento?

·         ¿Qué obstáculos afectan la eficiencia del sistema?

El éxito de esta técnica combinada, depende de la habilidad del entrevistador y de su preparación para la misma. Los analistas necesitan ser sensibles las dificultades que algunos entrevistados crean durante la entrevista y saber cómo tratar con problemas potenciales. Asimismo, necesitan considerar no sólo la información que adquieren a través del cuestionario y la entrevista, sino también, su significancia.

Lluvia de Ideas (Brainstorm)
Este
método comenzó en el ámbito de las empresas, aplicándose a temas tan variados como la productividad, la necesidad de encontrar nuevas ideas y soluciones para los productos del mercado, encontrar nuevos métodos que desarrollen el pensamientocreativo a todos los niveles, etc. Pero pronto se extendió a otros ámbitos, incluyendo el mundo de desarrollo de sistemas; básicamente se busca que los involucrados en un proyecto desarrollen su creatividad, promoviendo la introducción de los principios creáticos.

Prototipos

Los prototipos permiten al desarrollador crear un modelo del software que debe ser construido.

Al igual que todos los enfoques al proceso de desarrollo del software, el prototipado comienza con la captura de requerimientos. Desarrolladores y clientes se reúnen y definen los objetivos globales del software, identifican todos los requerimientos que son conocidos, y señalan áreas en las que será necesaria la profundización en las definiciones. Luego de esto, tiene lugar un "diseñorápido". El diseño rápido se centra en una representación de aquellos aspectos del software que serán visibles al usuario (por ejemplo, entradas y formatos de las salidas). El diseño rápido lleva a la construcción de un prototipo. El prototipo es evaluado por el cliente y el usuario y utilizado para refinar los requerimientos del software a ser desarrollado. Un proceso de iteración tiene lugar a medida que el prototipo es "puesto a punto" para satisfacer las necesidades del cliente y permitiendo al mismo tiempo una mejor comprensión del problema por parte del desarrollador.

Existen principalmente dos tipos de prototipos:

Prototipo rápido (o concept prototipe): El prototipado rápido es un mecanismo para lograr la validación pre-compromiso. Se utiliza para validar requerimientos en una etapa previa al diseño específico. En este sentido, el prototipo puede ser visto como una aceptación tácita de que los requerimientos no son totalmente conocidos o entendidos antes del diseño y la implementación. El prototipo rápido puede ser usado como un medio para explorar nuevos requerimientos y así ayudar a "controlar" su constante evolución.

Prototipo evolutivo: Desde una perspectiva diferente, todo el ciclo de vida de un producto puede ser visto como una serie incremental de detallados prototipos acumulativos. Tradicionalmente, el ciclo de vida está dividido en dos fases distintas: desarrollo y mantenimiento. La experiencia ha demostrado que esta distinción es arbitraria y va en contra de la realidad ya que la mayor parte del costodel software ocurre después de que el producto se ha entregado. El punto de vista evolutivo del ciclo de vida del software considera a la primera entrega como un prototipo inicial en el campo. Modificaciones y mejoras subsecuentes resultan en nuevas entregas de prototipos más maduros.

 

Entrevista

Es tal vez la forma más productiva de obtener información, si el analista cuenta con la confianza del entrevistado. Debe entrevistarse a todo el personal que se considere conveniente, independientemente del nivel jerárquico del puesto que desempeñen.

 

Elementos que forman la calidad del Software

·         Metodologías

·         Medidas

·         Personas

·         Herramientas y técnicas

 

Metodologías

*RUP

Diseñada para entornos dinámicos y equipo pequeño.

*XP

-Comunicación verbal

-Diseño

-Entregas pequeñas

-Uso de estándares

-Cliente implicado

·         Se centran en el equipo de desarrollo y sus interacciones

·         Buscan un Software funcional

·         Una estrecha colaboración con el cliente

·         Responder a cambios aunque implique cambiar el plan

 

 

IsoTec
¡¡ Interaccion Social !!!
¡¡¡ Osos Tec !!
 
Hoy habia 1 visitantes¡Aqui en esta página!
Este sitio web fue creado de forma gratuita con PaginaWebGratis.es. ¿Quieres también tu sitio web propio?
Registrarse gratis