Está en la página 1de 15

INVESTIGACIÓN

PROGRAMACIÓN
AVANZADA
Fases de un modelo general de desarrollo de
software, metodología de desarrollo Watch

Jair Balcázar, Adrian Becerra, Steven Calderón


Programación Avanzada
Noveno
02/12/2021

SANTO DOMINGO, ECUADOR


ÍNDICE DE CONTENIDOS
1. Introducción2
2. Objetivo General2
3. Objetivo Específico2
4. Marco Teórico2
4.1 Fases del modelo general de desarrollo de software2
4.1.1 Fase de definición3
4.1.1.1 Planificación del proyecto3
4.1.1.2 Captura de requisitos3
4.1.1.2.1 Requerimientos Funcionales3
4.1.1.2.2 Requerimientos no Funcionales3
4.1.1.2.3 Requerimientos de Implementación4
4.1.1.3 Análisis de los requisitos4
4.1.2 Fase de desarrollo4
4.1.2.1 Diseño del software4
4.1.2.2 Codificación4
4.1.2.2.1 Escribir código fuente4
4.1.2.2.2 Realizar pruebas unitarias5
4.1.2.2.3 Realizar pruebas de funcionalidad5
4.1.2.3 Pruebas5
4.1.2.4 Implementación5
4.1.3 Fase de mantenimiento5
4.2 Metodología de desarrollo Watch6
4.2.1 Beneficios de este modelo6
4.2.2 Modelo de procesos WATCH7
4.2.2.1 Fases8
5. Conclusión13
6. Referencias14

Programación avanzada 1
FASES DEL MODELO GENERAL DE DESARROLLO SOFTWARE Y
METODOLOGÍA DE DESARROLLO WATCH
1. Introducción

Las fases del modelo general de desarrollo de software son aquellas etapas que se
aplican en cada proyecto de software independientemente de la metodología que se utilice
para llevar a cabo el proyecto. Como nos indica (Pressman, 2010) La estructura de un
modelo de desarrollo de software establece el proceso para llevar a cabo un proyecto por
medio de la identificación de un número pequeño de actividades estructurales que sean
aplicables a todos los proyectos de software, sin importar su tamaño o complejidad. (pág.
12)

El método Watch es para describir el ciclo de vida de un componente de software


reutilizable. Este es un método que describe en detalle todo el proceso de especificación
hasta el lanzamiento de un componente de software. Este método se implementa de
acuerdo a conceptos de ingeniería de métodos, esto incluye el modelado de procesos,
agregado a la misma propuesta presentada por Montilva en 2002, donde se agregó la
especificación. Está orientado al desarrollo de un tipo específico de software conocido
como aplicación empresarial.

2. Objetivo General
 Conocer metodologías de desarrollo de software para aplicarlas en el desarrollo
de proyectos informáticos.
3. Objetivo Específico
 Conocer las fases del modelo general de desarrollo de software.
 Entender las actividades que se realizan de cada fase del modelo general de
desarrollo de software.
 Conocer las características principales del modelo WATCH sobre otros en la
aplicación de desarrollo de un producto.
 Entender las fases y componentes que integran el modelo WATCH.
4. Marco Teórico
4.1 Fases del modelo general de desarrollo de software

Generalmente un proyecto de desarrollo de software se lo divide en 3 apartados


los cuales son:

Programación avanzada 2
4.1.1 Fase de definición
4.1.1.1 Planificación del proyecto

Según las palabras de (Ruiz, y otros, 2017) esta etapa se considera la más
importante dentro del ciclo de desarrollo de software, es necesario que las actividades de
esta etapa sean realizadas por personal con experiencia ya que es considerada una etapa
crítica y si no se realiza bien puede traer consecuencias negativas para el proyecto. (pág.
20)

4.1.1.2 Captura de requisitos

Según nos indica el autor (Ruiz, y otros, 2017) en esta etapa es necesario
identificar las personas y áreas de organización afectadas con el problema, también es
muy importante elegir correctamente las técnicas o herramientas que se utilizan para
facilitar la recopilación de la información necesaria, las técnicas pueden ser entrevistas,
cuestionarios u optar por observar el funcionamiento normal del entorno y si es necesario
participar en él. (pág. 20)

Dentro de los requisitos es importante mencionar que existen 3 tipos de requisitos


o también conocidos como requerimientos.

4.1.1.2.1 Requerimientos Funcionales

Como lo menciona (Ruiz, y otros, 2017) los requerimientos funcionales son


aquellos que describen las interacciones entre el producto y el entorno los cuales pueden
ser usuarios u otros sistemas por ejemplo se debe validar el número de cédula identidad
o que luego de guardar los datos se debe enviar un correo electrónico de confirmación.
(pág. 21)

4.1.1.2.2 Requerimientos no Funcionales

Según las palabras de (Ruiz, y otros, 2017) los requerimientos no funcionales son
aquellos aspectos visibles del producto que puede percibir el usuario y que no se
relacionan directamente con las funcionalidades del producto por ejemplo qué el software
tenga tiempos de respuesta muy cortos, qué optimice la utilización de memoria RAM y
el tipo de plataforma en la que estará disponible puede ser escritorio, web o móvil. (pág.
21)

Programación avanzada 3
4.1.1.2.3 Requerimientos de Implementación

En base a las palabras del autor (Ruiz, y otros, 2017) este tipo de requerimientos
hace referencia a la parte de hardware que es necesaria para la implementación del
software como pueden ser servidores, red o equipos de red como routers, switches etc.
(pág. 21)

4.1.1.3 Análisis de los requisitos

Según las menciona el autor (Ruiz, y otros, 2017) esta etapa consiste en identificar
las relaciones con otros módulos o componentes del producto y evaluar qué implicaciones
tiene realizar modificaciones en ellos en base a los datos obtenidos anteriormente. (pág.
19)

4.1.2 Fase de desarrollo


4.1.2.1 Diseño del software

Según lo indica (Ruiz, y otros, 2017) en esta fase los desarrolladores toman la
información anteriormente recabada y a partir de ella se elabora el diseño lógico del
producto. El diseño se enfoca en 4 atributos importantes. (pág. 21)

 Estructura de los datos


 Arquitectura del software
 Detalle procedimental
 Caracterización de la interfaz
4.1.2.2 Codificación

En este apartado se desarrolla todo lo relacionado a la escritura de código para


elaborar el producto y las pruebas que se realizan dentro de la codificación, en esta parte
se definen las siguientes actividades:

4.1.2.2.1 Escribir código fuente

Se trata de escribir código de alto nivel en un lenguaje de programación específico


en esta parte, el desarrollador deberá asegurarse que durante la escritura del código fuente
está siguiendo las normas y convenciones de codificación (Ruiz, y otros, 2017, pág. 23)

Programación avanzada 4
4.1.2.2.2 Realizar pruebas unitarias

Consiste en probar la funcionalidad de una parte del código fuente, tales como
rutinas, funciones, etc. con el objetivo de asegurar que los resultados devueltos sean los
correctos. (Ruiz, y otros, 2017, pág. 23)

4.1.2.2.3 Realizar pruebas de funcionalidad

Una vez que se tenga una versión terminada del producto, el desarrollador debe
realizar pruebas para asegurarse que las entradas definidas producen los resultados
esperados y que todos los componentes del producto funcionan correctamente. (Ruiz, y
otros, 2017, pág. 23)

4.1.2.3 Pruebas

Como lo indica el autor (Ruiz, y otros, 2017) una vez terminada la codificación,
el producto debe ser instalado en un ambiente de pruebas donde se busca comprobar que
el software funciona correctamente y cumple los requisitos del usuario, estas pruebas son
realizadas por el mismo usuario con la guía del desarrollador. (pág. 23)

4.1.2.4 Implementación

El propósito de esta etapa es instalar el software y en esta fase, se consideran las siguientes
actividades:

 Desplegar los archivos fuente


 Implementar los objetos de la base de datos.
 Verificar la funcionalidad del entregable
 Obtener la conformidad del usuario
 Firmar el acta de puesta en producción
 Entregar documentación
 Firmar el acta de cierre (Ruiz, y otros, 2017, pág. 25)
4.1.3 Fase de mantenimiento

Según lo que nos indica (MPEDICIONES, 2021) en muchos proyectos se


considera a esta etapa como mantenimiento y evolución en la cual no solo se agregan
nuevas funcionalidades sino que también se corrigen errores que se pueden haber filtrado
en la etapa de pruebas. (pág. 19)

Programación avanzada 5
4.2 Metodología de desarrollo Watch

Sirve para el desarrollo de aplicaciones empresariales. El método consta de tres


componentes:

 Modelo del producto. - Describe el tipo de producto que el método WATCH


ayuda a producir. Establece las características arquitectónicas generales de una
aplicación empresarial.
 Modelo del proceso. - Es una descripción estructurada del conjunto de
actividades que el grupo de desarrollo deberá seguir para producir una aplicación
empresarial.
 Modelo del grupo de desarrollo. - Este modelo describe como el grupo de
desarrollo debe estar organizado y cuáles son los roles de cada uno de sus
miembros. (Jonás A. Montilva C., 2004)
4.2.1 Beneficios de este modelo
1. Le agrega visibilidad al proyecto; pues, permite que el grupo de desarrollo y
los usuarios del sistema puedan conocer en qué estado se encuentra el proyecto
en cualquier momento.
2. Le facilita al líder del proyecto las labores de planificación y control del
proyecto.
3. Establece un marco metodológico único que estandariza el proceso de
desarrollo y unifica la documentación que se produce a lo largo del proyecto
de desarrollo de una aplicación.
4. Está fundamentado en modelos de procesos de la Ingeniería de Software
Basada en Componentes
5. Emplea las mejores prácticas, técnicas y notaciones utilizadas regularmente
en la industria del Software

El método WATCH emplea el paradigma de desarrollo de software basado en la


reutilización de componentes de software. En base a este paradigma, una aplicación
empresarial tiene una arquitectura de software de tres o más capas, en la que cada una de
las capas está compuesta de un conjunto de componentes de software interrelacionados
(Jonás A. Montilva C., 2004)

Programación avanzada 6
FIGURA 1: MODELO DE UNA APLICACIÓN EMPRESARIAL BASADA EN COMPONENTES
4.2.2 Modelo de procesos WATCH

Esta estructura está inspirada en la metáfora del reloj de pulsera (watch). Los
procesos gerenciales se ubican en el centro del reloj para indicar que ellos llevan el control
del desarrollo del proyecto. Los procesos de desarrollo se ubican, en forma circular, en
las posiciones del dial del reloj. El marco metodológico es cíclico, iterativo y controlado.
Cada ciclo de procesos de desarrollo produce una nueva versión del sistema o un nuevo
subsistema del sistema en desarrollo (Jonás A. Montilva C., 2004)

FIGURA 2 MODELOS DE PROCESOS WATCH

Programación avanzada 7
4.2.2.1 Fases

Objetivo Producto principal

Fase 1: MODELADO DEL NEGOCIO

Obtener un conocimiento global y detallado del Modelo del Sistema de Negocios (Modelo de
dominio de la aplicación empresarial Negocios)

Fase 2: INGENIERÍA DE REQUISITOS


Determinar las necesidades de información y
automatización de procesos de negocios,
Documento de Requisitos de la aplicación
mediante la definición y especificación de sus
requisito

Programación avanzada 8
Fase 3: DISEÑO ARQUITECTÓNICO
Elaborar un diseño de la arquitectura de la
aplicación empresarial que sea apropiada a los
requisitos especificados y que establezca los
subsistemas de la aplicación, los componentes de Descripción de la Arquitectura de la aplicación
cada subsistema, las conexiones entre estos
componentes y las restricciones que regulan la
arquitectura.

Fase 4: DISEÑO DE COMPONENTES

Elaborar los diseños detallados de los


componentes que integran cada uno de los Documento de Diseño y Plan de Pruebas
subsistemas de la aplicación.

Programación avanzada 9
Fase 5: APROVISIONAMIENTO DE COMPONENTES
 Búsqueda y adaptación de componentes
de software reutilizables que cumplan con
las especificaciones de componentes Colección de componentes asociados a cada
 Desarrollo de aquellos componentes que una de las tres capas de la aplicación
no puedan ser localizados o que no empresarial
satisfagan adecuadamente las
especificaciones de componentes

Fase 6: ENSAMBLAJE DE COMPONENTES


Implementar cada uno de las tres capas de la
Una aplicación integrada de acuerdo a la
aplicación empresarial mediante el ensamblaje de
arquitectura diseñada
componentes que fueron adquiridos, adaptados,

Programación avanzada 10
suscritos o desarrollados en la Fase 5.

Fase 7: PRUEBAS DE LA APLICACIÓN

Comprobar que la aplicación empresarial cumple


con los requisitos funcionales y no funcionales Aplicación empresarial probada
establecidos en la fase 2.

Programación avanzada 11
Fase 8: ENTREGA DE LA APLICACIÓN EMPRESARIAL

Instalar la aplicación empresarial en su ambiente


Aplicación empresarial en operación
de producción, ponerla en operación y entregarla
(producción)
a sus usuarios.

Programación avanzada 12
5. Conclusión
Las fases del modelo general de desarrollo de software son etapas qué se utilizan
para llevar a cabo un proyecto de software las cuales consisten en un cierto número de
actividades que deben ser cumplidas independientemente del tamaño o la complejidad
del proyecto.

WATCH es una metodología que permite desarrollar aplicaciones empresariales


utilizando componentes, a través de la implementación de una estructura de actividades
o fases basadas en la IEEE 1074 [IEEE95] que dan como resultados productos donde
permite dar visibilidad al cliente y a los desarrolladores, todo esto llevado de la mano de
buenas prácticas de ingeniería de software.

Programación avanzada 13
6. Referencias
Jonás A. Montilva C., P. (2004). Desarrollo de Aplicaciones Empresariales. Grupo de
Investigación en Ingeniería de Datos y Conocimiento .
MPEDICIONES. (29 de Noviembre de 2021). ingsw.pbworks.com. Obtenido de
Implementación y Debugging:
https://ingsw.pbworks.com/f/Ciclo+de+Vida+del+Software.pdf
Pressman, R. S. (2010). Ingeniería del software un enfoque práctico. México, D.F.:
McGraw-Hill. Obtenido de http://cotana.informatica.edu.bo/downloads/ld-
Ingenieria.de.software.enfoque.practico.7ed.Pressman.PDF
Ruiz, J. L., Palacín, E. F., Flores, E. F., Solano, C. H., Muñoz, R. L., Cordero, W. L., . .
. Ángeles, A. Z. (2017). METODOLOGÍA DE DESARROLLO. Uladech.
Obtenido de https://ingsw.pbworks.com/f/Ciclo+de+Vida+del+Software.pdf

Programación avanzada 14

También podría gustarte