1. REPRESENTACION GRAFICA DE LOS ALGORITMOS.
1.1. Métodos para representar un algoritmo.
1.1.1. Diagrama de flujo.
1.1.1.1. Es un diagrama que utiliza los símbolos estándar y que tiene los pasos de un algoritmo escritos en esa cajas unidas por flechas, denominadas líneas de flujo.
1.1.2. Diagrama N-S.
1.1.3. Lenguaje de especificación de algoritmos: pseudocodigo.
1.1.4. Lenguaje español, ingles...
1.1.4.1. formula de representación: formula general
1.1.4.1.1. quiere decir
1.1.5. Formulas.
2. FACTORESEN LA CALIDAD DEL SOFTWARE.
2.1. Eficiencia.
2.1.1. Es su capacidad para hacer un buen uso de los recursos que manipula.
2.2. Transportabilidad.
2.2.1. Capacidad para soportar los procedimientos de validación y de aceptar los juegos de test o ensayo de programas.
2.3. Verificabilidad.
2.3.1. Facilidad de verificación de un software.
2.4. Integridad.
2.4.1. Capacidad de un software a proteger sus propios componentes contra los procesos que no tenga el derecho de acceder.
2.5. Fácil de utilizar.
2.5.1. Un software ws fácil de utilizar si se puede comunicar consigo de manera cómoda.
2.6. Corrección.
2.6.1. Capacidad de los productos software de realizar exactamente las tareas definidas por su especificación.
2.7. Robustez.
2.7.1. Caoacidad de los productos de funcionar incluso en situaciones anormales.
2.8. Extensibilidad.
2.8.1. Facilidad que tuenen los productos de adaptarse a cambios en su especificación.
2.8.1.1. diseño simple.
2.8.1.2. descentralización.
2.9. Reutilización.
2.9.1. Capacidad de los productos de ser utilizados, em su totalidad o en parte, en nuevas aplicaciones
2.10. Compatibilidad.
2.10.1. Facilidad de los productos para ser combinados con otros.
3. FASES EN LA RESOLUCION DE PROBLEMAS
3.1. Conduce a estructuración de un programa y a su ejecución de la misma. Aunque es un proceso creativo, deben considerarse una serie de fases que deben seguir los procesadores
3.1.1. Análisis del problema.
3.1.1.1. El problema se analiza teniendo presente la especificación de los requisitos dados por el cliente de la empresa o por la persona que encarga el programa.
3.1.1.2. Requisitos para la resolución de un problema.
3.1.1.2.1. Análisis del problema.
3.1.1.2.2. Diseño del algoritmo.
3.1.1.2.3. Resolución del problema con computadora.
3.1.2. Diseño de un algoritmo.
3.1.2.1. Una vez analizado el problema, se diseña una solución que conducirá a un algoritmo que resuelva el problema.
3.1.2.2. PASOS.
3.1.2.2.1. Programar un modulo.
3.1.2.2.2. Comprobar el modulo.
3.1.2.2.3. Si es necesario, depurar el modulo.
3.1.2.2.4. Combinar el modulo con los módulos anteriores.
3.1.3. Codificación.
3.1.3.1. la solución se escribe en la sintaxis del lenguaje de alto nivel y se obtiene un programa.
3.1.4. Verificación.
3.1.4.1. El programa se ejecuta, se comprueba rigurosamente y se eliminan todos los errores que puedan aparecer.
3.1.4.1.1. Cuando se ejecuta un programa, se pueden producir tres tipos de errores.
3.1.5. Depuración.
3.1.6. Mantenimiento.
3.1.6.1. El programa se actualiza y modifica, cada vez que sea necesario, de modo que se cumplan todas las necesidades de cambio de sus usuarios.
3.1.7. Documentación.
3.1.7.1. Escritura de las diferentes fases del ciclo de vida del software, esencialmente el análisis, diseño y código, unidos a manuales de usuario y referencia, así como normas para el mantenimiento.
3.2. ALGORITMO.
3.2.1. Es un método para resolver un problema mediante una serie de pasos precisos, definidos y finitos.
3.2.2. Características.
3.2.2.1. Preciso: Indicar un orden de relación en cada paso.
3.2.2.2. Definido: Si se sigue dos veces, obtiene el mismo resultado cada vez.
3.2.2.3. Finito: Tiene fin; es decir, un numero determinado de pasos.
3.3. HERRAMIENTAS DE PROGRAMACION.
3.3.1. Diagrama de flujo.
3.3.1.1. Representación grafica de un algoritmo.
3.3.2. Pseudocódigo.
3.3.2.1. Herramienta de programación en la que sus instrucciones se escriben en palabras similares al ingles o español que facilitan tanto la escritura como la lectura de programas
4. DIAGRAMAS DE NASSI-SCHNEIDERMAN (N-S)
4.1. También conocido como DIAGRAMA DE CHAPIN. Es como un diagrama de flujo en el que se omiten las flechas de unión y las cajas son continuas. Un algoritmo se representa con un rectángulo en el que cada banda es una acción a realizar.
4.1.1. Project specifications
4.1.2. End User requirements
4.1.3. Action points sign-off
5. CICLO DE VIDA DEL SOFTWARE.
5.1. Programación en pequeña escala
5.1.1. Se preocupa en de los conceptos que ayudan a crear pequenos programas . En estos programas se se suele requerir claridad y precisión mental y técnica.
5.2. El desarrollo de un buen sistema d software se realiza durante el ciclo de vida que es el periodo de tiempo que se extiende desde la concepción inicial del sistema hacia su eventual retirada de la comercialización o uso del mismo.
5.3. Las actividades humanas relacionadas con el ciclo de vida implican procesos tales como.
5.3.1. Análisis de requisitos.
5.3.2. Diseño.
5.3.3. Implementación.
5.3.4. Codificación.
5.3.5. Pruebas.
5.3.6. Verificación.
5.3.7. Documentación.
5.3.8. Mantenimiento.
5.3.9. Evolución del sistema.
5.4. En esencia comienza con una idea inicial, incluye la escritura y depuración de programas, y continua durante tiempo con correcciones y mejoras al software original.
5.4.1. Análisis.
5.4.1.1. análisis y definición del problema.
5.4.1.2. especificación de requisitos.
5.4.2. Diseño.
5.4.2.1. indica como ha de hacerse. El gasto de tiempo en la fase de diseño será ahorro de tiemo cuando se escriba y depura su propio diagrama.
5.4.3. Implementación.
5.4.3.1. Traduce algoritmos del diseño en un programa escrito en un lenguaje de programación.
5.4.4. Depuración.
5.4.5. Mantenimiento.
5.4.5.1. el software debe ser mantenido y actualizado
6. PROGRAMACION MODULAR.
6.1. Es uno de los métodos de diseño mas flexible y potente para mejorar la productividad de un programa
6.1.1. Materials
6.1.2. Personel
6.1.3. Services
6.1.4. Duration
6.2. El programa se divide en módulos y cada uno ejecuta una única actividad o tarea y se codifican independientemente de otros módulos.
6.2.1. cada programa tiene un modulo denominado programa principal que controla todo lo que sucede.
6.3. la descomposición de un programa en modulos independientes mas simples se conoce también como el método de DIVIDE Y VENCERAS.
7. PROGRAMACION ESTRUCTURADA.
7.1. La programación estructurada significa escribir un programa de acuerdo con las siguientes tres reglas.
7.1.1. El programa tiene un diseño modular.
7.1.2. Los módulos son diseñados de modo descendente.
7.1.3. Cada modulo se codifica utilizando las tres estructuras de control básicas.
7.1.3.1. Secuencia.
7.1.3.2. Selección.
7.1.3.3. Repetición.
7.2. si esta familiarizado con lenguajes como BASIC, Pascal, FORTRAN o C, la programación estructurada significa también PROGRAMACION SIN GOTO
7.2.1. Schedule
7.2.2. Budget
7.3. Es el conjunto de técnicas que incorporan:
7.3.1. Recursos abstractos.
7.3.2. Diseño descendente.
7.3.3. Estructura básicas.
7.3.3.1. Secuencia.
7.3.3.2. Selección.
7.3.3.3. Repetición.
7.4. Un programa se define como propio si cumple con las características.
7.4.1. Posee un solo punto de entrada y uno de salida o fin para control del programa.
7.4.2. Existen cambios desde la entrada hasta la salida que se pueden seguir y que pasan por todas las partes del programa.
7.4.3. Todas las instrucciones son ejecutables y no existen lazos o bucles infinitos.