TDA 01 Software-Antecedentes

50
TÉCNICAS DE DOCUMENTACIÓN Y ARCHIVO Ing. MSc. CELEDONIO MENDEZ VALDIVIA UNIVERSIDAD NACIONAL DE INGENIERÍA 1

Transcript of TDA 01 Software-Antecedentes

Page 1: TDA 01 Software-Antecedentes

TÉCNICAS DE DOCUMENTACIÓN Y

ARCHIVO

Ing. MSc. CELEDONIO MENDEZ VALDIVIA

UNIVERSIDAD NACIONAL DE INGENIERÍA

1

Page 2: TDA 01 Software-Antecedentes

Contenido

1. Conceptos fundamentales

2. Consideraciones de software y hardware

3. Factores de calidad y productividad

4. Técnicas de Documentación

5. Problemas y soluciones en la

administración de software

Page 3: TDA 01 Software-Antecedentes

1

CONCEPTOS

FUNDAMENTALES

Page 4: TDA 01 Software-Antecedentes

¿Qué es el Software?

“Es el conjunto de los

programas de cómputo,

procedimientos, reglas,

documentación y datos

asociados que forman

parte de las operaciones

de un sistema de

computación”

Fuente: estándar 729 del IEEE

Page 5: TDA 01 Software-Antecedentes

Aplicaciones de Software

Software de Sistema

Software de Tiempo Real

Software de Negocios

Software de Ingeniería/Científico

Software Incrustrado

Software de PC

Software de IA

Aplicaciones Web

Page 6: TDA 01 Software-Antecedentes

Perspectiva histórica del

desarrollo de software

Década 50-60: “Software como un añadido”.

Desarrollo artesanal, a medida.

Lenguajes de bajo nivel.

Década 60-70: Software como producto.

Década lenguajes y compilación.

“Crisis del software”.

Page 7: TDA 01 Software-Antecedentes

Perspectiva histórica del

desarrollo de software

Década 70-80: Programación estructurada.

Ingeniería del Software.

Primeros métodos estructurados.

Década 80-90:

Nuevos paradigmas de programación y de

producción de programas:

• OO

• C/S

Page 8: TDA 01 Software-Antecedentes

Perspectiva histórica del

desarrollo de software

90’s - actualidad:

Análisis/Diseño OO.

Tecnología CASE

Componentes y reutilización

Interoperabilidad (CORBA, .NET...)

Internet

• ISw. distribuida

• repositorios de componentes reutilizables

• e-business; e-commerce

Page 9: TDA 01 Software-Antecedentes

2

CONSIDERACIONES DEL

HARDWARE Y SOFTWARE

Page 10: TDA 01 Software-Antecedentes

Consideraciones del

hardware y software

• El software es un elemento del sistema que

es lógico, en lugar de físico.

• El software se desarrolla no se fabrica en

un sentido clásico.

• La mayoría del software se construye a

medida.

• Se usa en forma integral (todo o nada)

Page 11: TDA 01 Software-Antecedentes

Factores de calidad y

productividad

Basili y Zelkowitz definen cinco factores importantes

que inciden en la productividad del software:

• Factores humanos: El tamaño y la

experiencia de la organización de desarrollo.

• Factores del problema: La complejidad del

problema que se debe resolver y el número de

cambios en las restricciones o los requisitos del

diseño.

Page 12: TDA 01 Software-Antecedentes

• Factores del proceso: Técnicas del

análisis y diseño qué se utilizan, lenguajes y

herramientas CASE y técnicas de revisión.

• Factores del producto: Fiabilidad y

rendimiento del sistema basado en computadora.

Factores de calidad y

productividad

Page 13: TDA 01 Software-Antecedentes

• Factores del recurso: Disponibilidad de

herramientas CASE, y recursos (hardware y

software).

Factores de calidad y

productividad

Page 14: TDA 01 Software-Antecedentes

Fiable

Capacidad de ofrecer los mismos resultados

bajo las mismas condiciones.

Eficiente

Utilización óptima de los recursos de la

máquina.

Atributos de calidad del software:

Page 15: TDA 01 Software-Antecedentes

Robusto

No poseer un comportamiento catastrófico

ante situaciones excepcionales

(Tolerante a fallos).

Correcto

Se ajusta a las especificaciones dadas por el

usuario.

Atributos de calidad del software:

Page 16: TDA 01 Software-Antecedentes

PortableCapaz de integrarse en entornos distintos con el

mismo esfuerzo.

Adaptable (extensibilidad)Modificar alguna función sin que afecte a sus

actividades.

Atributos de calidad del software:

Page 17: TDA 01 Software-Antecedentes

Inteligible

Diseño claro, bien estructurado y documentado.

No Erróneo

No exista diferencia entre los valores reales y

los calculados

Reutilizable (reusabilidad)

Atributos de calidad del software:

Page 18: TDA 01 Software-Antecedentes

3

FACTORES DE CALIDAD DEL

SOFTWARE

Page 19: TDA 01 Software-Antecedentes

Factores para la calidad del

software:

El objetivo primordial de la ingeniería del software es:

“Producir un sistema, aplicación o producto de alta calidad”

Page 20: TDA 01 Software-Antecedentes

Para lograr este objetivo, los

ingenieros de software

deben aplicar métodos

efectivos junto con

herramientas modernas

dentro del contexto de un

proceso maduro de

desarrollo del software.

Factores para la calidad del

software:

Page 21: TDA 01 Software-Antecedentes

La calidad de un sistema, aplicación o producto

es tan bueno como:

Los requisitos que describen el problema,

El diseño que modela la solución

El código que conduce a un programa

ejecutable, y

Las pruebas de los programas para detectar

errores.

Factores para la calidad del

software:

Page 22: TDA 01 Software-Antecedentes

Un buen ingeniero del software utiliza mediciones

que evalúan la calidad del análisis y los modelos

de diseño, el código fuente y los casos de prueba

que se han creado al aplicar ingeniería del

software.

Para lograr esta evaluación de la calidad, el

ingeniero debe utilizar medidas técnicas que

evalúan la calidad con objetividad, no con

subjetividad.

Factores para la calidad del

software:

Page 23: TDA 01 Software-Antecedentes

El gestor de proyectos también debe evaluar la

calidad objetivamente, y no subjetivamente.

A medida que el proyecto progresa el gestor del

proyecto también debe evaluar la calidad.

Las métricas privadas recopiladas por ingenieros

del software se asimilan para proporcionar

resultados en los proyectos.

Factores para la calidad del

software:

Page 24: TDA 01 Software-Antecedentes

Aunque se pueden recopilar muchas medidas de

calidad, el primer objetivo en el proyecto es medir

errores y defectos.

Las métricas que provienen de estas medidas

proporcionan una indicación de la efectividad de

las actividades de control y de la garantía de

calidad del conjunto o de alguna de las partes

Factores para la calidad del

software:

Page 25: TDA 01 Software-Antecedentes

Los errores detectados por hora de revisión y los

errores detectados por hora de prueba proporcionan

una visión profunda de la eficacia de cada una de

las actividades implicadas en la métrica.

Factores para la calidad del software:

Page 26: TDA 01 Software-Antecedentes

Visión general de los factores que afectan a la

calidad:

En las dos décadas pasadas, McCall y Cavano

definieron un juego de factores de calidad como los

primeros pasos hacia el desarrollo de métricas de

la calidad del software.

Estos factores evalúan el software desde tres

puntos de vista distintos:

Factores para la calidad del software:

Page 27: TDA 01 Software-Antecedentes

• Operación del producto (utilizándolo).

• Revisión del producto (cambiándolo).

• Transición del producto (modificándolo para

que funcione en un entorno diferente, por

ejemplo «portándolo».

La relación entre estos factores de calidad es lo

que se llama un «marco de trabajo».

Factores para la calidad del

software:

Page 28: TDA 01 Software-Antecedentes

El marco de trabajo proporciona un mecanismo para

que el gestor del proyecto identifique lo que

considera importante.

Estas cualidades son atributos del software, además

de su corrección y rendimiento funcional, que tiene

implicaciones en el ciclo de vida.

En otros factores, como son facilidad de

mantenimiento y transportabilidad, se ha demostrado

que tienen un impacto significativo en el costo del

ciclo de vida...

Factores de calidad del software

MARCO DE TRABAJO

Page 29: TDA 01 Software-Antecedentes

En segundo lugar, el marco

de trabajo proporciona un

medio de evaluar

cuantitativamente lo bien

que va progresando el

desarrollo en relación con

los objetivos de calidad

establecidos.

Factores de calidad del software

MARCO DE TRABAJO

Page 30: TDA 01 Software-Antecedentes

En tercer lugar, el marco de trabajo proporciona

más interacción del personal de calidad en el

esfuerzo de desarrollo.

Factores de calidad del software

MARCO DE TRABAJO

Page 31: TDA 01 Software-Antecedentes

Por último, el personal de garantía de calidad

puede utilizar indicaciones de calidad pobre

para ayudar a identificar estándares

[mejores] a contrastar en el futuro.

Factores para la calidad del

software:

Page 32: TDA 01 Software-Antecedentes

Aunque hay muchas medidas

de la calidad de software, la

corrección, facilidad de

mantenimiento integral y

facilidad de uso proporcionan

indicadores útiles para el

equipo del proyecto.

Gilb sugiere definiciones y

medidas para cada uno de

ellos.

Factores para la calidad del software

Medida de la calidad:

Page 33: TDA 01 Software-Antecedentes

Corrección:

Un programa debe operar

correctamente o

proporcionará poco valor a

sus usuarios.

La corrección es el grado en

el que el software lleva a

cabo su función requerida.

Factores para la calidad del

software:

Page 34: TDA 01 Software-Antecedentes

Facilidad de mantenimiento:

El mantenimiento del software cuenta con más

esfuerzo que cualquier otra actividad de ingeniería

del software.

La facilidad de mantenimiento es la facilidad con la

que se puede corregir un programa si se encuentra

un error, se puede adaptar si su entorno cambia, o

mejorar si el cliente desea un cambio de requisitos.

Factores para la calidad del

software:

Page 35: TDA 01 Software-Antecedentes

No hay forma de medir

directamente la facilidad

de mantenimiento; por

consiguiente, se deben

utilizar medidas indirectas.

Factores para la calidad del

software:

Page 36: TDA 01 Software-Antecedentes

Integridad:

En esta época de intrusos informáticos y de virus,

la integridad del software ha llegado a tener mucha

importancia.

Este atributo mide la habilidad de un sistema para

resistir ataques (tanto accidentales como

intencionados) contra su seguridad.

El ataque se puede realizar en cualquiera de los

tres componentes del software: programas, datos y

documentos.

Factores para la calidad del software:

Page 37: TDA 01 Software-Antecedentes

Para medir la integridad, se tienen que definir dos

atributos adicionales: amenaza y seguridad.

Amenaza es la probabilidad (que se puede estimar

o deducir de la evidencia empírica) de que un

ataque de un tipo determinado ocurra en un tiempo

determinado.

La seguridad es la probabilidad (que se puede

estimar o deducir de la evidencia empírica) de que

se pueda repeler el ataque de un tipo determinado.

Factores para la calidad del software:

Page 38: TDA 01 Software-Antecedentes

Facilidad de uso:

El calificativo «amigable con el usuario» se ha

convertido en omnipresente en las discusiones

sobre productos de software.

Si un programa no es «amigable con el usuario»,

frecuentemente está abocado al fracaso, incluso

aunque las funciones que realice sean valiosas.

La facilidad de uso es un intento de cuantificar «lo

amigable que puede ser con el usuario»

Factores para la calidad del software:

Page 39: TDA 01 Software-Antecedentes

4

DOCUMENTACIÓN DEL

SOFTWARE

Page 40: TDA 01 Software-Antecedentes

Documentación de

software

• Recomendaciones para documentar

• Ejemplos de documentación

• Recomendaciones para documentación de

capacitación

Page 41: TDA 01 Software-Antecedentes

En cuanto al Contenido

• Desde los procesos

– Definir los procesos, las actividades y las tareas.

– Elaborar diagramas

• Explicación del funcionamiento del software

Page 42: TDA 01 Software-Antecedentes

Recomendaciones

respecto al Idioma

• Escribir en tercera persona

• Siempre debe estar identificado quién realiza

la acción, por ejemplo: el sistema, la opción,

el módulo, la pantalla, la ventana, el botón….

• No utilizar gerundios

• Verbos en presente

• No utilizar muletillas (de que, cual, etc.)

Page 43: TDA 01 Software-Antecedentes

Capacitación

• Idioma sencillo

• Material complementario eficiente

• Definir claramente el objetivo de la

capacitación e identificar los logros a obtener

• Ejercicios o parte práctica

Page 44: TDA 01 Software-Antecedentes

Herramientas de apoyo

• Las herramientas de apoyo documental le

permiten asegurar la integridad de la

información.

• Ayudas en línea, demos, manuales impresos,

guías rápidas, entre otras

Page 45: TDA 01 Software-Antecedentes

5

PROBLEMAS Y SOLUCIONES

EN LA ADMINISTRACIÓN DE

SOFTWARE

Page 46: TDA 01 Software-Antecedentes

Problemas y soluciones en la

administración de software

Thayer, Pyster y Wood sugirieron 20 áreas

potenciales, y pidieron a 294 individuos su

opinión respecto a la importancia de los

problemas, la naturaleza de éstos, ya fuera

técnica, gerencial o ambas, y sobre su

posible solución.

Page 47: TDA 01 Software-Antecedentes

Problemas y soluciones en la

administración de software

problemas importantes en la administración fueron:

• La planeación de proyectos de programación es

generalmente pobre.

• Los procedimientos y las técnicas para la selección

de los gerentes de proyecto son pobres.

• La contabilidad en proyectos de programación es

pobre, cuestionando sobre quién es el responsable

de las diversas funciones del proyecto.

Page 48: TDA 01 Software-Antecedentes

Problemas y soluciones en la

administración de software

• La capacidad para estimar correctamente los

recursos requeridos para completar un proyecto

de programación es pobre.

• Los criterios de éxito en el desarrollo de

proyectos son, con frecuencia, inapropiados;

esto repercute en productos de programación no

confiables, difíciles de usar y de mantener .

• No existen reglas de decisión para ayudar a la

selección de la adecuada organización

estructural.

Page 49: TDA 01 Software-Antecedentes

• No existen reglas de decisión para ayudar a la

selección de las técnicas gerenciales más

correctas para los proyectos de programación.

• No siempre existen procedimientos, métodos y

técnicas para el diseño de un sistema de control

del proyecto que permita a los gerentes controlar

con éxito sus proyectos.

Problemas y soluciones en la

administración de software

Page 50: TDA 01 Software-Antecedentes

• No siempre existen procedimientos, técnicas,

estrategias y ayuda que permitan vigilar el

avance real de un proyecto.

• No existen estándares y técnicas para medir la

calidad del desempeño y la cantidad de

producción esperada de los programadores y

analistas de procesamiento de datos.

Problemas y soluciones en la

administración de software