1. Octubre 2009
BOLETIN N° 2
INGENIERIA DEL SOFTWARE
CONTENIDO
La calidad y la
Ingeniería de 2
Software
Propuestas de
Ingeniería de 3
Software
Norma ISO 9126
Un estándar de 4
calidad
La ingeniería del
software no como
5
obligación son como
herramienta
Si los ingenieros de
software fueran
6
médicos y los
usuarios pacientes
Mitos de la Ingeniería
7
del Software
2. Página 2
LA CALIDAD Y LA INGENIEIRA DEL SOFTWARE
El concepto de calidad en los En las empresas de software, la
productos de software debe calidad se obtiene mejorando día a
“La calidad es formularse de forma particular. día el proceso de producción,
hoy una de las Primero es conveniente indicar mantenimiento y gestión del
mayores sus características software. Para optimizar la calidad
ventajas diferenciadoras frente a otros de los productos y/o servicios es
competitivas productos: el software se preciso conocer al cliente y sus
para las desarrolla, no se fabrica en el necesidades, conocer a la
empresas sentido clásico; es inmaterial y no competencia y poseer un modelo
desarrolladoras se deteriora con el uso o el de calidad. Esto último permitirá
de software” tiempo (aunque tiene un ciclo de incrementar la fiabilidad, reducir el
vida); su fiabilidad es difícil de mantenimiento, aumentar la
comprobar; la mayoría del satisfacción del cliente, mejorar la
software se construye a medida y dirección del proyecto, detectar
necesita de actualización errores pronto e incrementar el
permanente; es dependiente del beneficio.
entorno donde se ejecuta. La
ingeniería de software es una Finalmente es recomendable tener
disciplina cuyo horizonte de en cuenta las siguientes "medidas"
madurez está aun lejos, y que se a aplicar para asegurar la calidad
caracteriza por la proliferación de de los productos software:
normas, métodos y herramientas • En el producto software: definir
incompatibles entre si. los requerimientos de calidad del
La calidad en la ingeniería del producto, evaluar la viabilidad.
software, que depende en gran • En el proceso de software:
“Una medida de la pericia del equipo proveer con antelación suficiente
organización que lo desarrolla, puede definirse los recursos necesarios,
no preparada como un conjunto de estructurar el proceso de
para dar características o cualidades, tales software por fases, descripción
calidad, en el como: eficiencia, fiabilidad, clara del trabajo de cada
sentido usabilidad, funcionalidad, miembro del equipo,
esperado por mantenibilidad, portabilidad, monitorización periódica del
etc., variando la importancia de riesgo y su prevención.
sus clientes,
cada una de ellas de un
caerá muy producto a otro. Dicho de otra La calidad es un concepto vacío si
rápidamente manera, es el cumplimiento de no se tienen en cuenta las
en la situación los requerimientos contractuales necesidades reales de los clientes.
de expectativas por parte del producto software
no cumplidas o desarrollado, así como durante el
no alcanzadas” proceso de desarrollo.
3. Página 3
PROPUESTAS DE INGENIERIA DEL SOFTWARE
El proceso de diseño y el diseño propuestas de
ingeniería de implementado en ingeniería de software
software se define código, el código es que presentan unos
como “un conjunto probado, pasos que deben
de etapas documentado y seguir las personas
parcialmente certificado para su encargadas de la
ordenadas con la uso operativo". ingeniería de software
intención de logra Concretamente con el fin de lograr el
un objetivo, en este "define quién está desarrollo de software
caso, la obtención haciendo qué, de calidad que
de un producto de cuándo hacerlo y cumpla las
software de cómo alcanzar un expectativas en
calidad” [Jacobson cierto objetivo" cuento a tiempo,
1998].El proceso de [Jacobson 1998]. precio y
funcionalidad. Con la
desarrollo de Con el fin de obtener
software "es aquel Entre las propuestas
ingeniería de
software de calidad,
en que las mas conocidas se software se
la cual es una de las
necesidades del características encuentran SWEBOK, espera que: “ el
usuario son primordiales Métrica Versión 3 y sistema
traducidas en buscadas por todos Moprosoft. funcione bien,
requerimientos de los clientes que haga lo que se
software, estos adquieren este tipo necesita, no
requerimientos de productos, se han cueste más de
transformados en desarrollo lo que dijeron y
no traiga más
SWEBOK problemas”
El propósito del SWEBOK es dar una caracterización a la ingeniería del
software como disciplina, de tal manera que esta sirva de guía a
quienes quieren construir software aplicando técnicas a nivel de
ingeniería. La guía se subdivide en 10 áreas de conocimiento, así
denominadas por la IEEE, en las que contempla una serie de aspectos y
conceptos que llevan al software a ser objeto de aplicación de la
ingeniería.
MOPROSOFT
Su objetivo fundamental es fortalecer la industria del software en
México, promoviendo las exportaciones, la atracción de inversiones y
alcanzando niveles internacionales en capacidad de procesos.
4. Página 4
NORMA ISO 9126
UN ESTANDAR DE CALIDAD
“Solo la ISO 9126 es un estándar internacional para la evaluación del
primera parte Software. Está supervisado por el proyecto SQuaRE, ISO
ISO 9126–1, 25000:2005, el cuál sigue los mismos conceptos. El estándar está
es un dividido en cuatro partes.
estándar ISO 9126 pertenece a la primera generación de estándares de
aprobado y calidad de un producto software.
duplicado”
ISO 9126 –1: MODELO DE CALIDAD ISO 9126 –3: METRICAS INTERNAS
Define un modelo de calidad basado en Métricas internas son aquellas que no
dos partes bien diferenciadas: dependen de la ejecución del software.
• Calidad interna y externa. • Se aplican a un producto de software
• Calidad de datos. no ejecutable.
ISO 9126-1 categoriza la calidad de los • Se aplican durante las etapas de
atributos software en seis características desarrollo.
(funcionalidad, fiabilidad, usabilidad,
eficiencia, mantenibilidad y portabilidad),
las cuales son subdivididas en
ISO 9126 –4: METRICAS DE USO
subcaracterísticas.
La calidad en las métricas de uso están
sólo disponibles cuando el producto
ISO 9126 –2: METRICAS EXTERNAS final es usado en condiciones reales.
Métricas externas son aquellas aplicables al Idealmente, la calidad interna determina
software en ejecución. El uso de estas la calidad externa y esta a su vez la
métricas se realiza en el proceso del ciclo calidad en el uso.
de vida.
Interpretación de las medidas de tres
formas: directa, indirecta e indicadores.
5. Página 5
LA INGENIERIA DEL SOFTWARE NO COMO
OBLIGACION SINO COMO HERRAMIENTA
OBLIGACION
Por. Diego Fernando Vega López.
El término de ingeniería del software no es nuevo, ya que a finales de la década de los
sesenta fue utilizado para expresar el área del conocimiento que se estaba formando en
torno a las problemáticas generadas por el software en ese momento. En esa época, el
crecimiento desenfrenado de las necesidades de los seres humanos por sistemas
computacionales asociado a la evolución vertiginosa del sector electrónico y ante la
ausencia de métodos y recursos para un desarrollo coherente se genero la crisis del
software entre 1965 – 1985. Durante esta época grandes proyectos se excedieron en
presupuestos y tiempos de entrega, generando no solo implicaciones económicas sino
también sociales.
La crisis se supero, pero no fue porque en 1985 se encontró la metodología adecuada
para llevar a feliz término los proyectos de software, sino porque no es coherente ni
razonable estar por más de veinte años en crisis y en parte porque se estaban
realizando progresos significativos en los procesos de diseño y métodos para realizar un
desarrollo adecuado. Así pues, desde 1985 hasta el presente, se han ido apareciendo
herramientas, teorías y tecnologías que han aportado de manera significativas en el
proceso de planificación, previsión de costes y calidad del producto. Entre las cuales se
encuentran los distintos tipos de programación (Estructurada y Orientada a Objetos),
distintos lenguajes de programación, las herramientas CASE, el lenguaje UML, entre
otros, han ido generando aportes a la constante búsqueda del método idóneo para la
ingeniería de software, para la cual día a día surgen ideas e
iniciativas encaminadas a ello.
“Las herramientas
CASE mas valiosas son
aquellas que
contribuyen con
información
información en el
proceso de desarrollo”
Robert Dixon
6. Página 6
SI LOS INGENIEROS DE SOFTWARE FUERAN
MEDICOS…. Y LOS USUARIOS PACIENTES
El TransPlante Versión 1.0
Un Doctor experto en cambie realmente operación. En horas de
transplantes de rápido, el problema es la noche el paciente
corazón... que tengo un viaje muere. El médico se
mañana, y no deseo queda con su dinero,
Paciente: “Doctor,
que me incomode. Me pensando en que la
necesito hacerle una
lo cambia ahora, y esta próxima vez lo hará
consulta. Hace días
noche descanso para con otro tipo de
tengo una molestia y he
poder hacer el viaje tecnología, no
llegado a la conclusión
mañana.” presenta ningún
de que es mi corazón.”
El doctor, basado en su remordimiento.
Doctor: “Umm, lo mejor
experiencia en y... ¿qué pasó con el
en esos casos es no
transplantes de corazón diagnóstico?
dudar y hacer el cambio
le pasa la cuenta de
a uno que funcione
cobro, el paciente
bien.”
negocia un poco el
Paciente: “De acuerdo, descuento y la forma de
pero necesito que me lo pago, proceden a la
El TransPlante Versión 2.0
Un Doctor experto en piel, y con los síntomas por los avances
transplantes de que me ha comentado tecnológicos y la
riñones... su problema no es de seguridad del doctor,
acepta el trato.
El paciente con mucha corazón, es de riñones.
seguridad le comenta Con mucho gusto, en La operación es un
al Doctor: “Doctor, horas de la tarde éxito, sin embargo el
necesito que me haga iniciamos la paciente ahora sigue
un transplante de preparación para con su problema de
corazón. Por el dinero realizar el transplante. corazón y con un riñón
no se preocupe, que lo De una vez que no es el suyo.
importante es la salud.” aprovechamos que nos A veces llevamos a
acaba de llegar la
El doctor, competente maquina Riñones 2003 nuestros clientes a
en transplantes de que es lo último en hacer cosas que no
riñones, le replica: tecnología de
necesitan.
“Lamento transplantes de riñón.”
profundamente
contradecirlo, pero el El paciente, asombrado
color de su
7. Página 7
El TransPlante Versión 3.0
Un Médico general un estudio para una El médico finalmente
experto en segunda opinión. acepta la posición de
diagnóstico... El paciente, algo serio, su paciente y ordena
Paciente: “Doctor, he le dice que no tiene la operación...
decidido que deseo un tiempo para perder A veces, nuestros
transplante de haciendo clientes nos llevan a
corazón.” diagnósticos, que lo hacer cosas que ellos
El médico, un poco importante es hacer la no necesitan
asombrado, le pregunta operación lo antes
las razones y le ofrece posible.
MITOS DE LA INGENIERIA DEL SOFTWARE
MITO: Los requisitos del REALIDAD: El modelo de ciclo de
proyecto cambian vida se elige según el tipo del
continuamente pero los cambios proyecto, el dominio que se
pueden acomodarse fácilmente. tenga del problema, las
necesidades del cliente y la
REALIDAD: El impacto del
capacidad del equipo de trabajo.
cambio varia según el momento
en el que se introduzca.
MITO: Una vez que hicimos el
programa y funciona nuestro
trabajo a terminado.
REALIDAD: Los datos
industriales indican que entre el
50% y el 70% de todo el
esfuerzo dedicado a un
programa se realizará después
de que se le haya entregado al
cliente por primera vez.
MITO: El modelo de ciclo de vida
se elige según el dominio que el
ingeniero tenga de este, según
el que permita terminar en
menos tiempo y el que esté de
moda.
8. “La mayoría de expertos está de acuerdo en que la causa
más probable de destrucción del mundo sería por accidente;
y aquí es donde entramos nosotros: somos profesionales de
la informática, causamos accidentes”
Nathaniel Borenstein
El boletín N° 2 de Ingeniería del
Software fue desarrollado por
estudiantes del programa de
Ingeniería de Sistemas y
Telecomunicaciones de la Universidad
Católica Popular del Risaralda con el Inquietudes y
fin de dar a conocer algunos Sugerencias
conceptos básicos y fundamentales
para el desarrollo de software de ist.ingesoft@gmail.com
calidad, así como también para tratar
temas importantes para todos los
profesionales de la informática que se
mueven en el mundo del desarrollo de
software que hoy por hoy es
considerada una de las industrias con
mayor crecimiento en el mercado
mundial.
Elaborado Por: Catalina Martínez Saldarriaga.
Christian Camilo Quintero Acevedo.
Facultad de Ciencias Básicas e Ingeniería
Programa Ingeniería de Sistemas y Telecomunicaciones
Universidad Católica Popular del Risaralda. Carrera 21 No. 49-95 Av. De las
49-
Américas. Pereira, Risaralda. PBX: 3127722. FAX: 3127613.