Fundamentos de programacion

Plan your artistic life as a musician using this map

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

1. Fases en la resolucion de problemas

1.1. Fases en la resolucion de problemas

1.1.1. Analisis del problema

1.1.1.1. Se analiza teniendo presente las especificaciones dadas.

1.1.2. Diseño del algoritmo

1.1.2.1. Se diseña una solucion que conducira a un algoritmo a que solucione el problema

1.1.3. Codificacion

1.1.3.1. La solucion se escribe en la sintaxis del lenguaje del alto nivel y se obtiene un programa

1.1.4. Compilacion y ejecucion

1.1.4.1. El programa se ejecuta, se comprueba rigurosamente y se eliminan todos los errores.

1.1.5. Verificacion

1.1.5.1. ''

1.1.6. Depuracion

1.1.6.1. ''

1.1.7. Mantenimiento

1.1.7.1. El programa se actualiza y modifica cada vez que sea necesario

1.1.8. Documentacion

1.1.8.1. Escritura de las diferentes fases o etapas de vida del software

1.2. Diseño del algoritmo

1.2.1. El proceso que convierte en resultados los analisis del problema en un diseño modular con refinamiento sucesivos que permitan una posterior traduccion al lenguaje

1.3. Herramientas de programacion

1.3.1. Diagrama de flujo

1.3.1.1. Es una representacion grafica de un algoritmo. Los simobolos utilizados han sido normalizados por el instituto Norteamericano de normalizacion (ANSI)

1.3.2. Pseudocodigo

1.3.2.1. Una herramienta de programacion en la que las instrucciones se escriben en las palabras parecidas al  ingles y español

1.4. Codificacion de un programa

1.4.1. Es la escritura en un lenguaje de programacion de la presentacion del algoritmo desarrollado en las etapas precedentes

1.5. Compilacion y ejecucion de un programa

1.5.1. Ya que el algoritmo se ha convertido en un programa fuente es preciso meterlo en memoria mediante el teclado y almacenarlo posteriormente en un disco

1.6. Verificacion y depuracion de un programa

1.6.1. Es el proceso de ejecucion del programa con una amplia variedad de datos de entrada.

1.6.2. Sus errores son:                                            >Errores de compilacion                              >Errores de ejecucion

1.7. Documentacion y mantenimiento

1.7.1. Consta de las descripciones de los pasos a dar en el proceso de resolucion de un problema. Es fundamental cuando se quiere corregir futuros problemas o cambiar el programa

1.7.1.1. Documentacion Interna

1.7.1.1.1. Es la contenida en lineas de comentarios

1.7.1.2. Documentacion externa

1.7.1.2.1. Incluye analisis, diagramas de flujo y pseudicos, manuales de usuario con instrucciones para jecutar el programa y para interpretar resultados.

2. Programacion estructurada

2.1. Programacion estructurada

2.1.1. Significa escribir un programa de acuerdo a las siguientes reglas                                       >El programa tiene un diseñador modular     >Los modulos estan diseñados de modo desendente                                                   >Cada modulo se codifica utilizando las 3 estructuras de control basicas... secuencia seleccion y repticion

2.2. Recursos abstractos

2.2.1. Monthly goals

2.2.2. Quarterly goals

2.2.3. Consiste en descomponer una determinada accion compleja en terminos de un numero de acciones mas simples capaces de ejecutarlas o que constituyan instrucciones de computadoras disponibles.

2.3. Diseño descendente

2.3.1. Es el proceso mediante el cual un problema se descompone en una serie de pasos o de niveles sucesivos de refinamiento.

2.4. Estructruas del control

2.4.1. Son metodos de especificar el orden en que las instrucciones de un algoritmo se ejecutaran

2.4.2. 3 estructuras de control basico

2.4.2.1. Secuencia

2.4.2.2. Seleccion

2.4.2.3. Repeticion

2.5. Estructuras basicas

2.5.1. Puede ser escrito utilizando 3 tipos de estructuras de control

2.5.1.1. Secuenciales

2.5.1.2. Selectivas

2.5.1.3. repetitivas

3. Metodos formales de verificacion del programa

3.1. Precondiciones y postcondiciones

3.1.1. Son afirmaciones sencillassobre condiciones al principio y al final del submodulo

3.1.1.1. Precondicion

3.1.1.1.1. Es una afirmacion logica sobre sus parametros de entrada

3.1.1.2. Postcondicion

3.1.1.2.1. Una afirmacion logica que describe el cambio en el estado del programa producido por la ejecucion del procedimiento

3.2. Aserciones

3.2.1. Describe lo que se supone sea verdadero sobre las variables del programa en ese punto

3.3. Reglas para pruebas de programas

3.3.1. Aserciones

3.3.1.1. Primera asercion

3.3.1.1.1. Describe las condiciones que han de ser verdaderas antes de ejecutar

3.3.1.2. Segunda asercion

3.3.1.2.1. Describe las condiciones que han de ser verdaderas despues de ejecutar

3.4. Programacion segura contra fallos

3.4.1. Para conseguir este obejetivo se han de comprobar los errores en datos de entrada y en la logica del programa

4. Diagrama de Nassi Schneiderman

4.1. Las acciones sucesivas se escriben en cajas sucesivas Y se pueden escribir diferentes acciones en una caja

4.1.1. Engagement specific checklist

4.1.2. Backup recording projects

5. Representacion grafica de algortimos

5.1. Debe ser representado grafica o numericamente

5.1.1. Los metodos usuales para representar un algoritmo son

5.1.1.1. Diagrama de flujo

5.1.1.2. Diagrama de N-S

5.1.1.3. Pseudocodigo

5.1.1.4. Lenguaje, español, ingles...

5.1.1.5. Formulas

5.2. Diagramas de flujo

5.2.1. Es un diagrama que utiliza los simbolos estandar

5.2.2. Es una de las tecnicas mas antiguas y a la vez mas utilizadas

6. Ciclo de vida del software

6.1. ciclo de vida del software

6.1.1. Es un proceso iterativo de modo que se modificaran las sucesivas etapas en funcion de la modificacion de las especificaciones de los requisitos producidos en la fase de diseño o implementacion

6.2. Analisis

6.2.1. Se debes especificar los aspectos del problema pero con frecuencia las personas que describen el problema no son programadores y eso hace imprecisa la definicion

6.3. Diseño

6.3.1. Este indica como ha de hacerse. se podria decir que son las instrucciones

6.4. Implementacion

6.4.1. Traduce los algoritmos del diseño, en un programa escrito en un lenguaje de programacion

6.5. Pruebas e integracion

6.5.1. Pruebas

6.5.1.1. Sirve para mostrar que un programa es correcto

6.5.2. Integracion

6.5.2.1. Cuando los diferentes componentes de un programa se han implementado y comprobado individualmente, el sistema completo se ensambla y se integra

6.6. Verificacion

6.6.1. Implica la construccion de pruebas matematicas que ayudan a determinar si los programas hacen lo que deberian de hacer

6.7. Mantenimiento

6.7.1. es la mejora del software añadiendo mas caracteristicas o modificando partes existentes que se adapten mejor al usuario

6.8. La absolencia

6.8.1. Es la fase en la que el software se queda anticuado y seria bueno actualizarlo

7. Programacion modular

7.1. Programacion modular

7.1.1. El programa se divide en modulos y cada una ejecuta una sola actividad o tarea y se codifican independientemente de otros modulos

8. Factores en la calidad del Software

8.1. Eficiencia

8.2. Transportabilidad

8.3. Verificalidad

8.4. Integridad

8.5. Facil de utilizar

8.6. Correcion

8.7. Robustez

8.8. Extensibilidad

8.9. Reutilizacion

8.10. Compatibilidad