Fundamentos de programación

Update your tasks and set your priorities for the next week

Get Started. It's Free
or sign up with your email address
Rocket clouds
Fundamentos de programación by Mind Map: Fundamentos de programación

1. Métodos formales de verificación de programas

1.1. Aserciones

1.1.1. Para la verificación se necesita saber con exactitud el problema anotando y verificándolos

1.2. Pre condiciones y postcondiciones

1.2.1. Precondicion, predicado lógico que debe cumplirse al comenzar la ejecución de una operación                                                            Postcondicion, predicado lógico que debe cumplirse al acabar la ejecución de una operación: siempre que se haya cumplido previamente la precondicion correspondiente

1.3. Reglas

1.3.1. Método útil seria proporcionar aserciones que la expresen antes de ejecutarla.

1.4. Invariantes de bucles

1.4.1. Se utilizan para saber con exactitud los algoritmos que están erróneos.

2. El siclo de vida de software

2.1. Análisis

2.1.1. En este primer paso se necesita sabes cual es el problema y los factores que hay que desarrollar ara lograr a desarrollarlo al lenguaje de alto nivel para obtener un resultado.

2.2. Diseño

2.2.1. Etapa en la cual se diseña como se desarrollara el algoritmo o el pseudocodigo que para un sistema pequeño o grande se utiliza esta etapa.

2.3. Implementacion

2.3.1. Es qui donde se codifican  o traducen los algoritmos de el lenguaje de programación implementado .

2.4. Depuracion

2.4.1. Las pruebas empiezan desde el diseño y seguirán las pruebas durante toda la implementacion del lenguaje para así tener verificación e que dicho software no fallara pero no lo exenta de que se le realice mantenimiento.

2.5. Mantenimiento

2.5.1. Aquí es cuando se distribuye a las personas que utilizaran el software, se le llama al mantenimiento  cuando después de salir el producto se le mantiene actualizado y resolviendo los problemas que pudieran precentarse.

3. Programación estructurada

3.1. El termino de programación estructurada, se introdujo en la década de los sesenta, se desciende de escribir un programa de acuerdo a unas reglas.

3.2. Recursos abstractos

3.2.1. Descomponer un programa en términos de recursos abstractos consiste en descomponer en acciones muy reducidas y capaces de la interrelación de la computadora .

3.3. Diseño descente

3.3.1. Es el desarrollo de un problema sucesivos al refinamiento

3.4. Estructuras de control

3.4.1. El determina el orden de las instrucciones de el algoritmo que se ejecutaran.

3.5. Reprecentacion grafica de los algoritmos

3.5.1. Métodos comunes para las representaciones del algoritmo .

3.5.1.1. 1. Diagrama de flujo

3.5.1.1.1. Es la técnica de representación de algoritmos mas utilizada pero sus usos en el desarrollo a disminuido especialmente en lenguajes de programación estructurados .

3.5.1.2. 2. Diagrama N-S (Nassi-Schneiderman)

3.5.1.2.1. Principal característica que omite las flechas de unión y las cajas son antiguas .

3.5.1.3. 3. Lenguaje de especificasion de algoritmos: pseudocodigo.

3.5.1.4. 4. Lenguaje español, ingles

3.5.1.5. 5. Formulas

4. Factores de calidad del software

4.1. Eficiencia

4.1.1. Se tiene que asegurar de que el software realiza las funciones para las que fue desarrollada

4.2. Verificabilidad

4.2.1. Pruebas que indican de que el software es común mente llamada potable o tiene una intalcion previa.

4.3. Integridad

4.3.1. Se tiene que saber que la seguridad de el software es la correcta para no poder ser modificado.

4.4. Facil de utilizar

4.4.1. Un software destacado es por su manejabilidad y su facilidad para interactuar con las personas entonces un software eficaz sera mejor éxito para diseñadores

4.5. Corrección

4.5.1. Si el software realiza lo que exactamente le ordenas sera mas fácil de que as personas puedan relacionarse con su interfaz

4.6. Robustes

4.6.1. Un software no puede tener margen de error ya que  funciona o no lo hace, pero aun cuando no se realizan las tareas para el que fue diseñado debe desempeñarse en lo que sabe hacer.

4.7. Reutilizacion

4.7.1. Un software que es multiusos puede tener un buen puesto en desarrollos ya que entre mas avanza la tecnología menos labores se realizan, entonces un software que puede hacer eso puede tener mejor aceptación que uno que no lo hace

4.8. Compatibilidad

4.8.1. Como ya antes mencionado el multiusos es una herramienta muy buena y cuando se combina para hacer otras y realizar un mejor trabajo es el doble de mejor.

5. Programación modular

5.1. La programación modular es uno de los métodos de diseño más flexible y potentes para mejorar la pro-ductilidad de un programa.

5.2. Se divide en módulos, única unidad o tarea y codifican independientemente de cada modulo.

5.3. Cada programa tiene un modulo principal que es el que controla, se maneja de submodulos y luego en subprogrmas

5.4. Esta tarea puede ser  entrada, salida, manipulación de datos, control de otros módulos o alguna combinación de éstos.

6. Fases en la resolución de problemas

6.1. El proceso de resolución de un problema con una computadora conduce a la escritura de un programa y a su ejecución en la misma.

6.2. Las fases de resolución de un problema con computadora son: Análisis del problema. Diseño del algoritmo. Codificación. Compilación y ejecución. o Verijicación. Depuración. o Mantenimiento. Documentación.

6.2.1. Para poder definir bien un problema es conveniente responder a las siguientes preguntas: ¿,Qué entradas se requieren? (tipo y cantidad). o ¿Cuál es la salida deseada? (tipo y cantidad). ¿Qué método produce la salida deseada'?

7. Diagrama de Nassi Schneiderman

7.1. El diagrama N-S es como un diagrama de lujo en el que se omiten las flechas de union y las cajas son contiguas

7.2. Se representan en rectángulos en los que se escriben os algoritmos.

7.3. Se pueden describir diferentes acciones en un rectángulo.