lunes, 27 de enero de 2014

Mapa de resumen de la unidad I

Introducción

Este es un pequeño y sencillo mapa conceptual que resume los puntos vistos en la primera unidad de Calidad en el desarrollo de software, los temas que se vieron en la unidad son los siguientes:

1.1 Conceptos básicos de calidad en la ingeniería de software

  • ¿Qué es calidad?
  • ¿Qué es una norma?
  • ¿Qué es un estándar?
  • ¿Que es un proceso?
  • Modelos de calidad
  • Institutos que regulan la calidad.
1.2 Factores y características del software

1.3 Métricas del software

Imagen realizada por mi.

Desarrollo

El tema 1.1 nos habla de los conceptos básicos de la calidad en el desarrollo de software, también abarca el nombre de algunos estándares y nombres de organizaciones que certifican en el ámbito de calidad, con esto el alumno puede darse una pequeña idea de lo extenso que es el ámbito de calidad, no solo en el software si no mas bien de la empresa en general.

El tema 1.2 Habla sobre los factores y características de calidad en el software, en pocas palabras son atributos que debe tener el software para que sea de calidad, pero para poder medir esos atributos y asegurar que realmente se están cumpliendo se utilizan las métricas (tema 1.3) que son aquellas que van a medir una característica de algo y nos arrojan datos medibles para tener un mejor control.

Conclusión

Es importante conocer estos temas, deben de tenerse bien en claro porque una buena practica de desarrollo de software debe de aplicar la calidad con todo lo que ella conlleva. El estudio de estos temas e incluso la practica de los mismos puede parecer tedioso, porque normalmente el estudiante o el programador inexperto piensa que un proyecto es simplemente pedir los requerimientos y sentarse a programar. A lo que quiero llegar con esto es hacer ver a quien lea este articulo y este interesado en desarrollar software que utilice normas de calidad, procesos y métricas que posiblemente pueda tardado y tedioso al principio pero el resultado seguramente sera mucho mejor que solo sentarse a programar sin llevar un correcto orden y que seguramente se tenga que rehacer el programa ya que no hay evidencia de algo que mida y cumpla con las expectativas del cliente.

Bibliografías

Certification, G. S. (s.f.). GLC. Recuperado el 12 de 01 de 2014, de GLC Mexico: http://www.glc-mexico.com/glcmexico.php
eduComons. (s.f.). eduComons. Recuperado el 12 de 01 de 2014, de eduComons: http://212.128.130.23/eduCommons/ciencias-sociales-1/investigacion-evaluativa-en-educacion/contenidos/EFQM.pdf
ISO. (s.f.). ISO. Recuperado el 12 de 01 de 2014, de ISO: http://www.iso.org/iso/home.html
López, A. T. (2006). Estandares de calidad para pruebas objetivas. Colombia: Magisterio.
Miguel, P. A. (2009). Calidad. España: Paraninfo.
Normex. (s.f.). Normex. Recuperado el 12 de 01 de 2014, de Normex: http://www.normex.com.mx/
Olya. (s.f.). Olya. Recuperado el 12 de 01 de 2014, de Certificación de Calidad Internacional: http://www.internationalqualitycertification.com/
Calero, C. (2010). Calidad del producto de software. En C. Calero, Calidad del producto de software (pág. 270). España: Ra-Ma.
Velasco, J. (2005). Introduccion a la gestion de la calidad: Generalidades y control estadistico. Teoria y práctica. En J. V. Sánchez, Introduccion a la gestion de la calidad (pág. 179). Colombia: Piramide.
Sommerville, I. (2005). Ingenieria del software. En I. Sommerville, Ingenieria del software (pág. 687). Madrid: Pearson Education.
Tuya, J. (2007). Tecnicas cuantitativas para la gestión en la ingeniería de software. En J. Tuya, Tecnicas cuantitativas para la gestión en la ingeniería de software. España: Netbiblo.

WillyDEV. (s.f.). www.willydev.net. Recuperado el 16 de 01 de 2014, de www.willydev.net: http://www.willydev.net/descargas/WillyDEV PlaneaSoftware.Pdf



domingo, 19 de enero de 2014

Tema 1.3

¿Que es una métrica?

Una métrica es cualquier medida o conjunto de medidas destinadas a conocer o estimar el tamaño u otra característica o un software o sistema de información, generalmente para realizar o para la planificación de proyectos de desarrollo.

¿Para que nos sirve una métrica?

Las métricas nos ayudan a entender tanto el proceso técnico que se utiliza para desarrollar un producto,
el producto se mide para intentar aumentar su calidad. 

La medición es muy común en el mundo de la ingeniería. Medimos potencia de consumo, pesos, dimensiones físicas, temperaturas, voltajes, señales de ruidos por mencionar algunos aspectos. Desgraciadamente la medición se aleja de lo común en el mundo de la ingeniería del software. Encontramos dificultades en ponernos de acuerdo sobre que medir y como va evaluar las medidas.

Hay varias razones para medir un producto:
1. Para indicar la calidad del producto.
2. Para evaluar la productividad de la gente que desarrolla el producto.
3. Par evaluar los beneficios en términos de productividad y de calidad, derivados del uso de nuevos métodos y herramientas de la ingeniería de software.
4. Para establecer una línea de base para la estimación
5. Para ayudar a justificar el uso de nuevas herramientas o de formación adicional.


Métricas del software.


Son las que están relacionadas con el desarrollo del software como funcionalidad, complejidad, eficiencia.

MÉTRICAS TÉCNICAS: Se centran en las características de software por ejemplo: la complejidad lógica, el grado de modularidad. Mide la estructura del sistema, el cómo está hecho.

MÉTRICAS DE CALIDAD: proporcionan una indicación de cómo se ajusta el software a los requisitos implícitos y explícitos del cliente. Es decir cómo voy a medir para que mi sistema se adapte a los requisitos que me pide el cliente.

MÉTRICAS DE PRODUCTIVIDAD. Se centran en el rendimiento del proceso de la ingeniería del software. Es decir que tan productivo va a ser el software que voy a diseñar.

MÉTRICAS ORIENTADAS A LA PERSONA. Proporcionan medidas e información sobre la forma que la gente desarrolla el software de computadoras y sobre todo el punto de vista humano de la efectividad de las herramientas y métodos. Son las medidas que voy a hacer de mi personal que hará el sistema.

MÉTRICAS ORIENTADAS AL TAMAÑO. Es para saber en qué tiempo voy a terminar el software y cuantas personas voy a necesitar. Son medidas directas al software y el proceso por el cual se desarrolla, si una organización de software mantiene registros sencillos, se puede crear una tabla de datos orientados al tamaño

MÉTRICAS ORIENTADAS A LA FUNCIÓN. Son medidas indirectas del software y del proceso por el cual se desarrolla. En lugar de calcularlas las LDC, las métricas orientadas a la función se centran en la funcionalidad o utilidad del programa. Las métricas orientadas a la función fueron el principio propuestas por Albercht quien sugirió un acercamiento a la medida de la productividad denominado método del punto de función. Los puntos de función que obtienen utilizando una función empírica basándose en medidas cuantitativas del dominio de información del software y valoraciones subjetivos de la complejidad del software.


Conclusión

Las métricas del software son importantes ya que con ellas podemos establecer un punto de referencia de la calidad que se quiere alcanzar en el producto a desarrollar, sin ellas no se tendría una estimación de la calidad lograda en el producto o software.

viernes, 17 de enero de 2014

Tema 1.2

Este tema trata sobre las características en la calidad del software. Hay que recalcar que si el software no cuenta con estas características que serán mencionadas a continuación definitivamente no tiene calidad, ya que sin estas características el software definitivamente no va a funcionar o bien tarde o temprano puede presentar errores.

Características:

Corrección: Es el grado en que una aplicación puede satisfacer las necesidades del cliente.
Fiabilidad: Es lo confiable que va a ser un software en cuanto a su correcto funcionamiento se refiere.
Eficiencia: Este concepto se refiere a utilizar la menor cantidad de recursos posible para logra una tarea.
Integridad: Esto se refiere al grado en que puede ser controlado el software por los permisos que posea el usuario.
Facilidad de uso: Que el software pueda ser aprendido y utilizado de forma sencilla.
Flexibilidad: Que el software tenga la capacidad de de ser modificado de una forma sencilla si provocar conflictos por dicha acción.

Facilidad de mantenimiento: Facilidad de localizar y reparar errores.
Facilidad de prueba: Prueba total del software de forma sencilla para observar si se cumplen con todos los requisitos.
Reusabilidad: Partes del software que pueden ser utilizadas para uno nuevo.
Transición del producto: Que el software pueda ser adaptado a nuevos entornos.
Portabilidad: Que el software abarque el mayor número de plataformas disponibles (ejem: android, ios, windows, linux, etc.) e incluso versiones anteriores o posteriores de una plataforma.

Imagen de factores y características de calidad en el software.




Importancia de este tema:

      Es importante entender que las características de calidad en el software van dirigidas al desarrollador, también que el cliente inconscientemente exige estos puntos al tener un proyecto terminado, ya que no es muy probable que conozca estas características como tal. También por lo que he podido observar estas características de calidad en el software deben de ser llevadas a la práctica siguiendo o no una metodología de calidad como ISO, COBIT etc., ya que estas metodologías o normas contemplan otros puntos de calidad como costos por ejemplo.

Tema 1.1

Este tema habla de cuatro puntos a tener en cuenta:


  • Calidad: Que es satisfacer las expectativas del cliente e incluso superarlas.
  • Norma: Que es una regla que va a regular aspectos sobre la elaboración del software para que este sea hecho lo mejor posible.
  • Estándar: Son los lineamientos que deben de ser seguidos para conseguir una correcta elaboración del software.
  • Proceso: Son tareas que ya han sido probadas y nos ayudan a conseguir un fin de una manera más eficiente y rápida.


También se habla de los modelos de la calidad del software. Un modelo es establecido por una institución que regula la calidad de ciertos ámbitos, en este caso sobre la elaboración de software, el modelo contempla la obtención de requisitos para la elaboración del software, el tiempo de elaboración del software, el costo-beneficio, los plazos que se deberán a tener en cuenta para la elaboración del producto, etc.

El objetivo de un modelo de calidad de software es facilitar el proceso de elaboración de proyectos de desarrollo de software, obteniendo un producto de la mejor calidad y en el menor tiempo posible, ya que si un software se realizara sin un tipo de control posiblemente se tenga que pasar varias veces por un proceso de reconstrucción.