Soluciones de Programación — Fases del Proceso de Programación
© Politécnico Indoamericano 2015
Fases del Proceso de Programación
Tabla de Contenido
1. Desarrollo de Aplicaciones 2. Ciclo de Vida del Software 3. Fases del Proceso de Programación
Objetivo
Identificar los pasos requeridos en la solución de un problema, haciendo uso de herramientas computacionales que permitan una evolución, coherente y progresiva que desarrolle una solución interpretable en el computador, el cual será denominado programa
© Politécnico Indoamericano 2015 Nota Técnica preparada por el Politécnico Indoamericano. Este contenido es propiedad del Politécnico Indoamericano. Su difusión, reproducción o uso total o parcial para cualquier otro propósito queda prohibida. Todos los derechos reservados.
1
Fases del Proceso de Programación
1. Desarrollo de Aplicaciones
El desarrollo de un proyecto de cualquier naturaleza (software, gestión, ambiental, etc.) va unido a un ciclo de vida compuesto por una serie de etapas que comprenden todas las actividades, desde el momento en que surge la idea de crear un nuevo producto o generar algún bien o servicio, hasta aquel en que el producto deja definitivamente de ser utilizado por el último de sus usuarios. En el caso del desarrollo de software contar con una metodología adecuada es particularmente importante.
Figura 1. Tipos de aplicaciones de software. Citado de: http://okhosting.com/blog/ventajas-desventajas-de-lasaplicaciones-moviles-nativas/ En el caso del hardware el diseño se realiza con componentes digitales existentes en catálogo que han sido probados por el fabricante y usuarios anteriores, teniendo unas especificaciones claras y estando bien definidos. Con las aplicaciones no ocurre así. No existen catálogos de componentes, y aunque productos como sistemas operativos, editores, entornos de ven-
© Politécnico Indoamericano 2015 Nota Técnica preparada por el Politécnico Indoamericano. Este contenido es propiedad del Politécnico Indoamericano. Su difusión, reproducción o uso total o parcial para cualquier otro propósito queda prohibida. Todos los derechos reservados.
2
“La mayoría de aplicaciones se construyen a la medida”
Fases del Proceso de Programación
tanas y bases de datos se venden en grandes ediciones, la gran mayoría de aplicaciones se fabrica a medida, siendo su reutilización muy baja.
Se puede comprar aplicaciones ya desarrolladas, pero como unidades completas, no como componentes que pueden ser re ensamblados para construir nuevos programas. Esto hace que el coste de ingeniería sobre el producto final sea muy elevado.
A lo largo de los años se ha intentado la reutilización de aplicaciones pero tras muchos intentos ha habido poco éxito. Un ejemplo claro de reutilización son las bibliotecas que se empezaron a desarrollar en los años sesenta como subrutinas científicas, reutilizables en muchas aplicaciones científicas y de ingeniería, así como hoy en día la mayor parte de los lenguajes modernos incluyen bibliotecas de este tipo. Sin embargo, existen otros problemas como la búsqueda de un elemento en una estructura de datos, debido a la gran variación que existe en cuanto a la organización interna de estas estructuras y en la composición de los datos que la contienen, por lo que, aunque existen algoritmos para resolver estos problemas, no queda más remedio que programarlos una y otra vez, adaptándolos a cada situación particular.
Un nuevo intento de conseguir la reutilización se produjo con el uso de técnicas de programación estructurada y modular. Sin embargo, se dedica por lo general poco esfuerzo al diseño de módulos lo suficientemente generales para ser reutilizables, y en todo caso, no se documentan ni se difunden lo suficiente para extender su uso, con lo cual se tiende a diseñar y programar módulos muy semejantes una y otra vez. La programación estructurada permite diseñar programas con una estructura más clara y más fácil de entender, lo cual permite la reutilización de módulos dentro de los programas o incluso dentro del proyecto que se está desarrollando, pero la reutilización de código en proyectos es muy baja.
© Politécnico Indoamericano 2015 Nota Técnica preparada por el Politécnico Indoamericano. Este contenido es propiedad del Politécnico Indoamericano. Su difusión, reproducción o uso total o parcial para cualquier otro propósito queda prohibida. Todos los derechos reservados.
3
Fases del Proceso de Programación
La última tendencia es el uso de técnicas orientadas a objetos, que permiten la programación por especialización. Los objetos disponen de interfaces claras y los errores cometidos en su desarrollo pueden ser depurados sin que esto afecte a la corrección de otras partes del código y pueden ser heredados y reescritos parcialmente, haciendo posible su reutilización aún en situaciones no contempladas en el diseño inicial. 2. Ciclo de Vida del Software
El término ciclo de vida del software describe el desarrollo de software, desde la fase inicial hasta la fase final. El propósito de este programa es definir las distintas fases intermedias que se requieren para validar el desarrollo de la aplicación, es decir, para garantizar que el software cumpla los requisitos para la aplicación y verificación de los procedimientos de desarrollo: se asegura de que los métodos utilizados son apropiados.
Estos programas se originan en el hecho de que es muy costoso rectificar los errores que se detectan tarde dentro de la fase de implementación. El ciclo de vida permite que los errores se detecten lo antes posible y por lo tanto, permite a los desarrolladores concentrarse en la calidad del software, en los plazos de implementación y en los costos asociados. 2.1 Aplicaciones de Software El software puede aplicarse a numerosas situaciones del mundo real. En primer lugar, diremos que puede aplicarse a todos aquellos problemas para los que se ha establecido un conjunto de acciones que lleven a su resolución (algoritmo). En estos casos, usamos lenguajes para implementar estos algoritmos.
Es difícil establecer categorías genéricas para las aplicaciones del software. Cuanto más complejo es el mismo más complicado se hace establecer compartimentos claramente separados. No obstante, se suele aceptar esta clasificación: © Politécnico Indoamericano 2015 Nota Técnica preparada por el Politécnico Indoamericano. Este contenido es propiedad del Politécnico Indoamericano. Su difusión, reproducción o uso total o parcial para cualquier otro propósito queda prohibida. Todos los derechos reservados.
4
“El ciclo laboral de vidaes permite “Riesgo la poque los errores se detecsibilidad de un daño inten lo antes posible” minente debido a las condiciones en que se desempeña un trabajo”
Fases del Proceso de Programación
Figura 2. Ejemplos de tipos de software Citado de: http://www.tiposdesoftware.com/ 2.1.1 Software de sistemas. Formado por aquellos programas cuyo fin es servir al desarrollo o al funcionamiento de otros programas. Este tipo de programas son muy variados: editores, compiladores, sistemas operativos, entornos gráficos, programas de telecomunicaciones, etc., pero todos ellos tienen unos puntos en común y como estar muy próximos al hardware, ser utilizados por numerosos usuarios y por ser programas de difusión, no están diseñados normalmente a medida. Esto permite un mayor diseño y optimización, pero también les obliga a ser muy fiables, cumpliendo estrictamente las especificaciones para las que fueron creados. 2.1.2 Software de tiempo real Formado por aquellos programas que miden, analizan y controlan los sucesos del mundo real a medida que ocurren, debiendo reaccionar de forma correcta a los estímulos de entrada en un tiempo máximo prefijado. Deben, por tanto, cumplir unos requisitos temporales muy estrictos, además de ser fiables y tolerantes a fallos. Por otro lado, no suelen ser muy complejos y precisan de poca interacción con el usuario.
© Politécnico Indoamericano 2015 Nota Técnica preparada por el Politécnico Indoamericano. Este contenido es propiedad del Politécnico Indoamericano. Su difusión, reproducción o uso total o parcial para cualquier otro propósito queda prohibida. Todos los derechos reservados.
5
Fases del Proceso de Programación
2.1.3 Software de gestión Este tipo de programas utiliza grandes cantidades de información almacenadas en bases de datos para poder facilitar las transacciones comerciales o la toma de decisiones. Además de las tareas convencionales de procesamiento de datos, en las que el tiempo de procesamiento no es crítico y los errores pueden ser corregidos a posteriori, incluyen programas interactivos que sirven de soporte a las transacciones comerciales. 2.1.4 Software científico y de ingeniería. Es otro de los campos clásicos de aplicación de la informática. Se encarga de realizar complejos cálculos sobre datos numéricos de todo tipo. En este caso un requisito básico que deben cumplir es la corrección y exactitud de las operaciones que realizan.
Este campo se ha ampliado últimamente con el desarrollo de los sistemas de diseño, ingeniería y fabricación asistida por ordenador (CAD, CAE y CAM), lo simuladores gráficos y otras aplicaciones interactivas que lo acercan al software de tiempo real e incluso al de sistemas. 2.1.5 Software de ordenadores personales. El uso de ordenadores personales y de uso doméstico se ha extendido a lo largo de la última década. Aplicaciones típicas son los procesadores de texto, las hojas de cálculo, bases de datos, aplicaciones gráficas, juegos, etcétera. Son productos de amplia difusión orientados a usuarios no profesionales, por lo que sus principales requisitos son la facilidad en el uso y el bajo coste. 2.1.6 Software empotrado. Es aquél que va instalado en otros productos industriales, como por ejemplo la electrónica de consumo, dotando a estos productos de un grado de inteligencia cada vez mayor. Se aplica a todo tipo de productos, desde un vídeo doméstico hasta un misil con cabeza nuclear, pasando por sistemas de control de los automóviles, y realiza funciones muy diversas, desde © Politécnico Indoamericano 2015 Nota Técnica preparada por el Politécnico Indoamericano. Este contenido es propiedad del Politécnico Indoamericano. Su difusión, reproducción o uso total o parcial para cualquier otro propósito queda prohibida. Todos los derechos reservados.
6
Fases del Proceso de Programación
complicados cálculos en tiempo real a sencillas interacciones con el usuario facilitando el manejo del aparato que los incorpora. Comparten características con el software de sistemas, el de tiempo real, el de ingeniería y científico y el de ordenadores personales. 2.1.7 Software de inteligencia artificial. El software basado en lenguajes procedimentales es útil para realizar de forma rápida y fiable operaciones que para el ser humano son tediosas e incluso inabordables. Sin embargo, es difícil su aplicación a problemas que requieran funciones intelectuales más elevadas. Esta deficiencia trata de subsanarla el software de inteligencia artificial, basándose en el uso de lenguajes declarativos, sistemas expertos y redes neuronales. Como hemos visto, el software permite aplicaciones muy diversas, pero en todas ellas encontramos algo en común: el objetivo es que el software determine una determinada función cumpliendo, a su vez, una serie de requisitos (fiabilidad, corrección, respuesta en un tiempo determinado, facilidad de uso, bajo coste, etcétera) a la hora de desarrollar el software. 3. Fases del Proceso de Programación
El proceso de la creación de software requiere el uso de una metodología sistemática de desarrollo que permita un acercamiento gradual a la solución del problema que se intenta resolver. Esta metodología, llamada Ciclo de Desarrollo del Software, consta de una serie de pasos lógicos secuenciales denominados Fases. Aunque es posible crear programas sin la aplicación de esta metodología, el producto resultante carece de los beneficios que provee la utilización de este enfoque
© Politécnico Indoamericano 2015 Nota Técnica preparada por el Politécnico Indoamericano. Este contenido es propiedad del Politécnico Indoamericano. Su difusión, reproducción o uso total o parcial para cualquier otro propósito queda prohibida. Todos los derechos reservados.
7
Fases del Proceso de Programación
Figura 3. Representación grafica modelos ciclo de vida. Citado de: http://es.ccm.net/contents/223-ciclo-de-vida-del-software Las Fases de la Programación son:
Definición del problema
Análisis del problema
Diseño de la solución
Codificación
Prueba y Depuración (Puesta a Punto o Testing)
Documentación
Implementación (Producción)
Mantenimiento
Aunque el proceso de crear software es esencialmente un proceso creativo, el seguir esta serie de pasos lógicos conduce a la obtención de programas de mayor calidad. Es muy común que los principiantes se salten algunos pasos de esta metodología por desconocimiento o pereza, y procedan directo a la codificación de los programas. Esta práctica no sólo es incorrecta, sino que hace perder tiempo, dinero y esfuerzo. Aún los programadores experimentados y los profesionales utilizan esta metodología en el desarrollo de sus programas. Los resultados que se obtienen con su
© Politécnico Indoamericano 2015 Nota Técnica preparada por el Politécnico Indoamericano. Este contenido es propiedad del Politécnico Indoamericano. Su difusión, reproducción o uso total o parcial para cualquier otro propósito queda prohibida. Todos los derechos reservados.
8
Fases del Proceso de Programación
aplicación son más confiables, rápidos y seguros que los obtenidos mediante prácticas incorrectas y desordenadas 3.1 Definición del Problema: Consiste en la obtención sin ambigüedades de una visión general y clara del problema. Ayuda a identificar los elementos claves del problema y los de la futura solución, así como fijar los límites de los mismos basados en su planteamiento textual sobre el papel. Un problema mal planteado, incompleto o mal comprendido es un mal inicio para la programación. Las respuestas a las siguientes preguntas son claves para la correcta definición de un problema:
¿Qué entradas se requieren, de qué tipo, en qué orden y qué cantidad?
¿Qué salidas se desean, de qué tipo, en qué orden y qué cantidad?
¿Qué método(s) o fórmula(s) produce(n), o puede(n) producir las salidas deseadas?
Dependiendo de qué tan precisas sean las respuestas a esas preguntas, así será la definición del problema, sobre todo en cuanto al orden explícito de las entradas y las salidas esperadas. Mientras no se comprenda con claridad el problema por resolver no puede pasarse a la fase siguiente 3.2 Análisis del Problema: Es la comprensión a fondo del problema y sus detalles y es un requisito para lograr una solución eficaz. Es precisamente en esta fase donde se definen formal y correctamente la Entrada que recibirá el programa (datos o materia prima), la Salida que producirá (información o resultados) y el Proceso necesario para su solución (el método para convertirlos datos de entrada en información de salida). Cada uno de estos aspectos coincide respectivamente con las preguntas planteadas en la fase
© Politécnico Indoamericano 2015 Nota Técnica preparada por el Politécnico Indoamericano. Este contenido es propiedad del Politécnico Indoamericano. Su difusión, reproducción o uso total o parcial para cualquier otro propósito queda prohibida. Todos los derechos reservados.
9
Fases del Proceso de Programación
de Definición del Problema. A este enfoque se le conoce comúnmente como E-P-S (Entrada-Proceso-Salida) 3.3 Diseño de la solución En esta fase se diseña la lógica de la solución a usar, o sea, cómo hará el programa la tarea que se desea automatizar usando los datos de entrada para generar los datos de salida, enfatizándose los diseños limpios, sencillos y claros. Pueden plantearse diferentes alternativas de solución al problema y elegir la más adecuada, la que produzca los resultados esperados en el menor tiempo y al menor costo. El proceso de diseño se realiza en dos pasos: a. Elaboración del Algoritmo: Un algoritmo es una secuencia lógica y cronológica de pasos encaminados a resolver un problema. Las acciones básicas que puede llevar a cabo un algoritmo son: pedir datos, desplegar datos, evaluar condiciones y ejecutar operaciones. Los programas se estructuran a partir de los algoritmos, los cuales se pueden escribir utilizando la técnica convencional del pseudocódigo (mezcla de lenguaje común, términos técnicos de computación, símbolos y palabras reservadas de algún lenguaje de programación) y los diagramas de flujo (flujogramas) que son la representación gráfica de un algoritmo, plasmados en papel para su estudio. En el caso de emplear diagramas de flujo pueden emplearse herramientas de software tales como el DFD v1.0. Si se opta por el pseudocódigo, se recomienda escribirlos a doble interlínea para efecto de facilitar modificaciones o adición de acciones no consideradas y dotarlos de las siguientes características. b. Características de los Algoritmos
Un algoritmo debe tener un punto de inicio o partida.
Debe ser preciso e indicar el orden de realización de cada paso.
© Politécnico Indoamericano 2015 Nota Técnica preparada por el Politécnico Indoamericano. Este contenido es propiedad del Politécnico Indoamericano. Su difusión, reproducción o uso total o parcial para cualquier otro propósito queda prohibida. Todos los derechos reservados.
10
Fases del Proceso de Programación
Debe estar bien definido. Si se sigue un algoritmo dos veces, se debe obtener el mismo resultado cada vez
Debe ser finito (tener un número finito de pasos). Si se sigue un algoritmo, se debe terminar en algún momento.
La definición de un algoritmo debe describir con claridad las tres partes fundamentales del problema: Entrada, Proceso y salida encontradas en las fases de Definición y Análisis del problema. Se deja sentado que todos los programas empiezan primero en papel, no directamente frente a la computadora. Aún los programadores más experimentados plasman en papel sus ideas y soluciones antes de programarlas. Pero es común que los novatos vayan directamente a la computadora sin haber siquiera leído bien el problema o pensado siquiera el algoritmo. Eventualmente podrán concluir el programa y alcanzar una solución, pero sólo después de probar diferentes ideas, hacer miles de cambios y perder gran cantidad de tiempo y esfuerzo. Los que se toman tiempo para analizar el problema, pensar y plasmar su solución en papel mediante un algoritmo tendrán un tiempo de respuesta (el tiempo para obtener el programa terminado) mucho menor, y se convierten en mejores programadores. Es un hecho. Los problemas complejos pueden solucionarse más eficazmente utilizando el método "Divide y Vencerás", el que consiste en fraccionar un problema complejo en otros más simples y más fáciles de solucionar. Esto conduce a la Modulación del programa auxiliado por el método de diseño Top-Down o Descendente en el que se da un refinamiento de los pasos del algoritmo. De hecho, el enfoque E-P-S mencionado anteriormente es un buen ejemplo de esto, pues al concentrarse en resolver cada uno de los tres aspectos del enfoque de manera independiente se lograr la solución del problema completo. c. Realización de Pruebas de Escritorio: O sea, comprobaciones a mano del algoritmo planteado (en pseudocódigo o en diagrama de flujo) con datos y resultados de prueba conocidos, papel, lápiz y calculadora (si es necesaria) para simular su ejecución y evaluar su correcta operación. Si la lógica es correc© Politécnico Indoamericano 2015 Nota Técnica preparada por el Politécnico Indoamericano. Este contenido es propiedad del Politécnico Indoamericano. Su difusión, reproducción o uso total o parcial para cualquier otro propósito queda prohibida. Todos los derechos reservados.
11
Fases del Proceso de Programación
ta, los resultados serán satisfactorios. Si no, el algoritmo deberá modificarse y volverlo a probar hasta que esté correcto. Algunos programas no son fáciles de probar a mano por su complejidad y/o tamaño, pero en tu ayuda está la verificación durante la programación inicial (la creación del algoritmo), el trace and de bugging (rastreo y detección de errores) automático que incorporan los lenguajes de compiladores de los lenguajes de programación y otras técnicas. Se hace notar que éste acápite depende de los anteriores. Si la definición y el análisis son errados, el diseño del programa también lo será, por lo que se tendrá que rehacer, retrocediendo quizá hasta la fase de Definición del problema. 3.4 Codificación En este paso se traduce el algoritmo ya estructurado, verificado y comprobado a mano, al lenguaje de programación que vaya a utilizarse. Sólo se convierten las acciones del algoritmo en instrucciones de computadora usando la sintaxis de un lenguaje particular, pero requiere de conocimientos del lenguaje y de sumo cuidado en la colocación de las instrucciones, las que deben apegarse y seguir fielmente a la lógica del algoritmo y la semántica y sintaxis del lenguaje. La digitación, el acto de teclear el algoritmo codificado, se lleva a cabo para almacenar el programa en la memoria de la computadora (virtual o física) y pueda ser aceptado por esta. Con frecuencia los programadores realizan la codificación y la digitación al mismo tiempo a fin de ahorrar tiempo, pero esto puede conducir a errores debido a la pérdida de concentración que implica el uso de un editor. La compilación, o corrección de los errores sintácticos y semánticos del código, es la eliminación de los errores "gramaticales" según las reglas de construcción de instrucciones particulares del propio lenguaje (la sintaxis). Puede hacerse a medida que se traduce, pero es mejor al final para no perder la secuencia de la codificación. Al terminar debe tenerse el código libre de los errores antes mencionados. Para realizar la compilación puede hacerse uso de un compilador, el cual es un programa especial que analiza todo el código fuente y detecta los errores antes mencionados ocasio© Politécnico Indoamericano 2015 Nota Técnica preparada por el Politécnico Indoamericano. Este contenido es propiedad del Politécnico Indoamericano. Su difusión, reproducción o uso total o parcial para cualquier otro propósito queda prohibida. Todos los derechos reservados.
12
Fases del Proceso de Programación
nados durante la codificación o la digitación. Las fallas de lógica que puedan existir en nuestro programa no son detectadas por este software. Los errores que sí son evidenciados por el compilador deben corregirse modificando el programa fuente.
Prueba y Depuración (Puesta a Punto o Testing)
Una vez compilado el programa, este es sometido a pruebas a fin de determinar si resuelve o no el problema planteado en forma satisfactoria. Para ello le suministramos datos de prueba, como lo hicimos en la prueba de escritorio. El programa codificado y compilado no garantiza que funcione correctamente. Debe depurarse (librarse de errores de lógica o de ejecución) realizando corridas de prueba continuas con datos y respuestas conocidas como lo hicimos en la prueba de escritorio, verificando todas las posibles alternativas del programa y sus respuestas y haciendo el mayor número de variantes con sus combinaciones, a fin de determinar si resuelve o no el problema planteado en forma satisfactoria. Las pruebas que se aplican al programa son de diversa índole y generalmente dependen del tipo de problema que se está resolviendo. Comúnmente se inicia la prueba de un programa introduciendo datos válidos, inválidos e incongruentes y observando cómo reacciona en cada ocasión. Los resultados obtenidos en las pruebas pueden ser cualquiera de los siguientes:
a. La lógica del programa está bien, pero hay errores sencillos, los cuales los corregimos eliminando o modificando algunas instrucciones o incluyendo nuevas. b. Hay errores ocasionados por fallas en la lógica, lo que nos obliga a regresar a las fases de Diseño y Codificación para revisión y modificación del diagrama. c. Hay errores muy graves y lo más aconsejable es que regresemos a la fase 2 para analizar nuevamente el problema, y repetir todo el proceso. © Politécnico Indoamericano 2015 Nota Técnica preparada por el Politécnico Indoamericano. Este contenido es propiedad del Politécnico Indoamericano. Su difusión, reproducción o uso total o parcial para cualquier otro propósito queda prohibida. Todos los derechos reservados.
13
Fases del Proceso de Programación
d. No hay errores y los resultados son los esperados. En este caso guardamos el programa permanentemente en un medio de almacenamiento. Puede ser necesario en la mayoría de los casos retroceder a fases previas de desarrollo, revisar el algoritmo otra vez en caso de errores de análisis y/o lógica (que son los más difíciles de detectar, a diferencia de los de sintaxis y semántica), realizar ajustes al código y una serie de nuevas ejecuciones de prueba para que el programa funcione correctamente. Si no existen errores en el programa, puede entenderse la depuración como una etapa de refinamiento en la que se ajustan detalles para optimizar el desempeño del programa.
Si se está automatizando alguna tarea manual, es común poner a funcionar por un tiempo y de forma paralela ambas alternativas, a fin de comparar las salidas de ambas y adquirir confianza en la solución automatizada 3.5 Documentación Es la fase más ignorada por la mayoría de los programadores novatos, por razones de tiempo, costos o simple pereza. Pero no documentar los programas es un mal hábito en programación y un gran error. Será muy difícil a los usuarios entender un programa si no cuentan con un manual de operaciones (el Manual de Usuario). También para los programadores que necesiten darle mantenimiento o hacerle modificaciones si no existe ninguna documentación acerca de sus fases de desarrollo. Incluso será difícil de entender para el mismo autor, algún tiempo después. La documentación es la guía o comunicación escrita en sus variadas formas, ya sea en enunciados, procedimientos, dibujos o diagramas y sirve para ayudar a comprender o usar un programa o para facilitar futuras modificaciones (mantenimiento). Recoge todos los elementos encontrados y material creado en las diferentes fases del desarrollo, además de las normas de instalación o las recomendaciones para la ejecución del programa. La documentación se divide en tres partes:
© Politécnico Indoamericano 2015 Nota Técnica preparada por el Politécnico Indoamericano. Este contenido es propiedad del Politécnico Indoamericano. Su difusión, reproducción o uso total o parcial para cualquier otro propósito queda prohibida. Todos los derechos reservados.
14
Fases del Proceso de Programación
a. Documentación Interna b. Documentación Externa c. Manual del Usuario
a. Documentación Interna: Son los comentarios que se añaden al código fuente para clarificarlo. b. Documentación Externa: Es todo el material creado y empleado en las diferentes fases del desarrollo del programa. Incluye:
Descripción del Problema
Narrativo con la descripción de la solución
Autor(s)
Algoritmo (diagrama de flujo y/o pseudocódigo)
Código Fuente (programa)
Relación de los elementos utilizados en el programa, cada uno con su respectiva función
Limitaciones del programa
c. Manual del Usuario: Describe paso a paso la manera cómo funciona el programa, con el fin de que los usuarios pueda operarlo correctamente y obtener los resultados deseados 3.6 Implementación (Producción) El programa ya probado, revisado y mejorado se considera terminado y puede utilizarse con un alto grado de confianza para resolver los problemas que dieron origen a su creación. Si se está automatizando alguna tarea manual, ésta última se desecha para emplear solamente el programa. 3.7 Mantenimiento Es posible que el programa deba revisarse cada cierto tiempo para ajustes. Estos cambios pueden ser por la dinámica del problema, por la naturaleza del código, las exigencias del tiempo o las modernas necesidades © Politécnico Indoamericano 2015 Nota Técnica preparada por el Politécnico Indoamericano. Este contenido es propiedad del Politécnico Indoamericano. Su difusión, reproducción o uso total o parcial para cualquier otro propósito queda prohibida. Todos los derechos reservados.
15
Fases del Proceso de Programación
que surgen frecuentemente, por lo que se considera que ningún programa es estático. Conclusiones
El desarrollo de aplicaciones de software debe contar con una metodología adecuada para cumplir con los estándares de calidad y los requisitos necesarios para satisfacer las necesidades del usuario final
Para realizar la aprobación del desarrollo de un software se utiliza el ciclo de vida, el cual valida el desarrollo de la aplicación, la verificación de los procedimientos de desarrollo y se asegura de la implementación de una adecuada metodología
El ciclo de desarrollo del software, es la metodología que a través de una serie de pasos lógicos secuenciales garantizan un acercamiento gradual a la solución del problema que se intenta resolver
Referencias Bibliográficas
Ralph Moseley (2007). Desarrollo de aplicaciones web: España. Anaya multimedia
Alvarado García Sánchez (2012). Despliegue de aplicaciones web. Barcelona: Garceta grupo editorial.
David Martínez (2010). Aplicaciones web: Un enfoque práctico:
Perú.
Ra-Ma
Fernando Alonso. Y Loic Martínez (2005). Introducción a la ingeniería del software: Modelo de desarrollo de programas. Delta
José Antonio Gutiérrez Mesa (2008). Planificación y Gestión de Proyectos Informáticos. Universidad de Alcalá de Henares
© Politécnico Indoamericano 2015 Nota Técnica preparada por el Politécnico Indoamericano. Este contenido es propiedad del Politécnico Indoamericano. Su difusión, reproducción o uso total o parcial para cualquier otro propósito queda prohibida. Todos los derechos reservados.
16