lunes, 18 de julio de 2016

Estándares de calidad para el desarrollo de un Algoritmo, Programa o Sistema de Información



ESTÁNDARES DE CALIDAD: Los estándares no son más que los niveles mínimo y máximo deseados, o aceptables de calidad que debe tener el resultado de una acción, una actividad, un programa, o un servicio. En otras palabras, el estándar es la norma técnica que se utilizará como parámetro de evaluación de la calidad.

  Una vez programadas las actividades de solución al problema de gestión, los círculos de calidad deberán definir los estándares de calidad del resultado, o los resultados esperados. 

En el desarrollo de los estándares deben participar los miembros del equipo coordinador de la gestión de calidad, en la unidad de salud y representantes de los usuarios internos y externos del programa de atención integral en el cual se identificaron los problemas.

  Se debe cuidar que los estándares no sean influenciados por lo que actualmente hace el personal, quienes son los responsables de la gestión o ejecución de la actividad, componente o programa con un problema. Los estándares deben ser monitoreados y evaluados periódicamente, aplicando indicadores, para saber si se está asegurando la calidad.

  Ejemplo:
Resultado esperado: El personal de la unidad está capacitado para realizar consejería sobre cuándo es conveniente la administración de antibióticos en procesos de fiebre.

  Estándar: el 100% del personal que da consulta de atención o promoción en el servicio tiene la capacidad técnica y la actitud de respeto a los valores de la población para realizar consejería sobre cuándo es conveniente la administración de antibióticos en procesos de fiebre.

  En la atención primaria hay que considerar que la fijación de los niveles no tiene carácter universal, como puede ser para el tercer nivel, donde los hospitales participan en la acreditación de calidad por comisiones internacionalmente establecidas.

ALGORITMOS: Un Algoritmo, se puede definir como una secuencia de instrucciones que representan un modelo de solución para determinado tipo de problemas. O bien como un conjunto de instrucciones que realizadas en orden conducen a obtener la solución de un problema. Por lo tanto podemos decir que es un conjunto ordenado y finito de pasos que nos permite solucionar un problema.Los algoritmos son independientes de los lenguajes de programación. En cada problema el algoritmo puede escribirse y luego ejecutarse en un lenguaje de diferente programación. El algoritmo es la infraestructura de cualquier solución, escrita luego en cualquier lenguaje de programación. Es un conjunto de acciones o secuencia de operaciones que ejecutadas en un determinado orden resuelven el problema. 

PROGRAMA: Un programa es una serie de instrucciones ordenadas, codificadas en lenguaje de programación que expresa un algoritmo y que puede ser ejecutado en un computador.
CLASIFICACIÓN DE ALGORITMOS
Los algoritmos se pueden clasificar en cuatro tipos:
  • Algoritmo computacional: Es un algoritmo que puede ser ejecutado en una computadora. Ejemplo: Fórmula aplicada para un cálculo de la raíz cuadrada de un valor x.
  • Algoritmo no computacional: Es un algoritmo que no requiere de una computadora para ser ejecutado. Ejemplo: Instalación de un equipo de sonido.
  • Algoritmo cualitativo: Un algoritmo es cualitativo cuando en sus pasos o instrucciones no están involucrados cálculos numéricos. Ejemplos: Las instrucciones para desarrollar una actividad física, encontrar un tesoro.
  • Algoritmo cuantitativo: Una algoritmo es cuantitativo cuando en sus pasos o instrucciones involucran cálculos numéricos. Ejemplo: Solución de una ecuación de segundo grado.
CARACTERÍSTICAS DE UN ALGORITMO
Todo algoritmo debe tener las siguientes características:

1. Debe ser Preciso, porque cada uno de sus pasos debe indicar de manera precisa e inequívoca que se debe hacer.
2. Debe ser Finito, porque un algoritmo debe tener un número limitado de pasos.
3. Debe ser Definido, porque debe producir los mismos resultados para las mismas condiciones de entrada.
4. Puede tener cero o más elementos de entrada.
5. Debe producir un resultado. Los datos de salida serán los resultados de efectuar las instrucciones.

Características de los Algoritmos: Las características fundamentales que debe cumplir todo algoritmo son:
 ·Un algoritmo debe ser preciso e indicar el orden de realización de cada paso.
 ·Un algoritmo debe estar definido. Si se sigue un algoritmo dos veces, se debe obtener el mismo resultado cada vez.
 ·Un algoritmo debe ser finito. Si se sigue un algoritmo se debe terminar en algún momento; o sea, debe tener un numero finito de pasos.
La definición de un algoritmo debe definir tres partes: Entrada, Proceso y Salida. En el algoritmo de receta de cocina citado anteriormente se tendrá:
Entrada: ingrediente y utensilios empleados.
Proceso: elaboración de la receta en la cocina.
Salida: terminación del plato (por ejemplo, cordero).
Ejemplo de Algoritmo:
Un cliente ejecuta un pedido a una fábrica. Esta examina en su banco de datos la ficha del cliente; si el cliente es solvente entonces la empresa acepta el pedido; en caso contrario rechazara el pedido

PARTES DE UN ALGORITMO: Todo Algoritmo debe tener las siguientes partes:
· Proceso, es la secuencia de pasos para ejecutar el algoritmo.
· Salida de resultados, son los datos obtenidos después de la ejecución del algoritmo.
· Diagramas Nassi-Shneiderman.
· Pseudocódigo.
· Lenguaje natural (español, inglés, etc.).
· Fórmulas matemáticas.
· Entrada de datos, son los datos necesarios que el algoritmo necesita para ser ejecutado.

TÉCNICAS DE REPRESENTACIÓN: Para la representación de un algoritmo, antes de ser convertido a lenguaje de programación, se utilizan algunos métodos de representación escrita, gráfica o matemática. Los métodos más conocidos son:
· Diagramación libre (Diagramas de flujo).

DIAGRAMA FLUJO (CONVENCIONAL)
Representa en forma gráfica los pasos que se siguen para resolver un problema.

TRAZA DE UN ALGORITMO
  Llamada también “corrida” o simplemente probar un algoritmo en papel, significa razonar cómo lo haría un computador, ejecutando cada uno de los pasos o instrucciones, asignándole valores a las variables, registrar el comportamiento de los valores y comprobar que efectivamente cumple el tratamiento o proceso al cual se someten los datos según el objetivo del algoritmo.


FORMA DE TAZABILIZAR UN ALGORITMO
  La traza de un algoritmo (o programa indica la secuencia de acciones (instrucciones) de su ejecución, así como, el valor de las variables del algoritmo (o programa) después de cada acción (instrucción).
  
  La traza de un Algoritmo, se puede definir como la ejecución manual de forma secuencial de las sentencias que lo componen. La función principal que posee realizar la traza de un algoritmo es la de comprobar que éste funciona correctamente o para realizar la etapa de depuración en la que se intenta corregir errores, simplificar el algoritmo al máximo e incrementar su eficacia y velocidad.

  Para representar un algoritmo, antes de convertirlo a lenguaje de programación, se utilizan algunos métodos de representación escrita, gráfica o matemática; las mas conocidas son:
  • Diagrama de Flujo: Es una técnica que representa de forma grafica los algoritmos, aunque su empleo ha disminuido considerablemente por la aparición de los lenguajes de programación.
  • Pseudocódigo: Es una técnica para el diseño de programas que permite definir las estructuras de datos.
  • Diagrama N-S: también conocido como diagrama de Chapín es una técnica de especificación de algoritmos que combina la descripción textual, propia del pseudocódigo, con la representación gráfica del diagrama de flujo.
FORMAS Y TÉCNICAS DE DOCUMENTAR ALGORITMOS Y PROGRAMAS
  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: Una vez diseñado y bien estructurado un algoritmo, la siguiente actividad a desarrollar, sumamente importante en programación, es producir programas bien documentados, para que se cumplan los objetivos básicos, que los programas sean legibles, comprensibles y fácilmente modificables.

La documentación incluye descripciones, comentarios, especificaciones, incluso un breve manual de uso si el algoritmo es suficientemente extenso.

Tenemos dos tipos de documentación en el desarrollo de algoritmos bien diseñados:

a) Documentación externa: Incluye la escritura de información que es exterior al cuerpo del algoritmo. Puede incluir, además de todas las especificaciones detalladas, una explicación extensa del desarrollo del algoritmo y de las modificaciones sufridas. Deben añadirse igualmente descripciones detalladas del problema, de los módulos que lo componen, adjuntando un diagrama jerárquico del diseño descendente y por último un manual de usuario donde se explicará al cliente (o al profesor en su defecto) como debe usarse el programa. Esta documentación debe adjuntarse sólo en el caso de que los algoritmos sean suficientemente grandes, lo que se consideran aplicaciones informáticas de cierta envergadura, divididas en varios programas.

b) Documentación interna: Incluye la escritura de información que se suministra con el cuerpo del algoritmo. Estará formada por comentarios, código autodocumentado e impresión agradable del texto del pseudocódigo.

  Hay dos reglas que no se deben olvidar nunca:
1. Todos los programas tienen errores y descubrirlos sólo es cuestión de tiempo y de que el programa tenga éxito y se utilice frecuentemente.
2. Todos los programas sufren modificaciones a lo largo de su vida, al menos todos aquellos que tienen éxito

¿Qué hay que documentar?
- Hay que añadir explicaciones a todo lo que no es evidente.
- No hay que repetir lo que se hace, sino explicar por qué se hace.
- El algoritmo trata de resolver problemas mediante programas.

Fases:
  • Análisis preliminar o evaluación del problema: Estudiar el problema en general y ver que parte nos interesa.
  • Definición o análisis del problema: Ver que es lo que entra y que es lo que sale, las posibles condiciones o restricciones.
  • Diseño del algoritmo: Diseñar la solución.
  • El programa: Codificación del algoritmo en un lenguaje de programación.
  • Ejecución del programa y las pruebas: Ver si el programa hace lo que queríamos.
TÉCNICAS DE ESCRITURA Y PRUEBAS DE ALGORITMOS Y PROGRAMAS
Diagramas de Flujo: Se basan en la utilización de diversos símbolos para representar operaciones específicas. Se les llama diagramas de flujo porque los símbolos utilizados se conectan por medio de flechas para indicar la secuencia de operación.

Pseudocódigo: Es una descripción de un algoritmo de programación informático de alto nivel compacto e informal que utiliza las convenciones estructurales de un lenguaje de programación verdadero, pero que está diseñado para la lectura humana en lugar de la lectura en máquina, y con independencia de cualquier otro lenguaje de programación.

Lenguaje natural: Es el lenguaje hablado o escrito por humanos para propósitos generales de comunicación. Son aquellas lenguas que han sido generadas espontáneamente en un grupo de hablantes con propósito de comunicarse, a diferencia de otras lenguas, como puedan ser una lenguaje construida, los lenguajes  de programación o los lenguajes usados en el estudio de la lógica normal, especialmente la lógica matemática.


Para concluir, la investigación en esta área ha permitido descubrir un conjunto de métodos o esquemas de diseño hacia los cuales puede orientarse la realización de muchos algoritmos.

  En el cumplimiento de las tareas realizadas, estamos en la capacidad de interpretar lo referente a estándares en la aplicación eficiente en la calidad del diseño de algoritmos y construcción de programas, de manera que los analistas, diseñadores y desarrolladores puedan aplicar estos elementos para que se logren productos adaptados a las necesidades del usuario.

  Cabe destacar que para desarrollar un algoritmo conocido el problema se deben tomar una serie de pasos o acciones para resolverlo y tener cuidado a la horade documentarlo, en este sentido se requiere ser eficiente y eficaz en la aplicación de calidad para el desarrollo de programas.





No hay comentarios:

Publicar un comentario

Gracias por tu comentario.

 
Blogger Templates