El documento trata sobre la calidad del software. Explica que la calidad del software se refiere a las características que lo hacen útil y funcional, como la eficiencia, flexibilidad y confiabilidad. También describe la importancia de asegurar la calidad a través de actividades sistemáticas como el aseguramiento de la calidad del software. Estas actividades ayudan a verificar que los procesos y productos de software cumplan con los requisitos y estándares.
2. Índice
5.1. Definición de calidad y calidad del software.
5.2. Importancia de la calidad.
5.3. La calidad y la globalización.
5.4. Aseguramiento de la calidad del software (SQA):
definición y propósito del SQA, problemas que
resuelve el SQA, roles y responsabilidades de los
equipos de desarrollo, habilidades y capacidades del
personal del SQA, Actividades del SQA.
5.5. Derecho informático aplicado al software: piratería
y falsificación, autoría y creación, contratos y licencias.
3.
4. Calidad
Calidad significa que
un producto debe
cumplir con sus
especificaciones es la
totalidad de aspectos y
características de un
producto o servicio que
se refieren a su
capacidad para
satisfacer necesidades
dadas en la adecuación
de sus objetivos (ISO)
concordancia del
software producido con
los requerimientos
explícitamente
establecidos, con los
estándares de
desarrollo prefijados y
con los requerimientos
implícitos no
establecidos
formalmente que desea
el usuario (Pressman).
5. Calidad de Software
Conjunto de cualidades que lo caracterizan y que determinan su utilidad y existencia. La
calidad es sinónimo de eficiencia, flexibilidad, corrección, confiabilidad, mantenibilidad,
portabilidad, usabilidad, seguridad e integridad.
Es medible y varía de un sistema a otro o de un programa a otro.
Un software elaborado para el control de naves espaciales debe ser confiable al nivel de
"cero fallas"; un software hecho para ejecutarse una sola vez no requiere el mismo nivel
de calidad; mientras que un producto de software para ser explotado durante un largo
período (10 años o más), necesita ser confiable, mantenible y flexible para disminuir los
costos de mantenimiento y perfeccionamiento durante el tiempo de explotación.
Puede medirse después de elaborado el producto. Pero esto puede resultar muy
costoso si se detectan problemas deriva dos de imperfecciones en el diseño, por lo que
es imprescindible tener en cuenta tanto la obtención de la calidad como su control
durante todas las etapas del ciclo de vida del software.
6.
7. Los fallos de software afectan a
todos los sectores y a todos los
La calidad del software puede Es probable que se haya sufrido
países, actualmente se
parecer un concepto alejado de los efectos de estos problemas
desarrolla software fiable y
la vida diaria de la mayoría de de calidad en forma de retrasos,
correcto a un costo razonable.
las personas, pero nada más pérdidas de tiempo o dinero,
Los auténticos profesionales y
lejos de la realidad.; Ejemplo: etc. Estos problemas pueden
las empresas bien organizadas
cuando en un restaurante se ser mucho más graves cuando
son prudentes y saben que
bloquea el sistema de cobro, afectan graves pérdidas
deben aplicar distintas técnicas
estamos ante un problema de económicas o problemas
de control y prevención,
calidad del software. ambientales o sociales.
además de un buen proceso de
desarrollo.
8. Administración de la calidad del
software
Los productos
resultantes de los
Involucra a la
procesos se
definición de Debe llevar a
introducen en el Equipo de Informan de
Se refiere a lograr estándares de desarrollar una
Comprobación proceso de aseguramiento y Responsabilidad problemas y
un nivel de calidad cultura de
independiente de administración control: de la Visión objetiva dificultades a los
calidad requerido apropiados y calidad en donde
los procesos de de la calidad para independientes administración del proceso administradores
en el producto de procedimientos la calidad es
desarrollo asegurar su de los equipos de de la calidad principales de la
software que permitan responsabilidad
consistencia con desarrollo organización
asegurar que de todos
estándares y
estos se cumplan.
objetivos de
calidad
9.
10. La calidad y la globalización son palabras que no podemos ni debemos de
hacer a un lado, en un mundo tan competitivo como el de estos tiempos.
Ya que la calidad como lo marcan algunos autores es la capacidad de hacer
cosas distintas a las que se les debe mejorar para que puedan competir en el
mercado, pero no solo en productos se puede hablar de calidad si también
en los seres humano y el medio ambiente ya que los seres humanos,
animales y plantas ha venido evolucionando para mejorar la calidad de vida
para poder afrontar un mundo más diferente como el de hace años.
Los humanos por otra parte tuvieron la necesidad de aprender a
comunicarse con los de su misma especie a partir de eso tuvieron que
desarrollar más conocimientos es de ahí donde viene los grandes inventos,
las grandes empresas y empiezan a surgí, y la calidad se hace presente cada
vez más en el mundo para poder tener liderazgo ante otros productos y
satisfacer al consumidor.
11. Podemos decir que el hombre ha desarrollado su
calidad desde tiempos lejanos ya que buscaba la
perfección de las cosas haciéndolas más cómodas y
prácticas para su supervivencia.
La calidad está mejorando poco a poco mediante van
evolucionando las habilidades de la especie humana, como
podemos ver en la actualidad; ya que la globalización sobre
pasa las fronteras nacionales es así como los consumidores
se hacen cada vez más exigentes ante sus necesidades y es
donde se tiende a perfeccionar cada cosa para poder
satisfacer al consumidor, así como para poder permanecer
en la línea de liderazgo empresarial.
12.
13. 5.4.1: definición y propósito del SQA
Definición:
• SQA es un set de actividades sistemáticas que aseguran que el
proceso del software y productos conformados por
requerimientos, estándares, y procedimientos.
• Los procesos incluyen todas las actividades involucradas en el
diseño, codificación, pruebas y mantenimiento; Los productos
incluyen software, datos asociados, documentación, y toda la
documentación para soporte y reportes.
Propósito:
• Proporcionar visibilidad sobre los procesos utilizados por el
proyecto de software y sobre los productos que genera.
14. 5.4.2: problemas que resuelve el SQA
La obtención de un software de calidad implica la
utilización de metodologías o procedimientos
estándares para el análisis, diseño, programación y
prueba del SW que permitan uniformar la filosofía de
trabajo.
15. 5.4.2: problemas que resuelve el SQA (cont.)
La adopción de una buena política o Para controlar la calidad del SW, es
metodología contribuye en gran necesario definir los parámetros,
medida a lograr la calidad del SW pero indicadores o criterios de medición.
no la asegura. Esta política debe estar Las cualidades para medir la calidad
sustentada en 3 principios básicos. del SW se definen en 2 categorías:
• Tecnológico: define las técnicas a • Complejidad de programa o código.
utilizar en el proceso de desarrollo de • Complejidad de sistema o estructura.
SW.
• Administrativo: contempla las
funciones de planificación y control
del desarrollo de SW, así como la
organización del ambiente o centro
de ingeniería del SW.
• Ergonómico: define la interfaz entre
el usuario y el ambiente
automatizado.
16. 5.4.2: problemas que resuelve el SQA (cont.)
Aumenta las posibilidades de el é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)
17. 5.4.3: roles y responsabilidades de los
equipos de desarrollo
Describir los “Como policía del
diferentes roles que proceso”: el trabajo Determinar el
puede jugar el del equipo de SQA Auditar los cumplimiento del “Como abogado del
equipo de SQA en es asegurar que el productos del plan de desarrollo cliente”: el trabajo
Juzgar el proceso y
una organización desarrollo sigue el trabajo para del proyecto y del del equipo de SQA
no el producto.
nos dará una visión proceso establecido. identificar proceso de es representar al
clara de las Entre sus funciones deficiencias. desarrollo de cliente.
funciones que puede en este rol se software.
llevar a cabo. encuentran:
18. 5.4.3: roles y responsabilidades de los
equipos de desarrollo (cont.)
Entre sus funciones en
este rol se encuentran:
Identificar la Ayudar a la Actuar como un cliente
funcionalidad que al organización a de prueba para obtener
cliente le gustaría sensibilizarse con las una alta satisfacción del
encontrar. necesidades del cliente. cliente.
19. “Como analista” el trabajo del equipo de
SQA es recabar información. Entre sus
funciones en este rol se encuentran:
Juntar muchos datos Con esta información
sobre todos los ayudar a mejorar los
aspectos del producto procesos y los
y del proceso. productos.
20. “Como proveedor de información” el trabajo del
equipo de SQA es revisar qué es lo que esté hecho y
decir cuáles objetivos técnicos realmente están
cumplidos para que la gerencia pueda tomar
mejores decisiones de negocios.
Entre sus funciones en este rol se encuentran:
• Proveer información técnica objetiva para que la gerencia
pueda usarla para tomar mejores decisiones.
• Proveer información apropiada de las clases de productos
y de los riesgos asociados con estos.
• Concentrarse más en la reducción de los riesgos que en el
cumplimiento del proceso.
21. “Como responsable de la
elaboración del proceso”
El trabajo del equipo de SQA es participar
en la definición de los planes, procesos,
estándares y procedimientos para asegurar
Para cumplir este rol el aseguramiento de
que se ajustan a las necesidades del
la calidad debería comenzar en las fases
proyecto y que pueden ser usados para
tempranas del proyecto”.
realizar las evaluaciones de SQA y cumplir
los requerimientos del proyecto y las
políticas de la organización.
22. Aquí conviene aclarar que no necesariamente las personas que definen la
metodología a seguir pertenecen al equipo de SQA.
Definir la metodología puede llegar a ser o no una actividad del equipo de SQA.
Una estructura posible en el proceso de mejora del software puede ser contar con
un SEPG (software engineering process group) totalmente independiente del
equipo de SQA, encargado de definir la metodología mientras que el equipo de
SQA se limita a verificar que se cumpla dicha metodología.
23. 5.4.4: habilidades y capacidades
del personal del SQA
El equipo de SQA trabaja con la gerencia de proyectos durante los
inicios del desarrollo para establecer los planes, estándares y los
procedimientos que agregarán valor al proyecto de SW y satisfacer los
problemas del proyecto y de las políticas de la organización.
Participa en establecer los planes, estándares y procedimientos.
El equipo ayuda a asegurar que se cumplan con las necesidades del
proyecto y verifica que sean usables para realizar revisiones e
intervenciones durante todo el ciclo de vida.
Las revisiones del grupo de SQA proyectan las actividades y revisan
el producto de trabajo de SW, además de proveer a la gerencia la
posibilidad de saber si el proyecto está de acuerdo a los planes
estándares y procedimientos establecidos
24. 5.4.4: habilidades y capacidades del
personal del SQA
El grupo encargado de SQA.
Trabaja con el equipo del proyecto desde el inicio.
Debe ser objetivo e independiente.
Ayuda al proyecto, más que controlar sus actividades.
25. 5.4.4: habilidades y capacidades del
personal del SQA
La actividad de SQA es el proceso de
verificación de que los estándares sean
aplicados correctamente.
En los proyectos pequeños esto se puede
realizar por el equipo de desarrollo, pero en
proyectos grandes, un grupo específico se debe
dedicar a este rol.
26. 5.4.5: Actividades del SQA
Establecimiento de un plan de Revisión de las actividades de
calidad para un proyecto. ingeniería del software para
Evaluaciones a realizar verificar su ajuste al proceso de
Auditorías y revisiones a realizar software definido.
Estándares que se pueden aplicar Auditoría de los productos de
software designados para verificar
al proyecto el ajuste con los definidos como
Procedimientos para información parte del proceso de software.
y seguimiento de errores. Asegurar que las desviaciones del
Documentos producidos por el trabajo y los productos del
grupo de SQA software se documenten y se
Retroalimentación al equipo del manejen de acuerdo con el
proyecto procedimiento establecido.
Participación en el desarrollo de la Registrar e informar lo que no se
descripción del proceso de ajuste a los requisitos.
software del proyecto.
27.
28. Piratería de Software
El problema legal más grande que afecta a la industria de las computadoras es la piratería de software, la cual consiste en la
copia o uso ilegal de los programas.
La piratería es un problema enorme debido a que es muy fácil de hacer.
En la mayor parte de los casos, robar un programa no es más difícil de lo que es grabar un disco compacto de música que le
ha pedido prestado a un amigo.
Los piratas de software renuncian al derecho de recibir actualizaciones y soporte técnico, pero obtienen el uso del programa
sin pagar por él.
Muchos programas de software comercial, software que debe comprarse antes de usarlo, cuesta poco, de 20 a 50 dólares,
pero la mayor de las aplicaciones cuestan entre 100 y 500 dólares.
Las aplicaciones muy especializadas o complejas pueden constar varios miles de dólares.
29. Falsificación de software
Aunque nuevos
tratados agresivos
En muchos países,
están obligados a
los productos de
Este concepto es los países a
software y otros
similar a vender conceder más
Compartir La falsificación tipos de propiedad
ropa o mercancía Copiar software, protección contra
software en forma descarda con la intelectual no
de piel con sin embargo, es la piratería y la
ilegal con amigos intención de disfrutan de las
etiquetas de mucho más fácil falsificación de
o dentro de una vender es otro mismas
diseñador cuando que copiar ropa software, la
compañía es un problema por protecciones de
en realidad son del diseñador. falsificación es un
problema. completo. derechos de autor
imitaciones gran negocio en
o marca registrada
baratas. algunas partes del
como otros tipos
mundo, de manera
de productos.
más notable en
Europa y Asia.
30. Auditoria
La auditoría informática es un
proceso llevado a cabo por
Permiten detectar de forma
profesionales especialmente
sistemática el uso de los
capacitados para el efecto, y
recursos y los flujos de
que consiste en recoger,
información dentro de una
agrupar y evaluar evidencias
organización y determinar qué
para determinar si un sistema
información es crítica para el
de información salvaguarda el
cumplimiento de su misión y
activo empresarial, mantiene la
objetivos, identificando
integridad de los datos, lleva a
necesidades, duplicidades,
cabo eficazmente los fines de la
costes, valor y barreras, que
organización, utiliza
obstaculizan flujos de
eficientemente los recursos, y
información eficientes.
cumple con las leyes y
regulaciones establecidas.
31. Auditoria (cont.)
Auditar consiste principalmente en estudiar los
mecanismos de control que están implantados
Los mecanismos de control pueden ser
en una empresa u organización, determinando
directivos, preventivos, de detección,
si los mismos son adecuados y cumplen unos
correctivos o de recuperación ante una
determinados objetivos o estrategias,
contingencia.
estableciendo los cambios que se deberían
realizar para la consecución de los mismos.
32. Auditoria (cont.)
Los objetivos de la auditoría informática son:
El control de la función El análisis de la eficiencia de los La verificación del cumplimiento La revisión de la eficaz gestión
informática sistemas informáticos de la normativa en este ámbito de los recursos informáticos.
La auditoría informática sirve para mejorar ciertas características en la empresa como:
Desempeño Fiabilidad Eficacia Rentabilidad Seguridad Privacidad
Generalmente se puede desarrollar en alguna o combinación de las siguientes áreas:
Administración del ciclo de vida
Gobierno corporativo Servicios de entrega y soporte Protección y seguridad
de los sistemas
33. Creación de software
Se define como proceso al conjunto ordenado de pasos a seguir para llegar a
la solución de un problema u obtención de un producto, en este caso
particular, para lograr la obtención de un producto software que resuelva un
problema.
El proceso de creación de software puede llegar a ser muy complejo,
dependiendo de su porte, características y criticidad del mismo.
Por ejemplo la creación de un sistema operativo es una tarea que requiere
proyecto, gestión, numerosos recursos y todo un equipo disciplinado de
trabajo.
34. Creación de software (cont.)
En el otro extremo, si se trata de un sencillo programa (por ejemplo, la resolución de una ecuación
de segundo orden), éste puede ser realizado por un solo programador (incluso aficionado)
fácilmente.
Es así que normalmente se dividen en tres categorías según su tamaño (líneas de código) o costo:
de pequeño, mediano y gran porte.
Existen varias metodologías para estimarlo, una de las más populares es el sistema COCOMO que
provee métodos y un software (programa) que calcula y provee una estimación de todos los costos
de producción en un «proyecto software» (relación horas/hombre, costo monetario, cantidad de
líneas fuente de acuerdo a lenguaje usado, etc.).
Considerando los de gran porte, es necesario realizar complejas tareas, tanto técnicas como de
gerencia, una fuerte gestión y análisis diversos (entre otras cosas), por lo cual se ha desarrollado
una ingeniería para su estudio y realización: es conocida como ingeniería de software.
35. Contratos y licencias
El software se rige por licencias de
utilización
En ningún Derechos que
Las licencias,
momento un se conceden a
son contratos
usuario Sólo adquiere los usuarios
suscritos entre
compra un su derecho de software libre,
los
programa o se uso, aunque restricciones
productores de
convierte en pague por él. de uso
software y los
propietario de software
usuarios.
él propietario.
36. Tipos de licenciamiento:
Software propietario:
• Software cerrado, donde el dueño controla su desarrollo y no divulga sus especificaciones.
• Es el producido principalmente por las grandes empresas, tales como Microsoft, adobe, Corel y muchas otras.
• Antes de utilizarlo se debe pagar por su licencia.
• Normalmente se tiene derecho a utilizarlo en una sola computadora, un solo usuario y a realizar una copia de respaldo.
• En este caso la redistribución o copia para otros propósitos no es permitida.
Software de demostración:
• Comúnmente llamado software demo.
• No hay que confundir el software shareware con el software de demostración
• Son programas que de entrada no son 100% funcionales o dejan de trabajar al cabo de cierto tiempo.
• Suelen conseguirse en los kioscos de periódicos y revistas.
• Similar al software shareware por la forma en que se distribuye, pero es sólo software propietario limitado .
Software de dominio público:
• Es software libre que tiene como particularidad la ausencia de copyright. Es decir, software libre sin derechos de autor.
• En este caso los autores “renuncian” a todos los derechos que les puedan corresponder
Software semilibre:
• Para la FREE SOFTWARE FOUNDATION es software que posee las libertades del software libre, pero sólo se puede usar para
fines sin ánimo de lucro, por lo cual lo cataloga como software no libre.
Software para virtualización:
• Llevar tu software a otro equipo más poderoso, afectaría la licencia
• Microsoft y otras empresas de software propietario lo están flexibilizando
• Nuevo tipo de licenciamiento aun en análisis