CAPITULO I. MARCO TEORICO
1.2. Análisis de las distintas posiciones teóricas sobre el objeto de investigación
1.2.18. Metodología de desarrollo de software
En la siguiente tabla se presenta una clasificación resumida de las metodologías de desarrollo de software, de donde se destacan básicamente tres tipos.
Tabla 1 Clasificación de las Metodologías de desarrollo de Software
Metodología Descripción Fundamento Utilización
Estructurada Metodología orientada a funciones (flujo de procesos),
descomposición de algoritmos, identificación de eventos a los que el sistema debe responder.
Diagramas de flujo de datos Sistemas Modulares Orientada a datos Metodología orientada a la estructuración de un sistema de software derivado del mapeo de las entradas a las salidas de datos del mismo.
Diagramas CRUD(Create, read, update, delete) Sistemas de manejo de información. Orientada a Objetos Metodología orientada al modelamiento de sistemas de software como una colección de objetos. Consiguiendo una unificación de sus
Diagramas de clases, Proceso unificado Rational (RUP) METRICA (que también soporta la notación estructurada) Sistemas Interactivos
24 métodos y notaciones, que posteriormente se reoriente a un objetivo más modesto, para dar lugar al lenguaje Unificado de Modelado (UML).
Tradicionales o
No Agiles. Son aquellas que están guiadas por una fuerte planificación durante todo el proceso de desarrollo, donde se realiza una intensa etapa de análisis y diseño antes de la construcción del sistema.
Las metodologías antes indicadas pueden considerarse metodologías tradicionales. Realizando una configuración adecuada, podría considerarse ágil. Sistemas de manejo de información. Sistemas interactivos. Metodologías Agiles Un proceso es ágil cuando el desarrollo de software es incremental (entregas pequeñas de software, con ciclos
rápidos). Cooperativo
(cliente y desarrolladores trabajan juntos
constantemente con una cercana comunicación), sencillo (el método en sí mismo es fácil de aprender y modificar, bien documentado) y adaptable (permite realizar cambios de último momento).
Entre las metodologías
ágiles tenemos: La
programación
extrema formulada por Kent Beck. Es el más destacado de los procesos ágiles de desarrollo de software. Principalmente pone más énfasis en la adaptabilidad que en la previsibilidad. Scrum es un modelo de desarrollo ágil caracterizado por
adoptar una estrategia
de desarrollo
incremental, en lugar de la planificación y ejecución completa del producto.
Solapamiento de las diferentes fases del desarrollo, en lugar de realizar una tras otra en un ciclo secuencial o de cascada. Sistema de manejo de información. Sistemas Interactivos.
Fuente: Sommerville, Ian. Ingeniería del Software, (7ª Edición), Madrid: Pearson Education, S.A.
1.1.18.1. Metodología de Desarrollo RAD (Rapid Application Development)
Es una metodología que permite a las distintas organizaciones, el desarrollo de sistemas, de manera rápida, reduciendo costos de desarrollo y mejorando su calidad.
Sommerville (2008), indica que las técnicas de desarrollo rápido de aplicaciones (RAD), evolucionaron de los lenguajes de cuarta generación en los años ochenta; y se utilizan para
25
desarrollar aplicaciones con uso intensivo de datos. Normalmente están organizadas como un conjunto de herramientas que permiten crear datos, buscar, visualizar y presentar a través de informes.
Las herramientas que incluyen en un entorno RAD, según Somerville(2008) son:
1. Lenguaje de programación de base de datos, que contiene conocimiento sobre la estructura de la base de datos y que incluye las operaciones básicas de manipulación de datos. Los comandos SQL, se pueden introducir directamente o de forma automática, mediante formularios digitados por los usuarios finales.
2. Generador de interfaces, que se utiliza para la creación de formularios para la introducción y visualización de datos.
3. Enlaces a aplicaciones de oficina, como una hoja de cálculo para el análisis y manipulación de información numérica o un procesador de textos para la creación de plantillas de informes.
4. Un generador de informes, que se utiliza para definir y crear informes, a partir de la información de las bases de datos.
Los sistemas RAD, son muy exitosos, debido a que las aplicaciones tienen muchas cosas en común. Principalmente, a menudo estas aplicaciones comprender la actualización de una BD, y la producción de informes, a partir de la información existente en ella. Se utilizan formularios estándar para las entradas y salidas. Los sistemas RAD están dirigidos a la producción de aplicaciones interactivas que se apoyan la abstracción de la información en una base de datos organizacional, presentándose a los usuarios finales en su terminal o estación de trabajo y actualización de base de datos, con los cambios realizados por los usuarios. Sommerville (2008).
RAD, cuenta con cuatro etapas en su ciclo de vida, las mismas que se exponen a continuación:
1. Etapa de planificación de requisitos. En esta etapa se entrevista a las personas que tienen mayor conocimiento en la empresa, las mismas que deben conocer toda la problemática existente y que requieran solución; estas personas a su vez, forman la “Junta de planificación de requisitos”, en la que se dará a conocer los requerimientos de la empresa, para realizar una correcta planificación.
26
2. Etapa de Diseño. En esta etapa se realiza el análisis de las actividades de la empresa, en relación con el desarrollo propuesto. Los usuarios, son quienes facilitan el desglose de las funciones, y se definen existencias en el sistema. Seguidamente se diseñan los diagramas en los cuales se estudian la relación de procesos y datos; una vez realizado el análisis se procede a realizar el bosquejo del sistema; se elaboran los procedimientos y diseños de pantalla, los prototipos se construyen, estudian y preparan el plan de implementación del sistema propuesto.
3. Construcción. En esta etapa se desarrolla la elaboración del sistema, en conjunto con el usuario final, el mismo que puede verificar y sugerir algún requisito propuesto y verificar los resultados. En esta etapa también se elaboran las pruebas, la documentación e instrucciones del sistema.
4. Implementación. En esta etapa se presencial la transición del nuevo sistema por el antiguo; se procede con la capacitación a los usuarios; la operación del nuevo sistema, va en paralelo hasta que el nuevo se establezca definitivamente.