Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 9

Programacin modular y tcnica de

mantenimiento de programas.

Profesora: Bachiller:

Jeidub coral Jhosep Malave 27.213.063

Asignatura:

Algoritmica y programacin

El Tigre, Abril 2017


ndice
1-Introduccion
2-Desarrollo
2.1- Funciones y Procedimiento
2.2-Ambito de variables.
2.3- llamado de una funcin y pase de parmetros.
2.4- Tcnicas de prueba de caja negra.
2.5- Re ingeniera de programas
3-Conclucion
4-Bibliografia

Introduccion
A continuacin se aprender a crear un programa .vi que se llamar de aqu en adelante
programa principal. Desde este se podrn abrir otros programas secundarios .vi que se
llamarn aplicaciones o mdulos. Esto permite trabajar con pequeos programas fciles de
realizar, probar, encontrar errores y depurar. En lugar de realizar un extenso programa que
ejecute una gran cantidad de funciones, se puede realizar un pequeo programa que abra
aplicaciones modulares de acuerdo a la necesidad.

Desarrollo

2.1?PROCEDIMIENTOS Y FUNCIONES?
La resolucin de problemas complejos se facilita considerablemente si se dividen en
problemas mas pequeos; y la resolucin de estos subproblemas se realiza mediante
subalgoritmos.

Los subalgoritmos son unidades de programa o mdulos que estn diseados para ejecutar
laguna tarea especfica. stos, constituidos por funciones o procedimientos, se escriben
solamente una vez, pero pueden ser referenciados en diferentes puntos del programa, de
modo que se puede evitar la duplicacin innecesaria del cdigo.

El mdulo principal se ejecuta en una primera instancia, que da la orden de inicio de


ejecucin de los subprogramas. Puede ser ejecutado n veces. Es importante saber que datos
se van a compartir entre los programas.

El subprograma es un programa en s mismo, ejecutado por la solicitud del programa


principal o de otro subprograma, una n cantidad de veces. Cuando realiza la solicitud, el
programa se detiene hasta que el subprograma deja de realizar su tarea, luego contina; esto
se conoce como control de ejecucin.

2.2 ?Ambito de variables?


El mbito de una variable es el contexto dentro del que la variable est definida. La mayor parte de
las variables PHP slo tienen un mbito simple. Este mbito simple tambin abarca los ficheros
includos y los requeridos. Por ejemplo:

<?php
$a = 1;
include 'b.inc';
?>
Aqu, la variable $a estar disponible al interior del script incluido b.inc. Sin embargo, al interior de
las funciones definidas por el usuario se introduce un mbito local a la funcin. Cualquier variable
usada dentro de una funcin est, por omisin, limitada al mbito local de la funcin. Por ejemplo:

<?php
$a = 1; /* mbito global */

function test()
{
echo $a; /* referencia a una variable del mbito local */
}

test();
?>
Este script no producir salida, ya que la sentencia echo utiliza una versin local de la variable $a, a
la que no se ha asignado ningn valor en su mbito. Puede que usted note que hay una pequea
diferencia con el lenguaje C, en el que las variables globales estn disponibles automticamente
dentro de la funcin a menos que sean expresamente sobreescritas por una definicin local. Esto
puede causar algunos problemas, ya que la gente puede cambiar variables globales
inadvertidamente. En PHP, las variables globales deben ser declaradas globales dentro de la funcin
si van a ser utilizadas dentro de dicha funcin.

2.3 llamado de una funcin y pase de parmetros


Qu sucede internamente cuando se produce una llamada a una funcin? El proceso consta de
varias fases sucesivas:

Evaluacin de las expresiones utilizadas como parmetros reales.

Activacin de la funcin. A su vez, esta fase posee otras:

Reserva de espacio para los valores proporcionados por la funcin, si los hay.

Almacenamiento de la direccin de retorno.

Reserva de espacio para parmetros formales.

Reserva de espacio para las dems variables locales, si las hubiere.

Copia de los valores de los parmetros reales (ya evaluados al principio) en el espacio reservado
para parmetros formales.

Ejecucin. Se ejecutan las distintas sentencias de que consta el cuerpo de la funcin, haciendo uso
de la informacin aportada por los parmetros reales y almacenada previamente en los parmetros
formales.

Retorno. Tambin esta fase posee otras:

Almacenamiento del resultado de evaluar la expresin que acompaa a return en el espacio


reservado en 2(a).

Liberacin del espacio reservado para los parmetros formales y otras variables locales, si las hay

Salto a la direccin de retorno, almacenada en 2(b). Esta activacin de la funcin ha concluido.


Obsrvese que posiblemente hayan quedado en la pila los valores para los cuales se reserv espacio
en 2(a).

Este proceso, relativamente complejo, se realiza con notable velocidad en el procesador, que cuenta
con instrucciones especializadas para muchas de las fases que se han mencionado. Pero ciertamente
la fase de activacin y retorno supone un tiempo "muerto", en el sentido de que slo se efectan
clculos en la fase de ejecucin propiamente dicha. Es bueno, entonces reducir el nmero de
llamadas a funcin cuando el tiempo necesario para las fases 1, 2 y 4 es comparable con el tiempo
dedicado a la fase 3. Los compiladores, consciente de esto, admiten como opcin la creacin de
funciones inline.
Veamos un ejemplo de llamada a una funcin en el cual se pueden ver todas las fases, aunque solo
sea a travs de sus efectos. Evidentemente, la activacin real de una funcin slo puede seguirse "en
directo" mediante un depurador que nos permita seguir la ejecucin desde el nivel del lenguaje
ensamblador , ejecutando una tras otra las instrucciones del lenguaje mquina. Esta tarea sobrepasa
los lmites de este curso, pero puede realizarse con relativa facilidad desde un IDE. Veamos el
programa:

2.4- Tcnicas de prueba de caja negra.

Estas pruebas permiten obtener un conjunto de condiciones de entrada que ejerciten completamente
todos los requisitos funcionales de un programa. En ellas se ignora la estructura de control,
concentrndose en los requisitos funcionales del sistema y ejercitndolos.

La prueba de Caja Negra no es una alternativa a las tcnicas de prueba de la Caja Blanca, sino un
enfoque complementario que intenta descubrir diferentes tipos de errores a los encontrados en los
mtodos de la Caja Blanca. Muchos autores consideran que estas pruebas permiten encontrar:

Funciones incorrectas o ausentes.

Errores de interfaz.

Errores en estructuras de datos o en accesos a las Bases de Datos externas.

Errores de rendimiento.

Errores de inicializacin y terminacin.

Para preparar los casos de pruebas hacen falta un nmero de datos que ayuden a la ejecucin de los
estos casos y que permitan que el sistema se ejecute en todas sus variantes, pueden ser datos vlidos
o invlidos para el programa segn si lo que se desea es hallar un error o probar una funcionalidad.
Los datos se escogen atendiendo a las especificaciones del problema, sin importar los detalles
internos del programa, a fin de verificar que el programa corra bien.

2.5 Re ingeniera de programas

La ingeniera se produce en dos niveles distintos de abstraccin. En el nivel de negocios, la


reingeniera se concentra en el proceso de negocios con la intencin de efectuar cambios que
mejoren la competitividad en algn aspecto de los negocios. En el nivel del software, la reingeniera
examina los sistemas y aplicaciones de informacin con la intencin de reestructurarlos o
reconstruirlos de tal modo que muestren una mayor calidad.
Conclucion
Existen varias tcnicas para poder programar como lo son la No Estructurada y la
Procedimental pero la programacin Modular es una de las mas practicas y tiles que
existen ya que le brindan al desarrollador una ayuda para trabajar mas ordenadamente y con
mejor limpieza en el cdigo.
Una tcnica de programacin es una metodologa que debe de seguirse y tomarse
en cuenta al momento de programar.

Bibliografia
https://structurepamh.wordpress.com/procedimientos-y-funciones/

http://php.net/manual/es/language.variables.scope.php

http://maxus.fis.usal.es/fichas_c.web/08xx_pags/0803.html

https://www.ecured.cu/Pruebas_de_caja_negra

http://arielvargasu.blogspot.com/2010/12/reingenieria-del-software.html

También podría gustarte