PROTOTIPOS
La creación de prototipos es una técnica de
recopilación de información útil para complementar el SDLC tradicional; tanto los
métodos ágiles como la interacción humano-computadora comparten sus raíces en
los prototipos. Cuando los analistas de sistemas utilizan prototipos buscan
reacciones de los usuarios, sugerencias, innovaciones y planes de revisión para
realizar mejoras al prototipo y por ende modificar los planes del sistema con un
mínimo de costo y de interrupciones.
TIPOS DE PROTOTIPOS
PROTOTIPO
DE PARCHES El primer tipo alude a la construcción de
un sistema funcional, parchado o construido totalmente con parches. En
ingeniería, a esta metodología se le conoce como “breadboarding”: crear un
modelo funcional de un circuito integrado (cuya forma final será microscópica)
uniendo partes .En términos de sistemas de información, se trata de un modelo
funcional, con todas las características necesarias, pero que es ineficiente.
En esta instancia del prototipo, los usuarios pueden interactuar con el sistema
y acostumbrarse a la interfaz y a los tipos de salidas disponibles.
PROTOTIPO
NO OPERACIONAL: Empleado para probar ciertos aspectos
del diseño. Un ejemplo es el modelo a escala completa de un automóvil que se
utiliza en pruebas de túnel de viento. El tamaño y la forma del automóvil son
precisos, pero el automóvil no es funcional; se incluyen sólo las
características esenciales para una prueba específica .Sería pertinente un
modelo de escala no funcional para un sistema de información cuyas aplicaciones
requirieran una codificación demasiado extensa como para incluirla en el
prototipo, pero fuera útil hacerse una idea de la entrada y la salida
necesarias solamente.
PROTOTIPO
PRIMERO DE UNA SERIE: Es la creación de un modelo a
escala completa de un sistema, a lo que comúnmente se le conoce como piloto. Un
ejemplo sería crear el prototipo del primer aeroplano de una serie y después
ver si puede volar antes de construir un segundo aeroplano.
Características idénticas.
Ø Es útil cuando se planean muchas instalaciones del mismo sistema de
información.
Ø Permite a los usuarios
experimentar una interacción realista con el nuevo sistema.
Ø Minimiza el costo de solucionar
los problemas que presenta. Por ejemplo, cuando una cadena de tiendas de
abarrotes al menudeo intenta usar el intercambio electrónico de datos.
PROTOTIPO DE CARACTERÍSTICAS SELECTAS: Mediante este tipo de creación de prototipos,
el sistema se desarrolla en módulos, de manera que si los usuarios evaluaron
positivamente las características presentadas, se pueden incorporar al sistema
final sin tener que trabajar mucho para interconectar los módulos. Los
prototipos que se realizan de esta manera forman parte del sistema actual. No
son sólo un modelo, como en la creación de prototipos no operacionales.
LINEAMIENTOS PARA DESARROLLAR UN
PROTOTIPO
Una vez tomada la decisión de crear un prototipo, hay
que cumplir con cuatro lineamientos para integrar el prototipo en la fase de
determinación de requerimientos del SDLC:
1.
TRABAJAR
EN MÓDULOS ADMINISTRABLES
Un módulo
administrable permite a los usuarios interactuar con sus características clave
y se puede construir por separado. Las características del módulo que se
consideran menos importantes se dejan intencionalmente fuera del prototipo
inicial. Como veremos más adelante en este capítulo, esto es muy similar a la
metodología ágil que hace énfasis en liberar pequeñas versiones.
2. CREAR EL PROTOTIPO CON RAPIDEZ
Los analistas pueden usar prototipos para acortar este
hueco mediante el uso de técnicas tradicionales de recopilación de información
para señalar los requerimientos salientes de información, y después tomar
decisiones
Rápidas que produzcan un modelo funcional. En efecto,
el usuario ve y utiliza el sistema desde las primeras etapas del SDLC, en vez
de tener que esperar un sistema terminado para obtener experiencia práctica.
Al ensamblar un prototipo operacional con la mayor
rapidez y anticipación en el SDLC, el analista puede obtener una valiosa
comprensión acerca de cómo proceder con el resto del proyecto. Al mostrar a los
usuarios en
las primeras etapas del proceso el desempeño real de
las partes del sistema, la creación rápida de prototipos evita comprometer
recursos excesivos en un proyecto que tal vez llegue a fracasar.
3. MODIFICAR EL PROTOTIPO
Para lograr esto hay que crearlo en módulos que no
tengan un alto grado de interdependencia. Si cumplimos con este lineamiento
encontraremos menos resistencia cuando haya que modificar el prototipo .Por lo
general el prototipo se modifica varias veces, para lo cual pasa a través de varias
iteraciones. Los cambios en el prototipo deben acercar más el sistema a lo que
los usuarios dicen que es importante. Cada modificación requiere de otra
evaluación por parte de los usuarios.
4.
HACER ÉNFASIS EN LA INTERFAZ DE USUARIO.
Aunque muchos aspectos del sistema quedarán sin
desarrollarse en el prototipo, la interfaz de usuario debe estar lo
suficientemente desarrollada como para que los usuarios puedan acoplarse al
sistema con rapidez y no desanimarse. Los sistemas interactivos en línea que utilizan
interfaces de GUI se adaptan de manera ideal a los prototipos.
Desventajas de los prototipos
Ø Que
puede ser bastante difícil administrar la creación de un prototipo como un
proyecto dentro del esfuerzo más grande de sistemas.
Ø Los usuarios y analistas pueden adoptar un
prototipo como sistema completo cuando todavía es inadecuado y aunque nunca
haya tenido la intención de servir como sistema terminado.
Ventajas de los
prototipos
Ø Potencial de cambiar el sistema durante
las primeras etapas de sudesarrollo.
Ø La
oportunidad de detener el desarrollo en un sistema que no está funcionando y la
posibilidad de desarrollarun sistema que cumpla mejor con las necesidades y
expectativas de los usuarios.
Ø Los cambios en las primeras etapas son
menos costosos que los cambios tardíos.
EL PAPEL QUE DESEMPEÑAN LOS USUARIOS EN LOS PROTOTIPOS
El papel de los usuarios en los prototipos se puede
resumir en dos palabras: participación honesta. Sin la participación de los
usuarios, los prototipos no tienen mucho sentido. Los comportamientos precisos
necesarios para interactuar con un prototipo pueden variar, pero está claro que
el usuario es fundamental para el proceso de creación de prototipos. Hay tres
formas principales en las que un usuario puede ayudar con los prototipos:
1. Experimentar con el prototipo.
2. Ofrecer reacciones abiertas al prototipo.
3. Sugerir
lo que se puede agregar o quitar en el prototipo.
DESARROLLO RÁPIDO DE APLICACIONES
El desarrollo rápido de aplicaciones (RAD) es una
metodología orientada a objetos para el desarrollo de sistemas,la cual incluye
un método de desarrollo así como herramientas de software.
Fases de RAD
FASE DE PLANEACIÓN DE LOS REQUERIMIENTOS
En esta fase, los
usuarios y analistas se reúnen para identificar los objetivos de la aplicación
o el sistema, y para identificar los requerimientos de información que surgen a
partir de estos objetivos. En esta fase se requiere una participación intensa
de ambos grupos, y no consiste sóloen la firma de una propuesta o documento.
TALLER DE DISEÑO RAD Se trata de una fase de diseño y
refinación que se puede caracterizar mejor como un taller. Al imaginar un
taller, usted sabe que la participación es intensa, no pasiva, y que por lo
general implica poner manos a la obra. Comúnmente, los participantes se sientan
en mesas redondas o en configuración de U, conlos escritorios unidos, y cada
participante puede ver a los demás y hay espacio para trabajar en una
computadora portátil.
FASE DE IMPLEMENTACIÓNTan pronto como se llega a un consenso
sobre estos aspectos, y se crean y refinan los sistemas, se prueban los nuevos
sistemas o las nuevas partes de los mismos y después se introducen a la
organización. Como RAD se puede usar para las nuevas aplicaciones de comercio
electrónico para las cuales no hay un sistema anterior, a menudo no hay
necesidad ni posibilidad de ejecutar los sistemas anterior y nuevo en paralelo
antes de la implementación.
MODELADO ÁGIL
Son una colección de metodologías innovadoras para el
desarrollo de sistemas, las cuales se
centran en los usuarios. En esta sección aprenderá
sobre valores y principios, actividades, recursos, prácticas, procesos y
herramientas asociadas con las metodologías ágiles. A estos métodos se les
acreditan muchos proyectos exitosos de desarrollo de sistemas y en muchos casos
también se les acredita el haber rescatado empresas de un sistema fallido
diseñado mediante el uso de una metodología estructurada.
Valores y principios del modelado ágil
Ø Se basa no sólo en resultados, sino
también en valores, principios y prácticas.
LOS PRINCIPIOS
BÁSICOS DEL MODELADO ÁGIL En
un mundo perfecto, los clientes y su equipo de desarrollode software se verían
directamente a los ojos y no sería necesaria ninguna otra forma de
comunicación. Todos estaríamos de acuerdo en todo momento. Sabemos que el mundo
ideal no existe, Pero ¿cómo podemos acercar nuestros proyectos de desarrollo de
software a ese ideal? Parte del por qué no ocurrirá esto se debe a quehasta
ahora estamos tratando de operar con base en un sistema impreciso de valores
compartidos.
Los principios ágiles son reflejos y
especificaciones de los valores ágiles. Sirven como lineamientos que los
desarrolladoresnpueden seguir al desarrollar sistemas. También sirve para
diferenciar a las metodologías ágiles de las metodologías más tradicionales
basadas en planes como SDL, así como las metodologías orientadas a objetos. Beck
y sus colaboradores fueron los primeros en describir los principios ágiles, que
han evolucionado desde entonces. Estos principios se pueden expresar en una
serie de dichos tales como:
1. Satisfacer al cliente por medio de la entrega de
software funcional.
2. Adoptar el cambio, incluso si se introduce
en las últimas etapas del desarrollo.
3. Seguir entregando software funcional en
incrementos y con frecuencia.
4. Fomentar a los clientes y analistas a que
trabajen juntos a diario.
5. Confiar en los individuos motivados para
que realicen su trabajo.
6. Promover la conversación cara a cara.
7. Concentrarse en hacer que el software
funcione.
8. Fomentar el desarrollo continuo, regular y
sostenible.
9. Adoptar la agilidad con especial atención
en un diseño lúcido.
10. Apoyar a los equipos autoorganizados.
11. Proveer retroalimentación rápida.
12. Fomentar la calidad.
13. Revisar y ajustar el comportamiento de vez
en cuando.
14. Adoptar la simpleza.
Con frecuencia escuchará a los desarrolladores ágiles
a medida que comunican su opinión por medio de dichos como los antes
mencionados, o incluso frases más simples tales como “modelar con un
propósito”, “el software es su objetivo primario” y “viaje ligero”, una forma
de decir que es suficiente con poca documentación.
CUATRO ACTIVIDADES BÁSICAS DEL
DESARROLLO ÁGIL
Ø La codificación es la actividad
indispensable. Un autor establece que lo más valioso que recibimos del código
es el “aprendizaje”. El proceso es fundamentalmente el siguiente: elija una
idea, codifíquela, pruébela y compruebe si la idea era lógica. El código
también se puede usar para comunicar ideas que, de otra manera, permanecerían
borrosas o deformes.
Ø La metodología ágil considera que las
pruebas automatizadas son imprescindibles. La metodología ágil aboga por la
escritura de pruebas para verificar codificación, funcionalidad, rendimiento y
cumplimiento. El modelado ágil se basa en las pruebas automatizadas;existen
extensas bibliotecas de pruebas para la mayoría de los lenguajes de
programación.
Ø En la metodología ágil, el proceso de
escuchar se lleva al extremo. Los desarrolladores utilizan la escucha activa
para oír a su socio de programación. En el modelado ágil hay menos dependencia
de la comunicación formal por escrito, por lo que escuchar se convierte en una
habilidad de suma importancia. El desarrollador también utiliza la escucha
activa con el cliente. Los desarrolladores asumen que no saben nada sobre las
empresas a las que están ayudando, por lo que deben escuchar con cuidado a los
empresarios para obtener las respuestas a sus preguntas.
Ø El diseño, que es una forma de crear una
estructura para organizar toda la lógica en el sistema. El diseño es evolutivo,
y por ende los sistemas que se diseñan mediante el método ágil se
conceptualizan como sistemas que siempre están en evolución y siempre están siendo
diseñados. A menudo es simple lograr un buen diseño. Éste debe permitir también
cierto grado de flexibilidad. Diseñarbien permite extender el sistema realizando
cambios en un solo lugar.
CUATRO VARIABLES DE CONTROL DE RECURSOS
DEL MODELADO ÁGIL
Es admirable completar todas las
actividades en el proyecto a tiempo y dentro de todas las restricciones pero,
como probablemente habrá averiguado para estos momentos, para lograr esto es
imprescindible administrar el proyecto correctamente. Y esto implica no sólo
reunir todas las tareas y recursos; también significa que el analista
sacrifique algunas ventajas por otras.
TIEMPO Hay que asignar tiempo suficiente para
completar el sistema, y entender que lo necesita para varias actividades
distintas: escuchar a los clientes, diseñar, codificar y probar.
COSTO Es la segunda variable que podríamos ajustar. Suponga
que las actividades de codificación,
diseño,
prueba y escucha están sobrecargando el proyecto y los recursos que invertimos
en el tiempo, alcance y localidad no son suficientes, incluso aunque dediquemos
una cantidad normal al costo para equilibrar el proyecto. En esencia, tal vez tengamos
que contribuir más recursos que requieran dinero para
CALIDADLa tercera variable
de control de recursos es la calidad. Si los sistemas ideales son perfectos,
¿por qué hay que poner tanto esfuerzo en dar mantenimiento a los sistemas?
¿Acaso estamos practicando ya el desarrollo ágil al sacrificar la calidad en el
desarrollo de software? Sin embargo, la filosofía ágil permite al analista
ajustar este recurso y tal vez hacer un menor esfuerzo por mantener la calidad
que si se utilizara otro método. La calidad se puede ajustar en forma externa e
interna: la interna involucra la prueba de software con base en factores tales
como la funcionalidad
ALCANCE Por último tenemos el
alcance. En la metodología ágil, para determinar el alcance hay que escuchar a los
clientes y hacer que escriban sus historias, que se examinan después para determinar
cuánto se puede hacer en un tiempo dado para satisfacerlos. Las historias deben
ser breves y fáciles de comprender.
Es importante que el blog de prototipo
ResponderEliminarnos mantenga informados para ir conociendo y aprendiendo.