Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Método Básico de Desarrollo de Software
Método Básico de Desarrollo de Software
TESIS
PRESENTA
Ana Luz Rodríguez Sarabia
DIRECTOR DE TESIS:
M.C. María Guadalupe Elena Ibargüengoitia González
M.A.T.I. Luis Armando Cárdenas Florido
A mi querido amigo Mario Ayala, por su amistad y sus sabias palabras. Gracias
Mario.
A todas las personas que en el largo transitar del camino a la meta me brindaron
su apoyo, paciencia y consejo, infinitas GRACIAS.
Resumen
Por eso es importante que los sistemas de información “no se equivoquen”, que
estén bien construidos, que sean robustos, confiables, íntegros, seguros,
mantenibles; que sean de calidad. Para desarrollar su cumplir con estos criterios
es necesario aplicar métodos y prácticas que nos guíen durante su construcción.
That is why it is important that information systems do “not make mistakes”, that
they are properly developed, be robust, reliable, integral, safe, sustainable, in
other words: with Quality. In order to achieve that the information systems have
these levels of quality, it is necessary to apply methodologies and practices that
guide their development.
In order to propose the methodology object of this thesis, the first chapter
describes the context of the organization. The intent is to position the reader on
the same perspective, if a software development methodology is used, the
students will have a guide for their professional residency together with their
thesis counselor in order to produce a homogeneous and standardized product.
The second chapter describes the foundation over which this thesis is built:
Software Engineering and KUALI-BEH. The basic concepts of software
engineering project management. It summarizes what KUALI-BEH is and what it
consists of. This chapter is the fundamental part of this thesis, and because of
that, it is important that the reader understands how the same concepts used in
software engineering are the fundament for the KUALI-BEH model; and these
concepts, once identified and defined, allow us to use the methodology and its
practices.
The objective of the third chapter is to show precisely how the methodology Basic
Software Development (BADESO) proposed and its practices comply with the
model KUALI-BEH, through which the practices and methods for software
development can be defined.
Once BADESO is defined, in the fourth chapter the practices that make up the
methodology are introduced, showing the contribution and importance of each of
these practices for the method and their interrelationship.
In the fifth chapter the application of the method on a residency project and the
results were shown
The sixth chapter contains the conclusion of the work performed and also, thanks
to the aplication of the method, the strengths and weaknesses of the method
identified. To conclude the chapter, a proposal is made of what the next version
of BADESO could be.
CONTENIDO
CONTENIDO .................................................................................................... 7
TABLA DE ILUSTRACIONES ......................................................................... 10
INTRODUCCIÓN .................................................................................................. 12
ANTECEDENTES ................................................................................................ 12
DESCRIPCIÓN DEL PROBLEMA ............................................................................. 13
OBJETIVO GENERAL .......................................................................................... 19
OBJETIVOS ESPECÍFICOS.................................................................................... 19
HIPÓTESIS ........................................................................................................ 19
BENEFICIOS Y ALCANCES ................................................................................... 19
INTRODUCCIÓN .................................................................................................. 21
INGENIERÍA DE SOFTWARE ................................................................................. 22
Conceptos principales de la Ingeniería de Software ................................... 24
Conceptos principales de la Administración del desarrollo de software ...... 26
Actividades de desarrollo de Ingeniería de Software .................................. 27
Modelo de desarrollo ................................................................................... 29
KUALI-BEH ..................................................................................................... 29
Conceptos comunes en proyectos de software ........................................... 31
Infraestructura de métodos y prácticas (MPI) .............................................. 33
Plantillas de KUALI-BEH ............................................................................. 33
INTRODUCCIÓN .................................................................................................. 38
CARACTERÍSTICAS DEL MÉTODO BADESO.......................................................... 39
pág. 7
KUALI-BEH CONCEPTOS COMUNES EN LOS PROYECTOS DE SOFTWARE Y BADESO
........................................................................................................................ 39
MÉTODO BADESO DEFINIDO EN LA PLANTILLA DE KUALI-BEH ............................ 42
BADESO COHERENTE, CONSISTENTE Y COMPLETO. ............................................ 43
Coherencia .................................................................................................. 45
Consistencia ................................................................................................ 62
Completo ..................................................................................................... 72
INTRODUCCIÓN .................................................................................................. 76
PRÁCTICAS DE BADESO ................................................................................... 76
PRÁCTICAS ADMINISTRATIVAS DE BADESO ........................................................ 77
Determinar el alcance del sistema (PA1). ................................................... 77
Definir el plan del proyecto (PA2). ............................................................... 81
Obtener aprobación de avance por el cliente (PA5). ................................... 85
Dar a conocer el manejo de estándares para el proyecto (PA6). ................ 88
PRÁCTICAS DE EQUIPO DE BADESO .................................................................. 93
Definir mecanismos de comunicación del equipo (PE4).............................. 96
Manejar cambios en el proyecto (PA7). .................................................... 100
PRÁCTICAS DE DESARROLLO DE BADESO ........................................................ 102
Modelar el negocio (PD8). ......................................................................... 103
Obtener requisitos del sistema (PD9). ....................................................... 105
Realizar el análisis del sistema (PD10). .................................................... 108
Diseñar el sistema (PD11)......................................................................... 110
Construir el sistema (PD12). ..................................................................... 114
Probar el Sistema (PD13).......................................................................... 117
Implantar el sistema (PD14). ..................................................................... 121
pág. 8
INTRODUCCIÓN ................................................................................................ 125
DATOS DE LA EMPRESA .................................................................................... 125
ACTIVIDADES Y EXPERIENCIAS DURANTE LA RESIDENCIA PROFESIONAL APLICANDO
BADESO ....................................................................................................... 127
Determinar el alcance del sistema (PA1). ................................................. 127
Dar a conocer el manejo de estándares para el proyecto (PA6). .............. 129
Obtener aprobación del cliente (PA5). ...................................................... 131
Organizar el equipo (PE3). ........................................................................ 132
Definir mecanismos de comunicación del equipo (PE4)............................ 133
Manejar cambios en el proyecto (PA7). .................................................... 134
Plan del proyecto (PA2)............................................................................. 135
Modelar el negocio (PD8). ......................................................................... 136
Obtener requisitos del sistema (PD9) ........................................................ 137
Realizar el análisis del sistema (PD10). .................................................... 138
Diseñar el sistema (PD11)......................................................................... 139
Construir el sistema (PD12). ..................................................................... 141
Probar el sistema (PD13). ......................................................................... 142
Implantar el sistema (PD14). ..................................................................... 144
Conclusión de la aplicación de BADESO .................................................. 145
pág. 9
TABLA DE ILUSTRACIONES
Ilustración 1 Estructura global del modelo KUALI-BEH ...................................... 30
pág. 10
Ilustración 19 Prácticas Determinar el alcance del sistema (PA1), Definir el plan
del proyecto (PA2) y Organizar el equipo (PE3) de los procesos organizativos.
........................................................................................................................... 61
Ilustración 26 De Definir el plan del proyecto (PA2) hasta Obtener requisitos del
sistema (PD9) y Realizar el análisis del sistema (PD10). ................................... 71
pág. 11
Capítulo 1 Planteamiento del
problema
Introducción
La producción de software se ha incrementado notablemente en los últimos
tiempos y de forma directamente proporcional, su complejidad y diversidad de
aplicaciones. Construir software con calidad es de vital importancia; más que por
el retraso en la entrega o la elevación de costos planeados, porque puede influir
en decisiones de vida o muerte. Por lo cual, para lograr un software con calidad
en tiempo y dentro del presupuesto, es necesario un enfoque organizado.
Antecedentes
Cuando se habla de desarrollo de proyectos de software es imposible no citar la
crisis del software con el bajo número de proyectos exitosos, presupuestos
sobrepasados, requerimientos ignorados y demanda creciente de software, que
más que una crisis dio origen a una aflicción.
pág. 12
Capítulo 1 Planteamiento del problema
pág. 13
Capítulo 1 Planteamiento del problema
pág. 14
Capítulo 1 Planteamiento del problema
pág. 15
Capítulo 1 Planteamiento del problema
Para los revisores, en algunos casos se pueden generar reportes más completos
que otros, lo que implica una inversión adicional de tiempo y esfuerzo en aquellos
proyectos que carecen de la documentación apropiada.
pág. 16
Capítulo 1 Planteamiento del problema
pág. 17
Capítulo 1 Planteamiento del problema
Los asesores y los residentes, como cualquier empresa que desarrolla software,
con el tiempo han aplicado distintos enfoques de desarrollo y se han adquirido
experiencia en prácticas que históricamente han alcanzado mejores resultados;
mismas que por lo mismo se han adoptado como parte de los métodos de trabajo.
Sin embargo, no están documentadas. Para documentar dicho proceso se
propone usar el modelo KUALI-BEH. De esta forma se tendría una guía
documentada para todos los residentes.
1 No silver bullet
pág. 18
Capítulo 1 Planteamiento del problema
Objetivo General
Definir un método y sus prácticas para las Residencias Profesionales permitirá la
realización de proyectos homogéneos sin importar quién sea el asesor.
Objetivos específicos
Identificar y definir las prácticas aplicadas para el desarrollo de proyectos
de software en Residencias Profesionales; es decir, un proceso definido y
predecible que provea una adecuada visibilidad a los residentes.
Definir el método conformado con el conjunto de prácticas.
Especificar el método y sus respectivas prácticas a través del modelo
KUALI-BEH.
Tener un marco común para proyectos de desarrollo de software.
Hipótesis
Es posible especificar un método y sus prácticas para el desarrollo de proyectos
de software de las Residencias Profesionales con KUALI-BEH; que pueda
aplicarse a cualquier proyecto de software, sin importar su tamaño, su
complejidad, el número de integrantes en el equipo de trabajo y el ciclo de vida.
Beneficios y alcances
Para los asesores internos que tienen especialidades diferentes a desarrollo
de proyectos de software será más fácil administrar proyectos de Residencias
Profesionales de Software, porque se tendría una guía de la cual partir.
Al asesor interno se le facilitará la entrega de reportes de avance de
Residencias Profesionales del asesor interno.
pág. 19
Capítulo 1 Planteamiento del problema
pág. 20
Capítulo 2 Ingeniería de Software y
KUALI-BEH
“Los que se enamoran de la práctica sin la teoría son como los
pilotos sin timón ni brújula, que nunca podrán saber a dónde
van.” Leonardo Da Vinci.
Introducción
Un proyecto es un esfuerzo que se lleva a cabo para crear un producto, servicio
o resultado único, tiene la característica de ser naturalmente temporal, es decir,
que tiene un inicio y un final establecidos, y que al final se alcanza cuando se
logran los objetivos del proyecto o cuando se termina el proyecto porque los
objetivos no se cumplieron o no pueden ser cumplidos o cuando ya no existe la
necesidad que dio origen al proyecto (PMBOK, 2015). Sin embargo, al ejecutarlo
es posible aplicar técnicas y métodos comunes.
pág. 21
Capítulo 2 Ingeniería de Software y KUALI-BEH
Para esta tesis documentaremos las prácticas y el método para las Residencias
Profesionales a través de KUALI-BEH.
Ingeniería de Software
La Ingeniería de Software es una disciplina que tiene como meta el desarrollo de
sistemas de software con calidad, a tiempo y costeable. Desde 1968 se ha
procurado el desarrollo de software dentro del marco de esta disciplina. A
continuación cito una definición de Ingeniería de Software “La Ingeniería de
Software es una disciplina de la ingeniería que comprende todos los aspectos de
la producción de software desde las etapas iniciales de la especificación del
sistema hasta el mantenimiento de éste después de que se utiliza” (Sommerville,
2005).
pág. 22
Capítulo 2 Ingeniería de Software y KUALI-BEH
El autor destaca dos aspectos claves dentro de la definición. El primero, que los
ingenieros hacen que las cosas funcionen aunque no existan teorías y métodos
explícitos para resolver los problemas que se les presenten. El segundo aspecto
que enfatiza dentro de la definición es el hecho de que construir software abarca
más que el proceso técnico; implica administración del proceso de desarrollo,
gestión de proyectos y otras actividades de apoyo para la producción del software.
pág. 23
Capítulo 2 Ingeniería de Software y KUALI-BEH
Participantes y papeles
Sistemas y modelos
Productos de trabajo
Actividad
pág. 24
Capítulo 2 Ingeniería de Software y KUALI-BEH
Tarea
“Representa una unidad atómica de trabajo que puede ser administrada” (Bruegge
& Dutoit, 2002). Construir un componente del software es una tarea que realiza un
desarrollador y que es asignada por el desarrollador líder. Las tareas usan
recursos para procesar las entradas (que pueden ser artefactos resultantes de
otras actividades o fases) y producir artefactos.
Recursos
“Bienes que se usan para realizar el trabajo” (Bruegge & Dutoit, 2002). Los
recursos pueden ser materiales, humanos e incluso de software. Sin los recursos
no pueden llevarse a cabo las tareas y por lo tanto tampoco pueden producirse
artefactos.
Objetivo
“Es un principio de alto nivel que se usa para guiar el proyecto” (Bruegge
& Dutoit, 2002).
Requerimientos
Notación
pág. 25
Capítulo 2 Ingeniería de Software y KUALI-BEH
Método
Una metodología
La administración del desarrollo de software (Bruegge & Dutoit, 2002) incluye las
actividades que ayudan y sirven de apoyo para realizar el proyecto. El autor
menciona las siguientes:
Comunicación
pág. 26
Capítulo 2 Ingeniería de Software y KUALI-BEH
Administración de la fundamentación
Pruebas
“…es el proceso que supervisa y controla los cambios en los productos de trabajo”
(Bruegge & Dutoit, 2002). Esta actividad busca prevenir problemas en el sistema
y en su desarrollo.
Obtención de requerimientos
pág. 27
Capítulo 2 Ingeniería de Software y KUALI-BEH
“…el cliente y los desarrolladores definen el propósito del sistema” (Bruegge &
Dutoit, 2002). En esta actividad se describen los requerimientos del sistema y se
modelan.
Análisis
“…los desarrolladores tratan de producir un modelo del sistema que sea correcto,
consistente, claro, realista y verificable” (Bruegge & Dutoit, 2002). El modelo del
análisis dice qué se va a construir.
“Los desarrolladores definen los objetivos del diseño del proyecto y descomponen
el sistema en subsistemas más pequeños que pueden realizar los equipos
individuales” (Bruegge & Dutoit, 2002). El diseño del sistema describe cómo se
construirán los modelos del análisis.
Diseño de objetos1
Implementación
1 El diseño de objetos es una actividad que maneja el autor (Bruegge & Dutoit, 2002) que no
necesariamente se maneja de la misma forma en el presente trabajo. La mención se realiza porque
forma parte del conjunto de conceptos que él maneja dentro de las actividades de desarrollo de
Ingeniería de Software.
pág. 28
Capítulo 2 Ingeniería de Software y KUALI-BEH
KUALI-BEH
KUALI-BEH forma parte de la especificación formal ESSENCE versión 1.0.
[Morales M., O. H. (2012). KUALI-BEH Software Project Common Concepts.
Object Management Group. Retrieved from http://www.kuali-
kaans.mx/proyectos/kuali-beh]
pág. 29
Capítulo 2 Ingeniería de Software y KUALI-BEH
KUALI-BEH está compuesto por dos vistas: la estática que proporciona un marco
para la definición de métodos para desarrollar proyectos de software y la vista
operacional en la que se maneja su ejecución.
pág. 30
Capítulo 2 Ingeniería de Software y KUALI-BEH
Proyecto de software
Los involucrados3, las necesidades de las partes interesadas y las condiciones del
proyecto, definen los objetivos a cumplir en el producto de software que va a ser
construido por el equipo de trabajo, mismo que es conformado por los
profesionales de la Ingeniería de Software.
pág. 31
Capítulo 2 Ingeniería de Software y KUALI-BEH
Definición de método
Definición de práctica
Una práctica es una guía formada de actividades y tareas para procesar entradas
auxiliándose de herramientas, se requiere tener conocimientos y habilidades para
obtener resultados que cumplan con las condiciones acordadas.
La consistencia implica que debe haber al menos una práctica cuya entrada sea
igual con la entrada del método y al menos una práctica cuyo resultado sea igual
al resultado del método; así como también la salida de una práctica debe ser igual
a la entrada de al menos otra práctica, y la entrada igual a la salida de otra
práctica.
pág. 32
Capítulo 2 Ingeniería de Software y KUALI-BEH
Plantillas de KUALI-BEH
KUALI-BEH maneja las siguientes tres plantillas: para proyectos de software, para
método y para práctica.
pág. 33
Capítulo 2 Ingeniería de Software y KUALI-BEH
[nombre]
Interesado
[lista de interesados]
Entradas Resultados
Método
[método seleccionado, …]
Equipo de trabajo
[desarrolladorA,
…,
desarrolladorZ, …]
pág. 34
Capítulo 2 Ingeniería de Software y KUALI-BEH
[identificador] Método
[nombre]
Propósito
[propósito]
Entrada Resultado
Prácticas
Resultados de la pràctica, …]
pág. 35
Capítulo 2 Ingeniería de Software y KUALI-BEH
Práctica
Nombre
Objetivo
Entrada Resultado
Guía
Actividades
Herramientas (opcional)
Conocimientos y habilidades
Criterios de Verificación
Métricas
pág. 36
Capítulo 2 Ingeniería de Software y KUALI-BEH
Para llevar a cabo esta tesis fue necesario manejar los conceptos inherentes al
desarrollo de proyectos de software; tanto los elementos de Ingeniería de
Software como los conceptos de KUALI-BEH. Esto para definir el método guía que
se propone y se describe a través de las plantillas que proporciona KUALI-BEH
para este fin.
pág. 37
Capítulo 3 Método Básico de
Desarrollo de Software (BADESO).
Introducción
Se ha descrito en los capítulos anteriores qué es Ingeniería de Software, en qué
consiste KUALI-BEH y cuál es su propósito.
Aunque BADESO está pensado para que sirva de guía a los Proyectos de
desarrollo de Software de Residencias Profesionales del Instituto Tecnológico de
La Paz (ITLP); también puede utilizarse en las materias del área de Ingeniería de
Software, que tienen un proyecto integrador para la construcción de software.
pág. 38
Capítulo 3 Método Básico de Desarrollo de Software (BADESO).
pág. 39
Capítulo 3 Método Básico de Desarrollo de Software (BADESO).
pág. 40
Capítulo 3 Método Básico de Desarrollo de Software (BADESO).
Producto de Software
Son las necesidades particulares del proyecto que pueden afectar el éxito del
mismo.
Partes Interesadas2
Las partes interesadas son los clientes o patrocinadores, los que deciden la
aceptación del proyecto y por lo tanto de ellos depende el éxito del proyecto. En
el caso de BADESO las Partes Interesadas son: para efectos de documentación,
el asesor externo; para efectos prácticos, todos aquellos que están interesados
en el sistema que se va a desarrollar y que proporcionan información necesaria
para su desarrollo.
Equipo de trabajo
pág. 41
Capítulo 3 Método Básico de Desarrollo de Software (BADESO).
Desarrolladores
BADESO Método
Propósito
Entrada Resultado
pág. 42
Capítulo 3 Método Básico de Desarrollo de Software (BADESO).
Prácticas
pág. 43
Capítulo 3 Método Básico de Desarrollo de Software (BADESO).
pág. 44
Capítulo 3 Método Básico de Desarrollo de Software (BADESO).
Coherencia
a) Comprobar que los objetivos de las catorce prácticas del método BADESO
cumplen con los objetivos del método.
b) Si es así, se concluye que el método BADESO cumple con la propiedad de
coherencia.
pág. 45
Capítulo 3 Método Básico de Desarrollo de Software (BADESO).
procesos del ciclo de vida del software” entonces se concluye que el método
cumple con la propiedad de coherencia.
Estos procesos tienen tareas y actividades que permiten construir los productos
de software que se entregarán al cliente. Para los procesos principales se
requieren ejecutar las prácticas de desarrollo: Modelar el negocio (PD8), Obtener
requisitos del sistema (PD9), Realizar el análisis del sistema (PD10), Diseñar el
sistema (PD11), Construir el sistema (PD12), Probar el sistema (PD13) e
Implantar el sistema (PD14).
Los procesos de apoyo, ayudan a otros procesos con un propósito bien definido y
contribuyen al éxito y calidad del proyecto de software. Para llevar a cabo los
procesos de apoyo es necesario realizar el conjunto de prácticas propuestas:
Definir mecanismos de comunicación del equipo (PE4), Obtener aprobación de
avance por el cliente (PA5), Dar a conocer el manejo de estándares para el
proyecto (PA6) y Manejar cambios en el proyecto (PA7).
Procesos principales
Modelar el negocio (PD8).
pág. 46
Capítulo 3 Método Básico de Desarrollo de Software (BADESO).
Obtener requisitos del sistema (PD9) y Realizar el análisis del sistema (PD10).
Las prácticas Obtener requisitos del sistema (PD9) y Realizar el análisis del
sistema (PD10) se ejecutan de forma paralela (Ilustración 10), y una vez
realizadas son aprobadas a través de aplicar: Obtener aprobación de avance por
el cliente (PA5), para obtener el Documento de modelo de requisitos aprobado y
el Documento de modelo de análisis aprobado. Esto se logra a través de los
objetivos de cada una de estas prácticas:
Obtener requisitos del sistema (PD9) plantea como objetivo: “Definir los requisitos
del sistema a construir a partir de la comprensión del problema y su entorno”.
El objetivo de Realizar el análisis del sistema (PD10) es: “Construir los modelos
del análisis del sistema”. Es necesario hacer un borrador del sistema de los
servicios que el cliente quiere; y eso se plasma en el Documento de modelo de
análisis.
pág. 47
Capítulo 3 Método Básico de Desarrollo de Software (BADESO).
pág. 48
Capítulo 3 Método Básico de Desarrollo de Software (BADESO).
Ilustración 10 Obtener requisitos del sistema (PD9) y Realizar el análisis del sistema (PD10).
pág. 49
Capítulo 3 Método Básico de Desarrollo de Software (BADESO).
La práctica Probar el sistema (PD13) tiene como objetivos: “Aplicar pruebas del
sistema y de aceptación y, Generar manuales del sistema”. Los resultados de esta
práctica (Ilustración 13) contribuyen con el manual técnico y de usuario; y con el
resultado del método que es el software y además van integrando el Documento
de implementación que forma parte de los resultados de la práctica Implantar el
sistema (PD14).
pág. 50
Capítulo 3 Método Básico de Desarrollo de Software (BADESO).
pág. 51
Capítulo 3 Método Básico de Desarrollo de Software (BADESO).
pág. 52
Capítulo 3 Método Básico de Desarrollo de Software (BADESO).
pág. 53
Capítulo 3 Método Básico de Desarrollo de Software (BADESO).
pág. 54
Capítulo 3 Método Básico de Desarrollo de Software (BADESO).
Procesos de apoyo
Obtener aprobación de avance por el cliente (PA5).
La práctica tiene como objetivo: “Dar a conocer los estándares que se utilizarán
en el proyecto”. Por lo que establece el manejo de los estándares que se van a
utilizar a lo largo de la ejecución del proyecto, y es importante explicarlos al inicio
del proyecto (como se muestra en la ilustración 16) porque van a ser utilizados en
todas las prácticas del método.
pág. 55
Capítulo 3 Método Básico de Desarrollo de Software (BADESO).
Ilustración 15 Práctica Obtener aprobación de avance por el cliente (PA5) y su aplicación en las diferentes prácticas a través del método
pág. 56
Capítulo 3 Método Básico de Desarrollo de Software (BADESO).
Ilustración 16 Práctica Dar a conocer el manejo de estándares para el proyecto (PA6) y su efecto en el resto de las prácticas.
pág. 57
Capítulo 3 Método Básico de Desarrollo de Software (BADESO).
pág. 58
Capítulo 3 Método Básico de Desarrollo de Software (BADESO).
Procesos Organizativos
Determinar el alcance del sistema (PA1).
Para una buena administración del proyecto se debe establecer la planeación del
desarrollo, este es el objetivo de la práctica: “Elaborar un plan que asegure que el
producto se construya dentro del tiempo, con calidad y de acuerdo a las
necesidades del cliente”.
pág. 59
Capítulo 3 Método Básico de Desarrollo de Software (BADESO).
Ilustración 18 Práctica Definir los mecanismos de comunicación del equipo (PE4) como parte de los procesos de apoyo.
pág. 60
Capítulo 3 Método Básico de Desarrollo de Software (BADESO).
Ilustración 19 Prácticas Determinar el alcance del sistema (PA1), Definir el plan del proyecto (PA2) y Organizar el equipo (PE3) de los procesos
organizativos.
pág. 61
Capítulo 3 Método Básico de Desarrollo de Software (BADESO).
Consistencia
pág. 62
Capítulo 3 Método Básico de Desarrollo de Software (BADESO).
Realmente haya una práctica que tenga como entrada la entrada del
método y la salida de alguna práctica sea la salida del método y, todas las
intermedias usen lo que generó la anterior y su resultado sea la entrada de
la que sigue.
a) Primero mostrar que todas las prácticas están relacionadas al menos con
otra práctica a través de un diagrama donde se muestre dicha relación a
través de sus entradas y resultados.
b) Mostrar paso a paso cómo se van relacionando las prácticas para obtener
los resultados del método.
c) Por lo tanto se concluiría que el método BADESO cumple con la propiedad
de consistencia porque para el conjunto de prácticas al menos una entrada
de una práctica es igual a la entrada del método y el resultado de una
práctica es igual al resultado del método; y para cada práctica del conjunto
se cumple que el resultado es igual a la entrada de otra práctica y su
entrada es igual al resultado de otra práctica.
pág. 63
Capítulo 3 Método Básico de Desarrollo de Software (BADESO).
pág. 64
Capítulo 3 Método Básico de Desarrollo de Software (BADESO).
pág. 65
Capítulo 3 Método Básico de Desarrollo de Software (BADESO).
pág. 66
Capítulo 3 Método Básico de Desarrollo de Software (BADESO).
La entrada del método (EM) se requiere para ejecutar Determinar el alcance del
sistema (PA1) y Dar a conocer el manejo de estándares para el proyecto (PA6),
pero enfocado en Determinar el alcance del sistema (PA1), de igual forma se
podría haber empezado por Dar a conocer el manejo de estándares para el
proyecto (PA6).
pág. 67
Capítulo 3 Método Básico de Desarrollo de Software (BADESO).
Se ha llegado a Definir el plan del proyecto (PA2) cuyo resultado (una vez
aprobado por el cliente en Obtener aprobación de avance por el cliente (PA5))
marca la organización del proyecto y es la entrada para Modelar el negocio (PD8).
pág. 68
Capítulo 3 Método Básico de Desarrollo de Software (BADESO).
Ilustración 24 De Determinar el alcance del sistema (PA1) Definir el alcance de sistema a Definir el plan del proyecto (PA2) Definir el plan de proyecto.
pág. 69
Capítulo 3 Método Básico de Desarrollo de Software (BADESO).
Ilustración 25 De Dar a conocer el manejo de estándares para el proyecto (PA6) a Definir el plan de proyecto (PA2).
pág. 70
Capítulo 3 Método Básico de Desarrollo de Software (BADESO).
Ilustración 26 De Definir el plan del proyecto (PA2) hasta Obtener requisitos del sistema (PD9) y Realizar el análisis del sistema (PD10).
pág. 71
Capítulo 3 Método Básico de Desarrollo de Software (BADESO).
Obtener requisitos del sistema (PD9) y Realizar el análisis del sistema (PD10) son
prácticas que se ejecutan de forma simultánea y cuyo resultado una vez aprobado
en Obtener aprobación de avance por el cliente (PA5), es entrada de Diseñar el
sistema (PD11), como se muestra en la ilustración 26.
Completo
Para que un método sea completo debe cumplir con la tercera propiedad que
KUALI – BEH define de la siguiente manera:
pág. 72
Capítulo 3 Método Básico de Desarrollo de Software (BADESO).
Ilustración 27 De Obtener requisitos del sistema (PD9) y Realizar el análisis del sistema (PD10) hasta Construir el sistema (PD12).
pág. 73
Capítulo 3 Método Básico de Desarrollo de Software (BADESO).
Ilustración 28 De Construir el sistema (PD12) hasta obtener los resultados del método.
pág. 74
Capítulo 3 Método Básico de Desarrollo de Software (BADESO).
Esto significa que para que un método sea completo debe cumplir con la
propiedad de coherencia y consistencia. BADESO es completo porque como
quedó demostrado anteriormente cumple con ambas propiedades por lo tanto
también cumple con esta propiedad.
pág. 75
Capítulo 4 Prácticas del Método
Básico de Desarrollo de Software
(BADESO).
Introducción
Las prácticas que se logran a través de llevar a cabo una y otra vez una serie de
tareas para el logro de objetivos con buenos resultados, se identifican como
buenas prácticas. Cada organización desarrolladora de software tiene e identifica
sus propias buenas prácticas de su organización. El hecho de que sean efectivas
para esa empresa no garantiza que ese mismo conjunto de prácticas sean útiles
para otra organización. Por esta razón es tan importante que cada organización
documente sus prácticas y genere sus propios métodos de desarrollo de software.
Prácticas de BADESO
BADESO está compuesto por tres tipos de prácticas: administrativas, de equipo y
de desarrollo de software. Se analizarán por separado cada uno de estos tipos de
prácticas.
pág. 76
Capítulo 4 Prácticas del Método Básico de Desarrollo de Software (BADESO)
Es establecer la función del software de manera clara y precisa para, con base en
esto, delimitar el alcance del proyecto. Se define el alcance en conjunto con los
involucrados en el proyecto.
pág. 77
Capítulo 4 Prácticas del Método Básico de Desarrollo de Software (BADESO)
Al finalizar esta práctica se obtiene una idea precisa de qué se construirá y con
base en eso es posible hacer un plan del proyecto más realista que el que
originalmente se había propuesto en el Anteproyecto de Residencias
Profesionales.
PA1 Práctica
Objetivo
Determinar la dimensión del sistema a desarrollar con base en las funciones deseadas,
las necesidades del cliente, contexto del negocio, restricciones que se tienen,
rendimiento y confiabilidad esperados.
Entradas Resultados
pág. 78
Capítulo 4 Prácticas del Método Básico de Desarrollo de Software (BADESO)
Guía
Actividades
pág. 79
Capítulo 4 Prácticas del Método Básico de Desarrollo de Software (BADESO)
Herramientas (opcional)
Conocimientos y habilidades
Criterios de verificación
pág. 80
Capítulo 4 Prácticas del Método Básico de Desarrollo de Software (BADESO)
Métricas
1. Tiempo de la reunión.
2. Cantidad de requisitos logrados.
3. Registro de asistencia de los involucrados.
Para hacer el plan del proyecto es necesario conocer el alcance del sistema, por
eso esta práctica es posterior a la de Determinar el alcance del sistema aprobado
(PA1, PA5). Si se desconoce la dimensión de lo que se va a realizar, ¿cómo se
puede hacer un plan?
pág. 81
Capítulo 4 Prácticas del Método Básico de Desarrollo de Software (BADESO)
PA2 Práctica
Objetivo
Elaborar un plan que asegure que el producto se construya dentro del tiempo, con
calidad y de acuerdo a las necesidades del cliente.
Entrada Salida
pág. 82
Capítulo 4 Prácticas del Método Básico de Desarrollo de Software (BADESO)
6. Documento de formalización de la
comunicación.
7. Documento Formato de
formalización del cambio con
respuesta.
Guía
Actividades
pág. 83
Capítulo 4 Prácticas del Método Básico de Desarrollo de Software (BADESO)
Herramientas
Conocimientos y habilidades
Criterios de verificación
pág. 84
Capítulo 4 Prácticas del Método Básico de Desarrollo de Software (BADESO)
Métricas
Determinar el alcance del sistema (PA1), Definir el plan del proyecto (PA2),
Modelar el negocio (PD8), Obtener requisitos del sistema (PD9), Realizar el
análisis del sistema (PD10), Diseñar el sistema (PD11), Construir el sistema
(PD12), Probar el sistema (PD13) e Implantar el sistema (PD14).
Por esta razón en las entradas en dicha práctica se señala con un (*) que el
documento será de acuerdo a la práctica sobre la que se esté aplicando la práctica
denominada Obtener aprobación de avance por el cliente (PA5). La misma
indicación (*) aplica para la salida de la práctica.
pág. 85
Capítulo 4 Prácticas del Método Básico de Desarrollo de Software (BADESO)
Obtener la aprobación del cliente por escrito brinda seguridad de que el proyecto
va por buen camino, y es la misma certeza que el cliente siente hacia su proyecto.
Además que los clientes se sienten parte del proyecto.
PA5 Práctica
Objetivo
Entrada Resultado
6* Significa que aquí pueden ser los resultados de cualquiera de las siguientes prácticas: PA1,
PA2, PD8, PD9, PD10, PD11, PD12, PD13 y PD14.
7 Se obtiene como salida este formato si se necesita realizar cambios al proyecto.
pág. 86
Capítulo 4 Prácticas del Método Básico de Desarrollo de Software (BADESO)
4. Documento de estándares.
Guía
Actividades
Herramientas (opcional)
pág. 87
Capítulo 4 Prácticas del Método Básico de Desarrollo de Software (BADESO)
Conocimientos y habilidades
Criterios de Verificación
Métricas
8Cabe aclarar que todo este tipo de comunicación no tiene que ser presencial. Es decir, todo el
proceso de revisión y aprobación de documentos puede ser realizado también en forma virtual,
con aprobaciones electrónicas por medio de emails o documentos firmados y escaneados.
pág. 88
Capítulo 4 Prácticas del Método Básico de Desarrollo de Software (BADESO)
PA6 Práctica
Objetivo
Entrada Resultado
Guía
Actividades
pág. 89
Capítulo 4 Prácticas del Método Básico de Desarrollo de Software (BADESO)
10Repositorio del proyecto: sitio donde se guarda físicamente el proyecto y al que todos tienen
acceso.
pág. 90
Capítulo 4 Prácticas del Método Básico de Desarrollo de Software (BADESO)
Herramientas (opcional)
Conocimientos y habilidades
pág. 91
Capítulo 4 Prácticas del Método Básico de Desarrollo de Software (BADESO)
Criterios de Verificación
Métricas
11Repositorio del proyecto: sitio donde se guarda físicamente el proyecto y al que todos tienen
acceso.
pág. 92
Capítulo 4 Prácticas del Método Básico de Desarrollo de Software (BADESO)
Los fracasos en los proyectos en muchos de los casos poco tienen que ver con
problemas técnicos, son el resultado de un problema de equipo.
pág. 93
Capítulo 4 Prácticas del Método Básico de Desarrollo de Software (BADESO)
Para establecer las funciones a realizar por cada integrante del equipo se debe
escoger la estructura que éste tendrá. En BADESO, la estructura propuesta se
basa en SCRUM12. La razón es la sencillez que proporciona dicha estructura. Sin
embargo, en las Residencias Profesionales pueden presentarse grupos de 3 o
más integrantes, en estos casos se propone que sea TSPi13, pero queda a juicio
de los asesores.
PE3 Práctica
Organizar el equipo.
Objetivo
pág. 94
Capítulo 4 Prácticas del Método Básico de Desarrollo de Software (BADESO)
Entrada Resultado
Guía
Actividades
pág. 95
Capítulo 4 Prácticas del Método Básico de Desarrollo de Software (BADESO)
Herramientas (opcional)
Conocimientos y habilidades
Criterios de Verificación
Métricas
1. Roles repartidos.
Entre los integrantes del equipo es necesario que estén “localizables”, es decir,
no debe darse la oportunidad de que algún miembro del equipo desaparezca por
días. El equipo debe tener la capacidad de trabajar de forma presencial y no
presencial, síncrona o asíncronamente.
La información del proyecto debe estar disponible todo el tiempo para todos los
integrantes, no debe depender de una persona. El objetivo de esta práctica es
pág. 96
Capítulo 4 Prácticas del Método Básico de Desarrollo de Software (BADESO)
Esta práctica aplica a los integrantes del equipo y a todos los involucrados en el
proyecto.
PE4 Práctica
Objetivo
Entrada Resultado
Guía
Actividades
pág. 97
Capítulo 4 Prácticas del Método Básico de Desarrollo de Software (BADESO)
Herramientas (opcional)
pág. 98
Capítulo 4 Prácticas del Método Básico de Desarrollo de Software (BADESO)
Conocimientos y habilidades
Criterios de Verificación
Verificar que la agenda cumpla con todos los puntos de la estructura y los
tiempos para cada punto antes de ser enviada a los integrantes del equipo.
Comprobar con una semana de anticipación que los productos a presentar ya
estén elaborados.
Asegurar que se cumplan los tiempos asignados.
Revisar que en cada reunión exprés se lleven a cabo los tres puntos de la
estructura por cada miembro del equipo.
Examinar tabla de registro de acuerdos tras cada reunión de proyecto.
Verificar que el calendario de comunicación contenga la información completa.
Verificar que el de Documento de formalización de la comunicación incluya:
a. Calendario de comunicación.
b. Tabla de registro de acuerdos.
c. Plan de reuniones exprés.
d. Agenda del equipo.
Métricas
pág. 99
Capítulo 4 Prácticas del Método Básico de Desarrollo de Software (BADESO)
Realizar esta práctica permite llevar un registro de las solicitudes del cliente y por
lo tanto, de las responsabilidades que conlleva. También permite tener un control
sobre los cambios.
PA7 Práctica
Objetivo
Entrada Resultado
pág. 100
Capítulo 4 Prácticas del Método Básico de Desarrollo de Software (BADESO)
Guía
Actividades
pág. 101
Capítulo 4 Prácticas del Método Básico de Desarrollo de Software (BADESO)
Herramientas (opcional)
Conocimientos y habilidades
Criterios de Verificación
Métricas
pág. 102
Capítulo 4 Prácticas del Método Básico de Desarrollo de Software (BADESO)
Las entradas a esta práctica son toda la información que permite al residente
convertirse en “experto” en el tipo de aplicación a construir. La salida de esta
práctica es justamente el modelo que representa al sistema y al mundo que lo
rodea.
PD8 Práctica
Modelar el negocio.
Objetivo
Entrada Resultado
pág. 103
Capítulo 4 Prácticas del Método Básico de Desarrollo de Software (BADESO)
Guía
Actividades
Herramientas (opcional)
16En ocasiones cuando pedimos a los involucrados que ellos hagan esta descripción no funciona,
entonces se recomienda facilitar la sesión en la que se modelen y documenten los procesos
actuales. De esta forma también se garantiza que haya comprensión del modelo y procesos de
negocio y aprobación de la documentación del mismo
pág. 104
Capítulo 4 Prácticas del Método Básico de Desarrollo de Software (BADESO)
Conocimientos y habilidades
Habilidad de análisis.
Habilidad para comunicarse de forma verbal y escrita.
Criterios de Verificación
Métricas
Para dar inicio a esta práctica es necesario haber definido el alcance del sistema
en la práctica Determinar el alcance del sistema (PA1), y ejecutar la práctica
Modelar el negocio (PA8) para realizar un modelo del negocio. En esta práctica
pág. 105
Capítulo 4 Prácticas del Método Básico de Desarrollo de Software (BADESO)
es de suma importancia revisar los requisitos con el cliente y asegurarse que sean
entendidos por todos los involucrados en el proyecto. Una vez logrado esto, firmar
la aprobación de los requisitos del sistema.
PD9 Práctica
Objetivo
Definir los requisitos del sistema a construir a partir de la comprensión del problema
y su entorno.
Entrada Resultado
Guía
Actividades
pág. 106
Capítulo 4 Prácticas del Método Básico de Desarrollo de Software (BADESO)
Herramientas (opcional)
Conocimientos y habilidades
Habilidad de análisis.
Habilidad para comunicarse de forma verbal y escrita.
Criterios de Verificación
Métricas
pág. 107
Capítulo 4 Prácticas del Método Básico de Desarrollo de Software (BADESO)
La entrada para esta práctica, entre otras, es el modelo del negocio; ya que la
especificación de requisitos y el análisis del sistema son prácticas que pueden
realizarse de manera simultánea. Esto brinda la oportunidad de aclarar requisitos
al irlos modelando.
PD10 Práctica
Objetivo
Entrada Resultado
pág. 108
Capítulo 4 Prácticas del Método Básico de Desarrollo de Software (BADESO)
Guía
Actividades
Herramientas (opcional)
Conocimientos y habilidades
pág. 109
Capítulo 4 Prácticas del Método Básico de Desarrollo de Software (BADESO)
Habilidad de análisis.
Habilidad para comunicarse de forma verbal y escrita.
Habilidad para diseño de interfaces.
Criterios de Verificación
Métricas
Las entradas para esta práctica son los modelos de negocio, requisitos y análisis
que proporcionan la información necesaria del problema que se quiere solucionar.
PD11 Práctica
Diseñar el sistema.
pág. 110
Capítulo 4 Prácticas del Método Básico de Desarrollo de Software (BADESO)
Objetivo
Entrada Resultados
Guía
Actividades
pág. 111
Capítulo 4 Prácticas del Método Básico de Desarrollo de Software (BADESO)
17Es necesario tomar en cuenta que algunas clases se añadieron en la actividad de diseño de la
arquitectura del sistema.
pág. 112
Capítulo 4 Prácticas del Método Básico de Desarrollo de Software (BADESO)
Herramientas (opcional)
Conocimientos y habilidades
Criterios de Verificación
pág. 113
Capítulo 4 Prácticas del Método Básico de Desarrollo de Software (BADESO)
Métricas
pág. 114
Capítulo 4 Prácticas del Método Básico de Desarrollo de Software (BADESO)
PD12 Práctica
Construir el sistema.
Objetivo
Entrada Resultado
pág. 115
Capítulo 4 Prácticas del Método Básico de Desarrollo de Software (BADESO)
Guía
Actividades
pág. 116
Capítulo 4 Prácticas del Método Básico de Desarrollo de Software (BADESO)
10. Actualizar Reporte final de la Residencia Profesional del ITLP 5.0 con el
Documento de construcción de software; denominar Reporte final de la
Residencia Profesional del ITLP 6.0.
11. Llenar Formato de aprobación de avance para los componentes de software
probados, documentados e integrados.
12. Si es el caso llenar el Formato de solicitud de cambio y ejecutar Manejar
cambios en el proyecto (PA7).
Herramientas (opcional)
Lenguajes de programación.
Herramientas de edición de texto como Word.
Conocimientos y habilidades
Criterios de Verificación
Métricas
pág. 117
Capítulo 4 Prácticas del Método Básico de Desarrollo de Software (BADESO)
pág. 118
Capítulo 4 Prácticas del Método Básico de Desarrollo de Software (BADESO)
PD13 Práctica
Probar el sistema.
Objetivo
Entrada Resultado
Guía
Actividades
pág. 119
Capítulo 4 Prácticas del Método Básico de Desarrollo de Software (BADESO)
Herramientas (opcional)
Conocimientos y habilidades
Conocimientos de programación.
Conocimientos de cómo probar software.
Conocimientos de herramientas de prueba.
Criterios de Verificación
Software funcionando.
Software aceptado por el usuario.
Métricas
pág. 120
Capítulo 4 Prácticas del Método Básico de Desarrollo de Software (BADESO)
Hay muchas razones por las que un proyecto de software puede fracasar, pero no
se puede permitir que la razón del fracaso sea una mala implantación.
PD14 Práctica
Implantar el sistema.
Objetivo
Entrada Resultado
pág. 121
Capítulo 4 Prácticas del Método Básico de Desarrollo de Software (BADESO)
Actividades
pág. 122
Capítulo 4 Prácticas del Método Básico de Desarrollo de Software (BADESO)
Herramientas (opcional)
Lenguajes de programación.
Conocimientos y habilidades
Criterios de Verificación
pág. 123
Capítulo 4 Prácticas del Método Básico de Desarrollo de Software (BADESO)
Métricas
pág. 124
Capítulo 5 Aplicación del método
BADESO.
“Aquella teoría que no encuentre aplicación práctica en la vida,
es una acrobacia del pensamiento”, Swami Vivekananda.
Introducción
A continuación se muestra como las catorce prácticas del método BADESO han
sido aplicadas en un proyecto de Residencias Profesionales. La intención es,
además de poner en práctica lo descrito, encontrar las fortalezas y debilidades del
mismo.
Datos de la empresa
El Instituto Tecnológico de La Paz (ITLP) fue fundado en octubre de 1973, bajo la
misión de ser un instrumento para el desarrollo de la comunidad de Baja California
Sur. Es una Institución pública de educación dependiente de la Secretaría de
pág. 125
Capítulo 5 Aplicación del método BADESO
1Partes interesadas.
pág. 126
Capítulo 5 Aplicación del método BADESO
Las historias de usuarios que llenaron alumnos y docentes que hacen uso del
Laboratorio de Física, el laboratorista, ayudante de laboratorio y el administrador,
fueron de gran ayuda para entender la manera en que se trabaja. Con esta
información se integró el Documento de alcance del sistema, el cual cumplió con
el estándar para documentos definido para este fin en la práctica Dar a conocer el
manejo de estándares para el proyecto (PA6).
pág. 127
Capítulo 5 Aplicación del método BADESO
Como otra actividad de esta práctica se realizó un avance del Reporte final de la
Residencia Profesional del ITLP2 que atendió el estándar marcado en la práctica
Dar a conocer el manejo de estándares para el proyecto (PA6).
Conclusión
Enseguida para acordar el alcance del sistema con el asesor externo se ejecutó
la práctica Obtener aprobación de avance (PA5); con esto el alcance quedó
establecido y formalizado.
Retroalimentación
Una métrica que podría incluirse aquí es el número de entrevistas que se realicen.
Tener claro el alcance del sistema permitió definir un buen plan del proyecto
(práctica Definir el plan del proyecto (PA2)). Esta es una práctica que aunque es
la base del proyecto, en algunos casos no se realiza porque se considera que está
implícita en las actividades del propio desarrollo, sin embargo BADESO, enfatiza
la importancia de realizarla y del impacto en el resto del proceso.
Las métricas planteadas fueron usadas, pero es necesario definir las siguientes:
1. Número de entrevistas.
2. Aplicaciones consultadas.
3. Número de documentos fuentes revisados.
pág. 128
Capítulo 5 Aplicación del método BADESO
pág. 129
Capítulo 5 Aplicación del método BADESO
Conclusión
Retroalimentación
Se considera que con los productos semanales, los hitos programados, las
reuniones exprés y los Reportes de avance de Residencias Profesionales logran
tener cubierto este punto. Llenar más reportes puede hacer que la actividad se
torne burocrática y se corre el riesgo de que se pierda el objetivo del estándar,
que es ser un medio no un fin. Este es un buen e importante cambio que debería
hacerse en el método BADESO.
pág. 130
Capítulo 5 Aplicación del método BADESO
Las aprobaciones del cliente se hicieron tal como estaban planeadas excepto que
la presentación oral solo se llevó a cabo dos veces: al principio y al final del
proyecto.
Conclusión
Fue importante realizar esta práctica porque formalizó las decisiones que se
tomaron y validó los avances que se fueron haciendo. Es decir, elevó el nivel de
compromiso y de formalización de cada avance realizado.
pág. 131
Capítulo 5 Aplicación del método BADESO
Retroalimentación
Realizar la presentación formal (oral) al inicio y al final del proyecto fue una buena
práctica y se recomienda que se haga así, porque facilita su ejecución y ahorra
tiempo al evitar invertir tiempo para preparar presentaciones formales en todos y
cada uno de los avances.
Después se decidió que estructura de equipo a utilizar y se optó por SCRUM, por
las siguientes razones: eran dos integrantes, el proyecto era pequeño y con ciclos
cortos.
Conclusión
Identificar estas actividades permitió asignar más acertadamente las tareas a cada
residente al ejecutar la práctica Definir el plan del proyecto (PA2),
pág. 132
Capítulo 5 Aplicación del método BADESO
Retroalimentación
En esta práctica se propuso inicialmente que se tomara como base dos formas de
organización dependiendo del tamaño del equipo, SCRUM o TSP; sin embargo
se encontró que la metodología SCRUM con su simplicidad y por ser ágil aporta
ventajas como claridad y naturalidad al aplicarse.
La comunicación entre los interesados se llevaba vía redes sociales y por celular;
La comunicación por mecanismos de comunicación asíncronos se llevó a cabo
por correo electrónico y repositorio del código del proyecto.
La tabla de registros de acuerdos en las que se trabajó durante las reuniones fue
una Pila de Sprint (Navegapolis, 2014) . Donde se establecía lo que se iba a hacer.
Se pidió a los residentes que escribieran las actividades a realizar en notas de
colores para diferenciarlas.
pág. 133
Capítulo 5 Aplicación del método BADESO
Conclusión
Retroalimentación
Las reuniones con el cliente deben ser hitos definidos en la práctica Definir
mecanismos de comunicación del equipo (PE4). Por otro lado debe buscarse en
las reuniones con el cliente que las expectativas no sean crecientes, es decir fuera
del alcance del sistema previamente establecido para que los requisitos
permanezcan estables como ya se han acordado.
pág. 134
Capítulo 5 Aplicación del método BADESO
Conclusión
El realizar la solicitud de cambios por escrito aseguró una revisión a fondo de los
cambios aunque fueran pequeños y sobretodo en común acuerdo de todos los
involucrados. Se tuvo un buen manejo sobre el control de cambios. En conclusión
se confirma que es una buena práctica.
Retroalimentación
No hay.
Para realizar la práctica fue necesario realizar la práctica Organizar el equipo (PE3)
y Definir mecanismos de comunicación del equipo (PE4). Lo primero que se hizo
como parte de la práctica Definir el plan del proyecto (PA2) fue establecer fechas
para las actividades, los responsables de las tareas y los productos a lograr.
Para definir el plan del proyecto, los residentes definieron la lista de actividades
con base en las prácticas a realizar, a las cuales se les establecieron fechas para
su desarrollo y se les asignaron a cada integrante del equipo con base en lo
acordado en la práctica Organizar el equipo (PE3).
También los residentes identificaron los productos que se tenían que obtener al
final de la Residencia Profesional. Como también qué productos no se tenían que
realizar, por ejemplo, para el producto final, no fue necesario realizar un estudio
de factibilidad tipo A y B, ya que no se requirió comprar software ni hardware.
pág. 135
Capítulo 5 Aplicación del método BADESO
El cliente debe aprobar el plan de proyecto, y para eso se debe ejecutar la práctica
Obtener aprobación de avance por el cliente (PA5).
Conclusión
Esta práctica sirvió para que a partir del diagrama de Gantt que se planteó en el
Anteproyecto de Residencias Profesionales, se replanteara el plan del proyecto,
ya con una idea más clara de los objetivos y requisitos del sistema, y con esto
programar fechas más realistas, asignación de responsabilidades y actividades
más detalladas. En realidad el diagrama de Gantt planteado fue muy diferente al
que se modelo en el Anteproyecto de Residencias Profesionales porque éste
último modelaba macro procesos.
Definir y establecer por escrito los acuerdos los formaliza. Aunque normalmente
los conoces en un equipo pero a veces incluso no se comentan, son reglas no
escritas y por lo tanto pareciera que no son un compromiso.
Esta práctica ayudó a los residentes y a los asesores a trabajar mejor en equipo
y con mayor comunicación y tener un buen control sobre el proyecto y su
supervisión. Además el realizar la práctica 5, Obtener aprobación de avance por
el cliente (PA5), fue importante para que el asesor externo también supiera las
fechas y los productos que se obtendrían.
Retroalimentación
No hay.
pág. 136
Capítulo 5 Aplicación del método BADESO
Conclusión
Retroalimentación
pág. 137
Capítulo 5 Aplicación del método BADESO
Una vez hecho esto, se elaboraron los casos de uso y se modelaron los datos a
través de un diagrama entidad – relación. Se integró el Documento del modelo de
requisitos.
Conclusión
Esta práctica particularmente fue muy útil porque sirvió como contrato ya que
analizar los requisitos, platicarlos con el cliente, aclarar cada punto y refinarlo, y
ejecutar la práctica Obtener aprobación de avance por el cliente (PA5), brindó
seguridad de que el trabajo que se haría estaría bien.
Retroalimentación
No hay.
Esta actividad tiene como objetivo determinar de qué forma se llevará a cabo el
cumplimiento de los requisitos. Las tareas que se desarrollaron fueron elaborar el
modelo entidad – relación, lo que permitió tener una idea de la base de datos.
Se elaboraron diagramas de casos de uso para mostrar las asociaciones entre los
actores, casos de usos y los requisitos del sistema. En la documentación de los
casos de uso se trató de mostrar paso a paso la especificación de requisitos y los
pág. 138
Capítulo 5 Aplicación del método BADESO
distintos escenarios para cada caso de uso. En esta práctica se elaboró el plan de
pruebas del sistema. Una de las actividades más importantes de esta práctica fue
diseñar y elaborar las interfaces, fue una actividad conjunta con la documentación
de casos de uso y el plan de pruebas del sistema.
Conclusión
Realizar esta práctica sirvió para aprovechar mejor el tiempo y elaborar con más
claridad los diagramas de lo que más adelante se iba a construir. Un gran avance
en esta práctica fue el modelo de datos y el diseño de la interfaz. Los modelos
construidos en esta práctica son de gran utilidad para confirmar los requisitos con
el cliente además de hacerlo oportunamente al estar en una fase temprana del
desarrollo.
Retroalimentación
No hay.
El diseño de la base de datos fue creado a partir del modelo de datos del análisis.
Esta fue una actividad que llevó mucho tiempo, aquí se hicieron varias pruebas a
la base de datos hasta que se tuvo la seguridad de que el diseño estaba bien; una
de las razones de los retrasos y de las dificultades en esta actividad fue a causa
de la inexperiencia en la programación y la falta de práctica en las consultas de
bases de datos de los residentes.
Pero una vez hecho esto se pudo avanzar al diseño de la arquitectura del sistema,
tratando de organizar y agrupar los subsistemas e identificar las relaciones que
pág. 139
Capítulo 5 Aplicación del método BADESO
La siguiente actividad fue modelar los componentes y las interfaces a través del
diagrama de componentes. Se elaboró el diagrama de componentes de la capa
de presentación, que es donde se muestran todas las pantallas con las que
trabajará el sistema y la manera en que están organizadas; la siguiente capa, la
del negocio muestra las clases que va a utilizar el sistema; y por último la capa de
datos que es donde se encuentran los datos y se encarga de acceder a los
mismos.
Los diagramas de secuencia sirvieron para ver el flujo entre las diferentes clases
del sistema y donde entraban los métodos, sus parámetros y el flujo que había en
la ejecución del diagrama. La congruencia entre el diagrama de clases y el
diagrama de secuencia le fue dando forma al diseño.
pág. 140
Capítulo 5 Aplicación del método BADESO
Conclusión
Retroalimentación
pág. 141
Capítulo 5 Aplicación del método BADESO
Se construyeron los módulos del sistema, cumpliendo con el diseño del prototipo
que se acordó con el cliente.
Conclusión
Para desarrollar esta práctica se usaron de guía los modelos que se desarrollaron
en las prácticas anteriores. El resultado de esta práctica es el sistema integrado.
El construir el sistema integrando incrementalmente resultó una buena práctica
tanto para la propia construcción como para su validación por parte de los
desarrolladores y del cliente.
Retroalimentación
Se hicieron los planes de pruebas para realizar una serie de pruebas al sistema
ya terminado y encontrar los más errores posibles.
pág. 142
Capítulo 5 Aplicación del método BADESO
Las pruebas alfa las llevó a cabo el cliente en la máquina de desarrollo y dio la
oportunidad de detectar fallas sin haber liberado el producto.
Conclusión
Seguir una guía de pruebas fue mejor que hacer solo la depuración que
normalmente las residentes estaban acostumbradas a hacer. En esta actividad,
encontraron errores por ejemplo en la interfaz que ya se había dado por hecho
que no requerían cambios. Algunas pruebas no arrojaron errores pero otras si y
eso hizo que en las pruebas de aceptación fueran mínimos los errores. Sin seguir
una guía hay tipos de prueba que no se hubieran aplicado.
pág. 143
Capítulo 5 Aplicación del método BADESO
Retroalimentación
La conversión que se planeo fue, la conversión paralela, que es operar los dos
sistemas de información a la vez. Para esto se llenó el Formato de plan de
conversión marcado en el Documento de estándares.
pág. 144
Capítulo 5 Aplicación del método BADESO
Se realizó una junta de aceptación del sistema el día 07 de agosto del 2014, donde
el asesor externo e interno dieron por terminado el proyecto. Se elaboró la
evaluación a través del formato que proporciona la Institución.
Si hay apoyo por el dueño del sistema de principio a fin del proyecto, se pueden
tomar decisiones correctivas cuando se necesita para que el proyecto llegue a
feliz término.
pág. 145
Capítulo 5 Aplicación del método BADESO
Sin embargo dado que hasta el día de hoy el sistema aún no está implantado en
el Laboratorio de Física se está hablando de un proyecto fallido. ¿Qué falló? Falta
soporte por parte de la gerencia e interés por parte del nuevo Jefe del Laboratorio
de Física.
pág. 146
Capítulo 5 Aplicación del método BADESO
Fortalezas de BADESO
pág. 147
Capítulo 5 Aplicación del método BADESO
Debilidades de BADESO
Una forma de amortiguar esta debilidad podría ser a través del manejo de
riesgos.
Mejoras
pág. 148
Capítulo 5 Aplicación del método BADESO
pág. 149
Capítulo 5 Aplicación del método BADESO
BADESO 2.0
Sin embargo hay mejoras sustanciales del método con el objetivo de que sea
más claro y sencillo, pero además buscando que sea un método ágil.
pág. 150
Capítulo 6 Conclusiones
“En tiempos de cambio, quienes estén abiertos al aprendizaje se
adueñaran del futuro, mientras que aquellos que creen saberlo
todo estarán bien equipados para un mundo que ya no existe”,
Eric Hoffer.
pág. 151
Capítulo 6 Conclusiones
Una vez que BADESO está definido, en el cuarto capítulo se hizo la presentación
de las prácticas que conforman el método. Buscando mostrar la aportación e
importancia de cada una de ellas para el método y la interrelación entre las
mismas. Para definir una práctica es necesario detallar una serie de elementos a
través de la plantilla de KUALI-BEH para prácticas, que ayudan al ejecutar la
práctica ya que se tiene toda la información que se necesita. Además, que permite
ir documentando información del proceso lo que posteriormente sirve para hacer
el post mortem del proyecto o una retroalimentación del mismo.
pág. 152
Capítulo 6 Conclusiones
Las anteriores más que ser debilidades del método BADESO son situaciones
inherentes a las personas que participan en los proyectos y a su experiencia; y se
presentan frecuentemente en la práctica de cualquier método; sin embargo, lo
importante es disminuir el riesgo de que ocurran. Particularmente en el contexto
de las Residencias Profesionales esto puede lograr con la aportación de la
experiencia de los asesores de Residencias Profesionales, ya que ellos pueden
coadyuvar y orientar a los residentes en fortalecer dichas debilidades.
Porque en conclusión las actividades que integran las prácticas pueden ser muy
eficientes, y por lo tanto conformar un método que la experiencia demuestre que
funciona para una determinada organización; sin embargo, no se debe olvidar que
las actividades son llevadas a cabo por las personas y las relaciones entre las
personas no son lógicas e incluso pueden tornarse tóxicas; y los proyectos de
software son manejados por las mismas personas y si estas no saben liderarlo o
no poseen las habilidades necesarias, el método por sí solo no será suficiente
para garantizar el éxito del proyecto.
Trabajos futuros
En el área de la Ingeniería de Software hay mucho por hacer, mucho por explorar
y mucho por aprender.
pág. 153
Capítulo 6 Conclusiones
Trabajar con KUALI-BEH, para definir un método aplicable en las materias del
área de Ingeniería de Software para ejemplificar una metodología ágil para la
materia que lo amerite y ajustarlo para aplicar una metodología tradicional si es el
caso.
pág. 154
Bibliografía
Bibliografía
Agiles.org, p. (24 de Noviembre de 2014). proyectos agiles.org. Obtenido de
http://www.proyectosagiles.org/que-es-scrum
Booch, G., Rumbaugh, J., & Ivar, J. (1999). El lenguaje unificado de modelado.
Madrid: Addison Wesley.
pág. 155
Bibliografía
pág. 156
Bibliografía
Oktaba, H. J., Morales Trujillo, M. E., & Dávila Muñoz, M. (Noviembre de 2013).
SCRIBD. Recuperado el Noviembre de 2013, de
http://es.scribd.com/doc/150649695/Kuali-Beh-Software-Project-Common-
Concepts
pág. 157
Bibliografía
pág. 158