Aplicación de técnicas modulares

Un problema de la vida real es complejo y grande. Si se desarrolla una solución monolítica, plantea estos problemas:

  • Difícil de escribir, probar e implementar un gran programa

  • Las modificaciones después de la entrega del producto final son casi imposibles

  • Mantenimiento del programa muy difícil

  • Un error puede detener todo el sistema

Para superar estos problemas, la solución debe dividirse en partes más pequeñas llamadas modules. La técnica de dividir una gran solución en módulos más pequeños para facilitar el desarrollo, implementación, modificación y mantenimiento se llamamodular technique de programación o desarrollo de software.

Ventajas de la programación modular

La programación modular ofrece estas ventajas:

  • Permite un desarrollo más rápido ya que cada módulo se puede desarrollar en paralelo

  • Los módulos se pueden reutilizar

  • Como cada módulo debe probarse de forma independiente, las pruebas son más rápidas y sólidas

  • Depuración y mantenimiento de todo el programa más fácil

  • Los módulos son más pequeños y tienen un menor nivel de complejidad, por lo que son fáciles de entender.

Identificación de los módulos

Identificar módulos en un software es una tarea alucinante porque no puede haber una forma correcta de hacerlo. Aquí hay algunos consejos para identificar módulos:

  • Si los datos son el elemento más importante del sistema, cree módulos que manejen datos relacionados.

  • Si el servicio proporcionado por el sistema es diverso, divida el sistema en módulos funcionales.

  • Si todo lo demás falla, divida el sistema en módulos lógicos según su comprensión del sistema durante la fase de recopilación de requisitos.

Para la codificación, cada módulo debe dividirse nuevamente en módulos más pequeños para facilitar la programación. Esto se puede hacer nuevamente usando los tres consejos compartidos anteriormente, combinados con reglas de programación específicas. Por ejemplo, para un lenguaje de programación orientado a objetos como C ++ y Java, cada clase con sus datos y métodos podría formar un solo módulo.

Solución paso-a-paso

Para implementar los módulos, el flujo de proceso de cada módulo debe describirse paso a paso. La solución paso a paso se puede desarrollar utilizandoalgorithms o pseudocodes. Proporcionar una solución paso a paso ofrece estas ventajas:

  • Cualquiera que lea la solución puede comprender tanto el problema como la solución.

  • Es igualmente comprensible para programadores y no programadores.

  • Durante la codificación, cada declaración simplemente debe convertirse en una declaración de programa.

  • Puede ser parte de la documentación y ayudar en el mantenimiento del programa.

  • Los detalles a nivel micro como los nombres de los identificadores, las operaciones requeridas, etc. se resuelven automáticamente

Veamos un ejemplo.

Estructuras de Control

Como puede ver en el ejemplo anterior, no es necesario que se ejecute una lógica de programa sequentially. En lenguaje de programación,control structurestomar decisiones sobre el flujo del programa basándose en parámetros dados. Son elementos muy importantes de cualquier software y deben identificarse antes de que comience la codificación.

Algoritmos y pseudocodes ayudar a los analistas y programadores a identificar dónde se requieren estructuras de control.

Las estructuras de control son de estos tres tipos:

Estructuras de control de decisiones

Las estructuras de control de decisiones se utilizan cuando el siguiente paso a ejecutar depende de un criterio. Este criterio suele ser una o más expresiones booleanas que deben evaluarse. Una expresión booleana siempre se evalúa como "verdadero" o "falso". Un conjunto de declaraciones se ejecuta si el criterio es "verdadero" y otro conjunto se ejecuta si el criterio se evalúa como "falso". Por ejemplo, if declaración

Estructuras de control de selección

Las estructuras de control de selección se utilizan cuando la secuencia del programa depende de la respuesta a una pregunta específica. Por ejemplo, un programa tiene muchas opciones para el usuario. La instrucción que se ejecutará a continuación dependerá de la opción elegida. Por ejemplo,switch declaración, case declaración.

Estructuras de control de repetición / bucle

La estructura de control de repetición se utiliza cuando un conjunto de declaraciones debe repetirse muchas veces. El número de repeticiones puede conocerse antes de que comience o puede depender del valor de una expresión. Por ejemplo,for declaración, while declaración, do while declaración, etc.

Como puede ver en la imagen de arriba, tanto las estructuras de selección como las de decisión se implementan de manera similar en un diagrama de flujo. El control de selección no es más que una serie de declaraciones de decisiones tomadas secuencialmente.

Aquí hay algunos ejemplos de programas para mostrar cómo funcionan estas declaraciones: