sábado, 14 de diciembre de 2019

Mediciones en Producto y Proceso de Software


La medición del software es una tecnología con características y limitaciones similares a una nueva e inmadura tecnología

¿Por qué medir?
 “Medimos para mejorar” Las mejoras en el proceso de desarrollo de software y sistemas de calidad no pueden ser evaluadas sin un esfuerzo efectivo de medición. Cada organización desea mejorar sus procesos de desarrollo de software debido a que existe un tangible beneficio con la construcción de un mejor software. 

Aqui se muestran unas necesidades de porque debemos medir el software que utilizamos

  • Mejoras en la calidad y productividad.  
  • Planificación y estimación de proyectos con alguna precisión.  
  • Disposición del personal adecuado, bien utilizado y motivado.  
  • Existencia de una adecuada estructura organizacional.  
  • Uso de técnicas y herramientas efectivas para el proceso. 
  •  Obtención de un espacio físico y ambiente de trabajo óptimo. 
Los aspectos esenciales de la medición son:  
  • Datos duros, son cuantificables con poca o sin subjetividad (esfuerzo, volumen documentación, errores detectados, etc.  
  • Datos blandos, presentan un grado de subjetividad (habilidad y experiencia, presiones de tiempo, satisfacción del cliente, cooperación del cliente, etc.  
  • Datos normalizados, son usados con propósito comparativo (LOC, PF, CC, PO) 
Atributos internos y externos

Cada una de estas entidades puede ser medida definiendo sus atributos internos o externos. Un atributo interno es medido directamente desde la entidad. Por ejemplo, una medida interna del código fuente es el tamaño medido por las líneas de código. Un atributo externo es una medida de la entidad con relación a una necesidad externa definida por el ambiente en el cual es desarrollada o utilizada. 

FACTOR
DEFINICIÓN
Corrección
Grado en el que un programa satisface las especificaciones y cumple los objetivos del usuario.
Fiabilidad
Grado en el que un programa se espera que realice su función con una precisión requerida.
Eficiencia
Cantidad de recursos y código requeridos por un programa para realizar una función.
Integridad
Grado en el que se controla el acceso al programa o los datos por usuarios no autorizados.
Usabilidad
Esfuerzo necesario para aprender, operar, preparar entradas e interpretar la salida de un programa.
Mantenibilidad
Esfuerzo requerido para localizar y corregir un error en un programa en funcionamiento.
Facilidad de prueba
Esfuerzo requerido para probar un programa (para garantizar que realiza la función deseada).
Flexibilidad
Esfuerzo requerido para modificar un programa en funcionamiento.
Portabilidad
Esfuerzo requerido para trasferir un programa de una configuración hardware o entorno software a otro.
Reusabilidad
Grado en el que un programa se puede utilizar en otras aplicaciones
Interoperatividad
Esfuerzo requerido para acoplar un sistema con otro.

Fuentes


viernes, 13 de diciembre de 2019

Costo de calidad de los sistemas de información.


El costo de la calidad incluye todos los costos en los que se incurre al buscar la calidad o al realizar actividades relacionadas con ella y los costos posteriores de la falta de calidad. Para entender estos costos, una organización debe contar con unidades de medición que provean el fundamento del costo actual de la calidad, que identifiquen las oportunidades para reducir dichos costos y que den una base normalizada de comparación. El costo de la calidad puede dividirse en los costos que están asociados con la prevención, la evaluación y la falla. 


Los costos de prevención incluyen lo siguiente:  
1) el costo de las actividades de administración requeridas para planear y coordinar todas las actividades de control y aseguramiento de la calidad,  
2) el costo de las actividades técnicas agregadas para desarrollar modelos completos de los requerimientos y del diseño,  
3) los costos de planear las pruebas y  
4) el costo de toda la capacitación asociada con estas actividades. 

Los costos de evaluación incluyen las actividades de investigación de la condición del producto la "primera vez" que pasa por cada proceso. Algunos ejemplos de costos de evaluación incluyen los siguientes: 
  • El costo de efectuar revisiones técnicas de los productos del trabajo de la ingeniería de software. 
  • El costo de recabar datos y unidades de medida para la evaluación. 
  • El costo de hacer las pruebas y depurar. 
Los costos internos de falla incluyen los siguientes: 
  • El costo requerido por efectuar repeticiones (reparaciones para corregir un error). 
  • El costo en el que se incurre cuando una repetición genera inadvertidamente efectos colaterales que deban mitigarse. 
  • Los costos asociados con la colección de las unidades de medida de la calidad que permitan que una organización evalúe los modos de la falla. 


Cálculo del costo de la calidad 

El costo promedio de la industria por corregir un defecto durante la generación de código es aproximadamente de US$977 por error. El promedio del costo en el que incurre la industria por corregir el mismo error si se descubre durante las pruebas 
del sistema es de US $7,136. Cigital, lnc. [Cig07] tome en cuenta que una aplicación grande contiene 200 errores introducidos durante la codificación. 
De acuerdo con datos promedio, el costo de encontrar y corregir defectos durante la fase de codificación es de US $977 por defecto. Entonces, el costo total por corregir los 200 errores "críticos" durante esta fase es de (200 x US $977) US$195 400, aproximadamente. 


Defectos y errores de calidad en los sistemas de información



Defecto: Un defecto se encuentra en un artefacto y puede definirse como una diferencia entre la versión correcta del artefacto y una versión incorrecta. Coincide con la definición de diccionario, "imperfección".

Falla: En terminología IEEE, una falla es la discrepancia visible que se produce al ejecutar un programa con un defecto, el cual es incapaz de funcionar correctamente (no sigue su curso normal).

Error: Es una equivocación cometida por el desarrollador. Algunos ejemplos de errores son: un error de digitación, una malinterpretación de un requerimiento o de la funcionalidad de un método. 

Bug: Un bug es el término común usado para describir un defecto, en un programa, esto debido a que una vez durante un informe de errores se encontró una polilla muerta con cinta de aislar en el mismo

Calidad en los sistemas de información

Aplicadas las definiciones de calidad al ámbito de la información podría decirse que la calidad de la información de un sistema de información, vendrá determinada por su capacidad para satisfacer las necesidades de información de la persona o personas que lo utilicen.

En la Sociedad de la Información y del Conocimiento cada vez se hace más necesario el conocimiento y el aprendizaje para desarrollar cualquier actividad bien sea esta empresarial, recreativa, investigadora, o de otra índole, y además estos conocimientos deben actualizarse regularmente, pues con frecuencia quedan desfasados, y el proceso de aprendizaje debe ser continuo para que sea eficaz. 

Según lo que plantea la norma ISO 9000:2000, calidad: “Es el grado en el que un conjunto de características (rango diferenciador) inherentes cumple con los requisitos (necesidad o expectativa establecida, generalmente implícita u obligatoria)”.  
Según la norma ISO 8402 define calidad como: “La totalidad de las características de una entidad que le confieren la aptitud para satisfacer las necesidades establecidas e implícitas”.  
Diferenciar el concepto de información y datos, reviste gran importancia para el desarrollo de Sistemas de información en función de la dirección. Frecuentemente los términos datos e información se intercambian, confundiendo su significado.  
Datos: Es la colección desorganizada de hechos que no han sido procesados en información, dato es el hecho crudo cuyas conclusiones pudieran ser  desentrañadas. Estos hechos pueden describir personas, lugares, cosas, ideas, procesos o eventos

Información: Es el conocimiento adquirido por causa del procesamiento de datos.  

sábado, 16 de noviembre de 2019

Obtener calidad en los sistemas de información (métodos, métricas, metodologías, estándares).


Los sistemas de información en la organización no son algo nuevo. Desde antes de utilizar los computadores para la automatización, las organizaciones ya reunían, almacenaban y actualizaban información de sus actividades manualmente. En el pasado como en el presente, los sistemas de información consisten en estándares establecidos para el procesamiento, almacenamiento y entrega de información a los miembros de la organización donde cada uno de éstos requieren información distinta para la realización de su trabajo, en particular como instrumento en la toma de decisiones y en las actividades de control gerencial.

Existen diferentes áreas y tipos de sistemas de información gerencial, el uso dependerá del nivel donde se encuentre el individuo dentro de la organización, ya que cada uno de ellos está diseñado para ello. La importancia del uso de los sistemas de información gerencial radica, en que la información puede usarse para respaldar la toma de decisiones dentro de la organización, ya que dicha información nos podrá indicar si una decisión es la correcta o no, sin olvidar que existen otras variables que influyen en la misma. Sin importar el tamaño de la empresa u organización, la conducción exitosa de la misma estará influenciada por la precisión de sus registros y la adopción de decisiones acertadas.

Calidad
La calidad constituye una expresión de aplicación universal, su uso está inmerso en la cotidianidad, en su aplicación se materializa en la calidad de vida, las relaciones interpersonales, la educación y la salud, así como en todos los bienes y servicios que las empresas producen, en el entorno laboral y medio ambiente, hablar de calidad es pues conocer y entender que cada actividad que el hombre ejecuta debe estar enmarcada en patrones de conducta que conlleven a hacer las cosas de la mejor manera posible, para generar satisfacción de los clientes, usuarios y consumidores de un producto bien o servicio.

Sistemas de información
Todos los sistemas tienen composición, estructura y entorno, pero sólo los sistemas materiales poseen mecanismo, en este sentido, Laudon y Laudon (2006), expresan que un sistema de información es un objeto compuesto, cuyos componentes se relacionan con al menos algún otro; puede ser material o conceptual. De igual forma se puede decir que es un conjunto de elementos con relaciones de interacción e interdependencia que le confieren entidad propia al formar un todo unificado. Un sistema puede ser cualquier objeto, cualquier cantidad de materia, cualquier región del espacio, entre otros seleccionados para estudiarlo y aislarlo mentalmente de todo lo demás. En este sentido, el presente artículo se asume a un sistema de información como una interrelación de redes materiales que se relacionan entre sí.

ciclo de vida de un sistema de información

El ciclo de vidad de un sistema puede clasificarse en estas fases:

Fase de planificación

Consiste en un conjunto de actividades:
  1. Montar el proyecto.
  2. Justificar proyecto.
  3. Elija la metodología de desarrollo.
  4. Desarrollar un cronograma del proyecto.
  5. Producir un plan de desarrollo del proyecto.

fase de mantenimiento

Implica el funcionamiento diario del sistema, realizando modificaciones para mejorar el rendimiento y corregir problemas. Después de implementar un sistema de información, permanece en funcionamiento durante un período de tiempo. Durante este tiempo, las actividades de mantenimiento aseguran que el sistema funcione tan bien como sea posible. Hay una lista de actividades para esta fase:
  1. Operar el equipo.
  2. Haz copias de seguridad.
  3. Proporcionar ayuda a los usuarios.
  4. Corrige errores.
  5. Optimiza la velocidad y la seguridad.
  6. Revise el software según sea necesario para satisfacer las necesidades del negocio.

Fase de diseño

El equipo del proyecto debe averiguar cómo el nuevo sistema cumplirá los requisitos especificados en el Informe de requisitos del sistema. Hay una lista de actividades para la Fase de Diseño:
  1. Identificar soluciones potenciales.
  2. Evaluar soluciones y seleccionar las mejores.
  3. Seleccione hardware y software.
  4. Desarrollar especificaciones de la aplicación.
  5. Obtenga la aprobación para implementar el nuevo sistema.

Fase de implementación

El equipo del proyecto supervisa las tareas necesarias para construir el nuevo sistema de información. Hay un conjunto de tareas que tienen lugar durante esta fase:
  1. Comprar e instalar hardware y / o software.
  2. Crea aplicaciones.
  3. Aplicaciones de prueba.
  4. Finalice la documentación.
  5. Entrene a los usuarios.
  6. Convertir datos.
  7. Convierte a un nuevo sistema.

Fase de análisis

La fase de análisis comienza después de que el equipo del proyecto selecciona una metodología de desarrollo, elabora el Plan de Desarrollo del Proyecto y recibe permiso para proceder desde la administración.

Resultado de imagen para ciclo de un sistema de informacion

FUENTES

Gestión del tiempo para el desarrollo de sistemas de información.


El tiempo en el ciclo de vida de un proyecto es primordial y tenerlo vigilado en todo momento como el tiempo, costo y alcance son la triple restricción en un proyecto, es decir, que cuando estos se definen al momento de realizar el acta de constitución, no puedes sobrepasar estos valores.

El objetivo principal de la gestión del tiempo es terminar el proyecto en el plazo de tiempo definido logrando realizar el alcance del proyecto en el tiempo, costo y calidad esperado por el cliente. 

  • Definición de las Actividades  
Se identifican las actividades específicas del plan de trabajo que se deben ejecutar para crear los productos entregables del proyecto.  


Procesos y características de la Gestión de los Riesgos del Proyecto  La Gestión de los Riesgos del Proyecto 
comprende los procesos relacionados con la planificación de la gestión de riesgos, la identificación y el análisis de riesgos, las respuestas a los riesgos, y el seguimiento y control de riesgos de un proyecto.  
Los objetivos de esta gestión son aumentar la probabilidad y el impacto de los eventos positivos, y disminuir la probabilidad y el impacto de los eventos negativos dentro del proyecto. 
Los procesos de Gestión de los Riesgos del Proyecto son los siguientes:  
Planificación de la Gestión de Riesgos  
Se planifica la ejecución de las actividades de gestión de riesgos para el proyecto.  
Identificación de Riesgos  
Se analizan los riesgos que pueden afectar al proyecto y se documentan sus características.  
Análisis Cualitativo de Riesgos  
Consiste en establecer la prioridad de los riesgos para realizar otros análisis o acciones posteriores, se trata de evaluar la probabilidad de ocurrencia y su impacto.  
Análisis Cuantitativo de Riesgos  
Analiza matemáticamente el efecto de los riesgos identificados dentro del plan del proyecto.  
Planificación de la Respuesta a los Riesgos  
Se evalúan las opciones y acciones necesarias para mejorar las oportunidades y reducir las amenazas a los objetivos del proyecto.  
Seguimiento y Control de Riesgos  
Es el proceso que le da el seguimiento a los riesgos previamente identificados, además supervisa los riesgos residuales, e identifica los nuevos que podrían aparecer, ejecuta planes de respuesta en caso de que los riesgos se conviertan en realidad.  
Un riesgo en un proyecto es un evento o condición no predecible, que en caso de producirse tiene un efecto positivo o negativo sobre al menos un objetivo del proyecto, y los objetivos están estrechamente relacionados con el tiempo, el costo, el alcance o la calidad.  
Las condiciones de riesgo dentro del proyecto se pueden ver afectadas por prácticas deficientes de dirección de proyectos, la falta de sistemas de gestión integrados, múltiples proyectos concurrentes o por depender de participantes externos que no pueden ser controlados. 

LISTAS DE COMPROBACIÓN

Una lista de comprobación (checklist, en inglés) es una herramienta de ayuda en el trabajo diseñada para reducir los errores provocados por los potenciales límites de la memoria y la atención en el ser humano, esta ayuda a asegurar la exhaustividad y consistencia para la realización de una tarea

Aplicaciones 
    • Dentro de la seguridad aérea, se utilizan listas de comprobación previas al despegue de las aeronaves para asegurar que ninguna tarea crítica se ha olvidado. 
    • En medicina, se recomienda su uso para comprobar que se siguen las pautas establecidas en la práctica clínica. Un ejemplo sería la Surgical Safety Checklist desarrollada para la Organización Mundial de la Salud por el doctor Atul Gawande.2 La evidencia que soporta la efectividad de las listas de comprobación en la cirugía es provisional, pero limitada.3 
    • En ingeniería de programas informáticos se utilizan para asegurar la calidad, cumplimiento de procedimientos, estandarización de código de programación, prevención de errores y otros. 
    • Se emplean con frecuencia en procesos industriales. 
    • Su uso en litigios permite reducir la complejidad de los recursos o la evaluación y examen de las pruebas en un proceso judicial.
    • Son utilizadas por algunos analistas financieros como un elemento crítico en la toma de decisiones sobre inversiones. 
    • Su empleo puede reducir las demandas por negligencia, al justificar que su uso evidencia que existía un sistema de gestión del riesgo.
Una lista de comprobación debe derivarse del sistema de reglas generales del producto en desarrollo.  
    • Cada pregunta de la lista de comprobación debe incluir una referencia a la etiqueta de la regla que interpreta dentro de un estándar o reglamentos internos de la empresa desarrolladora.  
    • Las listas de comprobación deben ser actualizadas cuando sea necesario para reflejar el descubrimiento de los defectos importantes no incluidos hasta este momento.  
    • Las preguntas y objetivos para una lista de comprobación no debe exceder de una sola página física.  
    • Las descripciones de las preguntas y objetivos de la lista de comprobación pueden incluir las sugerencias para la severidad probable del defecto.  
    • Está generalmente redactada cada pregunta, pero no necesariamente, para que una respuesta negativa identifique un defecto.  
    • Las preguntas de la lista de comprobación deben concentrarse en divulgar defectos importantes.  
    • Los resultados de la lista de comprobación no debe emplearse de mala forma para definir una nueva regla.
Las funciones de un checklist son las siguientes

  • Durante la realización de actividades en las que es muy importante que no se olvide ningún paso y deben hacerse las tareas con un orden establecido.
  • Realizar inspecciones donde se deja constancia de cuales han sido los puntos inspeccionados.
  • Verificar o examinar artículos.
  • Examinar o analizar la localización de los defectos. Verificando las causas de los defectos.
  • Verificar y analizar las operaciones.
  • Recopilar datos para su futuro análisis.
  • Limitaciones 
    La excesiva dependencia de las listas de comprobación puede comprometer el rendimiento en situaciones donde el tiempo es un factor crítico, por ejemplo, en una urgencia médica o en una emergencia aérea. En cualquier caso, no deberían ser un sustituto del sentido común. La formación intensiva, incluyendo la memorización de las listas de comprobación, puede integrar su uso con otras técnicas de resolución de problemas más adaptativas y flexibles. 


FUENTES




sábado, 12 de octubre de 2019


CALIDAD INFORMÁTICA



¿Qué es la calidad?

La Calidad es aquella cualidad de las cosas que son de excelente creación, fabricación o procedencia, Calidad describe lo que es bueno, por definición, todo lo que es de calidad supone un buen desempeño.

En términos de informática, es resultado del movimiento global dentro del proceso de mejoramiento continuo de los estándares de producción en todos los sectores industriales, en particular, cuando éste se concentra en la producción de sistemas de información y software especializado.

Etapas de la calidad


Calidad en la época artesanal.

Los trabajos de manufactura en la época pre-industrial. como eran prácticamente labores de artesanía, tenían mucho que ver con la obra de arte. El artesano ponía todo su empeño en hacer lo mejor posible cada una de sus obras cuidando incluso que la presentación del trabajo satisficiera los gustos estéticos de la época, dado que de la perfección de su obra dependía su prestigio artesanal.

En esta etapa de la calidad, se dedicaba a sacar el mejor desempeño en los trabajos sin importar el tiempo que estos tomaran, de tal forma que se buscara la satisfacción del cliente

Calidad en la época de industrialización

A medida que se fue consolidando el concepto de nación, en un mundo estimulado por los avances tecnológicos y por el desarrollo de los medios y vías de comunicación, empezó también a surgir el concepto de economía y riqueza nacional, el cual se hacía depender de los saldos comerciales. A partir de esto se hizo relevante tanto el vínculo entre calidad y competitividad como la importancia nacional de ambos elementos.


Aquí buscaba satisfacer la demanda del tiempo adecuado, dejando de lado la calidad final ofrecida.

Etapa de control final

En esta etapa de la calidad, se buscaba no tanto la calidad final en un producto, si no que era satisfacer las necesidades del cliente de acuerdo con las especificaciones que este pedía.

El aumento de la producción que se produjo en esta etapa, hizo que se generara una gran cantidad de desperfectos y errores encontrados en los productos finales debido a que los empleados desarrollaron apatia y aburrimiento hacia el trabajo


El incipiente aseguramiento de calidad 
 Este     escalón    de   la   historia  comienza  con   el  interrogante   de   cómo    evitar    los  descartes de producción y surgen varios caminos a recorrer para buscar las causas: 
    • Máquinas mal preparadas por deficiencias en el mantenimiento preventivo 
    • Falta de capacidad del personal que operaba esos equipos 
    • Selección del personal • Compras de equipos, materias primas, etc. 
Estos   análisis   se   extienden   a    1970   donde    el   concepto  de   calidad   (tal  vez  sin tener  decidida  conciencia  de ello) se  extiende  a  otras  secciones de la empresa, aunque se mantiene un arrea exclusiva para calidad. Este  concepto  da lugar a la  idea  del  aseguramiento  de calidad, dando paso a la exigencia de documentar el cumplimiento  de calidad, en especial  en  empresas con riesgos potenciales (por ejemplo la energía nuclear) donde se crean normas especificas para esas actividades. 

Esta etapa fue designada como de garantía de calidad. 
El concepto de calidad total 
A  partir  de  la  década  del  80  las  relaciones  entre  contratista  y  proveedor  se  hacen   más complejas al aumentar las exigencias  de  este, la  cual  determina que el cliente se convierte en el eje del sistema. Los conceptos fundamentales de la llamada calidad total son: 

a) La satisfacción del cliente 
b) La   calidad   como    factor    estratégico   de   la   empresa   y  orientados a  la  mejora  continua  (los japoneses la llamaron Kaizen). 
c) En  este  esquema  el  precio  es  importante  pero  en  correlación  con la  calidad producida, el cliente ocasional, aquel que solo compra por precio, no constituye el futuro de la  empresa, si lo es en cambio el cliente consolidado, el que luego de la  primero compra  lo seguirá  haciendo por haber quedado satisfecho con la ecuación producto-precio-atención. 






Fuentes