Índice5.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.
CalidadCalidad 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).
Calidad de Software
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.
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.
Es medible y varía de un sistema a otro o de un programa a otro.
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.
La calidad del software puede parecer un
concepto alejado de la vida diaria de la mayoría
de las personas, pero nada más lejos de la realidad.; Ejemplo: cuando en un
restaurante se bloquea el sistema de cobro, estamos
ante un problema de calidad del software.
Es probable que se haya sufrido los efectos de estos problemas de calidad en forma de
retrasos, pérdidas de tiempo o dinero, etc. Estos
problemas pueden ser mucho más graves cuando
afectan graves pérdidas económicas o problemas ambientales o sociales.
Los fallos de software afectan a todos los
sectores y a todos los países, actualmente se
desarrolla software fiable y correcto a un costo
razonable. Los auténticos profesionales y las
empresas bien organizadas son
prudentes y saben que deben aplicar distintas técnicas de control y
prevención, además de un buen proceso de
desarrollo.
Administración de la calidad del software
Se refiere a lograr un nivel
de calidad requerido en
el producto de software
Involucra a la definición de estándares de
calidad apropiados y
procedimientos que permitan asegurar que
estos se cumplan.
Debe llevar a desarrollar
una cultura de calidad en donde la
calidad es responsabilida
d de todos
Comprobación independiente
de los procesos de desarrollo
Los productos resultantes de los procesos se introducen en el proceso de
administración de la calidad
para asegurar su
consistencia con
estándares y objetivos de
calidad
Equipo de aseguramiento
y control: independiente
s de los equipos de desarrollo
Responsabilidad de la
administración de la calidad
Visión objetiva del proceso
Informan de problemas y dificultades a
los administradores principales
de la organización
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.
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.
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.
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.
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.
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.4.1: definición y propósito del SQA
• 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.
Definición:
• Proporcionar visibilidad sobre los procesos utilizados por el proyecto de software y sobre los productos que genera.
Propósito:
5.4.2: problemas que resuelve el SQALa 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.
5.4.2: problemas que resuelve el SQA (cont.)
La adopción de una buena política o metodología
contribuye en gran medida a lograr la calidad del SW pero no
la asegura. Esta política debe estar sustentada en 3 principios
básicos. • Tecnológico: define las
técnicas a utilizar en el proceso de desarrollo de 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.
Para controlar la calidad del SW, es necesario definir los
parámetros, indicadores o criterios de medición. Las
cualidades para medir la calidad del SW se definen en 2
categorías: • Complejidad de programa o
código. • Complejidad de sistema o
estructura.
5.4.2: problemas que resuelve el SQA (cont.)
Define un plan de monitoreo del proceso de desarrollo del software (ciclo de vida)
Verifica que los estándares sean aplicados correctamente
Ayuda a definir los parámetros de medición de la calidad del software
Aumenta las posibilidades de el éxito final del proyecto
5.4.3: roles y responsabilidades de los equipos de desarrollo
Describir los diferentes roles que puede jugar el equipo de SQA
en una organización nos dará una visión
clara de las funciones que puede llevar a
cabo.
“Como policía del proceso”: el trabajo del
equipo de SQA es asegurar que el desarrollo sigue
el proceso establecido. Entre sus
funciones en este rol se
encuentran:
Auditar los productos del trabajo para identificar
deficiencias.
Determinar el cumplimiento del
plan de desarrollo del proyecto y del
proceso de desarrollo de
software.
Juzgar el proceso y no el producto.
“Como abogado del cliente”: el
trabajo del equipo de SQA es
representar al cliente.
5.4.3: roles y responsabilidades de los equipos de desarrollo (cont.)
Entre sus funciones en este rol se encuentran:
Identificar la funcionalidad que al cliente le gustaría
encontrar.
Ayudar a la organización a
sensibilizarse con las necesidades del
cliente.
Actuar como un cliente de prueba para obtener una
alta satisfacción del cliente.
“Como analista” el trabajo del equipo de SQA es recabar
información. Entre sus funciones en este rol se encuentran:
Juntar muchos datos sobre todos los aspectos del producto y del
proceso.
Con esta información
ayudar a mejorar los procesos y los
productos.
“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.
“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 que se ajustan a las necesidades del
proyecto y que pueden ser usados para realizar las evaluaciones de SQA y cumplir los requerimientos del proyecto y las políticas de la
organización.
Para cumplir este rol el aseguramiento de la calidad
debería comenzar en las fases tempranas del proyecto”.
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.
5.4.4: habilidades y capacidades del personal del SQA
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
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.
Participa en establecer los planes, estándares y procedimientos.
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.
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.
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.
5.4.5: Actividades del SQAEstablecimiento de un plan de
calidad para un proyecto. 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 de SQA Retroalimentación al equipo del
proyecto Participación en el desarrollo de
la descripción del proceso de software del proyecto.
Revisión de las actividades de ingeniería del software para verificar su ajuste al proceso de software definido.
Auditoría de los productos de software designados para verificar el ajuste con los definidos como parte del proceso de software.
Asegurar que las desviaciones del trabajo y los productos del software se documenten y se manejen de acuerdo con el procedimiento establecido.
Registrar e informar lo que no se ajuste a los requisitos.
5.5. Derecho informático aplicado al software:piratería y falsificación, autoría y creación, contratos y licencias
Piratería de Software
Las aplicaciones muy especializadas o complejas pueden constar varios miles de dólares.
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.
Los piratas de software renuncian al derecho de recibir actualizaciones y soporte técnico, pero obtienen el uso del programa sin pagar por él.
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.
La piratería es un problema enorme debido a que es muy fácil de hacer.
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.
Falsificación de software
Compartir software en forma ilegal con amigos o dentro de una
compañía es un problema.
La falsificación descarda con la
intención de vender es otro problema por
completo.
Este concepto es similar a
vender ropa o mercancía de
piel con etiquetas de diseñador cuando en
realidad son imitaciones
baratas.
Copiar software, sin embargo, es mucho más
fácil que copiar ropa del
diseñador.
Aunque nuevos tratados
agresivos están obligados a los
países a conceder más
protección contra la
piratería y la falsificación de
software, la falsificación es
un gran negocio en
algunas partes del mundo, de manera más notable en
Europa y Asia.
En muchos países, los
productos de software y otros
tipos de propiedad
intelectual no disfrutan de las
mismas protecciones de
derechos de autor o marca
registrada como otros
tipos de productos.
AuditoriaLa auditoría informática es un proceso llevado a cabo por profesionales
especialmente capacitados para el
efecto, y que consiste en recoger, agrupar y
evaluar evidencias para determinar si un sistema
de información salvaguarda el activo
empresarial, mantiene la integridad de los datos, lleva a cabo eficazmente
los fines de la organización, utiliza eficientemente los
recursos, y cumple con las leyes y regulaciones
establecidas.
Permiten detectar de forma sistemática el uso
de los recursos y los flujos de información dentro de
una organización y determinar qué
información es crítica para el cumplimiento de
su misión y objetivos, identificando necesidades, duplicidades, costes, valor
y barreras, que obstaculizan flujos de
información eficientes.
Auditoria (cont.)
Auditar consiste principalmente en estudiar los mecanismos de control que
están implantados en una empresa u organización, determinando si los
mismos son adecuados y cumplen unos determinados objetivos o estrategias,
estableciendo los cambios que se deberían realizar para la consecución
de los mismos.
Los mecanismos de control pueden ser directivos, preventivos, de detección,
correctivos o de recuperación ante una contingencia.
Auditoria (cont.)
Generalmente se puede desarrollar en alguna o combinación de las siguientes áreas:
Gobierno corporativo Administración del ciclo de vida de los sistemas
Servicios de entrega y soporte Protección y seguridad
La auditoría informática sirve para mejorar ciertas características en la empresa como:
Desempeño Fiabilidad Eficacia Rentabilidad Seguridad Privacidad
Los objetivos de la auditoría informática son:
El control de la función informática
El análisis de la eficiencia de los sistemas informáticos
La verificación del cumplimiento de la
normativa en este ámbito
La revisión de la eficaz gestión de los recursos
informáticos.
Creación de softwareSe 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.
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.
Contratos y licencias
En ningún momento un
usuario compra un programa o se convierte
en propietario
de él
Sólo adquiere su derecho de uso, aunque pague por
él.
Las licencias,
son contratos suscritos entre los
productores de software
y los usuarios.
Derechos que se
conceden a los usuarios
software libre,
restricciones de uso software
propietario.
El software se rige por licencias de utilización
Tipos de licenciamiento: •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 propietario:
•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 demostración:
•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 de dominio público:
•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 semilibre:
•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
Software para virtualización:
Top Related