Está en la página 1de 29

INGENIERIA DE SOFTWARE

UNIDAD 2: SEGUNDA FASE - MODELAMIENTO

PRESENTADO POR
EDINSON SARRIA - Código 1114818589
DENIS DENZEL PORTOCARRERO - Código 1087202090
LEIDY JOHANNA VARGAS MEDINA - Código 1116251279
ANDRES MAURICIO PEREZ - Código 10303531

TUTOR
WILLIAM ENRIQUE PALENCIA

GRUPO: 301404_4

INGENIERIA DE SISTEMAS

UNIVERSIDAD ABIERTA Y A DISTANCIA UNAD


PALMIRA VALLE
2019
Introducción

Durante el desarrollo de la actividad de modelamiento en el cual modelaremos

el proceso y diseño de una propuesta de desarrollo de software, en el cual

analizaremos el tipo y especificaciones del proyecto, detallando cada una de

las fases del modelo seleccionado, definiendo roles y distribuyendo tareas para

la compilación de este trabajo colaborativo final. de acuerdo al tipo y

especificaciones del proyecto, identificando las fases, roles, recursos y

características de la metodología seleccionada, a continuación, detallaremos

los roles seleccionados por cada uno:

EDINSON SARRIA: Relator, Responsable de la relatoría de todos los procesos

en forma escrita. También es responsable por recopilar y sistematizar la

información a entregar al facilitador-docente.

DENIS DENZEL PORTOCARRERO: Evaluador, Asegurar que el documento

contenga los criterios presentes en la rúbrica. Debe comunicar a la persona

encargada de las alertas para que informe a los demás integrantes del equipo

en caso que haya que realizar algún ajuste sobre el tema.

LEIDY JOHANNA VARGAS MEDINA: Vigía del Tiempo, Controla el cronograma

de tiempo establecido, y es responsable porque el equipo desarrolle las

diferentes actividades dentro del tiempo pactado.


ANDRES MAURICIO PEREZ: Dinamizador del Proceso, Quien se preocupa por

verificar al interior del equipo que se estén asumiendo las responsabilidades

individuales y de grupo, propicia que se mantenga el interés por la actividad

y por último cuestiona permanentemente al grupo para generar puentes entre

lo que ya se aprendió.
CASO DE ESTUDIO

La empresa de desarrollo de software Moreno & Asociados S.A.S desea

realizar un software que permita una solución para todos aquellos turistas

que visitan un municipio de Colombia y por lo general no conocen el lugar y

mucho menos su historia. La aplicación funcionaría para que los turistas

puedan descargarla fácilmente. Al suscribirse tendrán toda la información de

lugares, eventos, historia y ofertas de toda clase del municipio donde se

encuentre. Esta aplicación facilita la ubicación de cada lugar y negocio que

se encuentra en el municipio ofreciendo una información detallada y precisa,

tan precisa que podrá saber si en la tienda de don Chucho hay gaseosa, o en

la hostería de doña Rosa hay habitaciones disponibles, este es un ejemplo

de la información que se podría encontrar en la aplicación. Claro está, que

también encontrará la historia y la cultura del lugar, ofreciendo una

experiencia placentera al visitante. El visitante encontrará lugares que no

conocía, tendrá un guía turístico en la palma de sus manos y contará con las

recomendaciones de las personas que hayan visitado esos lugares, también

podrá realizar sus compras o reservas en línea y disfrutar de los descuentos

que tenga cada negocio. Ejemplo tomado de: Proyecto presentado a

convocatoria Colciencias, 2017.


1. Resumen de la propuesta de software que trabajarán como grupo

y que seleccionaron en la fase anterior. (Tipo de software y

descripción de la propuesta de software).

Se pretende desarrollar un aplicativo que sea multiplataforma,

permitiendo que su usabilidad este dado tanto para dispositivos móviles

como para computadoras, necesitando únicamente el uso de un navegador y

conexión a internet, omitiendo así la instalación de otro tipo de software

adicional, este aplicativo tendrá una arquitectura de desarrollo

Cliente/Servidor, y estará desarrollado bajo un lenguaje de programación

que como anteriormente dijimos nos permita montarlo y trabajarlo en

diferentes tipos de sistemas operativos (Windows, Linux, IOs, Android), con

esto garantizamos que cualquier persona con algún medio tecnológico

disponga del aplicativo y le dé, el uso necesario, el software debe tener una

conexión constante a una base de datos con la cual mantendrá su

información actualizada y disponible las 24 horas del día.

El objetivo del desarrollo del aplicativo es dinamizar los procesos de

compra y venta en todo lo concerniente al turismo de un determinado

municipio en Colombia, se busca que por medio de este, los diferentes tipos

de clientes (Empresas de Turismo, Empresarios Locales, Lugareños o

Habitantes, Escuelas, Colegios y Universidades) Dispongan de Información


en tiempo real, del comercio turístico de la zona, permitiéndoles por medio

de este generar compras, pedir domicilios, reservar sitios, consultar

disponibilidad, precios, compras en línea, descuentos, promociones,

inventarios, cancelaciones, etc, por medio de este aplicativo a la hora de

generar una compra el cliente podrá descargar su respectiva factura y con

esto podrá garantizar la seguridad de sus adquisiciones.

2. Modelo de desarrollo de software seleccionado.

Seleccionare el MODELO CASCADA

se define como una secuencia de actividades, donde la estrategia principal

es seguir el progreso del desarrollo de software hacia puntos de revisión

bien definidos (milestones o checkpoints) mediante entregas calendarizadas

(Schedule), el orden de las actividades del desarrollo de software. No se

muestra una etapa explícita de documentación dado que ésta se lleva a cabo

en el transcurso de todo el desarrollo. El modelo original planteaba que cada

actividad debía completarse antes de poder continuar con la siguiente

actividad. Sin embargo, en una revisión posterior se extendió el modelo

permitiendo el regreso a actividades anteriores.


Modelo Cascada

3. Explicación y justificación de la selección del modelo.

Nos basamos en este tipo de modelo para el desarrollo del software ya que

además de estar muy estandarizado es un modelo clásico, siendo un sistema

que cuenta con una secuencia de fases que permitirían la construcción de un

sistema de alta calidad, este modelo lleva un orden de ejecución, podríamos

decir que está compuesto por etapas, dichas etapas llevan un orden de

ejecución de arriba hacia abajo, que a su vez siendo un modelo dinámico

nos permite retomar fases anteriores para realizar su corrección.


4. Descripción de las fases del ciclo de vida y su aplicación para la

propuesta de desarrollo, de acuerdo al modelo seleccionado.

Requisitos del software: En esta fase se hace un análisis de las

necesidades del cliente para determinar las características del software a

desarrollar, y se especifica todo lo que debe hacer el sistema sin entrar en

detalles técnicos.

En este punto la empresa La empresa de desarrollo de software Moreno &

Asociados S.A.S, realizará un estudio técnico de los requisitos que requiere

cada uno de los clientes, puede ser por medio de un tipo de encuesta la cual

permitirá recolectar los requisitos que cada cliente desea tener en el

aplicativo a desarrollar, luego de esto se analizará cada uno de ellos y se

resumirá en una sola lista de requisitos permitiendo así cumplir a cabalidad

con las exigencias de todos los clientes, para esta fase tendremos un tiempo

de dos (2) Semanas para su ejecución.

Diseño: En esta etapa se describe la estructura interna del software, y las

relaciones entre las entidades que lo componen.

Descompone y organiza el sistema en elementos que puedan elaborarse por

separado, aprovechando las ventajas del desarrollo en equipo. Como


resultado surge el SDD (Documento de Diseño del Software), que contiene

la descripción de la estructura relacional global del sistema y la

especificación de lo que debe hacer cada una de sus partes, así como la

manera en que se combinan unas con otras.

Acá la empresa trabajara el diseño de las entidades y sus relaciones,

elaboración de la base de datos, diagrama de entidades, casos de uso, el

desarrollo diseño visual de la aplicación y una vez definido esta parte

continuara el desarrollo del algoritmo y código del mismo, para esta fase

contaremos con un tiempo de tres (3) semanas.

Implementación: En esta fase se programan los requisitos especificados

haciendo uso de las estructuras de datos diseñadas en la fase anterior. La

programación es el proceso que lleva de la formulación de un problema de

computación, a un programa que se ejecute produciendo los pasos

necesarios para resolver dicho problema.

En esta fase la compañía trabajara la codificación mediante la

implementación de un lenguaje de programación que permita crear un

código ejecutable que cumpla con los requisitos para los cuales está siendo

desarrollado el software.
Como lenguaje de programación utilizaremos Python, siendo un lenguaje de

programación multiparadigma (diferentes métodos de programación) y que

soporta orientado a objetos, es multiplataforma y dinámico, y como entorno

de desarrollo tendremos a Django, su objetivo es el desarrollo de páginas y

aplicativos web, por otro lado, trabajaremos nuestra base de datos en

MySQL, siendo esta la base de datos de código abierto más popular y usada

a nivel mundial, esta fase contara con cinco (5) semanas.

Verificación: Como su propio nombre indica, una vez se termina la fase de

implementación se verifica que todos los componentes del sistema funcionen

correctamente y cumplen con los requisitos.

Lanzar una versión de prueba para determinada muestra de la población

puede ser una opción para recolectar información acerca de las fallas que

puede presentar el software, permitiendo con este tipo de práctica corregir

los bugs, aumentar la calidad del software, refinar el código, etc, esta fase

tendrá un tiempo determinado de tres (3) semanas.

Instalación y mantenimiento: Una vez se han desarrollado todas las

funcionalidades del software y se ha comprobado que funcionan

correctamente, se inicia la fase de instalación y mantenimiento. Se instala la

aplicación en el sistema y se comprueba que funcione correctamente en el


entorno en que se va a utilizar.

En este punto la empresa se asegura que el software funcione de manera

correcta, permitiendo que más usuarios puedan acceder a la aplicación,

dándole un uso más comercial, luego de esto vendrán los respectivos

mantenimientos con los cuales se podrán corregir fallas o mejorar el sistema

permitiendo un rendimiento más óptimo es esta fase contaremos con tres

(3) semanas para implementarla.

5. Descripción del equipo de trabajo y de los roles que

implementarán de acuerdo al modelo seleccionado.

 Administrador del proyecto: El administrador de proyectos es la

persona que tiene la responsabilidad global en un proyecto para que el

inicio, la planificación, el diseño, la ejecución, la revisión, el control y

el cierre de dicho proyecto sean exitosos.

Es la persona responsable de tomar decisiones, tanto grandes como

pequeñas. El administrador de proyectos debe asegurarse de controlar

el riesgo y minimizar la incertidumbre. Cada decisión que tome debe

beneficiar directamente a su proyecto.


 Analista de Sistemas: encargado del desarrollo de aplicaciones en lo

que respecta a su diseño y obtención de los algoritmos, así como de

analizar las posibles utilidades y modificaciones necesarias en el

desarrollo de software para una mayor eficacia de un sistema

informático. Otra misión de estas personas es dar apoyo técnico a los

usuarios.

 Diseñador o desarrollador: es un especialista en informática que es

capaz de concebir y elaborar sistemas informáticos (paquetes de

software), así como de implementarlos y ponerlos a punto, utilizando

uno o varios lenguajes de programación.

 Clientes y Usuarios: son las personas que utiliza o adquiere el

software desarrollado, que ha puesto a disposición La empresa de

desarrollo de software Moreno & Asociados S.A.S, teniendo como fin

mejorar el comercio y turismo en una determinada región de

Colombia.

6. Descripción de las herramientas y métodos de control que

sugieren utilizar dentro del proceso de desarrollo de software

(control de ejecución, control de cumplimiento, control de calidad,

etc).
Como herramienta y método de control tomaremos la norma ISO

9000:2000, con la cual nos aseguraremos la obtención de un software con

calidad, implica la utilización de metodologías o procedimientos estándares

para el análisis, diseño, programación y prueba del software que permitan

uniformar la filosofía de trabajo, en aras de lograr una mayor confiabilidad,

mantenibilidad y facilidad de prueba, a la vez que eleven la productividad,

tanto para la labor de desarrollo como para el control de la calidad del

software.

Gestión de Calidad: Aplicar la política de la calidad, los objetivos y las

responsabilidades y que lo realiza con medios tales como la planificación de

la calidad, el control de la calidad, la garantía de calidad y la mejora de la

calidad.

 Gestión de la calidad de software (ISO 9000): Conjunto de

actividades de la función general de la dirección que determina la

calidad, los objetivos y las responsabilidades y se implanta por medios

tales como la planificación de la calidad, el control de la calidad, el

aseguramiento (garantía) de la calidad y la mejora de la calidad, en el

marco del sistema de calidad.


 Política de calidad (ISO 9000): Directrices y objetivos generales de

una organización, relativos a la calidad, tal como se expresan

formalmente por la alta dirección.

El aseguramiento de la calidad: El aseguramiento de calidad del software se

diseña para cada aplicación antes de comenzar a desarrollarla. Hay quienes

prefieren decir garantía de calidad en vez de aseguramiento.

 Aseguramiento de la calidad: Conjunto de acciones planificadas y

sistemáticas necesarias para proporcionar la confianza adecuada de

que un producto o servicio satisfará los requerimientos dados sobre

calidad.

 Aseguramiento de la calidad de software: Conjunto de actividades

planificadas y sistemáticas necesarias para aportar la confianza en que

el producto (software) satisfará los requisitos dados de calidad.

El control de la calidad: El control de la calidad del software está centrado

en dos objetivos fundamentales, Mantener bajo control un proceso y

eliminar las causas de los defectos en las diferentes fases del ciclo de vida.
Control de calidad: Conjunto de técnicas y actividades de carácter

operativo, utilizadas para verificar los requerimientos relativos a la calidad

del producto o servicio.

Control de la calidad del software: Técnicas y actividades de carácter

operativo, utilizadas para verificar los requisitos relativos a la calidad,

centradas en mantener bajo control el proceso de desarrollo y eliminar las

causas de los defectos en las diferentes fases del ciclo de vida.

Sistema de calidad: Estructura organizativa, procedimientos, procesos y

recursos necesarios para implantar la gestión de calidad.

El sistema de calidad se debe adecuar a los objetivos de la calidad de la

empresa. La dirección de la empresa es la responsable de fijar la política de


calidad y las decisiones relativas a iniciar, desarrollar, implantar y actualizar

el sistema de calidad. Un sistema de calidad consta de varias partes:

Documentación

Manual de calidad: Es el documento principal para establecer e implantar

un sistema de calidad. Puede haber manuales a nivel de empresa,

departamento, producto, específicos (compras, proyectos).

Parte física: locales, herramientas ordenadoras, etc.

Aspectos humanos: Formación de personal, creación y coordinación de

equipos de trabajo.

Normativas:

ISO 9000: Gestión y aseguramiento de calidad (conceptos y directrices

generales). Recomendaciones externas para aseguramiento de la calidad

(ISO 9001, ISO 9002, ISO 9003).

Recomendaciones internas para aseguramiento de la calidad (ISO 9004).

Principios de la gestión de la calidad según ISO 9000: 2000

Los ocho principios de la gestión de la calidad identificados para lograr los


objetivos de la calidad, según "ISO 9000:2000 Sistemas de Gestión de la

Calidad. Fundamentos y vocabulario." son:

Enfoque al cliente. Las organizaciones dependen de sus clientes y por la

tanto deberían comprender las necesidades actuales y futuras de los

clientes, satisfacer los requisitos de los clientes y esforzarse en exceder las

expectativas de los clientes.

Liderazgo. Los líderes establecen la unidad de propósito y la orientación de

la organización. Ellos deberían crear y mantener un ambiente interno, en el

cual el personal pueda llegar a involucrarse totalmente en el logro de los

objetivos de la organización.

Participación del personal. El personal, a todos los niveles, es la esencia

de una organización y su total compromiso posibilita que sus habilidades

sean usadas para el beneficio de la organización.

Enfoque basado en procesos. Un resultado deseado se alcanza más

eficientemente cuando las actividades y los recursos relacionados se

gestionan como un proceso.


Enfoque de sistema hacia la gestión. Identificar, entender y gestionar los

procesos interrelacionados como un sistema, contribuye a la eficacia y

eficiencia de una organización en el logro de sus objetivos.

Mejora continua. La mejora continua del desempeño global de la

organización debería ser un objetivo permanente de ésta.

Enfoque basado en hechos para la toma de decisiones. Las decisiones

eficaces se basan en el análisis de los datos y la información.

Relación mutuamente beneficiosa con el proveedor. Una organización

y sus proveedores son interdependientes, y una relación mutuamente

beneficiosa aumenta la capacidad de ambos para crear valor.

Estándares de calidad

 ISO/IEC JTC1-SC7

 Ingeniería de Software y de Sistemas.

 IEEE – CS

 ISO 9126 – Calidad del producto.

 ISO 14598 – Evaluación de productos de software.

 ISO 12119 – Requerimientos de Calidad y Testing de COTS.

 ISO 15939 – Proceso de medición de software.


Aportaciones del modelo ISO 9001: 2000

Cuando la Organización Internacional para la Normalización visualiza la

futura evolución de la familia ISO 9000 desde el final de la década de los

noventa, habla de unos estándares más dirigidos hacia la obtención de

resultados, incluyendo la satisfacción de clientes y otros stakeholdres.

El primer borrador (CD 1) del Comité ISO/CT 176 para la nueva versión de

las normas de la familia ISO 9000 aportó tres mejoras claras sobre la

existente ISO 9000:94 (entre paréntesis se detalla el párrafo del draft

correspondiente de ISO CD 1):

Conocimiento del cliente.

 Los requisitos del cliente deben cumplirse y en la medida de lo posible

ser excedidos (1.1).

 Se deben determinar los requisitos del cliente (no sólo los requisitos

del contrato) (5.2).

 La dirección debe mantener un sistema que permita conocer los

requisitos del cliente (5.5.5).

 Los requisitos no identificados por el cliente también deben ser tenidos

en cuenta (7.2.1).
 El sistema establecido de comunicación con los clientes debe ser

controlado (7.2.4).

 Se debe establecer procedimientos para obtener y dar uso apropiado a

la información sobre la satisfacción del cliente (8.2.1.1).

Mejora continua.

 La política de calidad incluye compromisos de mejora continua (5.3).

 Los recursos suministrados por la organización deben hacer posible la

mejora del sistema de Gestión de la Calidad (6.1).

 Las auditorias internas incluirán acciones de mejora (8.2.1.2).

 Establecer métodos de medida que indiquen oportunidades de mejora

interna (8.2.2).

 Establecer procesos para la mejora continua (8.4.3).

Capacidad del personal: debe ser competente, recibir formación, estar

cualificados y tener experiencia. Estos puntos siguen siendo una aportación

clara en el desarrollo del segundo borrador de febrero de 1999, ISO CD2

9001 Draft, y finalmente quedan plenamente consolidados en la versión

definitiva.
HERRAMIENTA DE CONTROL DE VERSIONES

Los sistemas de control de versiones fueron pensados para registrar todos los

cambios que se aplican a un proyecto, por lo que siempre puedes recuperar una

versión más antigua en cualquier momento. También identifican al usuario

responsable de cada modificación. Uno de los principales beneficios es el acceso

compartido a los archivos y el desarrollo a la vez de varias bifurcaciones o

branches.
Como nos ayudan:

 Te permiten guardar toda la historia de tu proyecto y acceder a todas sus

versiones.

 Si te equivocas tranquilo, siempre podrás volver a la versión/ versiones

anteriores.

 El trabajo en equipo es más sencillo.

Para el desarrollo de este proyecto tendremos una herramienta de control tipo

SVN, Funciona como un punto de sincronización donde cada desarrollador es un

nodo de trabajo, y todos son iguales ante el repositorio remoto central, SVN

dispone de un repositorio central único desde donde se generan copias de trabajo

en la totalidad del proyecto.

Beneficios:

 Modo de numeración de repositorios muy intuitivo, por lo que es más fácil

volver a versiones anteriores.

 Al almacenarse todas las versiones en un mismo lugar (sistema

centralizado), es más fácil encontrar lo que buscas.

 Con Subversion se puede extraer un subdirectorio de un repositorio.

 La copia de seguridad de los repositorios centrales de Subversion es muy

simple.
También realizaremos un control de versiones con copia de seguridad tipo

distribuido a un repositorio, en la que almacenaremos varias copias de nuestro

código en los diferentes equipos disponibles para el trabajo de programación es

decir en clientes, con esto aseguraremos que las fallas sean resueltas de forma

inmediata sin alterar el código original, solo hasta que el que se está modificando

está en mejores condiciones, permitiendo así una mayor confiablidad en nuestros

desarrolladores sin perder el producto final.

HERRAMIENTA GESTIÓN TAREAS

La clave para que podamos trabajar de una manera ágil a la vez que rigurosa, es

que esta herramienta esté enfocada a la casuística propia de la gestión de

proyectos software para evitar que desgaste a los usuarios con más overhead. En

este sentido, dentro de la suite de soluciones de Atlassian la herramienta JIRA y

todo el conjunto de herramientas complementarias nos permiten gestionar el

desarrollo a todos los niveles, teniendo desde una trazabilidad de las incidencias a

nivel de línea de código, hasta épicas o proyectos con el plugin JIRA Agile. Si todo

esto además lo integramos con nuestro ERP de trabajo, cerramos el círculo de la

gestión de manera óptima.

Compilación y construcción

Normalmente será necesario realizar algún tipo de empaquetado y procesamiento

de nuestras fuentes previo a la publicación. Para ello nos valdremos de

herramientas como ANT, Maven o Gradle que nos proporcionan un lenguaje para la
definición de tareas repetitivas sobre nuestro código que lanzará posteriormente

nuestro servidor de integración contínua.

Servidor Integración Contínua

Opciones destacables serían Hudson / Jenkins o Bamboo. En nuestro caso por

ventajas con la integración y trazabilidad con herramientas de Atlassian nos

decidimos por Bamboo. Es importante hacer una buena reflexión y análisis de esta

herramienta, ya que es el verdadero motor de la automatización de tareas. Nos

permitirá la ejecución de scripts para descarga de fuentes de los repositorios,

compilación, construcción, ejecución de tests, generación de reportes y avisos,

despliegue y ejecuciones locales y remotas, etc.

La filosofía de la integración continua se basa en que este proceso debe ejecutarse

de manera autónoma cada vez que un usuario hace un commit contra la rama

central de desarrollo, pero debemos ser capaces de adaptar la integración a

nuestras necesidades. Por ejemplo, lo lógico sería si contamos con una batería de

tests importante, que con cada commit lancemos una batería de tests de manera

aleatoria y con una frecuencia programada adaptada a nuestro volumen de líneas

de código, programemos una compilación diaria con todos los tests.

Phonegap / Cordova

Aunque existen otras alternativas para el desarrollo multiplataforma, esta es

nuestra elección. Phonegap / Cordova permite desarrollar APPs en Javascript

ofreciendo una API de acceso al dispositivo también en JS. Además, existe la


posibilidad de acceso a recursos nativos específicos del dispositivo a través del

desarrollo de plugins o utilización de los que va generando la comunidad. Una

ventaja muy importante de esta elección es que un desarrollador web tiene una

curva de aprendizaje muy baja para empezar a ser productivo haciendo APPs.

Framework de desarrollo

Lógicamente partiendo del punto anterior, debemos plantearnos la arquitectura de

nuestra aplicación, que estará desarrollada en Javascript. Para ello lo adecuado será

utilizar algún framework javascript que nos haga la vida más fácil y nos permita

tener un código más limpio, pero eso sí, es importante la elección de alguno que

esté consolidado en el mercado.

Existen alternativas full stack como jQuery Mobile o Sencha Touch, que nos dan

una solución completa a la gestión de Arquitectura, UI y DOM.

Phonegap Build

Construir los ejecutables de las aplicaciones que se deben instalar en los

dispositivos es un proceso bastante repetitivo para todas las plataformas a las que

queramos llegar. Una opción muy interesante a evaluar por su razonable coste es

Phonegap Build de Adobe. Este entorno, que dispone de una API para conectar con

nuestro servidor de integración continua, se encarga de generar el ejecutable final

de nuestra aplicación en Phonegap / Cordova sin necesidad de preocuparnos

demasiado o tener que disponer de un servidor MAC que realice estas tareas si

queremos llegar a dispositivos Apple con nuestra APP. Además, Phonegap Build
también nos ofrece la posibilidad de que nuestros clientes puedan descargarse

directamente la APP de su sistema mediante una URL que nos facilitan junto a un

código QR.

Documentación

Debemos contar con un espacio abierto para almacenar la documentación. En este

punto distinguiría dos maneras en las que debemos documentar:

A bajo nivel, a través de herramientas como jsduck o JSDoc podemos generar una

documentación navegable en HTML a partir ciertas variables que insertemos en

nuestro código fuente y que nos ayudarán a hacerlo más comprensible.

A alto nivel, a través de una wiki correctamente organizada dónde registraremos

documentación tipo “howto”, retrospectivas, casos de uso, historias de usuario,

solución de problemas, etc.


CONCLUSION

¿Por qué consideran que el modelo de software elegido por el grupo es el más

pertinente para responder a las necesidades planteadas en el caso de estudio?

Es un modelo lineal de diseño de software que emplea un proceso de diseño basado

en secuencias. Este modelo tiene sus fases de desarrollo de manera ordenada y

fluye a tal punto que no se puede continuar sin haber realizado la tarea anterior,

ente sus fases encontramos: planteamiento, iniciación, análisis, diseño,

construcción, pruebas, implementación y mantenimiento.

Esta metodología en cascada se pone en la planificación de proyecto y, por tanto,

antes de comenzar cualquier tipo de desarrollo es necesario que tenga ien

planificado el plan de desarrollo para dicho proyecto, entre sus ventajas tenemos:

 Comenzar con el software con bastante rapidez.

 Estimar calendarios y presupuestos con mayor precisión.

 Lograr un nivel de satisfacción del cliente más elevado que otros enfoques,

ya desde el principio.

La metodología en cascada supera algunas de las limitaciones de otros métodos,

como: A/ Scrum: los procesos de desarrollo que siguen la metodología en cascada

tienden a ser más seguro, ya que existe una firme orientación al plan. A diferencia

del método Scrum, donde el abandono de uno de los miembros del equipo puede
suponer un grave problema, con la metodología en cascada no lo sería, ya que se

dispone de una completa planificación y documentación que permite suplir este tipo

de pérdidas. De esta forma, un nuevo diseñador puede fácilmente tomar la posición

vacante siguiendo el plan de desarrollo sin ningún problema. B/ Ágil: aunque

altamente flexible, el enfoque ágil no tiene la estructura que tiene la metodología

en cascada, lo que implica algunos inconvenientes. Los más significativos son los

que tienen que ver con la dificultad para predecir los presupuestos a partir de líneas

de tiempo. Y es que, sin una planificación completa, todos los aspectos quedan

vagamente definidos y son susceptibles de generar confusión.


BIBLIOGRAFIA

• Weitzenfeld, A. (2007). Modelo de Proceso. En Ingeniería de Software

Orientada a Objetos con UML, Java e Internet (pp. [35]-50). Mexico City, Mexico:

http://bibliotecavirtual.unad.edu.co:2619/apps/doc/CX3004300023/GVRL?u=unad&

sid=GVRL&xid=23dc4521

• Weitzenfeld, A. (2007). Modelos Clásicos. En Ingeniería de Software

Orientada a Objetos con UML, Java e Internet (pp. 50-54). México City, México:

http://bibliotecavirtual.unad.edu.co:2619/apps/doc/CX3004300024/GVRL?u=unad&

sid=GVRL&xid=69d44b62

• Weitzenfeld, A. (2007). Modelos Recientes. En Ingeniería de Software

Orientada a Objetos con UML, Java e Internet (pp. 54-56). México City, México:

http://bibliotecavirtual.unad.edu.co:2619/apps/doc/CX3004300025/GVRL?u=unad&

sid=GVRL&xid=8d8a7106

• Schwaber, K. & Sutherland, J. (2013). La Guía definitiva de Scrum

http://www.scrumguides.org/docs/scrumguide/v1/Scrum-Guide-ES.pdf

También podría gustarte