Resumen

Metodología de desarrollo de software

El proceso de creación de software necesita de una metodología de desarrollo del mismo que, de una forma organizada, vaya completando u obteniendo resultados en cada etapa de su ciclo de vida hasta tener el producto final.

La metodología de software es un marco de trabajo usado para estructurar, planificar y controlar el proceso de desarrollo de software.

Incluye, además de un enfoque para generar programas de calidad, herramientas, modelos y métodos para ayudar en el desarrollo del sofware.

  • El ciclo de vida de una aplicación o proyecto informático es el conjunto de etapas y estados por los que pasa desde que se plantea como necesidad o problema, por parte del cliente, hasta que se da por terminado y se considera como una solución completa, correcta y estable (que resuelve el citado problema inicial). Las etapas son:

1. Análisis

2. Diseño

3. Codificación

4. Explotación

5. Mantenimiento

  • La manera de llevar a cabo estas etapas varía según cada proyecto, ello da lugar a distintos enfoques del ciclo de vida. Los principales son:

    • Ciclo de vida clásico o en cascada.

    • Ciclo de vida en cascada con vuelta atrás.

    • Ciclo de vida basado en prototipos.

    • Ciclo de vida en espiral.

  • Un paradigma de programación representa un conjunto de métodos sistemáticos aplicables en todos los niveles del diseño de programas. Es decir, un paradigma es una filosofía, un enfoque particular, para la creación de programas:

Paradigmas

Entrada y salida de datos

El bloque de instrucciones de un programa está formado por tres partes, aunque en ocasiones no están perfectamente delimitadas, y aparecerán entremezcladas en la secuencia del programa, podemos localizarlas según su función:

Partes del bloque de instrucciones
Entrada
--> Algoritmo --> Salida
Inicio de programa: datos Proceso de programa: cálculos Fin de programa: resultados

En general podemos distinguir:

  • Interfaz de usuario: Es el mecanismo para interactuar directamente con un usuario y puede ser tanto interfaz gráfica como de texto.
  • Archivos: los programas pueden necesitar almacenar y recuperar datos de dispositivos de almacenamiento (memorias permanentes) para evitar que los datos y resultados del programa se pierdan una vez que la ejecución del programa ha terminado.

Un archivo o fichero es un estructura informática para el almacenamiento de datos en memoria secundaria (permanente) gestionado por el sistema operativo. Se trata de un conjunto de sectores físicos de un dispositivo de memoria secundaria que guardan información sobre un tema concreto.

Programación modular. Funciones

La programacióm modular utiliza la técnica top-down, diseño descendente o "divide y vencerás".

El diseño modular de programas estructurados se basa en la división del programa en subprogramas más sencillos. La estructura principal estará dividida en niveles de mayor a menor complejidad, interrelacionados entre sí mediante una estructura jerárquica.

 

Esta forma de programar se considera una mejora de la programación estructurada. Se denomina programación modular, programación por procedimientos o programación funcional.
top-down
El programa principal tomará el control al principio de la ejecución y desde él se llamará a cada uno de los módulos. Una vez realizada la llamada a un módulo, se transfiere el control a éste, que al terminar devolverá el control a la instrucción siguiente desde la que fue llamado.

Un procedimiento o función (módulo) es un conjunto de instrucciones que realiza una o varias tareas específicas. Sus componentes son:

  • una entrada o entradas determinadas.
  • un dato de salida.
  • un nombre único e identificable en el algoritmo del programa principal.
Una librería es una colección de programas o subrutinas que pueden ser utilizadas por programas independientes. En programación, la abstracción consiste en aislar un elemento de su contexto convirtiéndolo en una "caja negra" donde lo importante es el "¿qué hace?" más que el "¿cómo lo hace?".
La programación modular es un claro ejemplo de abstracción a partir de las funciones o módulos de una librería.

La reutilización de código permite que una parte o la totalidad de un programa informático existente se pueda emplear en la construcción de otro programa. De esta forma se aprovecha el trabajo anterior, se economiza tiempo, y se reduce la redundancia.

Programación orientada a objetos

POO

Programación orientada a eventos

La programación orientada a eventos, a diferencia de la programación estructurada, otorga al usuario el control completo sobre el programa.

Es el usuario, mediante la interactividad con el ratón o el teclado, quién determinará que parte del código se va a ejecutar. Esto es posible gracias a los eventos que permiten a los objetos realizar acciones, hacer clic sobre un botón, cerrar una ventana, incluso hacer doble clic sobre un texto, son acciones que tienen asignado un código.

En realidad, el programa se queda a la espera hasta que el usuario desencadena un evento y entonces, el programa responde.

La programación orientada a eventos suele ser visual y se basa en el uso de formularios y controles:

  • Un formulario es una ventana en la que se insertan los controles. Cada formulario dispone de controles propios (cerrar, maximizar y minimizar) y propiedades que se pueden modificar (tamaño, título).
  • Los controles son las representaciones de los objetos en forma de botones, cuadros de texto o listas. Según su función pueden ser:
    • de entrada.- permiten al usuario desencadenar una acción.
    • de salida.- ofrecen el resultado de una operación o procedimiento.
    • de diálogo.- ofrecen interactividad.
    • contenedores.- los controles insertados en ellos están relacionados y pertenecen a un mismo grupo.

Entornos de desarrollo integrado

Un entorno de desarrollo integrado, en inglés Integrated Development Environment (IDE) es una aplicación informática que proporciona servicios integrales para facilitarle al desarrollador o programador el desarrollo de software.

Vamos a conocer tres de las herramientas de programación que pueden venir incorporadas en un IDE:

1.- El depurador es una herramienta del IDE que permite detectar y corregir errores de sintaxis en el código del programa. Depurar un programa es eliminar los fallos y errores de compilación, para hacerlo más eficiente y poder compilarlo y ejecutarlo.

2.- Trabajar en equipo consiste en reunir a dos o más personas organizándolas de tal manera que puedan cooperar para realizar en común un proyecto que sería muy difícil o imposible de conseguir de forma individual. También se origina cuando se pretende agilizar y mejorar algunas condiciones que obstaculizan el desarrollo de tareas diarias y la consecución de objetivos en las organizaciones.

3.- Necesariamente en la evolución de un producto software se producen modificaciones, ediciones, revisiones, actualizaciones, cambios en su configuración, etc. Para gestionar todos estos cambios de forma adecuada existe lo que se denomina Sistema de Control de Versiones (VCS del inglés Version Control System). Es necesario disponer de un mecanismo de almacenamiento de elementos o archivos, fácil acceso a esos elementos para modificarlos, saber qué elementos se modificaron y cuáles no, registrar los usuarios que han realizado dichos cambios, en qué momento se realizaron, etc, es decir poseer un registro de esos cambios.