Auditorias de software
Enviado por Helena • 30 de Noviembre de 2018 • 7.048 Palabras (29 Páginas) • 376 Visitas
...
Puede suponerse pues que éstas surgen de refranes como “El cliente siempre tiene razón”. Es un tópico decir que la meta de la calidad es conseguir la satisfacción del cliente, en todo momento, por medio de la satisfacción total de sus exigencias y necesidades. Sin embargo, las declaraciones de este tipo deben ir acompañadas del calificativo de “acordadas”, cuando se hable de las necesidades y exigencias del cliente.
Los clientes no siempre tienen razón. No siempre son expertos en las áreas en que actúan como clientes, por lo tanto sus necesidades y exigencias, tal como ellos las ven, no siempre son prácticas o, incluso, posibles de satisfacer. Puede ser debido a causas técnicas, o de tiempo, o restricciones en los recursos, unido a otros factores. Sin embargo, lo que es importante y verdaderamente esencial es que las exigencias del cliente estén especificadas, se discutan con el proveedor y se redacte un conjunto de artículos o puntos negociados y acordados. Sólo después de esta fase el proveedor tendrá que suministrar productos o servicios que sean al 100% conforme con todo lo acordado, en el plazo previsto, o sea puntualmente, y todo el tiempo, o sea siempre.
Auditoría del proceso de generación de software
Para que las empresas desarrolladoras de software puedan competir en mercados externos, tienen que utilizar procesos que aseguren la calidad de sus productos, de acuerdo a normas reconocidas internacionalmente.
Un proceso define quien esta haciendo que, cuando, y como alcanzar un determinado objetivo. En la Ingeniería del Software el objetivo es construir un producto software o mejorar uno existente. Un proceso efectivo proporciona normas para el desarrollo eficiente de software de calidad. Captura y presenta las mejores prácticas que el estado actual de la tecnología permite. En consecuencia, reduce el riesgo y hace el proyecto más predecible. El efecto global es el fomento de una visión y una cultura comunes.
Es necesario un proceso que sirva como guía para todos los participantes clientes, usuarios, desarrolladores y directivos ejecutivos. No nos sirve ningún proceso antiguo; necesitamos uno que sea el mejor proceso que la industria pueda reunir en este punto de su historia. Por ultimo necesitamos un proceso que este ampliamente disponible de forma que todos los interesados puedan comprender su papel en el desarrollo en el que se encuentran implicados.
Un proceso de desarrollo de software debería también ser capaz de evolucionar durante muchos años. Durante esta evolución debería limitar su alcance, en un momento del tiempo dado, a las realidades que permitan las tecnologías, herramientas, personas y patrones de organización.
- Tecnologías: El proceso debe construirse sobre las tecnologías lenguajes de programación, sistemas operativos computadores, estructuras de red, entornos de desarrollo, etc. disponibles en el momento en que se va a emplear el proceso. Por ejemplo hace varios años el modelado visual no era realmente de uso general. Era demasiado caro. En aquellos tiempos, un creador de un proceso prácticamente tenía que asumir que se usarían diagramas hechos a mano. Esa suposición limitaba mucho el gado en el cual el creador del proceso podía establecer el modelado dentro del proceso.
- Herramientas: Los procesos y las herramientas deben desarrollarse en paralelo. Las herramientas son esenciales en el proceso. Dicho de otra forma, un proceso ampliamente utilizado para soportar la inversión necesaria para crear las herramientas que lo soporten.
- Personas: Un creador del proceso debe limitar el conjunto de habilidades necesarias para trabajar en el proceso a las habilidades que los desarrolladores actuales poseen, o apuntar aquellas que los desarrolladores puedan obtener rápidamente. Hoy es posible empotrar las herramientas software técnicas que antes requieran amplios conocimientos, como la comprobación de la consistencia en los diagramas del modelo.
- Patrones de Organización: Aunque los desarrolladores de software no pueden ser expertos tan independientes como los músicos de una orquesta, están muy lejos de los trabajadores autómatas en los cuales Frederick W. Taylor baso su "Dirección Científica" hace cien años. El creador del proceso debe adoptar el proceso a las realidades del momento hechos como mezcla (en empresas pequeñas recién montadas) de socios de la empresa, empleados asalariados, trabajadores de obra y la prolongada escasez de desarrolladores de software.
Los ingenieros del proceso deben equilibrar estos cuatro conjuntos de circunstancias. Además el equilibrio debe estar presente no solo ahora, sino también en el futuro. El creador del proceso debe diseñar el proceso de forma que pueda evolucionar, de igual forma que el desarrollador de software intenta desarrollar un sistema que no solo funciona este año, sino que evoluciona con éxito en los años venideros. Un proceso debe madurar durante varios años antes de productos comerciales manteniendo a la vez un nivel razonable de riesgo de utilización. El desarrollo de un producto nuevo es bastante arriesgado en el mismo como para añadirle el riesgo de un proceso puede ser estable. Sin este equilibrio de tecnologías, herramientas, personas y organización, el uso del proceso seria bastante arriesgado.
En un principio el desarrollo de Software se hacia sin usar metodologías o técnicas, esto debido a que los sistemas eran pequeños y de muy escasa complejidad, pero a medida que avanzó la tecnología, las necesidades crecieron provocando que los sistemas de software no fueran de suficiente calidad, Iniciándose una rama de la computación que se ha hecho indispensable en la última década, esta es conocida como "Ingeniería de Software", evidentemente aún se encuentra en sus inicios pero ha ayudado a solucionar problemas en lo referente al análisis, diseño, desarrollo y mantenimiento de sistemas administrativos, los de apoyo a las tomas de decisiones o las de aplicaciones más comunes como son los de sistemas de monitoreo o los de control de procesos. Para el desarrollo e implantación de tales sistemas es necesario realizar una serie de procesos que parten desde la comprensión del problema hasta la puesta en marcha del producto final.
Esta función abarca todas las fases que se deben de seguir desde que aparece la necesidad de disponer de un determinado sistema de información hasta que éste es construido e implantado.
Hay una serie de circunstancias que hacen especialmente importante al área de desarrollo,
- Los avances en tecnologías de las computadoras han hecho que actualmente el desafío más importante
...