SlideShare una empresa de Scribd logo
1 de 10
Descargar para leer sin conexión
Algorítmica y Programación Unidad 2. Estándares de Calidad en el Diseño
y Construcción de Programas
Ing. Sullin Santaella
PROGRAMA NACIONAL DE FORMACIÓN EN
INFORMATICA (PNFI)
ALGORITMICAY PROGRAMACION
Algorítmica y Programación Unidad 2. Estándares de Calidad en el Diseño
y Construcción de Programas
Ing. Sullin Santaella
2
UNIDAD CURRICULAR: ALGORITMICA Y PROGRAMACION
Introducción a los estándares de Calidad
Puntos a tratar
• Introducción.
• Introducción a los estándares de calidad
• Calidad en la ingeniería del software.
• Aspectos básicos de calidad de software.
• Importancia del Análisis y Diseño
1. Introducción.
Todos los tipos de software a ser desarrollados requieren un control de calidad.
Actualmente, hay muchos programadores pero no todos desarrollan sus programas con calidad, a
este tipo de productos se les llama software basura, algunos ni cuentan con un respaldo del
programador, o simplemente no tiene un soporte de calidad que se adapte al usuario. Por eso se
presentan dos de los más valiosos controles de calidad, como son la eficiencia y la eficacia.
La ingeniería del software pretende utilizar los recursos computacionales de tal manera que
se produzcan soluciones eficientes y eficaces a los problemas informáticos, el éxito de un
proyecto.
En el caso de Construcción de un programa o el desarrollo de software es un proceso por el
cual, dado un problema, se encuentra un programa (o un conjunto de programas) que lo resuelva
eficientemente.
2. Introducción a los estándares de calidad
En algunos momento se definió a la Calidad como lo que se hace bien y a la primera,
concepto erróneo ya que, no se puede determinar la calidad de un servicio, producto o proceso
tomando en cuenta solo el aspecto de desarrollo, olvidando por completo al proceso de
depuración que, inherentemente, involucra una serie de corrección de errores, por lo que, la
definición de calidad está más allá de la observación de una parte de dicho proceso. La mayoría
Algorítmica y Programación Unidad 2. Estándares de Calidad en el Diseño
y Construcción de Programas
Ing. Sullin Santaella
3
de los clientes busca calidad al mejor precio, sin embargo, lo que puede ser “excelente” para
algunos, no lo es para otros. Cuando un individuo adquiere un producto o servicio, lo hace para
satisfacer una necesidad, pero siempre espera que la “nueva adquisición” funcione como lo
esperado, o al menos como se lo prometieron en el anuncio publicitario. Muchas veces la calidad
se paga, justificando de esta forma el dicho de que “lo barato sale caro”.
El significado de calidad puede adquirir múltiples interpretaciones, ya que todo dependerá
del nivel de satisfacción o conformidad del cliente. Sin embargo, la calidad es el resultado de un
esfuerzo arduo, se trabaja de forma eficaz para poder satisfacer el deseo del consumidor.
Dependiendo de la forma en que un producto o servicio sea aceptado o rechazado por los
clientes, podremos decir si éste es bueno o malo.
Muchas veces, el nivel de calidad se mide de acuerdo a la reacción y preferencias del
cliente. Desde el mismo momento en que éste llega al establecimiento comercial, sabe
exactamente qué va a comprar y dónde ubicarlo, va directo al lugar donde se encuentra el
producto de su preferencia. En ocasiones, no encontrará lo que está buscando y por tanto se
decidirá por otro producto de mayor o menor precio, sin embargo, cuando su nivel de preferencia
se afinca en una determinada marca, el cliente prefiere seguir buscando en otros establecimientos
en vez de resolverse con un producto sustitutivo.
Sin importar cualquiera que sea el tipo, todo el software a ser desarrollado requiere que los
analistas, diseñadores y desarrolladores apliquen características y elementos de calidad para que
se logren productos a las necesidades del usuario.
3. Calidad en la ingeniería del software.
En una versión sucinta la calidad en la ingeniería del software es un grupo de
características que representa la efectividad y la eficiencia de un sistema de información. Es
importante enfatizar en dos puntos:
• Un software de calidad debe ser eficaz, es decir, que debe realizar las funciones
establecidas, debe ser amigable. Un usuario debe utilizar el software porque produce resultados
confiables, realiza todas las operaciones que se requieren, ejecuta las operaciones en un tiempo
aceptado y es fácilmente usado por el grupo de usuarios a quien esté dirigido.
Algorítmica y Programación Unidad 2. Estándares de Calidad en el Diseño
y Construcción de Programas
Ing. Sullin Santaella
4
• Un software de calidad debe ser eficiente, es decir el costo de su desarrollo tomando todos
los recursos y el costo de su operación debe ser tal que las organizaciones involucradas en su
desarrollo y uso obtengan el máximo beneficio o por lo menos un beneficio aceptable en un
período de tiempo establecido.
Para ilustrar el concepto de calidad de manera más profunda, es necesario considerar
algunos aspectos fundamentales que caracterizan al software de calidad como son: solidez,
exactitud, completitud, mantenibilidad, reutilizabilidad, claridad en la documentación, entre otros
que serán descritos a continuación.
4. Aspectos básicos de calidad de software.
La descripción que se hace de los factores que influyen en un software de calidad se basa
principalmente en las ideas presentadas por Robert Dunn, Philip Crosby y Roger S. Pressman.
Sin embargo, también se han tomado algunos aportes de Bertrand Meyer y Mauricio Fernando
Alba. Robert Dunn presenta la calidad en el software tomando dos puntos de vista: la calidad en
el proceso de desarrollo y la calidad en el producto final, estos dos grupos principales los agrupa
en los siguiente aspectos de calidad: confiabilidad, utilizabilidad, mantenibilidad, y
adaptabilidad.
Confiabilidad. Este término es necesario sea separado en varios elementos que permiten darle al
software el matiz de fiable. Sus componentes son:
• Completitud
• Consistencia y precisión
• Solidez
• Simplicidad
• Calidad en los procesos de desarrollo
• Seguridad y Verificabilidad.
Usabilidad. Si bien es cierto, de nada sirve un software que funcione correcta y confiablemente
si el usuario prefiere no utilizarlo.
• Exactitud de los procesos
Algorítmica y Programación Unidad 2. Estándares de Calidad en el Diseño
y Construcción de Programas
Ing. Sullin Santaella
5
• Claridad y exactitud de la documentación
• Completitud
• Eficiencia y verificabilidad del software
• Claridad y amigabilidad de la interfaz.
Mantenibilidad. Este aspecto de calidad involucra los elementos que simplifican la labor de
prevención, corrección o ampliación del código del programa. Retomar un código escrito meses
antes es un trabajo dispendioso y agobiante, en especial cuando las aplicaciones no cuentan con
la característica a la cual aquí se hace referencia. Se pueden considerar como atributos de este
aspecto:
• Exactitud y claridad en la documentación
• Modularidad acoplamiento
• Facilidad de lectura
• Simplicidad.
Portabilidad. Es la capacidad que posee un sistema de información que le permite funcionar en
diferentes plataformas ya sean hardware o de software.
Roger Pressman describe similares factores de calidad agrupados en tres grupos: calidad en
operación, calidad en revisión y calidad en transición, mencionando los factores de calidad de
McCall.
Factor 1. Características operativas, relacionadas con las operaciones del producto.
 Corrección
 Fiabilidad
 Eficiencia
 Integridad
 Facilidad de uso
Factor 2. Capacidad de soportar cambios, relacionado con la revisión del producto.
 Facilidad de mantenimiento
 Flexibilidad
 Facilidad de prueba
Algorítmica y Programación Unidad 2. Estándares de Calidad en el Diseño
y Construcción de Programas
Ing. Sullin Santaella
6
Factor 3. Adaptabilidad, relacionado con la transición del producto.
 Portabilidad
 Reusabilidad - Reutilizabilidad
 Interoperabilidad
5. Importancia del Análisis y Diseño
El análisis y diseño, como elementos esenciales del proceso de desarrollo, obligan a tener
especial atención y por tal motivo se han ido creando metodologías que sirven de base para
tomar las decisiones que afectarán el producto final. Con el advenimiento de la disciplina de la
ingeniería del software se inicia el proceso de desarrollo de metodologías las primeras de ellas
fueron las estructuradas, y en forma posterior aparecen las metodologías orientadas a objetos,
siendo estas últimas las más difundidas actualmente en el medio.
CON ANÁLISIS Y DISEÑO SIN ANÁLISIS Y DISEÑO
ANÁLISIS Y DISEÑO
IMPLEMENTACIÓN
PRUEBA
MANTENIMIENTO
PRUEBA
MANTENIMIENTO
IMPLEMENTACION
Algorítmica y Programación Unidad 2. Estándares de Calidad en el Diseño
y Construcción de Programas
Ing. Sullin Santaella
7
UNIDAD CURRICULAR: ALGORITMICA Y PROGRAMACION
Formas y Técnicas de documentar algoritmos
Puntos a tratar
• Estandarización de los Programas
• Indentación
• Estructura General del Programa
• Documentación del Programa
1. Estandarización de los Programas
A diferencia de la sintaxis del lenguaje de programación, que son reglas fijas que
obligatoriamente hay que seguir, un estilo de programación está constituido por directrices que
ayudan a obtener programas más legibles. Es por esto que, si bien no existen estilos de
programación absolutamente correctos o incorrectos, es aconsejable la adopción, de una manera
sistemática, de un conjunto de normas para la escritura de programas. Por ello, se proponen aquí
algunas normas relativas a la denominación de los elementos de los programas y de la
estructuración de los mismos.
2. Indentación
Indentación es un anglicismo, (de la palabra inglesa indentation), de uso común en
informática y significa mover un bloque de texto hacia la derecha insertando espacios o
tabuladores para separarlo del texto adyacente, lo que en el ámbito de la imprenta se ha
denominado siempre como sangrado o sangría.
Se debe utilizar un único modelo de indentación a lo largo de todo el programa. Los bloque
de código (por ejemplo, dentro de un bucle o el cuerpo de una función) deberán ir indentados. Si
un bloque de código está anidado dentro de otro bloque de código, el bloque más interno deberá
ir indentado respecto al externo.
Algorítmica y Programación Unidad 2. Estándares de Calidad en el Diseño
y Construcción de Programas
Ing. Sullin Santaella
8
En la siguiente imagen podemos observar un ejemplo de Indentación.
Para entenderlo, mejor hagamos un ejemplo de cómo identificar un bloque
de código indentado y uno no indentado:
El siguiente código escrito en lenguaje C muestra en pantalla las tablas de multiplicar.
Sin indentación Con indentación
Algorítmica y Programación Unidad 2. Estándares de Calidad en el Diseño
y Construcción de Programas
Ing. Sullin Santaella
9
3. Estructura General del Programa
Cada una de las partes del programa comenzará en la primera columna, indentando, se
separará cada una de las partes o bloques del programa con una línea en blanco. Así mismo, se
recomienda dejar un espacio en blanco antes de cada punto y coma (;) utilizado para finalizar las
sentencias de un programa.
Por otra parte, las formas y técnicas de documentar un algoritmo y un programa, son
comentarios, etiquetas de texto, que facilitan la comprensión del programa
4. Documentación del Programa
Consiste en describir por escrito a nivel técnico los procedimientos relacionados con el
programa y su modo de uso. También se debe documentar el programa para que sea más
entendible. Es fundamental para diseñadores y usuarios.
En pseudocódigo solo se documentarán los algoritmos internamente, esto es, se efectuarán
comentarios de ciertas acciones o grupos de acciones para permitir al diseñador o al equipo del
diseño releer el algoritmo con facilidad. Para documentar internamente un algoritmo en
pseudocódigo se empleará la doble barra (//) y a continuación el texto o la frase explicativa. Al
ejecutar el algoritmo, esté texto a la derecha de la // debe ser ignorado, pues no constituye a una
acción algorítmica.
Documentar el código de un programa es añadir suficiente información como para explicar
lo que hace, punto por punto, de forma que no sólo los ordenadores sepan qué hacer, sino que
además los humanos entiendan qué están haciendo y por qué.
Documentación interna
Esta documentación cubre los aspectos del programa relativos a la sintaxis de lenguaje.
Esta documentación está contenida en los comentarios entre llaves, paréntesis o asteriscos.
Algunos temas a considerar son:
 Cabecera de programa (breve descripción del programa)
Algorítmica y Programación Unidad 2. Estándares de Calidad en el Diseño
y Construcción de Programas
Ing. Sullin Santaella
10
 Nombres significativos para describir identificadores.
 Comentarios relativos a la función del programa.
 Claridad de estilo y formato, líneas en blanco para separar módulos.
 Comentarios significativos.
Documentación externa
Documentación ajena al programa fuente, que se suele incluir en un manual que acompaña
al programa. Esta documentación debe incluir:
 Listado actual del programa fuente.
 Especificación del programa.
 Diagrama de estructura que representa la organización jerárquica de los módulos que
comprenden el programa.
 Explicaciones de fórmulas complejas.
 Especificación de los datos a procesar.
 Formatos de pantallas utilizados para interactuar con los usuarios.
 Cualquier indicación especial que pueda servir a los programadores que deben mantener
el programa.
¿PARA QUIÉNES ES LA DOCUMENTACIÓN?
Usuarios (Digitadores)
Operadores
Programadores
Analistas de sistemas

Más contenido relacionado

La actualidad más candente

Lenguaje de programacion presentacion.
Lenguaje de programacion presentacion.Lenguaje de programacion presentacion.
Lenguaje de programacion presentacion.Fj Lezama
 
Tabla comparativa de paradigmas de programacion
Tabla comparativa de paradigmas de programacionTabla comparativa de paradigmas de programacion
Tabla comparativa de paradigmas de programacionMarioS1093
 
POLÍTICA PÚBLICA PARA LA ADQUISICIÓN Y USO DEL HARDWARE EN LA ADMINISTRACIÓN ...
POLÍTICA PÚBLICA PARA LA ADQUISICIÓN Y USO DEL HARDWARE EN LA ADMINISTRACIÓN ...POLÍTICA PÚBLICA PARA LA ADQUISICIÓN Y USO DEL HARDWARE EN LA ADMINISTRACIÓN ...
POLÍTICA PÚBLICA PARA LA ADQUISICIÓN Y USO DEL HARDWARE EN LA ADMINISTRACIÓN ...Yesy Diaz
 
FUNDAMENTOS DEL HARDWARE LIBRE
FUNDAMENTOS DEL HARDWARE LIBREFUNDAMENTOS DEL HARDWARE LIBRE
FUNDAMENTOS DEL HARDWARE LIBRE619jesus
 
Linux en la administracion publica
Linux en la administracion publicaLinux en la administracion publica
Linux en la administracion publicagenesis uzcategui
 
Ingenieria de Requerimientos
Ingenieria de RequerimientosIngenieria de Requerimientos
Ingenieria de Requerimientoskaresha3
 
Metodología para el Análisis y Planteamiento del Problema
Metodología para el Análisis y Planteamiento del ProblemaMetodología para el Análisis y Planteamiento del Problema
Metodología para el Análisis y Planteamiento del ProblemaJosé Ricardo Tillero Giménez
 
IIS Unidad1: Introducción a la Ingeniería de Software
IIS Unidad1: Introducción a la Ingeniería de SoftwareIIS Unidad1: Introducción a la Ingeniería de Software
IIS Unidad1: Introducción a la Ingeniería de SoftwareFranklin Parrales Bravo
 
Análisis SOBRE LA EXPERIENCIA DE ENSAMBLAJE DE HARDWARE EN VENEZUELA
Análisis SOBRE LA EXPERIENCIA DE ENSAMBLAJE DE HARDWARE EN VENEZUELAAnálisis SOBRE LA EXPERIENCIA DE ENSAMBLAJE DE HARDWARE EN VENEZUELA
Análisis SOBRE LA EXPERIENCIA DE ENSAMBLAJE DE HARDWARE EN VENEZUELAvictortyy
 
Cuadro comparativo modelos para el desarrollo de software
Cuadro comparativo modelos para el desarrollo de softwareCuadro comparativo modelos para el desarrollo de software
Cuadro comparativo modelos para el desarrollo de softwarepaoaboytes
 
UNIDAD II VINCULACIONES DE LOS PLANES DE GOBIERNO CON EL P.N.F INFORMATICA
UNIDAD II VINCULACIONES DE LOS PLANES DE GOBIERNO CON EL P.N.F INFORMATICAUNIDAD II VINCULACIONES DE LOS PLANES DE GOBIERNO CON EL P.N.F INFORMATICA
UNIDAD II VINCULACIONES DE LOS PLANES DE GOBIERNO CON EL P.N.F INFORMATICAdanieltizamo
 
Proyecto Sociotecnológico 1
Proyecto Sociotecnológico 1Proyecto Sociotecnológico 1
Proyecto Sociotecnológico 1Maviola Pulido
 
Planeacion y elaboración de proyectos de software
Planeacion y elaboración de proyectos de softwarePlaneacion y elaboración de proyectos de software
Planeacion y elaboración de proyectos de softwareTtomas Carvajal
 
Calidad Del Producto Software
Calidad Del Producto SoftwareCalidad Del Producto Software
Calidad Del Producto Softwarealbert317
 
Metodología basada en componentes
Metodología basada en componentes Metodología basada en componentes
Metodología basada en componentes Anibal Ulibarri
 
Independencia Tecnológica, Seguridad Informática y el Uso del Software Libre
Independencia Tecnológica, Seguridad Informática y el Uso del Software LibreIndependencia Tecnológica, Seguridad Informática y el Uso del Software Libre
Independencia Tecnológica, Seguridad Informática y el Uso del Software Libresarahsgtz
 
Software Libre en la Administración Pública (grupo Maviola)
Software Libre en la Administración Pública (grupo Maviola)Software Libre en la Administración Pública (grupo Maviola)
Software Libre en la Administración Pública (grupo Maviola)Maviola Pulido
 
Introduccion A La Programacion
Introduccion A La ProgramacionIntroduccion A La Programacion
Introduccion A La ProgramacionMary Sanchez
 
Sociedad e Impacto Ambiental del Hardware Libre,
Sociedad e Impacto Ambiental del Hardware Libre, Sociedad e Impacto Ambiental del Hardware Libre,
Sociedad e Impacto Ambiental del Hardware Libre, elblac23
 

La actualidad más candente (20)

Lenguaje de programacion presentacion.
Lenguaje de programacion presentacion.Lenguaje de programacion presentacion.
Lenguaje de programacion presentacion.
 
Exposición de Lenguajes de Programación
Exposición de Lenguajes de ProgramaciónExposición de Lenguajes de Programación
Exposición de Lenguajes de Programación
 
Tabla comparativa de paradigmas de programacion
Tabla comparativa de paradigmas de programacionTabla comparativa de paradigmas de programacion
Tabla comparativa de paradigmas de programacion
 
POLÍTICA PÚBLICA PARA LA ADQUISICIÓN Y USO DEL HARDWARE EN LA ADMINISTRACIÓN ...
POLÍTICA PÚBLICA PARA LA ADQUISICIÓN Y USO DEL HARDWARE EN LA ADMINISTRACIÓN ...POLÍTICA PÚBLICA PARA LA ADQUISICIÓN Y USO DEL HARDWARE EN LA ADMINISTRACIÓN ...
POLÍTICA PÚBLICA PARA LA ADQUISICIÓN Y USO DEL HARDWARE EN LA ADMINISTRACIÓN ...
 
FUNDAMENTOS DEL HARDWARE LIBRE
FUNDAMENTOS DEL HARDWARE LIBREFUNDAMENTOS DEL HARDWARE LIBRE
FUNDAMENTOS DEL HARDWARE LIBRE
 
Linux en la administracion publica
Linux en la administracion publicaLinux en la administracion publica
Linux en la administracion publica
 
Ingenieria de Requerimientos
Ingenieria de RequerimientosIngenieria de Requerimientos
Ingenieria de Requerimientos
 
Metodología para el Análisis y Planteamiento del Problema
Metodología para el Análisis y Planteamiento del ProblemaMetodología para el Análisis y Planteamiento del Problema
Metodología para el Análisis y Planteamiento del Problema
 
IIS Unidad1: Introducción a la Ingeniería de Software
IIS Unidad1: Introducción a la Ingeniería de SoftwareIIS Unidad1: Introducción a la Ingeniería de Software
IIS Unidad1: Introducción a la Ingeniería de Software
 
Análisis SOBRE LA EXPERIENCIA DE ENSAMBLAJE DE HARDWARE EN VENEZUELA
Análisis SOBRE LA EXPERIENCIA DE ENSAMBLAJE DE HARDWARE EN VENEZUELAAnálisis SOBRE LA EXPERIENCIA DE ENSAMBLAJE DE HARDWARE EN VENEZUELA
Análisis SOBRE LA EXPERIENCIA DE ENSAMBLAJE DE HARDWARE EN VENEZUELA
 
Cuadro comparativo modelos para el desarrollo de software
Cuadro comparativo modelos para el desarrollo de softwareCuadro comparativo modelos para el desarrollo de software
Cuadro comparativo modelos para el desarrollo de software
 
UNIDAD II VINCULACIONES DE LOS PLANES DE GOBIERNO CON EL P.N.F INFORMATICA
UNIDAD II VINCULACIONES DE LOS PLANES DE GOBIERNO CON EL P.N.F INFORMATICAUNIDAD II VINCULACIONES DE LOS PLANES DE GOBIERNO CON EL P.N.F INFORMATICA
UNIDAD II VINCULACIONES DE LOS PLANES DE GOBIERNO CON EL P.N.F INFORMATICA
 
Proyecto Sociotecnológico 1
Proyecto Sociotecnológico 1Proyecto Sociotecnológico 1
Proyecto Sociotecnológico 1
 
Planeacion y elaboración de proyectos de software
Planeacion y elaboración de proyectos de softwarePlaneacion y elaboración de proyectos de software
Planeacion y elaboración de proyectos de software
 
Calidad Del Producto Software
Calidad Del Producto SoftwareCalidad Del Producto Software
Calidad Del Producto Software
 
Metodología basada en componentes
Metodología basada en componentes Metodología basada en componentes
Metodología basada en componentes
 
Independencia Tecnológica, Seguridad Informática y el Uso del Software Libre
Independencia Tecnológica, Seguridad Informática y el Uso del Software LibreIndependencia Tecnológica, Seguridad Informática y el Uso del Software Libre
Independencia Tecnológica, Seguridad Informática y el Uso del Software Libre
 
Software Libre en la Administración Pública (grupo Maviola)
Software Libre en la Administración Pública (grupo Maviola)Software Libre en la Administración Pública (grupo Maviola)
Software Libre en la Administración Pública (grupo Maviola)
 
Introduccion A La Programacion
Introduccion A La ProgramacionIntroduccion A La Programacion
Introduccion A La Programacion
 
Sociedad e Impacto Ambiental del Hardware Libre,
Sociedad e Impacto Ambiental del Hardware Libre, Sociedad e Impacto Ambiental del Hardware Libre,
Sociedad e Impacto Ambiental del Hardware Libre,
 

Similar a Calidad en el Diseño y Desarrollo de Software

Similar a Calidad en el Diseño y Desarrollo de Software (20)

Como se mide la Calidad de software
Como se mide la Calidad de softwareComo se mide la Calidad de software
Como se mide la Calidad de software
 
Calidad
CalidadCalidad
Calidad
 
Calidad de software
Calidad de softwareCalidad de software
Calidad de software
 
La calidad del producto y la calidad del proceso
La calidad del producto y la calidad del procesoLa calidad del producto y la calidad del proceso
La calidad del producto y la calidad del proceso
 
Unidad1_EMDS.pptx
Unidad1_EMDS.pptxUnidad1_EMDS.pptx
Unidad1_EMDS.pptx
 
14.administración de la calidad
14.administración de la calidad14.administración de la calidad
14.administración de la calidad
 
Calidad del software
Calidad del softwareCalidad del software
Calidad del software
 
calidad en desarrollo de software y sus atributos
calidad en desarrollo de software y sus atributoscalidad en desarrollo de software y sus atributos
calidad en desarrollo de software y sus atributos
 
Presentación ETICOM Universidad Sevilla Marzo 2011
Presentación ETICOM Universidad Sevilla Marzo 2011Presentación ETICOM Universidad Sevilla Marzo 2011
Presentación ETICOM Universidad Sevilla Marzo 2011
 
CALIDAD DE SOFTWARE
CALIDAD DE SOFTWARECALIDAD DE SOFTWARE
CALIDAD DE SOFTWARE
 
Calidad del software
Calidad del softwareCalidad del software
Calidad del software
 
conceptos de calidad
conceptos de calidadconceptos de calidad
conceptos de calidad
 
Conceptos de calidad
Conceptos de calidadConceptos de calidad
Conceptos de calidad
 
Calidaddelsoftware
CalidaddelsoftwareCalidaddelsoftware
Calidaddelsoftware
 
Calidad de software
Calidad de softwareCalidad de software
Calidad de software
 
Unidad # 10 calidad del software
Unidad # 10 calidad del softwareUnidad # 10 calidad del software
Unidad # 10 calidad del software
 
Calidad del software
Calidad del softwareCalidad del software
Calidad del software
 
Unidad # 10 calidad del software
Unidad # 10 calidad del softwareUnidad # 10 calidad del software
Unidad # 10 calidad del software
 
Temas Unidad 2
Temas Unidad 2Temas Unidad 2
Temas Unidad 2
 
Proceso y diseño de un software
Proceso y diseño  de un   softwareProceso y diseño  de un   software
Proceso y diseño de un software
 

Más de Leany González

Plan evaluacionvirtual fase ii-2021- leany gonzález
Plan evaluacionvirtual fase ii-2021- leany gonzálezPlan evaluacionvirtual fase ii-2021- leany gonzález
Plan evaluacionvirtual fase ii-2021- leany gonzálezLeany González
 
Unidad 5 Lenguaje de Programacion C y C++
Unidad 5 Lenguaje de Programacion C y C++Unidad 5 Lenguaje de Programacion C y C++
Unidad 5 Lenguaje de Programacion C y C++Leany González
 
Guía didáctica estructura secuenciales
Guía didáctica estructura secuencialesGuía didáctica estructura secuenciales
Guía didáctica estructura secuencialesLeany González
 
Guia didáctica unidad 4 metodología para el análisis y planteamiento del prob...
Guia didáctica unidad 4 metodología para el análisis y planteamiento del prob...Guia didáctica unidad 4 metodología para el análisis y planteamiento del prob...
Guia didáctica unidad 4 metodología para el análisis y planteamiento del prob...Leany González
 
Pnfi programa analitico algoritmica y programacion
Pnfi   programa analitico algoritmica y programacionPnfi   programa analitico algoritmica y programacion
Pnfi programa analitico algoritmica y programacionLeany González
 
Plan evaluacion algoritmica y programacion lapso i 2021
Plan evaluacion algoritmica y programacion  lapso i 2021Plan evaluacion algoritmica y programacion  lapso i 2021
Plan evaluacion algoritmica y programacion lapso i 2021Leany González
 
Material de apoyo unidad 3. datos y entidades primitivas
Material de apoyo unidad 3.  datos y entidades primitivasMaterial de apoyo unidad 3.  datos y entidades primitivas
Material de apoyo unidad 3. datos y entidades primitivasLeany González
 
Material de apoyo de unidad 1. algoritmos y programas
Material de apoyo de unidad 1. algoritmos y programasMaterial de apoyo de unidad 1. algoritmos y programas
Material de apoyo de unidad 1. algoritmos y programasLeany González
 
Plan evaluacion idiomas i lapso i 2021
Plan evaluacion idiomas i lapso i 2021Plan evaluacion idiomas i lapso i 2021
Plan evaluacion idiomas i lapso i 2021Leany González
 
Lineamientos internos ultima revision
Lineamientos internos ultima revisionLineamientos internos ultima revision
Lineamientos internos ultima revisionLeany González
 

Más de Leany González (11)

Plan evaluacionvirtual fase ii-2021- leany gonzález
Plan evaluacionvirtual fase ii-2021- leany gonzálezPlan evaluacionvirtual fase ii-2021- leany gonzález
Plan evaluacionvirtual fase ii-2021- leany gonzález
 
De algoritmo a_c++
De algoritmo a_c++De algoritmo a_c++
De algoritmo a_c++
 
Unidad 5 Lenguaje de Programacion C y C++
Unidad 5 Lenguaje de Programacion C y C++Unidad 5 Lenguaje de Programacion C y C++
Unidad 5 Lenguaje de Programacion C y C++
 
Guía didáctica estructura secuenciales
Guía didáctica estructura secuencialesGuía didáctica estructura secuenciales
Guía didáctica estructura secuenciales
 
Guia didáctica unidad 4 metodología para el análisis y planteamiento del prob...
Guia didáctica unidad 4 metodología para el análisis y planteamiento del prob...Guia didáctica unidad 4 metodología para el análisis y planteamiento del prob...
Guia didáctica unidad 4 metodología para el análisis y planteamiento del prob...
 
Pnfi programa analitico algoritmica y programacion
Pnfi   programa analitico algoritmica y programacionPnfi   programa analitico algoritmica y programacion
Pnfi programa analitico algoritmica y programacion
 
Plan evaluacion algoritmica y programacion lapso i 2021
Plan evaluacion algoritmica y programacion  lapso i 2021Plan evaluacion algoritmica y programacion  lapso i 2021
Plan evaluacion algoritmica y programacion lapso i 2021
 
Material de apoyo unidad 3. datos y entidades primitivas
Material de apoyo unidad 3.  datos y entidades primitivasMaterial de apoyo unidad 3.  datos y entidades primitivas
Material de apoyo unidad 3. datos y entidades primitivas
 
Material de apoyo de unidad 1. algoritmos y programas
Material de apoyo de unidad 1. algoritmos y programasMaterial de apoyo de unidad 1. algoritmos y programas
Material de apoyo de unidad 1. algoritmos y programas
 
Plan evaluacion idiomas i lapso i 2021
Plan evaluacion idiomas i lapso i 2021Plan evaluacion idiomas i lapso i 2021
Plan evaluacion idiomas i lapso i 2021
 
Lineamientos internos ultima revision
Lineamientos internos ultima revisionLineamientos internos ultima revision
Lineamientos internos ultima revision
 

Último

Identificación de componentes Hardware del PC
Identificación de componentes Hardware del PCIdentificación de componentes Hardware del PC
Identificación de componentes Hardware del PCCesarFernandez937857
 
La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.amayarogel
 
MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMarjorie Burga
 
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdfDemetrio Ccesa Rayme
 
celula, tipos, teoria celular, energia y dinamica
celula, tipos, teoria celular, energia y dinamicacelula, tipos, teoria celular, energia y dinamica
celula, tipos, teoria celular, energia y dinamicaFlor Idalia Espinoza Ortega
 
Dinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes dDinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes dstEphaniiie
 
2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdfBaker Publishing Company
 
30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdf30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdfgimenanahuel
 
Estrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcciónEstrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcciónLourdes Feria
 
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxSINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxlclcarmen
 
programa dia de las madres 10 de mayo para evento
programa dia de las madres 10 de mayo  para eventoprograma dia de las madres 10 de mayo  para evento
programa dia de las madres 10 de mayo para eventoDiegoMtsS
 
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...JAVIER SOLIS NOYOLA
 
texto argumentativo, ejemplos y ejercicios prácticos
texto argumentativo, ejemplos y ejercicios prácticostexto argumentativo, ejemplos y ejercicios prácticos
texto argumentativo, ejemplos y ejercicios prácticosisabeltrejoros
 
CALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADCALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADauxsoporte
 
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADODECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADOJosé Luis Palma
 
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptxTIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptxlclcarmen
 
Manual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdfManual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdfMaryRotonda1
 

Último (20)

Identificación de componentes Hardware del PC
Identificación de componentes Hardware del PCIdentificación de componentes Hardware del PC
Identificación de componentes Hardware del PC
 
La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.
 
MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grande
 
Sesión de clase: Defendamos la verdad.pdf
Sesión de clase: Defendamos la verdad.pdfSesión de clase: Defendamos la verdad.pdf
Sesión de clase: Defendamos la verdad.pdf
 
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdf
 
celula, tipos, teoria celular, energia y dinamica
celula, tipos, teoria celular, energia y dinamicacelula, tipos, teoria celular, energia y dinamica
celula, tipos, teoria celular, energia y dinamica
 
Dinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes dDinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes d
 
2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf
 
30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdf30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdf
 
Estrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcciónEstrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcción
 
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxSINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
 
programa dia de las madres 10 de mayo para evento
programa dia de las madres 10 de mayo  para eventoprograma dia de las madres 10 de mayo  para evento
programa dia de las madres 10 de mayo para evento
 
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
 
texto argumentativo, ejemplos y ejercicios prácticos
texto argumentativo, ejemplos y ejercicios prácticostexto argumentativo, ejemplos y ejercicios prácticos
texto argumentativo, ejemplos y ejercicios prácticos
 
CALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADCALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDAD
 
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADODECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
 
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptxTIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
 
Manual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdfManual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdf
 
Presentacion Metodología de Enseñanza Multigrado
Presentacion Metodología de Enseñanza MultigradoPresentacion Metodología de Enseñanza Multigrado
Presentacion Metodología de Enseñanza Multigrado
 
Medición del Movimiento Online 2024.pptx
Medición del Movimiento Online 2024.pptxMedición del Movimiento Online 2024.pptx
Medición del Movimiento Online 2024.pptx
 

Calidad en el Diseño y Desarrollo de Software

  • 1. Algorítmica y Programación Unidad 2. Estándares de Calidad en el Diseño y Construcción de Programas Ing. Sullin Santaella PROGRAMA NACIONAL DE FORMACIÓN EN INFORMATICA (PNFI) ALGORITMICAY PROGRAMACION
  • 2. Algorítmica y Programación Unidad 2. Estándares de Calidad en el Diseño y Construcción de Programas Ing. Sullin Santaella 2 UNIDAD CURRICULAR: ALGORITMICA Y PROGRAMACION Introducción a los estándares de Calidad Puntos a tratar • Introducción. • Introducción a los estándares de calidad • Calidad en la ingeniería del software. • Aspectos básicos de calidad de software. • Importancia del Análisis y Diseño 1. Introducción. Todos los tipos de software a ser desarrollados requieren un control de calidad. Actualmente, hay muchos programadores pero no todos desarrollan sus programas con calidad, a este tipo de productos se les llama software basura, algunos ni cuentan con un respaldo del programador, o simplemente no tiene un soporte de calidad que se adapte al usuario. Por eso se presentan dos de los más valiosos controles de calidad, como son la eficiencia y la eficacia. La ingeniería del software pretende utilizar los recursos computacionales de tal manera que se produzcan soluciones eficientes y eficaces a los problemas informáticos, el éxito de un proyecto. En el caso de Construcción de un programa o el desarrollo de software es un proceso por el cual, dado un problema, se encuentra un programa (o un conjunto de programas) que lo resuelva eficientemente. 2. Introducción a los estándares de calidad En algunos momento se definió a la Calidad como lo que se hace bien y a la primera, concepto erróneo ya que, no se puede determinar la calidad de un servicio, producto o proceso tomando en cuenta solo el aspecto de desarrollo, olvidando por completo al proceso de depuración que, inherentemente, involucra una serie de corrección de errores, por lo que, la definición de calidad está más allá de la observación de una parte de dicho proceso. La mayoría
  • 3. Algorítmica y Programación Unidad 2. Estándares de Calidad en el Diseño y Construcción de Programas Ing. Sullin Santaella 3 de los clientes busca calidad al mejor precio, sin embargo, lo que puede ser “excelente” para algunos, no lo es para otros. Cuando un individuo adquiere un producto o servicio, lo hace para satisfacer una necesidad, pero siempre espera que la “nueva adquisición” funcione como lo esperado, o al menos como se lo prometieron en el anuncio publicitario. Muchas veces la calidad se paga, justificando de esta forma el dicho de que “lo barato sale caro”. El significado de calidad puede adquirir múltiples interpretaciones, ya que todo dependerá del nivel de satisfacción o conformidad del cliente. Sin embargo, la calidad es el resultado de un esfuerzo arduo, se trabaja de forma eficaz para poder satisfacer el deseo del consumidor. Dependiendo de la forma en que un producto o servicio sea aceptado o rechazado por los clientes, podremos decir si éste es bueno o malo. Muchas veces, el nivel de calidad se mide de acuerdo a la reacción y preferencias del cliente. Desde el mismo momento en que éste llega al establecimiento comercial, sabe exactamente qué va a comprar y dónde ubicarlo, va directo al lugar donde se encuentra el producto de su preferencia. En ocasiones, no encontrará lo que está buscando y por tanto se decidirá por otro producto de mayor o menor precio, sin embargo, cuando su nivel de preferencia se afinca en una determinada marca, el cliente prefiere seguir buscando en otros establecimientos en vez de resolverse con un producto sustitutivo. Sin importar cualquiera que sea el tipo, todo el software a ser desarrollado requiere que los analistas, diseñadores y desarrolladores apliquen características y elementos de calidad para que se logren productos a las necesidades del usuario. 3. Calidad en la ingeniería del software. En una versión sucinta la calidad en la ingeniería del software es un grupo de características que representa la efectividad y la eficiencia de un sistema de información. Es importante enfatizar en dos puntos: • Un software de calidad debe ser eficaz, es decir, que debe realizar las funciones establecidas, debe ser amigable. Un usuario debe utilizar el software porque produce resultados confiables, realiza todas las operaciones que se requieren, ejecuta las operaciones en un tiempo aceptado y es fácilmente usado por el grupo de usuarios a quien esté dirigido.
  • 4. Algorítmica y Programación Unidad 2. Estándares de Calidad en el Diseño y Construcción de Programas Ing. Sullin Santaella 4 • Un software de calidad debe ser eficiente, es decir el costo de su desarrollo tomando todos los recursos y el costo de su operación debe ser tal que las organizaciones involucradas en su desarrollo y uso obtengan el máximo beneficio o por lo menos un beneficio aceptable en un período de tiempo establecido. Para ilustrar el concepto de calidad de manera más profunda, es necesario considerar algunos aspectos fundamentales que caracterizan al software de calidad como son: solidez, exactitud, completitud, mantenibilidad, reutilizabilidad, claridad en la documentación, entre otros que serán descritos a continuación. 4. Aspectos básicos de calidad de software. La descripción que se hace de los factores que influyen en un software de calidad se basa principalmente en las ideas presentadas por Robert Dunn, Philip Crosby y Roger S. Pressman. Sin embargo, también se han tomado algunos aportes de Bertrand Meyer y Mauricio Fernando Alba. Robert Dunn presenta la calidad en el software tomando dos puntos de vista: la calidad en el proceso de desarrollo y la calidad en el producto final, estos dos grupos principales los agrupa en los siguiente aspectos de calidad: confiabilidad, utilizabilidad, mantenibilidad, y adaptabilidad. Confiabilidad. Este término es necesario sea separado en varios elementos que permiten darle al software el matiz de fiable. Sus componentes son: • Completitud • Consistencia y precisión • Solidez • Simplicidad • Calidad en los procesos de desarrollo • Seguridad y Verificabilidad. Usabilidad. Si bien es cierto, de nada sirve un software que funcione correcta y confiablemente si el usuario prefiere no utilizarlo. • Exactitud de los procesos
  • 5. Algorítmica y Programación Unidad 2. Estándares de Calidad en el Diseño y Construcción de Programas Ing. Sullin Santaella 5 • Claridad y exactitud de la documentación • Completitud • Eficiencia y verificabilidad del software • Claridad y amigabilidad de la interfaz. Mantenibilidad. Este aspecto de calidad involucra los elementos que simplifican la labor de prevención, corrección o ampliación del código del programa. Retomar un código escrito meses antes es un trabajo dispendioso y agobiante, en especial cuando las aplicaciones no cuentan con la característica a la cual aquí se hace referencia. Se pueden considerar como atributos de este aspecto: • Exactitud y claridad en la documentación • Modularidad acoplamiento • Facilidad de lectura • Simplicidad. Portabilidad. Es la capacidad que posee un sistema de información que le permite funcionar en diferentes plataformas ya sean hardware o de software. Roger Pressman describe similares factores de calidad agrupados en tres grupos: calidad en operación, calidad en revisión y calidad en transición, mencionando los factores de calidad de McCall. Factor 1. Características operativas, relacionadas con las operaciones del producto.  Corrección  Fiabilidad  Eficiencia  Integridad  Facilidad de uso Factor 2. Capacidad de soportar cambios, relacionado con la revisión del producto.  Facilidad de mantenimiento  Flexibilidad  Facilidad de prueba
  • 6. Algorítmica y Programación Unidad 2. Estándares de Calidad en el Diseño y Construcción de Programas Ing. Sullin Santaella 6 Factor 3. Adaptabilidad, relacionado con la transición del producto.  Portabilidad  Reusabilidad - Reutilizabilidad  Interoperabilidad 5. Importancia del Análisis y Diseño El análisis y diseño, como elementos esenciales del proceso de desarrollo, obligan a tener especial atención y por tal motivo se han ido creando metodologías que sirven de base para tomar las decisiones que afectarán el producto final. Con el advenimiento de la disciplina de la ingeniería del software se inicia el proceso de desarrollo de metodologías las primeras de ellas fueron las estructuradas, y en forma posterior aparecen las metodologías orientadas a objetos, siendo estas últimas las más difundidas actualmente en el medio. CON ANÁLISIS Y DISEÑO SIN ANÁLISIS Y DISEÑO ANÁLISIS Y DISEÑO IMPLEMENTACIÓN PRUEBA MANTENIMIENTO PRUEBA MANTENIMIENTO IMPLEMENTACION
  • 7. Algorítmica y Programación Unidad 2. Estándares de Calidad en el Diseño y Construcción de Programas Ing. Sullin Santaella 7 UNIDAD CURRICULAR: ALGORITMICA Y PROGRAMACION Formas y Técnicas de documentar algoritmos Puntos a tratar • Estandarización de los Programas • Indentación • Estructura General del Programa • Documentación del Programa 1. Estandarización de los Programas A diferencia de la sintaxis del lenguaje de programación, que son reglas fijas que obligatoriamente hay que seguir, un estilo de programación está constituido por directrices que ayudan a obtener programas más legibles. Es por esto que, si bien no existen estilos de programación absolutamente correctos o incorrectos, es aconsejable la adopción, de una manera sistemática, de un conjunto de normas para la escritura de programas. Por ello, se proponen aquí algunas normas relativas a la denominación de los elementos de los programas y de la estructuración de los mismos. 2. Indentación Indentación es un anglicismo, (de la palabra inglesa indentation), de uso común en informática y significa mover un bloque de texto hacia la derecha insertando espacios o tabuladores para separarlo del texto adyacente, lo que en el ámbito de la imprenta se ha denominado siempre como sangrado o sangría. Se debe utilizar un único modelo de indentación a lo largo de todo el programa. Los bloque de código (por ejemplo, dentro de un bucle o el cuerpo de una función) deberán ir indentados. Si un bloque de código está anidado dentro de otro bloque de código, el bloque más interno deberá ir indentado respecto al externo.
  • 8. Algorítmica y Programación Unidad 2. Estándares de Calidad en el Diseño y Construcción de Programas Ing. Sullin Santaella 8 En la siguiente imagen podemos observar un ejemplo de Indentación. Para entenderlo, mejor hagamos un ejemplo de cómo identificar un bloque de código indentado y uno no indentado: El siguiente código escrito en lenguaje C muestra en pantalla las tablas de multiplicar. Sin indentación Con indentación
  • 9. Algorítmica y Programación Unidad 2. Estándares de Calidad en el Diseño y Construcción de Programas Ing. Sullin Santaella 9 3. Estructura General del Programa Cada una de las partes del programa comenzará en la primera columna, indentando, se separará cada una de las partes o bloques del programa con una línea en blanco. Así mismo, se recomienda dejar un espacio en blanco antes de cada punto y coma (;) utilizado para finalizar las sentencias de un programa. Por otra parte, las formas y técnicas de documentar un algoritmo y un programa, son comentarios, etiquetas de texto, que facilitan la comprensión del programa 4. Documentación del Programa Consiste en describir por escrito a nivel técnico los procedimientos relacionados con el programa y su modo de uso. También se debe documentar el programa para que sea más entendible. Es fundamental para diseñadores y usuarios. En pseudocódigo solo se documentarán los algoritmos internamente, esto es, se efectuarán comentarios de ciertas acciones o grupos de acciones para permitir al diseñador o al equipo del diseño releer el algoritmo con facilidad. Para documentar internamente un algoritmo en pseudocódigo se empleará la doble barra (//) y a continuación el texto o la frase explicativa. Al ejecutar el algoritmo, esté texto a la derecha de la // debe ser ignorado, pues no constituye a una acción algorítmica. Documentar el código de un programa es añadir suficiente información como para explicar lo que hace, punto por punto, de forma que no sólo los ordenadores sepan qué hacer, sino que además los humanos entiendan qué están haciendo y por qué. Documentación interna Esta documentación cubre los aspectos del programa relativos a la sintaxis de lenguaje. Esta documentación está contenida en los comentarios entre llaves, paréntesis o asteriscos. Algunos temas a considerar son:  Cabecera de programa (breve descripción del programa)
  • 10. Algorítmica y Programación Unidad 2. Estándares de Calidad en el Diseño y Construcción de Programas Ing. Sullin Santaella 10  Nombres significativos para describir identificadores.  Comentarios relativos a la función del programa.  Claridad de estilo y formato, líneas en blanco para separar módulos.  Comentarios significativos. Documentación externa Documentación ajena al programa fuente, que se suele incluir en un manual que acompaña al programa. Esta documentación debe incluir:  Listado actual del programa fuente.  Especificación del programa.  Diagrama de estructura que representa la organización jerárquica de los módulos que comprenden el programa.  Explicaciones de fórmulas complejas.  Especificación de los datos a procesar.  Formatos de pantallas utilizados para interactuar con los usuarios.  Cualquier indicación especial que pueda servir a los programadores que deben mantener el programa. ¿PARA QUIÉNES ES LA DOCUMENTACIÓN? Usuarios (Digitadores) Operadores Programadores Analistas de sistemas