You are on page 1of 9

PROTOTIPOS INFORMATICOS

El desarrollo orientado a prototipos


Definicin de un prototipo en software: es un modelo del comportamiento del sistema que puede
ser usado para entenderlo completamente o ciertos aspectos de l y as clarificar los requerimientos
Un prototipo es una representacin de un sistema, aunque no es un sistema completo, posee las
caractersticas del sistema final o parte de ellas
Modelo o maqueta del sistema que se construye para comprender mejor el problema y sus posibles
soluciones:

Evaluar mejor los requisitos.

Probar opciones de diseo.

Caractersticas de los prototipos

Funcionalidad limitada.

Poca fiabilidad.

Caractersticas de funcionalidad pobres.

Alto grado de participacin del usuario el cual evala los prototipos, propone mejoras y detalla
requisitos.

Alto grado de participacin del analista de sistemas, ya que en muchos casos los usuarios no
pueden indicar los requisitos sin tener experiencia con el sistema.

El prototipo da mayor conocimiento al usuario y analistas ayudando a que el usuario aprenda a


utilizar el sistema.

Uso de prototipo
Se presenta al cliente un prototipo para su experimentacin.

Ayuda al cliente a establecer claramente los requisitos.

Ayuda a los desarrolladores a:

Validar correccin de la especificacin.

Aprender sobre problemas que se presentarn durante el diseo e implementacin del sistema.

Mejorar el producto.

Examinar viabilidad y utilidad de la aplicacin.

Tipos de prototipos.
Prototipado de interfaz de usuario: modelos de pantallas.
Prototipado funcional (operacional): implementa algunas funciones, y a medida que se comprueba
que son las apropiadas, se corrigen, refinan, y se aaden otras.
Modelos de rendimiento: evalan el rendimiento de una aplicacin crtica (no sirven al anlisis de
requisitos).
Rpido o desechable:

Sirve al anlisis y validacin de los requisitos.

Despus se redacta la especificacin del sistema y se desecha el prototipo.

La aplicacin se desarrolla siguiendo un paradigma diferente.

Problema: cuando el prototipo no se desecha, y termina convirtindose en el sistema final.

Evolutivos:

Comienza con un sistema relativamente simple que implementa los requisitos ms importantes
o mejor conocidos.

El prototipo se aumenta o cambia en cuanto se descubren nuevos requisitos.

Finalmente, se convierte en el sistema requerido.

Actualmente se usa en el desarrollo de sitios Webs y en aplicaciones de comercio electrnico.

Vertical

Desarrolla completamente alguna de las funciones.

Horizontal

Desarrolla parcialmente todas las funciones.

Herramientas de prototipado.

Lenguajes dinmicos de alto nivel.

Lenguajes de cuarta generacin (4GLs) (programacin de BBDD).

Ensamblaje de componentes y aplicaciones.

Lenguajes Dinmicos de alto nivel.


Muy usados:

Smalltalk (basado en objetos, sistemas interactivos)

Java (basado en objetos, sistemas interactivos)

Prolog (lgico, procesamiento simblico)

LISP (basado en listas, procesamiento simblico)

Eleccin del lenguaje:

Cul es el dominio de aplicacin?

Cul es la interaccin de usuario requerida?

(Java, Smalltalk se integran bien con las interfaces Web.)

Cul es el entorno proporcionado para el lenguaje?

Lenguajes de 4 Generacin.

La mayora de aplicaciones de gestin son interactivas e implican la manipulacin de una BD y


la produccin de salidas que involucran organizar y dar formato a esos datos.

4GL: lenguaje de programacin de BBDD (y su entorno de desarrollo), que contiene


conocimiento de la BD y operaciones para manipulacin de la misma.

4GL: lenguaje no Procedimental.

Reducen claramente los costos del desarrollo.

Muy usados en prototipado evolutivo.

Muchos 4GLs permiten el desarrollo de interfaces de

BBDD basadas en navegadores Web.

Generan SQL.

Menos eficientes que los lenguajes de programacin convencionales.

Reducen claramente los costos del desarrollo.

Ensamblaje de componentes y aplicaciones.


El desarrollo de prototipos con reutilizacin comprende dos niveles:
1.

El nivel de aplicacin, en el que una aplicacin completa se integra con el prototipo

P.ej., si el prototipo requiere procesamiento de textos, se puede integrar un sistema estndar


de procesamiento de textos (MS Office).
B. El nivel de componente, en el que los componentes se integran en un marco de trabajo estndar.

Visual Basic, TCL/TK, Python, Perl

Lenguajes de alto nivel sin tipos, con kits de herramientas grficas.

Desarrollo rpido de aplicaciones pequeas y relativamente sencillas, construidas por una persona
o conjunto de personas.

No existe una arquitectura explcita del sistema.

CORBA, DCOM, JavaBeans


Junto con un marco arquitectnico, es ms apropiado para sistemas grandes.

Prototipos de Interface de Usuario.


Las descripciones textuales y los diagramas no son suficientemente buenos para expresar los requisitos
de la interfaz.
La construccin de prototipos evolutivos con la participacin del usuario final es la forma ms sensata de
desarrollar una interfaz.
Los usuarios deben estar implicados en la evaluacin y evolucin del prototipo.
Herramientas:

Generadores de interfaz (4GLs, Visual Basic, etc.).

Editores de pginas Web.

Herramientas CASE.

Formularios, pantallas, generacin de cdigo

Bocetos en papel.
Aplicaciones de dibujo
Harward Graphics, etc.
MS PowerPoint.

Etc.
FASES
Las fases que comprende el mtodo de desarrollo orientado a prototipos seran:

Investigacin preliminar. Las metas principales de esta fase son: determinar el problema y
su mbito, la importancia y sus efectos potenciales sobre la organizacin por una parte y, por
otro lado, identificar una idea general de la solucin para realizar un estudio de factibilidad que
determine la factibilidad de una solucin software.

Definicin de los requerimientos del sistema. El objetivo de esta etapa es registrar todos
los requerimientos y deseos que los usuarios tienen en relacin al proyecto bajo desarrollo. Esta
etapa es la ms importante de todo el ciclo de vida, es aqu donde el desarrollador determina
los requisitos mediante la construccin, demostracin y retroalimentaciones del prototipo. Por lo
mismo esta etapa ser revisada con ms detalle luego de esta descripcin.

Diseo tcnico. Durante la construccin del prototipo, el desarrollador ha obviado el diseo


detallado. El sistema debe ser entonces rediseado y documentado segn los estndares de la
organizacin y para ayudar a las mantenciones futuras. Esta fase de diseo tcnico tiene dos
etapas: por un lado, la produccin de una documentacin de diseo que especifica y describe la
estructura del software, el control de flujo, las interfaces de usuario y las funciones y, como
segunda etapa, la produccin de todo lo requerido para promover cualquier mantencin futura
del software.

Programacin y prueba. Es donde los cambios identificados en el diseo tcnico son


implementados y probados para asegurar la correccin y completitud de los mismos con
respecto a los requerimientos.

Operacin y mantencin. La instalacin del sistema en ambiente de explotacin, en este


caso, resulta de menor complejidad, ya que se supone que los usuarios han trabajado con el
sistema al hacer las pruebas de prototipos. Adems, la mantencin tambin debera ser una
fase menos importante, ya que se supone que el refinamiento del prototipo permitira una
mejor claridad en los requerimientos, por lo cual las mantenciones perfectivas se reduciran. Si
eventualmente se requiriese una mantencin entonces el proceso de prototipado es repetido y
se definir un nuevo conjunto de requerimientos.

La fase ms importante corresponde a la definicin de requerimientos, la cual correspondera a un


proceso que busca aproximar las visiones del usuario y del desarrollador mediante sucesivas iteraciones.
La definicin de requerimientos consiste de cinco etapas entre dos de las cuales se establece un ciclo
iterativo:

Anlisis grueso y especificacin. El propsito de esta subfase es desarrollar un diseo bsico


para el prototipo inicial.

Diseo y construccin. El objetivo de esta subfase es obtener un prototipo inicial. El


desarrollador debe concentrarse en construir un sistema con la mxima funcionalidad, poniendo
nfasis en la interface del usuario.

Evaluacin. Esta etapa tiene dos propsitos: extraer a los usuarios la especificacin de los
requerimientos adicionales del sistema y verificar que el prototipo desarrollado lo haya sido en
concordancia con la definicin de requerimientos del sistema. Si los usuarios identifican fallas
en el prototipo, entonces el desarrollador simplemente corrige el prototipo antes de la siguiente
evaluacin. El prototipo es repetidamente modificado y evaluado hasta que todos los
requerimientos del sistema han sido satisfechos. El proceso de evaluacin puede ser dividido en
cuatro pasos separados: preparacin, demostracin, uso del prototipo y discusin de
comentarios. En esta fase se decide si el prototipo es aceptado o modificado.

Modificacin. Esto ocurre cuando la definicin de requerimientos del sistema es alterada en la


subfase de evaluacin. El desarrollador entonces debe modificar el prototipo de acuerdo a los
comentarios hechos por los usuarios.

Trmino. Una vez que se ha desarrollado un prototipo estable y completo, es necesario


ponerse de acuerdo en relacin a aspectos de calidad y de representacin del sistema.
En la siguiente figura se puede ver un esquema en que estas etapas se realizan, note que la
especificacin de requerimientos est claramente diferenciada de las dems. Es en ella donde se utiliza
el prototipado, ya que permite entregar al usuario lo que sera una visin la solucin final en etapas
tempranas del desarrollo, reduciendo tempranamente los costos de especificaciones errneas.

Modelo de desarrollo Orientado a Prototipos


Las ventajas de un enfoque de desarrollo orientado a prototipos estn dadas por:

Reduccin de la incertidumbre y del riesgo

Reduccin de tiempo y de costos, incrementos en la aceptacin del nuevo sistema,

Mejoras en la administracin de proyectos

Mejoras en la comunicacin entre desarrolladores y clientes, etc.

Si bien, el desarrollo orientado a prototipos tiene considerables ventajas, tambin


presenta desventajas como:

La dependencia de las herramientas de software para el xito ya que la necesidad de


disminucin de incertidumbre depende de las iteraciones del prototipo, entre ms iteraciones
exista mejor y esto ltimo se logra mediante el uso de mejores herramientas lo que hace a este
proceso dependiente de las mismas.

Tambin, no es posible aplicar la metodologa a todos los proyectos de software y, finalmente,


la mala interpretacin que pueden hacer los usuarios del prototipo, al cual pueden confundir
con el sistema terminado.

No se puede desconocer que la fase de definicin de requerimientos se ha perfeccionado en dos


aspectos importantes: primero se ha aproximado las visiones del usuario y el desarrollador, lo
cual representa el beneficio de establecer una base comn de comunicacin; tambin, el hacer
explcita la posibilidad de iterar sobre estos dominios permitira que la convergencia de los
mismos sea una posibilidad cierta.

Un escenario para la construccin de


prototipos
Todos los proyectos de ingeniera de software comienzan con una peticin del cliente. La peticin puede
estar en la forma de una memoria que describe un problema, un informe que define un conjunto de
objetivos comerciales o del producto, una peticin de propuesta formal de una agencia o compaa
exterior, o una especificacin del sistema que ha asignado una funcin y comportamiento al software,
como un elemento de un sistema mayor basado en computadora. Suponiendo que existe una peticin
para un programa de una de las formas dichas anteriormente, para construir un prototipo del software
se aplican los siguientes pasos:
PASO 1. Evaluar la peticin del software y determinar si el programa a desarrollar es un buen candidato
para construir un prototipo. Debido a que el cliente debe interaccionar con el prototipo en los ltimos
pasos, es esencial que:
1)
el cliente participe en la evaluacin y refinamiento del prototipo, y
2)
el cliente sea capaz de tomar decisiones de requerimientos de una forma oportuna. Finalmente, la
naturaleza del proyecto de desarrollo tendr una fuerte influencia en la eficacia del prototipo.
PASO 2. Dado un proyecto candidato aceptable, el analista desarrolla una representacin abreviada de
los requerimientos. Antes de que pueda comenzar la construccin de un prototipo, el analista debe
representar los dominios funcionales y de informacin del programa y desarrollar un mtodo razonable
de particin. La aplicacin de estos principios de anlisis fundamentales, pueden realizarse mediante los
mtodos de anlisis de requerimientos.
PASO 3. Despus de que se haya revisado la representacin de los requerimientos, se crea un conjunto
de especificaciones de diseo abreviadas para el prototipo. El diseo debe ocurrir antes de que comience
la construccin del prototipo. Sin embargo, el diseo de un prototipo se enfoca normalmente hacia la
arquitectura a nivel superior y a los aspectos de diseo de datos, en vez de hacia el diseo
procedimental detallado.
PASO 4. El software del prototipo se crea, prueba y refina Idealmente, los bloques de construccin de
software preexisten se utilizan para crear el prototipo de una forma rpida. Desafortunadamente, tales
bloques construidos raramente existen. Incluso si la implementacin de un prototipo que funcione es
impracticable, es escenario de construccin de prototipos puede aun aplicarse. Para las aplicaciones
interactivas con el hombre, es posible frecuentemente crear un prototipo en papel que describa la
interaccin hombre-maquina usando una serie de hojas de historia.
PASO 5. Una vez que el prototipo ha sido probado, se presenta al cliente, el cual conduce la prueba de
la aplicacin y sugiere modificaciones. Este paso es el ncleo del mtodo de construccin de prototipo.
Es aqu donde el cliente puede examinar una representacin implementada de los requerimientos del
programa, sugerir modificaciones que harn al programa cumplir mejor las necesidades reales.
PASO 6. Los pasos 4 y 5 se repiten iterativamente hasta que todos los requerimientos estn
formalizados o hasta que el prototipo haya evolucionado hacia un sistema de produccin. El paradigma
de construccin del prototipo puede ser conducido con uno o dos objetivos en mente:
1)
El propsito del prototipado es establecer un conjunto de requerimientos formales que pueden
luego ser traducidos en la produccin de programas mediante el uso de mtodos y tcnicas de ingeniera
de programacin, o

2)
El propsito de la construccin del prototipo es suministrar un continuo que pueda conducir al
desarrollo evolutivo de la produccin del software. Ambos mtodos tienen sus meritos y amos crean
problemas.
Para poder realizar el prototipado debemos aplicar una tcnica de captura de requerimientos que es una
herramienta que ayuda al proceso de abstraccin de las caractersticas de un sistema. La captura de
requerimientos se hace a travs de un proceso especficamente mental, el cual es el analista quien tiene
la capacidad para discernir sobre los detalles que interesan en realidad al sistema, valindose
generalmente de experiencias pasadas.
La identificacin de actores y use case en un sistema se hace para:

Delimitar el sistema de su ambiente externo.

De qu y quin actuar con el sistema y que funcionalidad es la que se espera de l.

Capturar y definir un glosario de trminos.

Adems es necesario que nosotros como analistas utilicemos una herramienta propia para
realizar cada uno de los pasos antes mencionados.

EJEMPLO:
Prototipo informtico para la
evaluacin de la calidad de la
educacin superior
Definicin del Problema:
Las universidades necesitan desarrollar procesos de evaluacin institucional de desempeo, que
conllevan a la revisin de sus estructuras funcionales y al conocimiento diagnstico de la situacin actual
con el fin de incrementar los niveles de eficacia, eficiencia y efectividad de la gestin universitaria.
Es necesario fomentar procesos de evaluacin en funcin de optimizar el uso de los recursos humanos,
tecnolgicos y financieros disponibles en la institucin a objeto de lograr un desarrollo ms armnico y
planificado, en atencin a una estricta observacin de su misin. Bajo esta perspectiva se ofrece una
propuesta de Prototipo Informtico para la Evaluacin de la Calidad de la Educacin Superior, cuyos
objetivos, entre otros, son: fomentar e incentivar la cultura de evaluacin de la calidad universitaria;
disear indicadores de gestin universitaria para dicho sistema de informacin, para cada uno de los
mbitos: acadmico, investigacin, extensin y administrativo. Para el desarrollo, se aplicarn las
herramientas y tcnicas para levantar los requerimientos de usuario, y producir las salidas que
satisfagan las necesidades de informacin y el acceso en forma integrada a la misma; respecto a los
diferentes niveles de la pirmide organizacional, accesibilidad a indicadores de gestin de calidad
universitaria a travs de mdulos interdependientes; esto es, cada nivel con su vista de usuario en la
base de datos. Se aplica la metodologa modular de sistemas, el enfoque de arriba hacia abajo y el
diseo de base de datos relacional.
El prototipo est diseado bajo una interfaz grfica para interactuar con el usuario a travs de botones
programables y la navegacin del sistema se realizar a travs de pantallas tipo ventanas

Modelo sistmico para la elaboracin del prototipo informtico de evaluacin de la


calidad en educacin superior
El modelo sistmico, se basa en las frmulas ms convencionales de la teora de sistemas, considerando
entradas, transferencias y salidas.
Ser el utilizado para el prototipo informtico propuesto, ya que ofrece todas las bondades de la
metodologa de sistemas.
En el modelo de evaluacin propuesto para el prototipo de evaluacin de la calidad universitaria, se
perfilan tres bloques, como lo muestra la grfica siguiente:

Entrada: estara constituida por las inversiones, tanto en recursos materiales como humanos.
En otras palabras: salas, talleres, bibliotecas, laboratorios con todos sus implementos; adems
de estudiantes, profesores y personal administrativo.

Procesos: estaran compuestos justamente por todas las interacciones que tienen lugar en la
institucin y que permiten que sta pueda cumplir los compromisos adquiridos con la sociedad,
en cuanto a conocimiento creados, profesionales formados y servicios entregados a la
comunidad. Esto incluye todos los procedimientos de administracin universitaria y gestin
financiera de la organizacin.

Salida o productos: corresponde a los logros organizacionales en docencia, investigacin y


extensin. Seran aspectos del resultado, la cantidad de graduados por cohorte, los proyectos
de investigacin realizados, las publicaciones de los mismos y el nmero de acadmicos
perfeccionados en un periodo determinado.
En sntesis, el modelo sistmico presenta para estos propsitos una gran ventaja, pues ayuda a agrupar
de manera ordenada los componentes institucionales y facilita la comprensin de la relacin que existe
entre los mismos.
Propuesta para sistematizar la informacin en el prototipo de evaluacin de la calidad de las instituciones
de educacin superior
Para sistematizar la informacin se utilizarn las seis dimensiones del modelo de CINDA que, como se ha
dicho, permite hacer una revisin bastante completa y coherente en los siguientes aspectos: acadmicos
en general, en la funcin docente, de investigacin y creacin, de extensin y servicios, y de gestin
administrativa.
De acuerdo con ello, se ha planteado la matriz modelo CINDA de informacin para cada uno de los tres
aspectos, que incluye los problemas de calidad a resolver, las propuestas de solucin y las sugerencias
estratgicas.

Matriz modelo CINDA


Dicha matriz se aplicar para cada uno de los aspectos a evaluar respecto a la calidad universitaria,
entre los que tenemos:

Funcin Docente

Aspectos Generales Acadmicos

Funcin Investigacin

Funcin Extensin

Gestin Administrativo-acadmica

Metodologa para el desarrollo del prototipo de evaluacin de la calidad universitaria


Para el desarrollo del prototipo informtico para la evaluacin de la calidad de la educacin superior, se
aplicarn los instrumentos y tcnicas para levantar los requerimientos de usuario, y producir las salidas
que satisfagan las necesidades de informacin y el acceso en forma integrada a la misma, respecto a los
diferentes niveles de la pirmide organizacional; esto es, nivel estratgico, nivel tctico y nivel operativo,
accesibilidad a indicadores de gestin de calidad universitaria a travs de mdulos interdependientes, es
decir, cada nivel con su vista de usuario en la base de datos.

Se aplica la metodologa modular de sistemas, el enfoque de arriba hacia abajo y el diseo de base de
datos relacional.

Diseo de arriba hacia abajo (top-down)

Se selecciona el diseo de arriba hacia abajo, por la facilidad de visualizar una gran imagen del sistema
y luego explotarla en partes o subsistemas ms pequeos. El diseo de arriba hacia abajo permite que el
analista de sistemas piense acerca de las interrelaciones e interdependencias de los subsistemas. Este
enfoque tambin proporciona el nfasis deseado sobre la sinergia o las interfaces que requieren los
sistemas y subsistemas. Las ventajas de usar este enfoque para el diseo de sistemas incluyen el evitar
el caos de disear un sistema todo a la vez. El tratar de tener todos los subsistemas en su lugar y
funcionando a la vez es aceptar que se va a fallar.

Enfoque modular para el desarrollo de sistemas


Una vez que ha sido tomado el enfoque de diseo de arriba hacia abajo, el enfoque modular es til en la
programacin. Este enfoque involucra la divisin de la programacin en partes o mdulos lgicos y
manejables. Este enfoque de programacin se ajusta bien con el diseo de arriba hacia abajo, debido a
que enfatiza las interfaces entre mdulos. En el prototipo se aplica la metodologa modular de sistemas
para desarrollar los mdulos: Funcin Docente, Funcin Investigacin, Aspectos Generales Acadmicos,
Funcin Extensin, Gestin Administrativo-acadmica.

Diseo de base de datos relacional


Se selecciona el modelo relacional de base de datos, por ser el ptimo en comparacin con los modelos
de base de datos jerrquicos y el de redes. Otra ventaja de este modelo es la portabilidad, ya que la
mayora de los paquetes de manejo de base de datos para computadores personales usan el enfoque
relacional. En este modelo los datos se organizan en tablas en las cuales una fila equivale a un
registro. Conceptualmente la tabla de la base de datos es lo mismo que un archivo. Una o ms tablas
constituyen una base de datos relacional. La base de datos relacional se refiere a una serie de tablas y a
las relaciones entre ellas. El sistema tendr capacidad, entre otras cosas, para:
1.

Crear y mantener la base de datos: esto es agregar, eliminar y modificar tablas.

2.

Extraer y presentar informacin que cumpla ciertas condiciones.

3.

Hacer consultas (por ejemplo: Cul es el promedio de notas de los alumnos por carrera y por
universidad? Cul es la matricula por rea de conocimiento? Cul es la rotacin matricular?,
etc.).

4.

Ordenar los registros (tablas), segn el campo clave.

5.

Generar informes adecuados para el usuario. (Por ejemplo: una universidad generar el reporte
de gestin peridicamente, segn sea el caso o el Reporte financiero puede ser semestral o
anual, etc.).

Modelo entidad relacin


Se generarn una serie de entidades y relaciones uno a muchos, a las cuales se le aplicar la tcnica
de normalizacin de tablas, incluso la tercera forma normal 3FN y 4FN, de ser necesario. Entre las
entidades tenemos: Universidad, Alumnos, Profesor, Organismos reguladores, Proveedores, Productos,
Oferta acadmica laboral, Egresados, etc.

Diseo de la interfaz grfica del prototipo


Para el desarrollo del prototipo informtico para la evaluacin de la calidad de la educacin superior, se
deben aplicar instrumentos y tcnicas para levantar los requerimientos de usuario, y producir las salidas
que satisfagan las necesidades de informacin y el acceso en forma integrada a la misma, respecto a los
diferentes niveles de la pirmide organizacional; esto es nivel estratgico, nivel tctico y nivel operativo,
accesibilidad a indicadores de gestin de calidad universitaria a travs de mdulos interdependientes;
esto es, cada nivel con su vista de usuario en la base de datos.
El prototipo est diseado bajo una interfaz grfica para interactuar con el usuario a travs de botones
programables y la navegacin del sistema se realizar a travs de pantallas tipo ventanas.

You might also like