SENA REGIONAL ANTIOQUIA
Distrito CapitalCENTRO DE GESTION DE MERCADOS, LOGISTICA Y
TECNOLOGIAS DE LA INFORMACION
GUA DE APRENDIZAJE PARA EL PROGRAMA DE FORMACIN ANLISIS Y
DESARROLLO DE SISTEMAS DE INFORMACINGUIA 1
Versin: 128 de abril de 2014Pgina 14 de 14
1. IDENTIFICACIN CURRICULAR
PROGRAMA DE FORMACION: Anlisis Y Desarrollo De Sistemas De
Informacin
COMPETENCIA: Aplicar buenas prcticas de calidad en el proceso de
desarrollo de software, de acuerdo con el referente adoptado en la
empresa
2. RESULTADOS DE APRENDIZAJE
Identificar las caractersticas de los procesos de desarrollo de
software, frente al referente de calidad adoptado por la empresa,
ajustndolos a los resultados de las mediciones, evaluaciones y
recomendaciones realizadas
3. DESARROLLO
TEMA: Conceptos bsicos de calidad.
IntroduccinEn un mundo cada vez ms globalizado, donde cada da
desaparecen las barreras comerciales y culturales, la calidad
aparece como una necesidad, pues la calidad permite competir con
mayores posibilidades de xito.
No se puede medir lo que no se puede comprender Si no se sabe
dnde se est parado, un mapa no ayuda Lo que no se puede medir no se
puede controlar sistemticamente No podemos mejorar algo a menos que
podamos evaluarlo
Conceptos de CalidadSe dice que dos copos de nieve no son
iguales. Ciertamente cuando se observa caer la nieve, es difcil
imaginar que son totalmente diferentes, por no mencionar que cada
copo posee una estructura nica. Para observar las diferencias entre
los copos de nieve, debemos examinar los especmenes muy de cerca, y
quiz con un cristal de aumento. En efecto, cuanto ms cerca los
observemos, ms diferencias podremos detectar. Este fenmeno,
variacin entre muestras, se aplica a todos los productos del hombre
as como a la creacin natural. Por ejemplo, si dos tarjetas de
circuito idnticas se examinan muy de cerca, podremos observar que
las lneas de cobre sobre las tarjetas difieren ligeramente en la
geometra, colocacin y grosor. Adems, la localizacin y el dimetro de
los orificios de las tarjetas tambin varan.
El control de variacin es el centro del control de calidad. Un
fabricante quiere reducir la variacin entre los productos que se
fabrican, incluso cuando se realiza algo relativamente sencillo
como la duplicacin de disquetes. Seguramente, esto puede no ser un
problema la duplicacin de disquetes es una operacin de fabricacin
trivial y podemos garantizar que se crean duplicados exactos de
software-. Podemos?. Necesitamos asegurar que las pistas se siten
dentro de una tolerancia especfica para que la gran mayora de las
disqueteras puedan leer los disquetes. Adems, necesitamos asegurar
que el flujo magntico para distinguir un cero de un uno sea
suficiente para que los detecten las cabezas de lectura/escritura.
Las mquinas de duplicacin de discos aceptan o rechazan la
tolerancia. Por consiguiente, incluso un proceso simple, como la
duplicacin, puede encontrarse con problemas debidos a la variacin
entre muestras.
Punto Clave: Controlar la variacin es la clave de un producto de
alta calidad. En el contexto del software, nos esforzamos en
controlar la variacin en el proceso que aplicamos, recursos que
consumimos y los atributos de calidad del producto final.
Cmo se aplica esto al software? Cmo puede una organizacin de
desarrollo de software necesitar controlar la variacin? De un
proyecto a otro, queremos reducir la diferencia entre los recursos
necesarios planificados para terminar un proyecto y los recursos
reales utilizados, entre los que se incluyen personal, equipo y
tiempo. En general, nos gustara asegurarnos de que nuestro programa
de pruebas abarca un porcentaje conocido del software de una
entrega a otra. No slo queremos reducir el nmero de defectos que se
extraen para ese campo, sino tambin nos gustara asegurarnos de que
los errores ocultos tambin se reducen de una entrego a otra. (Es
probable que nuestros clientes se molesten si la tercera entrega de
un producto tiene diez veces ms defectos que la anterior.) Nos
gustara reducir las diferencias en velocidad y precisin de nuestras
respuestas de soporte a los problemas de los clientes. La lista se
podra ampliar ms y ms.
Calidad El American Heritage Dictionary, define la calidad como
una caracterstica o atributo de algo. Como un atributo de un
elemento, la calidad se refiere a las caractersticas mensurables
-cosas que se pueden comparar con estndares conocidos como
longitud, color, propiedades elctricas, maleabilidad, etc.-. Sin
embargo, el software en su gran extensin, como entidad intelectual,
es ms difcil de caracterizar que los objetos fsicos. No obstante, s
existen las medidas de caractersticas de un programa. Entre estas
propiedades se incluyen complejidad ciclomtica, cohesin, nmero de
puntos de funcin, lneas de cdigo y muchas otras estudiadas en los
Captulos 19 y 24. Cuando se examina un elemento segn sus
caractersticas mensurables, se pueden encontrar dos tipos de
calidad: calidad del diseo y calidad de concordancia.
La calidad de diseo se refiere a las caractersticas que
especifican los ingenieros de software para un elemento. El grado
de materiales, tolerancias y las especificaciones del rendimiento
contribuyen a la calidad del diseo. Cuando se utilizan materiales
de alto grado y se especifican tolerancias ms estrictas y niveles
ms altos de rendimiento, la calidad de diseo de un producto
aumenta, si el producto se fabrica de acuerdo con las
especificaciones. La calidad de concordancia es el grado de
cumplimiento de las especificaciones de diseo durante su
realizacin. Una vez ms, cuanto mayor sea el grado de cumplimento,
ms alto ser el nivel de calidad de concordancia. En el desarrollo
del software, la calidad de diseo comprende los requisitos,
especificaciones y el diseo del sistema. La calidad de concordancia
es un aspecto centrado principalmente en la implementacin. Si la
implementacin sigue el diseo, y el sistema resultante cumple los
objetivos de requisitos y de rendimiento, la calidad de
concordancia es alta. Pero, son la calidad del diseo y la calidad
de concordancia los nicos aspectos que deben considerar los
ingenieros de software? Para esto se establece una relacin ms
intuitiva: Satisfaccin del usuario = producto satisfactorio + buena
calidad+ entrega dentro de presupuesto y del tiempo establecidos Se
afirma que la calidad es importante, pero si el usuario no queda
satisfecho, ninguna otra cosa realmente importa. La calidad del
producto es una funcin de cunto cambia el mundo para mejor.Esta
visin de la calidad establece que si el producto de software
proporciona un beneficio sustancial a los usuarios finales, pueden
estar dispuestos para tolerar problemas ocasionales del rendimiento
o de fiabilidad.Figura: Razones que afectan la calidad Control de
calidad El control de cambios puede equipararse al control de
calidad. Pero, cmo se logra el control de calidad? El control de
calidad es una serie de inspecciones, revisiones y pruebas
utilizados a lo largo del proceso del software para asegurar que
cada producto cumple con los requisitos que le han sido asignados.
El control de calidad incluye un bucle de realimentacin (feedback)
del proceso que cre el producto. La combinacin de medicin y
realimentacin permite afinar el proceso cuando los productos de
trabajo creados fallan al cumplir sus especificaciones. Este
enfoque ve el control de calidad como parte del proceso de
fabricacin.Las actividades de control de calidad pueden ser
manuales, completamente automticas o una combinacin de herramientas
automticas e interaccin humana. Un concepto clave del control de
calidad es que se hayan definido todos los productos y las
especificaciones mensurables en las que se puedan comparar los
resultados de cada proceso. El bucle de realimentacin es esencial
para reducir los defectos producidos.Garanta de calidad La garanta
de calidad consiste en la auditora y las funciones de informacin de
la gestin. El objetivo de la garanta de calidad es proporcionar la
gestin para informar de los datos necesarios sobre la calidad del
producto, por lo que se va adquiriendo una visin ms profunda y
segura de que la calidad del producto est cumpliendo sus objetivos.
Por supuesto, si los datos proporcionados mediante la garanta de
calidad identifican problemas, es responsabilidad de la gestin
afrontar los problemas y aplicar los recursos necesarios para
resolver aspectos de calidad.
Costo de calidad El coste de calidad incluye todos los costes
acarreados en la bsqueda de la calidad o en las actividades
relacionadas en la obtencin de la calidad. Se realizan estudios
sobre el coste de calidad para proporcionar una lnea base del coste
actual de calidad, para identificar oportunidades de reducir este
coste, y para proporcionar una base normalizada de comparacin. La
base de normalizacin siempre tiene un precio. Una vez que se han
normalizado los costes de calidad sobre un precio base, tenemos los
datos necesarios para evaluar el lugar en donde hay oportunidades
de mejorar nuestros procesos. Es ms, podemos evaluar cmo afectan
los cambios en trminos de dinero. Los costes de calidad se pueden
dividir en costes asociados con la prevencin, la evaluacin y los
fallos. Entre los costes de prevencin se incluyen: planificacin de
la calidad, revisiones tcnicas formales, equipo de pruebas,
formacin.
Entre los costes de evaluacin se incluyen actividades para tener
una visin ms profunda de la condicin del producto la primera vez a
travs de cada proceso. A continuacin se incluyen algunos ejemplos
de costes de evaluacin: inspeccin en el proceso y entre procesos,
calibrado y mantenimiento del equipo, pruebas.
Los costes de fallos son los costes que desapareceran si no
surgieran defectos antes del envo de un producto a los clientes.
Estos costes se pueden subdividir en costes de fallos internos y
costes de fallos externos. Los internos se producen cuando se
detecta un error en el producto antes de su envo. Entre estos se
incluyen: retrabajo (revisin), reparacin, anlisis de las
modalidades de fallos. Los costes de fallos externos son los que se
asocian a los defectos encontrados una vez enviado el producto al
cliente. A continuacin se incluyen algunos ejemplos de costes de
fallos externos: resolucin de quejas, devolucin y sustitucin de
productos, soporte de lnea de ayuda, trabajo de garanta. Como es de
esperar, los costes relativos para encontrar y reparar un defecto
aumentan dramticamente a medida que se cambia de prevencin a
deteccin y desde el fallo interno al externo. La Figura Costo
relativo de corregir un error, basada en datos recopilados por,
ilustra este fenmeno.
El siguiente ejemplo con estadsticas de costes anteriores,
informando con datos anecdticos basados en un trabajo realizado en
las instalaciones de desarrollo de IBM en Rochester:Se han dedicado
7.053 horas inspeccionando 200.000 1neas de cdigo con el resultado
de 3.1 12 errores potenciales descubiertos. Dando por sentado un
coste de programador de 40 dlares por hora, el coste de eliminar
3.1 12 defectos ha sido de 282.120 dlares, o aproximadamente unos 9
I dlares por defecto. Compare estos nmeros con el coste de
eliminacin de defectos una vez que el producto se ha enviado al
cliente. Suponga que no ha habido inspecciones, pero que los
programadores han sido muy cuidadosos y solamente se ha escapado un
defecto por 1.000 lneas de cdigo [significativamente mejor que la
media en industrial] en el producto enviado. Eso significa que se
tendran que corregir todava 200 defectos en la casa del cliente o
despus de la entrega. A un coste estimado de 25.000 dlares por
reparacin de campo, el coste sera de 5 millones de dlares, o
aproximadamente 18 veces ms caro que el coste total del esfuerzo de
prevencin de defectos.
Figura Costo relativo de corregir un error
Es verdad que IBM produce software utilizado por cientos de
miles de clientes y que sus costes por reparacin en casa del
cliente o despus de la entrega pueden ser ms altos que los de
organizaciones de software que construyen sistemas personalizados.
Esto, de ninguna manera, niega los resultados sealados
anteriormente. Aunque la organizacin media de software tiene costes
de reparacin despus de la entrega que son el 25 por 100 de los de
IBM (la mayora no tienen ni idea de cules son sus costes!), se estn
imponiendo ahorros en el coste asociados con actividades de garanta
y control de calidad.
Calidad de Software
Es el desarrollo de software basado en estndares con la
funcionalidad y rendimiento total que satisfacen los requerimientos
del cliente. Procesos de desarrollo, gestin de proyectos, anlisis y
diseo, especificacin de requerimientos, arquitectura, son solo
algunos de los componentes que se aglomeran para conformar la
ingeniera de software (IS) como disciplina para la creacin y
mantenimiento de software. Dentro de sta, existe un subconjunto de
teoras, herramientas y mtodos orientados a lo que se denomina la
calidad del software. Para resumir de alguna manera la amplitud de
este concepto, se puede decir que la calidad de software ha sido
usada desde un simple argumento de venta, hasta verdaderos estudios
formales y usos de mtricas para el desarrollo de software.
Extraamente dentro de la IS, la calidad del software es muy
complicada de definir y de enmarcar en un simple concepto terico,
por lo que en esta nota, me concentrar solo en las diversas
caractersticas que permiten describirla y en los elementos que
importan especficamente al diseador de software. Una idea general
sobre un software de calidad es aquel que debiera cumplir con los
requerimientos funcionales y de performance adems de ser
mantenible, confiable y aceptable.
Otras definiciones de calidad de software
la concordancia con los requisitos funcionales y de rendimiento
establecidos con los estndares de desarrollo explcitamente
documentados y con las caractersticas implcitas que se espera de
todo software desarrollado de forma profesional. Pressman
2002.Calidad de Software
la totalidad de rasgos y atributos de un producto de software
que le apoyan en su capacidad de satisfacer sus necesidades
explcitas o implcitas (ISO/IEC 9126, 1998). ISO/IEC (Intenational
Standart Organitation)
es el grado en el cual el software posee una combinacin deseada
de factores. IEEE, citado por (Barbacci et al, 1995)
Factores Principales de la calidad del producto software
Atributos de Calidad del SoftwareUn producto software es de
calidad si cumple o tiene algunos o todos de los siguientes
factores de calidad:Correcto: Cumple la especificacin de
requisitos.Mantenible: Facilidad para hacerle cambios al
software.Portable: Esfuerzo para trasladar el software a otra
plataforma.Testeable: Facilidad para probar que el software es
correcto.Fcil de usar: Esfuerzo para aprender, usar e interrumpir
un sistema en marcha.Confiable: Capacidad para continuar el trabajo
aunque haya interrupciones (sistemas seguros).Importancia de las
caractersticas del productoLa importancia relativa de las
caractersticas depende del tipo de producto y del ambiente en el
que ser utilizado.Algunos atributos pueden dominar.En sistemas de
seguridad crticos de tiempo real, los atributos clave pueden ser la
confiabilidad y la eficiencia.Los costos tienden a crecer
exponencialmente si son requeridos altos niveles de alguna
caracterstica.
4. OBJETIVOS:
GENERAL: Dar a conocer el concepto de calidad, por medio de una
serie de definiciones y trminos los cuales sern puestos en
prctica.ESPECFICOS:
El aprendiz al finalizar esta gua estar en capacidad de:
Identificar los orgenes de la Calidad. Conceptuar la terminologa de
calidad. Entender el por qu es necesario hacer calidad de
software
5. ESTRATEGIAS DE ENSEANZA
ACTIVIDAD DE APRENDIZAJEConocer conceptos bsicos de la
calidad.
ACTIVIDAD PROPUESTA
Para esta actividad dispone de 11 horas. El trabajo es
individual.
1. Haga un mapa conceptual personal sobre Calidad y resea
histrica.2. Vea el video La calidad es una carrera sin fin.mp4 y
conteste lo siguiente:Cul es la idea principal que se desarrolla en
el video?. No conteste con una palabra solamente.Cree usted que los
clientes son fundamentales en las empresas?. Si contesta si
explique su respuesta y si contesta no explique su respuesta.Por qu
es importante que las empresas haga un mejoramiento continuo en sus
procesos?.Qu sucedera si usted es dueo de una empresa
desarrolladora de software y no realiza seguimiento ni hace
mejoramiento continuo de sus productos de software?. Justifique su
respuesta.3. Investigue sobre La calidad en el mundo globalizado.4.
Qu es Calidad de vida?.5. Qu es Calidad total?.6. Leer el capitulo
1 El producto del libro
Ingenieria-de-Software-Un-Enfoque-Practico-Pressman-5th-Ed.pdf.
Resuelva los Problemas y puntos a considerar de la pagina 11 menos
el punto 1.6 del libro.7. Qu es Calidad de Software?. Haga un mapa
conceptual con su respuesta.8. Qu es industrializacin de
Software?9. Porque es importante hacer calidad de software?.10.
Cules son los pasos para realizar una calidad de software?11. Qu es
el control de calidad del software?12. Cules son los componentes
del costo de hacer calidad?13. Cmo obtener un Software con
calidad?14. Cmo evaluar la calidad un Software?15. Cmo controlar la
Madurez de un Software?16. Elabore un diccionario de trminos que
usted no comprenda 17. Con respecto a la lectura del tema
contemplado en esta gua y busque su significado respectivo.Ejemplo:
algunas palabras Configurabilidad (Configurability) Capacidad de
Prueba (Testability) Escalabilidad (Scalability) Reusabilidad
(Reusability) Portabilidad (Portability) Mantenibilidad
(Maintainability) Modificabilidad (Modifiability) Interoperabilidad
(Interoperability) Integridad (Integrity) Integrabilidad
(Integrability)
6. EVIDENCIAS DE APRENDIZAJE
a) CONOCIMIENTO: Resolucin de la gua sobre fundamentos de
Calidad de Software.Respuesta a preguntas sobre Calidad de
Software.
b) Evaluacin escrita sobre temas tratados en esta gua.
7. FUENTES BIBLIOGRFICAS
ANSI/ASQC A3-1987, Quality Systems Terminology, 1987. Arthur, L.
J., Improving Software Quality: An Insider's Guide to TQM, Wiley,
1992. Arthur, L. J., Quantum Improvements in Software System
Qualityn, CACM, vol. 40, n." 6, Junio 1997, pp. 47-52. DeMarco, T.,
Management Can Make Quality (Im)possible, presentacin de Cutter
Summit '99, Boston, MA, 26 de Abril 1999. Dunn, R., y R. Ullman,
Quality Assuranrefor Computer Sofiare, McGraw-Hill, 1982. Freedman,
D. P., y G. M. Weinberg, Handbook of Walkthroughs, Inspections and
Technicul Reviews, 3.- ed., Dorset House, 1990. Notas: Las
referencias bibliogrficas aqu mencionadas son libros en ingles
tcnico. Otras Fuentes: En Internet puede encontrar una gran
variedad de pginas y temas relacionados con calidad, lo invito a
que con los buscadores de internet realice bsquedas mas a
profundidad de los temas aqu tratados.
8. TIEMPO ESTIMADO6 horas
9. INSTRUCTOR
Nstor Guillermo Montao Gmez
10. FECHA DE ENTREGA DE LA GUA
Mayo 19 de 2014.