lunes, 22 de octubre de 2012

Actividad 6


Fundamentos en programación

2.1 fases de la resolución de problemas
·        Análisis del problema (analiza el problema que hay)
·        Diseño de algoritmo (diseña una solución)
·        Codificación (soluciona el problema y lo escribe en lenguaje de alto nivel)
·        Ejecución (se prueba y se eliminan los errores)
2.2 programación modular 

Es uno de los métodos de diseño de mas flexibles y potentes para mejorar la productividad de un programa. El programa se debido en modulo, cada una de las cuales  ejecuta una única actividad o tarea y se codifican y ponen a punto por separados d otros módulos.
2.3 programación estructurada

Significa que escribe un programa d e acuerdo a las siguientes reglas
·        El programa tiene un diseño modular
·        Los módulos son diseñados de modo descendente
·        Cada modulo se codifica utilizando las tres reglas estructuras de control básicas: secuencia, selección y repetición; es un conjunto de técnicas recursos abstractos: consiste en descomponer una determinación acción compleja en términos de un número de acciones más simples. Diseño descendente: consiste en efectuar una resolución entre las sucesiones etapas de estructuración de modo que se relaciona una con otra. Estructura de control: consiste fundamentalmente en los lenguajes de programación y en los díselo de algoritmos especialmente los pseudocódigos.
2.4 representación grafica de los algoritmos

Ellos permiten que un algoritmo0 pueda ser codificado indirectamente en cualquier lenguaje. Los métodos usuales son:
·        Diagrama de flujo: se utilizan todos los símbolos
·        Diagrama N-S: igual al de flujo, el que se omiten las fechas de unión y las cajas contiguas.
·        Lenguaje especial de algoritmos: pseudocódigo
·        Lenguaje español e ingles
·        Formulas
2.5 diagrama de NASSI-SCHEIDERMAN (N-S)

Es como un diagrama de flujo en el que se omiten las fechas de unión y las cajas que son contiguas, las acciones sucesivas se escriben en cajas sucesivas en una caja.
2.6 el ciclo de vida del software 

Hay dos tipos de niveles el primer nivel se denomina programación a pequeña escala, el segundo se denomina programación a gran escala.
La programación a pequeña  escala se preocupa en crear pequeños programas y pueden tener más de 100,000 líneas de códigos.
Ciclo de vida de un software
Análisis, diseño, implementación, depuración, mantenimiento
Análisis: esta producción de un sistema de software que se supone ha de hacer el sistema.
Diseño: lo que el sistema debe hacer, como ha de hacer.
Implementación: traduce el algoritmo del diseño en un programa escrito en lenguaje de programación.
Depresión: el sistema completo se ensambla y se integra.
Mantenimiento: el programa aunque sirva excelente tiene que mantenerse en mantenimiento y actualizado.

2.7 métodos formas de verificación de programa

·        Aserciones: una parte importante de una verificación formal es la documentación de un programa a través de acentos o afirmaciones.
·        Precondiciones y pos condiciones: son afirmaciones simples sobre condiciones al principio y al final de los módulos es una afirmación lógica sobre sus parámetros de entrada.
2.8 factores en la calidad de software 

·        Eficiencia: la eficiencia de un software es su capacidad para hacer un buen uso de los recursos que manipulan
·        Transportabilida (portabilidad): es la facilidad con la que un software  puede ser transportado sobre diferentes sistemas físicos o lógicos.
·        Verificabilidad: es la facilidad de verificación de un software, es su capacidad para soportar los procesos de validación y de aceptar juegos de test o ensayo de programa.
·        Integridad: es la capacidad de un software a proteger sus propios componentes contra los procesos que no tenga el derecho de acceso.
·        Facilidad de usar: es  fácil de utilizar si se puede comunicarse consigo de manera cómoda.
·        Corrección: capacidad de los productos software que realice exactamente loas tareas definidas por su especificación.
·        Robustez: capacidad de los software de realizar incluso en situaciones  anormales.
·        Extensibilidad: facilidad que tiene los productos de adaptarse a cambios en su especificación de nuevas aplicaciones.
·        Reutilización: capacidad de los productos de ser reutilizados, en su totalidad o en parte, en nuevas aplicaciones.
·        Compatibilidad: facilidad de los productos para ser combinados con otros.







No hay comentarios:

Publicar un comentario