Post on 18-Nov-2021
FORMULACIÓN DE UN MODELO PARA DESARROLLAR SOFTWARE EDUCATIVO
TESIS
M A E S T R Í A E N A D M I N I S T R A C I Ó N D E S I S T E M A S D E I N F O R M A C I Ó N
I N S T I T U T O T E C N O L Ó G I C O Y D E E S T U D I O S S U P E R I O R E S D E M O N T E R R E Y
POR
M A R T H A Y O L A N D A R O D R Í G U E Z A V I L É S
D I C I E M B R E D E 1995
FORMULACIÓN DE UN MODELO PARA DESARROLLAR SOFTWARE EDUCATIVO
TESIS
M A E S T R Í A E N A D M I N I S T R A C I Ó N D E S I S T E M A S D E I N F O R M A C I Ó N
I N S T I T U T O T E C N O L Ó G I C O Y D E E S T U D I O S S U P E R I O R E S D E MONTERREY
POR
M A R T H A Y O L A N D A R O D R Í G U E Z A V I L É S
D I C I E M B R E D E 1995
F O R M U L A C I Ó N D E U N M O D E L O P A R A D E S A R R O L L A R S O F T W A R E E D U C A T I V O
POR
MARTHA YOLANDA RODRÍGUEZ AVILES
TESIS
Presentada a la División de Graduados e investigación. Este trabajo es Requisito Parcial
para obtener el Título de Maestra en Administración de Sistemas de Información
INSTITUTO TECNOLÓGICO Y DE ESTUDIOS SUPERIORES DE MONTERREY
DICIEMBRE DE 1995
AI Dr. Javier Carri l lo.
Mi asesor en la presente investigación.
A mis sinodales:
Ing. Pedro Arizpe y Lic. Humber to Monforte
A mi mamá y mi hija Maidi
Con todo mi amor.
Í N D I C E GENERAL
P R E S E N T A C I Ó N i R E C O N O C I M I E N T O S v Í N D I C E G E N E R A L vi L I S T A D E F I G U R A S xi L I S T A DE C U A D R O S xii
1. I N T R O D U C C I Ó N 1
1.1 D E L I M I T A C I Ó N D E L A I N V E S T I G A C I Ó N 2
1.2 I M P O R T A N C I A D E L E S T U D I O 2
1.3 O R G A N I Z A C I Ó N Y P R E S E N T A C I Ó N D E L T R A B A J O 2
2. D E S C R I C P C I Ó N DE LO Q U E ES UN S O F T W A R E 4
2 .1 A N T E C E D E N T E S 4
2 .2 C A R A C T E R Í S T I C A S D E L S O F T W A R E 5
2.3 S O F T W A R E E D U C A T I V O 6
2.4 CARACTERÍSTICAS D E LOS PROGRAMAS EDUCACIONALES
P O R C O M P U T A D O R A 7
3. B A S E S C O N C E P T U A L E S PARA SUSTENTAR EL M O D E L O 10
3.1 E L P R O C E S O D E L D E S A R R O L L O D E L S O F T W A R E 10
3.2. M O D E L O S D E D E S A R R O L L O D E S O F T W A R E 11
3.2.1 E L M O D E L O DE LAISSEZ-FAIRE PARA DESARROLLAR S O F T W A R E 12
3.2.2 M O D E L O D E D E S A R R O L L O D E SOFTWARE EN CASCADA.. . 13
3.2.3 M O D E L O REUSABLE PARA EL DESARROLLO D E S O F T W A R E 16
3.2.4 M O D E L O D E D E S A R R O L L O I N C R E M E N T A L 17
3.2.5 M O D E L O P R O T O T I P O PARA EL D E S A R R O L L O
D E S O F T W A R E 2 0
3.2.6 M O D E L O D E D E S A R R O L L O D E S O F T W A R E EN E S P I R A L 2 3
3.3 O T R O S M O D E L O S D E D E S A R R O L L O D E S O F T W A R E 27 3.4 UN MODELO GENÉRICO DE DESARROLLO DE SOFTWARE 30
3.4.1 P O L Í T I C A S D E L M O D E L O G E N É R I C O D E D E S A R R O L L O
D E S O F T W A R E 3 5
3.4.2 P O L Í T I C A S D E A S E G U R A M I E N T O D E C A L I D A D 3 6
3.4.3 P O L Í T I C A S D E A D M I N I S T R A C I Ó N D E P R O Y E C T O S D E S O F T W A R E 37
4 . C R E A C I Ó N D E L M O D E L O 3 9
4 . 1 . 1 A N Á L I S I S 4 0
4 . 1 . 1 . 1 A N Á L I S I S D E O B J E T I V O S 4 0
4 .1 .1 .2 A N Á L I S I S D E R E Q U E R I M I E N T O S 41
4 . 1 . 2 D I S E Ñ O 4 2
4 .1 .2 .1 D I S E Ñ A R L O S O B J E T I V O S 4 2
4 .1 .2 .2 F L E X I B I L I D A D E N L O S C U R S O S A D I S E Ñ A R 4 2
4 .1 .2 .1MTNIMIZAR L A M E M O R I A D E L U S U A R I O 4 3
4.1.2.2 A D A P T A C I Ó N A LA E X P E R I E N C I A D E L U S U A R I O 4 3
4 .1 .2 .2 .1 S O F T W A R E C O M E R C I A L 4 4
4 . 1 . 3 D E S A R R O L L O 57
4.1.3.1 E S P E C I F I C A R E V E N T O S Y A C T I V I D A D E S
D E A P R E N D I Z A J E 5 7
4 .1 .3 .2 D O C U M E N T A C I Ó N D E L P R O G R A M A 58
4.1.3.3 S E L E C C I O N A R L O S M E D I O S Q U E SE V A N A U T I L I Z A R 5 9
4.1 .3 .3 .1 I N T E R A C C I Ó N C O N P E R I F É R I C O S 5 9
4 .1 .3 .3 .2 M I N I M I Z A C I Ó N D E E R R O R E S 6 0
4 .1 .3 .3 .3 D E P U R A C I Ó N D E L O S D A T O S 61
4 .1 .3 .3 .4 R E C U P E R A C I Ó N D E E R R O R E S 61
4 . 1 . 3 . 3 . 5 A Y U D A S E N L Í N E A 61
4 . 1 . 3 . 3 . 6 I N T E R F A S E A M I G A B L E 62
4 . 1 . 3 . 3 . 7 C O M A N D O S R Á P I D O S 6 3
4 .1 .3 .3 .8 R E S P A L D O D E V E R S I O N E S 6 3
4 . 1 . 3 . 3 . 9 E D I C I Ó N 64
4 . 1 . 3 . 3 . 1 0 C O N T R O L D E F L U J O 64
4 . 1 . 3 . 3 . 3 . 1 1 A N Á L I S I S D E R E S P U E S T A 65
4 . 1 . 4 E J E C U C I Ó N 65
4 .1 .4 .1 P U E S T A E N M A R C H A 65
4 . 1 . 5 C O N T R O L 6 6
4 .1 .5 .1 C O N T R O L D E L A P R E N D I Z A J E 6 6
4 . 1 . 5 . 2 C O N T R O L D E L S I S T E M A 67
5 . C O N C L U S I O N E S 6 8
5.1 R E L E V A N C I A D E L M O D E L O P R O P U E S T O 68
5.2 B E N E F I C I O S D E L M O D E L O P R O P U E S T O 7 3
5.3 D I F E R E N C I A C I Ó N D E L M O D E L O P R O P U E S T O 7 4
6 . B I B L I O G R A F Í A 7 5
L I S T A DE F I G U R A S .
Página
Figura 1. M o d e l o Laissez-Faire de Desarrol lo de Software 12
Figura 2. Mode lo de Desarrol lo de Software en Cascada 13
Figura 3 .Modelo Reusable para el Desarrol lo de Software 16
Figura 4 .Mode lo Incremental para el Desarrollo de Software 18
Figura 5.Actividades de un Incremento del Modelo Incremental 18
Figura 6.Las tres actividades típicas del modelo de Prototipo 21
Figura 7 .Mode lo de Desarrol lo de Software con prototipos 22
Figura 8 .Modelo de Desarrol lo de Software en Espiral 24
Figura 9 .Modelo de desarrol lo de sistemas de información 29
Figura 10 .Modelo Genér ico de Desarrol lo de Software 34
F igura 11 .Modelo para desarrol lar software educat ivo 68
F i g u r a 12 . A n á l i s i s 69
F i g u r a 13 . D i s e ñ o 70
F i g u r a 1 4 . D e s a r r o l l o 70
Figura 15.Selección de los medios que se van a utilizar 71
F i g u r a 1 6 . E j e c u c i ó n 72
F i g u r a 1 7 . C o n t r o l 72
LISTA DE C U A D R O S
Página
C u a d r o 1. P r o g r a m a s educa t ivos por nivel 52
C u a d r o 2. Her ramien ta s para elaborar mater ia les 54
C u a d r o 3 . P r o c e s a d o r de m e d i o s 55
C u a d r o 4 . U t i l e r í a s 57
Cuadro 5. Comparación de modelos para desarrollar software con
el m o d e l o p r o p u e s t o 74
1. INTRODUCCIÓN
La tecnología para el aprendizaje es un campo dinámico y en expansión. Los padres y los
educadores no cesan de intentar un mayor conocimiento de la naturaleza de las dificultades
de aprendizaje y de la metodología para conseguir éxitos académicos y sociales .
Actualmente, el desarrollo de software educativo es un campo en crecimiento en el área de
la enseñanza. Mediante el software educativo el hacer de la enseñanza una experiencia
agradable y divertida es una posibilidad real. Asi, esta tecnología se ha ido convirtiendo en
una herramienta de enseñanza efectiva lo cual se puede percatar en el programa
Computación Electrónica en la Educación Básica (COEEBA), el cual se incorporó en la
educación primaria en 1990. (ILCE, informe anual 1991).
La utilización de la computadora en el salón de clases es una de las experiencias
pedagógicas más interesantes que se han puesto en práctica en el sistema educativo. Una
sala de apoyo didáctico es un "Salón de clases común, en el cual se introducirá un elemento
adicional que es la microcomputadora, y un monitor de 19 pulgadas en un mueble diseñado
para la seguridad del equipo. Este será utilizado por el profesor como auxiliar didáctico para
reforzar el proceso enseñanza-aprendizaje en los momentos que lo requiera." (SEP-ILCE,
1986).
Actualmente se desarrolla software educativo a todos los niveles, para preescolar, primaria,
secundaria, tanto para personas con todas sus facultades mentales como para personas
especiales. Existe software educativo para desarrollar las habilidades matemáticas, verbales
y psicomotoras. (Buschman ,1992).
Sin embargo las rutinas de enseñanza permanecerán aplicándose en la escuela mientras " Jos
maestros no diseñen sus propias estrategias instruccionales, mientras se sigan descifrando
métodos de enseñanza importados de otras realidades." (Hernández, 1993).
1
En el presente trabajo se formula un modelo para el desarrollo de software educativo,
debido a que por medio de la observación y la experiencia adquirida al trabajar durante ocho
años, con profesores que de alguna u otra forma llevan a cabo software educativo, de una
manera "artesanal", se propone el problema general que se enuncia a continuación:
"Formulación de un modelo para el desarrollo de software educativo"
1.1 D E L I M I T A C I Ó N DE LA INVESTIGACIÓN
Esta investigación comprende el desarrollo de un modelo para realizar sofware educativo,
en base a los modelos para desarrollar software ya existentes y a los modelos de
aprendizaje convenientes.
1.2 I M P O R T A N C I A D E L ESTUDIO.
Se formulará un marco teórico para sustentar el modelo del desarrollo de software
educativo y se establecerán los referentes o lincamientos de diseño.
1.3 O R G A N I Z A C I Ó N Y P R E S E N T A C I Ó N DEL T R A B A J O
Los temas se desarrollaron de acuerdo como se explica a continuación.
1. Descripción del software educativo, de la educación asistida por computadora y de la
educación programada.
2. Modelos para desarrollar software, en este capítulo se expone el marco teórico que
sustente el modelo de software a proponer.
2
3. Aplicación del modelo, en este capítulo se propone un modelo para desarrollar software
educativo en base a los modelos mencionados.
4. Conclusiones , en donde se describen los beneficios del modelo y se hace la
diferenciación con los vistos en el marco teórico.
5. Referencias bibliográficas, en donde se da la bibliografía utilizada en la elaboración de la
presente tesis.
3
2 . DESCRIPCIÓN DE SOFTWARE.
2.1 A N T E C E D E N T E S .
Durante las décadas de 1950, 1960 y 1970, los usuarios finales (o simplemente usuarios)
dejaban las necesidades de información a los profesionales en computación, como los
programadores o analistas de sistemas, quienes entonces trabajaban con el sistema de
cómputo para generar la información requerida. En los "viejos tiempos", el tiempo total
tardaba tanto, que la información resultante era a menudo obsoleta o de poco valor al
momento de llegar al interesado. Como respuesta a las demandas de información más
oportuna, se diseñaron los sistemas de cómputo interactivos, que permiten al usuario
comunicarse directamente con el sistema por medio de un software que es "amigable con el
usuario".
Generalmente son designados como programas de Enseñanza asistida por Computadora
(EAC), la mayoría de los programas de aplicación didáctica, exceptuando el aprendizaje de
un lenguaje de programación (Johnson,1978). Las clases de programas de EAC más
conocidos según Johnson son:
- Ejercicios y prácticas
- Programas de demostración
- Programas de simulación
- Sistemas expertos
- Juegos educativos
- Evaluaciones y tests.
Gran parte de las raíces de la EAC se funda en la psicología conductual y los trabajos de
Skinner . "Si el conocimiento o las habilidades aprendidas pueden ser definidas
4
cuidadosamente, entonces, la secuencia de instrucciones para orientar la conducta puede ser
desarrollada." (Moursund,1992')
2.2 C A R A C T E R Í S T I C A S D E L S O F T W A R E .
El nombre de software se refiere a los programas de computadora; puede referirse
asimismo a los manuales que sirven de auxiliares a las personas que trabajan con el sistema
computacional, como guías de lenguajes de programación y manuales técnicos para
operadores de computadoras. (Parker,1987).
Los programas dirigen el sistema computacional para realizar tareas específicas, así como
los pensamientos dirigen al cuerpo para hablar o moverse de cierta manera. Hay dos clases
de software: el de sistemas y el de aplicaciones.
El software de sistemas consta de programas base que hacen posible que el software de
aplicaciones se ejecute con facilidad. Una de las partes más importantes del software de
sistemas es el sistema operativo, que es un conjunto de programas de control que
supervisan el trabajo del sistema computacional. Visto de otra manera el sistema operativo
hace posible que el software de aplicaciones interactúe con un conjunto específico de
hardware.
El software de aplicaciones es escrito por usuarios o programadores para realizar tareas
como el cálculo de interés, jugar juegos, diagnosticar las enfermedades de los pacientes de
un hospital, en otras palabras, el software de aplicaciones es lo que hace posible el trabajo
por computadora que las personas tienen presente cuando adquieren un sistema de
computación.
5
En el presente trabajo la definición de software educativo que se utilizará es:" Los
programas que tienen como misión controlar el sistema computacional con el fin de
producir resultados concretos " (Parker, 1987).
2.3 S O F T W A R E E D U C A T I V O .
Un sistema computacional no hace nada hasta que se le ordena. Un programa, que consiste
en instrucciones para la computadora, es el medio por el cual le mandamos ejecutar ciertas
operaciones. Estas instrucciones son ordenadas y agrupadas en forma lógica mediante la
etapa de programación. Los programadores utilizan varios lenguajes de programación, para
comunicar instrucciones a la computadora. (Long, 1990).
Una computadora no es capaz de realizar cálculos o manipular datos sin instrucciones
exactas dadas paso a paso. Dichas instrucciones toman la forma de un programa
computacional. Para un sistema de información pueden requerirse cinco, cincuenta o hasta
cientos de programas. El software de la hoja electrónica está constituido por docenas de
programas que trabajan a la vez para poder realizar tareas de hoja electrónica. Esto mismo
se aplica al software de procesamiento de palabra.
Cada programa resuelve un problema específico: calcular y asignar calificaciones, permitir
la actualización de una base de datos, vigilar el ritmo cardíaco de un paciente, analizar datos
de mercado, etc. De hecho, cuando se elabora un programa se está resolviendo un
problema, debe llegarse a una solución, y para ello, deben usarse los recursos de la lógica.
Un programa es corno los materiales utilizados para construir un edificio. Mucho del
trabajo intelectual involucrado en la construcción de un edificio está dentro del preproyecto.
El lugar, apariencia y la función de un edificio están determinados antes de que se coloque
el primer ladrillo. Así sucede en la programación. El diseño de un programa o su lógica de
programación (preproyecto), son determinados antes de escribir el programa (o de que el
edificio se construya).
6
Un programa Educativo es aquel escrito en cualquier lenguaje, para cualquier computadora,
cuyo objetivo primordial sea el participar, como sustituto del maestro o como apoyo a
aquel, en la tutoría de conocimientos o habilidades específicas que se enseñen en alguna
asignatura o disciplina del conocimiento. (Johnson, 1978).
Las ventajas de un programa educativo en computadora son que se tiene disponibilidad las
24 horas, trabajo continuo y repetitivo sin descanso, almacenamiento de grandes
volúmenes de información, capacidad de hacer grandes cantidades de cálculos en pocos
segundos, capacidad para la utilización de imágenes, capacidad de interacción, instrucción
personalizada. (Long, 1990)
2 .4 C A R A C T E R Í S T I C A S D E L O S P R O G R A M A S E D U C A C I O N A L E S
AISITIDOS POR C O M P U T A D O R A .
Las características de un programa para la enseñanza asistida por computadora (EAC)
dependen de las circunstancias de la lección que quiere ser evaluada. Estas pueden ser
según Michael Hannafin las siguientes:
1. Estar basada en objetivos instruccionales. los objetivos ayudan a desarrollar las
actividades apropiadas, deben estar claros para que el diseñador, los estudiantes y los
maestros puedan leerlos y entenderlos.
2. Las características de los aprendices deben ser iguales, el primer paso es estimar el
conocimiento de la población estudiantil que usará el programa ya que las instrucciones
deben ser apropiadas para el nivel de ellos.
7
3. Se debe maximizar la interacción, tal vez la mayor ventaja de la instrucción
computarizada es el potencial de interacción que se tiene.
4. Se debe adaptar a las necesidades individuales de los estudiantes, la computadora tiene el
potencial de adaptarse a la secuencia instruccional de los aprendices individualmente.
5. Debe mantener el interés en los estudiantes, la lección debe ser motivante
intrínsecamente.
6. Debe acercarse a un aprendizaje positivo, la lección propiciará una conversación entre el
programa y el estudiante en cada una de las sesiones, en muchos de los casos es
actualmente innecesario informar al estudiante el número de preguntas contestadas
incorrectamente.
7. Debe dar una gran variedad de retroalimentación, a los estudiantes les gusta aprender y
tal vez en la mayoría de las veces una positiva retroalimentación es lo indicado cuando lo
están haciendo bien.
8. Debe estar dentro de un ambiente instruccional, muchas de las lecciones desarrolladas
por la escuela pueden ser utilizada individualmente por los estudiantes en un salón de clases
estándar mientras el maestro y otros estudiantes están ocupados en diferentes actividades.
9. la evaluación debe ser apropiada, se debe ser cuidadoso al escoger los objetivos los
cuáles deben ser medibles con facilidad.
10. Debe usarse el recurso de la computadora de una manera juiciosa, esto quiere decir que
hay que aprovechar todos los recursos que nos da la computadora y que no parezca como
una hoja de cualquier libro de ejercicios, hay que utilizar colores, gráficas, movimientos.
8
11. Debe estar basado en los principios del diseño instruccional, una lección bien diseñada
motiva al estudiante, informa al estudiante sobre los objetivos de la lección, revisa las
destrezas que necesita el estudiante para lograr con éxito la lección presenta instrucciones
bien organizadas, evalúa el progreso frecuentemente, da una adecuada retroalimentación
permite una práctica adecuada y evalúa la ejecución final del estudiante y de la lección en si.
(Gagné y Briggs, 1979).
12. Debe ser evaluada completamente, las lecciones deben ser evaluadas en varios niveles,
por su calidad instruccional, sus consideraciones afectivas, y su relevancia curricular. Se
debe evaluar qué tan atractiva es la lección para los alumnos, se eliminarán combinaciones
ofensivas de colores, el abuso de información intermitente.
Para crear un software educativo de calidad es indispensable tener un buen modelo que
sirva de guía en sti elaboración.
9
3 . BASES CONCEPTUALES
3.1 El p roceso del desarrol lo del software.
Desarrol lar software no es una actividad rutinaria que pueda ser estructurada y
reglamentada como si se tratara de maquila. No hay que olvidar que se trata de un trabajo
intelectual que, además de ajustarse en forma dinámica a las necesidades, expectativas e
intereses de quienes participan en su elaboración (practicantes, usuarios o clientes), debe
dar lugar a un producto bien concreto: un sistema de software de buena calidad.
Bajo estas condiciones, no es difícil imaginar que la naturaleza del problema rebasa con
frecuencia las capacidades de los profesionales involucrados, dando por resultado un
trabajo desordenado. Por ello, es de gran utilidad contar con un proceso explícito de
desarrollo de software, que:
Organice el conocimiento para desarrollar software y guíe al practicante para que
pueda escoger entre varias alternativas de solución en forma consistente y
ordenada.
• Ayude a los clientes y usuarios a comprender la naturaleza del proceso de
desarrollo de software, sus ventajas, riesgos y limitaciones.
Facilite la comunicación entre el equipo de desarrollo de software, permitiendo
compartir experiencias, soluciones a problemas, e incluso reutilizar programas.
En síntesis, que permita crear una cultura en ingeniería de software.
O sencillamente, como Descartes lo dice categóricamente en su IV regla
para dirigir el espíritu (Descartes, 1980):
1 0
"El método es necesario para la investigación de verdad."
Sin embargo, modelar un proceso de desarrollo de software no es trivial, implica poder
balancear las necesidades de estandarización y consistencia organizacional, por un lado, y
la necesidad personal de creatividad y flexibilidad, por el otro.
La reflexión de estas ideas pone de manifiesto la inexistencia de un proceso universal de
desarrollo de software. Otros factores que confirman esto, son:
Dado que los proyectos de desarrollo de software pueden tener diferencias
significativas; sus procesos también deben reflejar esas diferencias.
• Dado que los objetivos de cada organización, la naturaleza del software que
produce, y la experiencia de su personal son distintos; sus procesos también
deben ser distintos.
En conclusión, las organizaciones que desarrollan software deben adoptar, de acuerdo con
sus necesidades, alguna forma sistemática de llevar a cabo su proceso de producción o, en
su defecto crear un modelo propio.
3.2. M o d e l o s de desarrol lo de software.
En términos generales, un modelo de desarrollo de software se puede visualizar como una
descomposición del proceso de desarrollar software en actividades concretas que pueden
ser planeadas y controladas.
1 1
Cada actividad debe proporcionar productos que puedan ser revisados para evaluar el
avance del proyecto y programar los ajustes necesarios para cumplir los compromisos
contraídos.
3.2.1 El modelo de Laissez-Faire para desarrollar software.
Este modelo de desarrollo de software es el más viejo y artesanal, se caracteriza por ser un
proceso lineal donde el practicante codifica, sin mayor planeación, análisis o diseño del
sistema; las necesidades que sus clientes o usuarios le indican. Esta forma de trabajar
prevalece en numerosas organizaciones, entre otras cosas porque la gerencia puede recibir
resultados inmediatos de sus peticiones pero posee grandes desventajas, entre las que
destacan:
F i g u r a 1. M o d e l o L a i s s c / . - F a i r c d e D e s a r r o l l o d e S o f t w a r e
• Generalmente, el software que se produce no satisface las necesidades de quién
lo solicita, porque no se analizan los verdaderos requerimientos del cliente.
• Casi siempre, el software que se produce no es fácil de mantener porque su
diseño "ad-hoc", es muy poco flexible y no está documentado. La única
documentación es el código fuente del programa.
C o d i f i c a c i ó n
N e c e s i d a d e s d e l c l i e n t e
S o f t w a r e c o d i f i c a d o
1 2
Por regla general, el software que se produce tiene múltiple fallas, porque nunca
se prueba sistemáticamente, y porque se modifica continuamente sin dejar huella
de los cambios realizados.
• El software que se produce no es económico, porque no es posible planear las
actividades de programadores que trabajan a su modo, artesanalmente.
3.2.2 Modelo de Desarrollo de Software en Cascada.
Este modelo que surgió en 1970 (Royce,70), es hoy en día el modelo clásico y, considera
una de las mejores formas de desarrollar software en forma sistemática. Es un modelo que
se le ha llamado "En Cascada" por lo indispensable de cada actividad (caída) para realizar la
sucesiva.
Definición de objetivos
Especificación de requerimientos
Anál i s i s de ob je t ivos
Anál i s i s de requer imien tos
Documento de diseño
Diseño del Código s is tema
Const rucción del Doc. Pruebas
s is tema
Pruebas Man. Usu.
Puesta en marcha
Figura 2. El Modelo de Desarrollo de Software en Cascada
1 3
A continuación se describen brevemente cada una de estas actividades:
Análisis de Objetivos, se destacan y analizan las necesidades de los clientes y
usuarios hasta definir los objetivos de una solución viable cuyos beneficios
justifican la realización del desarrollo de software.
Análisis de Requerimientos. Con base en los objetivos sintetizados en la actividad
inicial, se analizan posibles alternativas de solución hasta que se definen y
especifican los requerimientos del sistema de software por desarrollar.
Diseño del Sistema de Software. Los requerimientos del sistema de software se
traducen en una representación del sistema de software (diseño) que ya se puede
codificar.
Construcción del Sistema de Software. Se codifican los módulos o componentes
que el diseño del sistema de software describe, y se integran hasta obtener una
representación ejecutable del mismo.
Pruebas de Software. Se verifica que cada componente del sistema de software
realice su objetivo apropiadamente, y se valida que las funciones que realiza
cumplen con los requerimientos del sistema.
• Puesta en marcha. Se instala el sistema de software a los usuarios y se deja el
sistema operando.
Probablemente la principal ventaja del modelo de desarrollo en cascada con respecto al
modelo de Laissez-Faire es que se introduce una disciplina de trabajo bien estructurada que
redunda en los beneficios siguientes:
1 4
• Permite obtener software de calidad, porque es posible validar el sistema de
software contra sus requerimientos, mismo que fueron acordados en el análisis.
• Permite controlar la calidad del trabajo, previniendo los errores en cada actividad en
lugar de heredarlos a las actividades sucesivas.
• Permite aumentar la productividad del desarrollo del sistema de software porque su
aplicación disciplinada se puede planear, seguir y controlar.
• Permite reducir el costo real del desarrollo del sistema de software porque evita la
construcción de sistemas cuyos requerimientos no se han establecido.
• Permite reducir el costo real de mantenimiento del sistema de software porque
durante su desarrollo se genera documentación detallada de su diseño, código y
operación.
Estos beneficios han hecho del modelo de desarrollo en cascada, el modelo clásico; sin
embargo, los resultados de su aplicación no siempre han sido tan halagüeños
porque:
• Requiere de una estricta disciplina y control que pueda burocrati/arse cuando el
modelo se usa mecánicamente, sin criterio.
• Supone que una vez definidos los requerimientos del sistema de software, estos no
cambian durante el desarrollo. La verdad es que el usuario casi siempre solicita
cambios, entre otras cosas porque no sabe lo que quiere con nitidez.
1 5
La naturaleza intelectual del desarrollo de software impide que el trabajo pueda
realizarse en actividades secuenciales, tal y como lo pide el modelo.
Por estas razones es recomendable el uso de este modelo cuando las necesidades del
usuario se comprenden bien y no cambian durante el proyecto.
Existen diversas variantes del modelo de desarrollo en cascada, entre los cuales destacan
los modelos de desarrollo reusable e incremental que ahora se describen.
3.2.3 Modelo Reusable para el Desarrollo de Software.
La idea que hay detrás de este modelo es valerse de la preconstrucción, pues es mucho más
económico crear un sistema de software a partir de módulos o componentes preconstruídos
o reusables; que crearlo a partir de ladrillos; instrucción por instrucción.
Definición de Objelivos
A n á l i s i s d e O b j e t i v o s
A n á l i s i s d e R e q u e r i m i e n t o s
Kspecificación de Requerimientos
Doc. de Diseño (módulos nuevos)
D i s e ñ o S i s t e m a
Código reusable
C o n s t r u c c i ó n Software integrado
In tegrac ión S i s t ema
Doc. IVuebas
P ruebas Doc. Usuario
Puesta en m a r c h a
Figura 3. El M o d e l o Reusable para el Desarrol lo de Software
1 6
El punto débil de este modelo es que aunque la organización sea grande existan muchas
posibilidades de que funciones similares hayan sido implementadas con anterioridad en
aplicaciones distintas, casi siempre los módulos no son lo suficientemente generales para
ser utilizados en las aplicaciones nuevas. Este problema se está resolviendo mediante el uso
de nuevas técnicas que se están incorporando en forma sostenida a la práctica profesional:
el diseño y la programación de software orientadas a objetos (Meyer,1988).
Una variante importante de este enfoque es recurrir a paquetes comerciales de software
cuando se trata de aplicaciones convencionales como una nómina, una contabilidad, un
sistema de control de la producción, etc., pero aun decidiéndose por esta opción, es
conveniente evaluar con cuidado, que paquete puede satisfacer los requerimientos del
sistema de software de mejor forma.
3.2.4 Modelo de desarrollo Incremental.
El modelo incremental surgió de la necesidad de no perder el control en tiempo y costo de
los grandes proyectos de desarrollo de software.
Para ello, tanto el análisis de objetivos como el de requerimientos se realiza de la misma
forma que en el modelo de cascada. Sin embargo, el sistema se diseña globalmente
buscando una arquitectura que permita su construcción parcial en versiones increméntales.
Finalmente, se construye el sistema en incrementos sucesivos que producen versiones más
completas del sistema hasta obtener la versión definitiva.
1 7
D e f i n i c i ó n d e o b j e t i v o s
Aná l i s i s d e ob je t ivos
H spcc i f i cac ión d e R e q u e r i m i e n t o s
Anál i s i s d e R e q u e r i m i e n t o s
A r q u i t e c t u r a del S i s t e m a
D i s e ñ o Globa l del S i s t ema
I n c r e m e n t o 1
I n c r e m e n t o n
Figura 4. El Mode lo Incremental para el Desarrol lo de Software
Arquitectura del Sistema
Doc. Diseno (detalle)
D i s e ñ o D e t a l l a d o
Código
C o n s t r u c c i ó n del S i s t e m a
Doc. Pruebas
P r u e b a s Manual Usuario
Puesta en m a r c h a
Figura 5. Act iv idades de un Incremento del M o d e l o Incremental
1 8
Cada incremento comienza con un diseño detallado de la versión que se va a desarrollar,
seguido de la construcción, las pruebas y la puesta en marcha, como en el modelo clásico.
Algunos consideraciones para la aplicación efectiva de este modelo son:
• Que los requerimientos puedan ser satisfechos en versiones parciales del sistema por
realizar.
• Que los cambios en las necesidades de los usuarios no destruyan la arquitectura del
sistema de software.
• Que las funciones que satisfacen las necesidades más estables del
usuario sean cubiertas desde las primeras versiones.
• Que exista un estricto control de la documentación del sistema para evitar
confusiones que se multipliquen conforme se desarrollan las versiones nuevas.
Entre los beneficios del modelo incremental destacan los siguientes:
• Menor rigidez. Permite que dentro de las restricciones de diseño que se hayan
impuesto originalmente, sea posible adaptar el sistema a los cambios de necesidades
del usuario.
• Permite proporcionar versiones operativas del sistema, en un tiempo y a costo
mucho más razonables.
1 9
• Permite, en un corto plazo, demostrar al usuario muchas de las bondades que el
futuro sistema va a poseer.
En términos generales, se recomienda el tiso del modelo incremental cuando el sistema por
desarrollar es muy grande o demanda tiempos de desarrollo muy largos, y cuando se está
cierto que las necesidades de los usuarios evolucionan paulatinamente.
Buscando darle una mayor flexibilidad al desarrollo de software han surgidos nuevos
modelos entre los que destacan los modelos de Prototipo y en Espiral que aparecen en
seguida.
3.2.5 M o d e l o Protot ipo para el Desarrol lo de Software.
Realizar un prototipo (Smith,91) es un proceso que permite al practicante crear un modelo
del software por construir. Por ello, la aplicación de este modelo de desarrollo es
particularmente útil para concretar los requerimientos del software, sobretodo cuando estos
son muy volátiles. En esta situación, el modelo del prototipo permite tender un puente de
comunicación con el usuario para conocer sus necesidades auténticas.
Una vez elegido este modelo, puede ser necesario la creación de más de un prototipo
(prototipo evolutivo) para determinar los requerimientos que el usuario desea.
Para hacer un prototipo sin caer en un desarrollo Laissez-Faire, se sugiere considerar las
tres actividades típicas que aparecen en la figura.
2 0
Definición del Protot ipo.
Desarrol lo del Protot ipo. (Bosquejo de Diseño y Construcción)
evaluación del Prototipo obtenido .
F igura 6. Las tres act ividades típicas del mode lo de Protot ipo
Definición del Prototipo. Primero se justifica el uso de este modelo, y después se
establece el objetivo del prototipo, su alcance, el plan de trabajo, y los recursos
requeridos, tanto de hardware como de software.
Desarrollo del Prototipo. Se bosqueja el diseño del prototipo y se construye
usando un medio propicio (diagramas en papel, programa automático, etc.).
• Evaluación del Prototipo. Se analizan las fuerzas y debilidades del prototipo con
el usuario y se documentan los requerimientos del sistema que se hallan
Una vez que se han experimentado las soluciones que se deseaban, a través de uno o más
prototipos, todavía falta una actividad más por realizar:
• Liberación del Prototipo. Se implanta el sistema de software en forma sistemática
(usando cascada, incremental u otro) a partir de los requerimientos obtenidos por los
prototipos a menos que estos hayan evolucionado hasta alcanzar un prototipo operativo
detectado.
2 1
que el usuario desea tal como está. En esta situación, el usuario debe recibir apoyo
directo para corregir las fallas de un sistema que no se hizo en forma sistemática.
Protot ipo 1
Protot ipo n
Liberación
F igura 7. Mode lo de Desarrol lo de Software con Protot ipos
Un uso adecuado del modelo de prototipo requiere que exista:
Necesidad de capturar las verdaderas necesidades del usuario, mediante la
experimentación de soluciones que el usuario pueda ver.
Factibilidad de realizar el prototipo en un corto periodo de tiempo.
Familiaridad de los desarrolladores con herramientas que faciliten un trabajo
eficaz.
• Participación activa de los usuarios.
Sin embargo, el uso del modelo de prototipo puede acarrear los problemas siguientes:
2 2
Muchas veces es difícil saber cuando parar de hacer prototipos.
No es fácil hacer un contrato.
Si no se toman las medidas adecuadas, el proceso de desarrollo del sistema
puede degenerar en el modelo Laissez-Faire.
• El mantenimiento de la documentación puede ser difícil debido a los múltiples cambios.
Todo esto nos conduce a recomendar el uso de este modelo cuando:
• Las funciones o interfases de la aplicación no se entienden.
• No se sabe si el sistema podrá tener el desempeño que exige la aplicación.
• El usuario tiene poca preparación o tiempo para el análisis del sistema, o
simplemente hace falta que el usuario se involucre en el desarrollo del sistema.
• No se sabe de que manera diseñar el sistema en un producto sólido.
3.2.6 M o d e l o de Desarrol lo de Software en Espiral .
El modelo de desarrollo de software en Espiral (Bohem,88)surgió de la necesidad de contar
con un modelo que superara las deficiencias del modelo clásico.
Desarrollar software usando el modelo de cascada implica mucha disciplina y poca
flexibilidad algo que se ha ido superando mediante el uso de variantes como los modelos
incremental y reusable o, a través de incorporaciones de prototipos; sin embargo, su
principal inconveniente prevalece: la necesidad de contar con documentos totalmente
elaborados como criterio de terminación de una actividad y requisito para pasar a la
2 3
siguiente. Esto ha dado como resultado que con frecuencia se especifiquen documentos
elaborados de problemas pobremente comprendidos, especialmente cuando se trata de
aplicaciones con una alta interacción con el usuario directo.
Para superar estas dificultades, el modelo de desarrollo en espiral avanza paulatinamente de
los objetivos de la aplicación hacia el producto final tan rápidamente como sea necesario,
según se vayan resolviendo los riesgos de la aplicación, es decir, el modelo de desarrollo
en espiral está dirigido por riesgos y no por la elaboración de documentos.
O B J E T I V O S R E S T R I C C I O N E S A L T E R N A T I V A S
E V A L U A C I Ó N D E A L T E R N A T I V A S ( A N Á L I S I S DE R I E S G O S )
R E S O L U C I Ó N D E R I E S G O S
Pro lo l ipo 1 Pro to t ipo 2
Pro to t ipo Pro to t ipo 3 \ O p e r a t i v o
Inic Plan d e Def in ic ión
C o n c e p t o de la O p e r a c i ó n
Plan d e Desa r ro l l o
Def in ic ión Sof tware
D i seno Sof tware
Cod i f i cac ión
Plan d e P r u e b a s
P L A N E A C I O N ( S I G U I E N T E S E T A P A S )
Pruebas
D E S A R R O L L O DE P R O D U C T O S
Figura 8. Mode lo de Desarrol lo de Software en Espiral
2 4
En cada ciclo de la espiral, este modelo contempla actividades que surgen dinámicamente al
plantearnos las preguntas adecuadas y responderlas, en forma similar a como George Polya
lo propone en su libró clásico (Polya,65).
A continuación aparece un bosquejo del esquema general de preguntas por considerar:
Determinación de objetivos, alternativas y restricciones, (primer cuadrante de la
figura)
¿Cuáles son los objetivos del producto o la porción de éste que se desea realizar y
Porqué? (el sistema, o sus funciones, o su velocidad respuesta, etc.; y que se
gana con lograrlo)
¿Cuáles son las alterativas para alcanzar los objetivos planteados? (compra de
software, desarrollo interno, contratación externa, mantenimiento del software
que existe, etc.)
¿Qué restricciones debe satisfacer la solución y cualquier alternativa factible?
(costo, tiempo, equipo, etc.).
Evaluación de alternativas, identificación y resolución de riesgo, ( s e g u n d o
cuadrante de la figura)
Desde la perspectiva de cada alternativa factible, ¿cuáles son las principales
áreas de incertidumbre que pueden causar mayor riesgo el logro de los
objetivos?
• Si hay incertidumbres o riesgos, ¿Con qué estrategia se pueden resolver?
(análisis, prototipo, simulación, benchmarks, uso de cuestionarios, literatura,
etc.)
• ¿Cuál(es) alternativa(s) satisface(n) los objetivos y restricciones del ciclo con
menos rieseo?
25
Se resuelven los riesgos de la alternativa escogida.
Desarrollo y verificación del producto. Siguiente producto, (tercer cuadrante de
la figura).
Se elabora el producto a partir de la estrategia de la alternativa escogida
Se verifica el producto
Se indica el siguiente producto a obtener.
Planeación de los ciclos sucesivos, (cuarto cuadrante de la figura)
Se planea la obtención del siguiente producto
• Se revisan los productos obtenidos durante el último ciclo.
Las partes involucradas se comprometen a realizar el siguiente ciclo.
Algunas de las ventajas más importantes de este modelo son:
• Su universalidad. Dependiendo de los riesgos de cada proyecto, el modelo en
espiral se puede transformar en cualquiera de los modelos antes citados.
Se previenen errores, en lugar de propagarlos como bien puede suceder en el
modelo de cascada.
• Se absorben los cambios a los productos del desarrollo.
Permite poner en un mismo contexto el desarrollo y el mantenimiento de hardware
y software.
2 6
Entre sus principales desventajas (actuales) podemos citar:
• La contratación de software, porque la aplicación del modelo requiere de una
flexibilidad qtie no tiene la rigidez de los contratos del software comercial.
• La necesidad de contar con expertos en análisis de riesgo. En ausencia de tales
expertos el modelo puede convertirse en un proceso sin rumbo, caótico.
La necesidad de una mayor elaboración de las actividades que forman el modelo.
3.3 Otros mode los de desarrol lo de software.
Hasta el momento se han revisado algunos de los modelos más utilizado este campo; sin
embargo existen muchos otros, como ahora veremos en área aparentemente dominada: los
sistemas de información (Galván,92); pero, antes de continuar vale la pena preguntarnos:
¿Porqué considera modelo diferente al modelo clásico para el desarrollo de sistemas de
información?
La pregunta parece extraña, pues desde los 7()'s (Codd,70) se conocen técnicas efectivas
para el diseño de bases de datos, y ahora los lenguajes de cuarta generación se han
encargado de facilitar el diseño de pantallas y reportes, el mantenimiento de las bases de
datos e incluso el manejo de la información dentro de una red de computadoras. En
resumen, desarrollar sistemas de información ya no se considera un reto tecnológico, sin
embargo, a pesar de todos estos avances, los problemas siguen siendo de naturaleza no-
técnica y fundamentalmente los mismos (Martin,88).
• Tiempo insuficiente de desarrollo.
• Revisiones insuficientes o ineficientes con los usuarios.
2 7
• Diferencias de opinión.
• Cambios políticos.
• Falta de conocimiento técnico.
• Incapacidad para comunicarse bien.
Como podrá observarse, estos problemas tienen que ver con la manera de concebir el
sistema, con buscar un consenso entre patrocinadores, desarrolladores y usuarios acerca de
lo que el sistema debe realizar, evitando caer en situaciones como esta (usuario
incomprendido) (Pressman,88):
" Si que crees haber comprendido lo que piensas que dije, pero no estoy seguro de
que te des cuenta, que lo que tu oíste no es lo que yo quería decir".
T ra t ando de solucionar esta problemát ica , Alavi puso a dos grupos de
estudiantes de la Universidad de Florida a desarrollar sistemas de información (Alavi,91).
El primero usó el modelo del prototipo (evolutivo) encontrando buenos resultados, aunque
superados por el segundo. En éste, también se uso el mismo modelo de desarrollo, pero
antes de construir los prototipos, se modelaron las bases de datos de los sistemas.
Estos resultados parecen lógicos, pues:
a) La base de datos es la columna vertebral de los sistemas de información y
b) El uso de prototipos es muy conveniente para involucrar al usuario en definición
de procesos complejos o de las E/S, en forma de mantenimientos o consultas a la
base de datos; o también reportes informativos (estadísticos).
28
Definición de Objet ivos ^
Determinac ión inicial de Requer imientos 2 Func iona les y de Información
Desarrol lo del protot ipo usando prototipos en papel una herramienta 4 G L
^ Evaluación del Protot ipo 4
Si ¿es satisfactorio?
Si 5 - Liberación
N o
4 — Modif icación del Protot ipo 4
3
F igura 9. M o d e l o de desarrol lo de sistemas de información
1. Según este modelo, el desarrollo del sistema de información comienza identificando y
describiendo las necesidades del usuario a fin de proponer un conjunto de objetivos, que de
lograrse, implicarán la satisfacción de sus necesidades.
2. En este paso, se identifican los requerimientos iniciales del sistema tanto funcionales
como de información . El trabajo se centra en comenzar a definir los servicios que ofrecerá
2 9
el sistema. Para ello, se pueden utilizar diagramas conceptuales de usuario (Martin,88) pues
proporcionan una idea clara y simple del sistema (Galván,92).
Al mismo tiempo, que se modela conceptualmente la base de datos utiliza una variación
muy adecuada del modelo de entidad-relacionamiento modelo ELKA (Rodríguez,81).
3. Durante los primeros prototipos se utilizaron los diagramas conceptuales de usuario
como forma de comunicación con el usuario, pero posteriormente esta comunicación es
menos en papel y más automática. Según las necesidades, el prototipo puede ser un
cascarón de menús, el cascarón de uno o más servicios, etc.
4. Se recaban los requerimientos funcionales y de información obtenidos con el prototipo
recién planteado y se modifica o se diseña un nuevo prototipo según sea el caso.
Únicamente se dejan de crear prototipos cuando los requerimientos son lo suficientemente
claros y completos como para proceder a una liberación.
5. Se desarrolla el sistema siguiendo el modelo tradicional (cascada) una vez que existe
acuerdo entre desarrolladores y usuarios acerca de los requerimientos del sistema.
3.4 U n M o d e l o Genér i co de Desarrol lo de Software.
Es muy factible que los modelos de desarrollo de software que se acaban de describir sean
parcialmente adecuados a las necesidades concretas de una organización, ya sea porque no
son lo suficientemente detallados o porque no contemplan algunas actividades de
relevancia para el proceso de desarrollo de software que requiere la institución, por
ejemplo: el estudio de mercado que identifica las necesidades de los usuarios potenciales de
un paquete comercial de software en ciernes, (Digital, 89) es parcialmente irrelevante para
desarrollar software hecho a la medida de una organización.
3 0
Estas ideas son útiles para ir tomando consciencia de que hacer un modelo completo de un
proceso complejo como es el desarrollo de software, tiene que ser complejo.
Por esta razón, antes de comenzar a diseñar el proceso de desarrollo de software es
conveniente tener una visión amplia del mismo, como lo dice la regla Vil para dirigir el
espíritu de Rene Descartes (Descartes, 1680):
"Para completar la ciencia, es preciso, por un movimiento continuo del
pensamiento, recorrer todos los objetos que se relacionan con el fin que nos
proponemos, y así abarcarlos en una enumeración suficiente y ordenada."
El resultado de este esfuerzo puede resultar en un ordenamiento del trabajo que está
dirigido por actividades, como en el modelo de desarrollo en cascada, o que está dirigido
por riesgo como en el modelo en espiral, o en algún otro ordenamiento (Yeh,1991).
El problema de esta forma de proceder es que es muy probable que el modelo de
desarrollo de software sea detallado en aspectos poco relevantes y pase por alto aspectos
cruciales. Por esta razón, es recomendable partir de un modelo más conceptual, un modelo
genérico de desarrollo de software que:
*Esté contextualizado dentro del marco de madurez. Esto significa que el modelo
debe dar énfasis a las actividades siguientes (nivel repetible) (Humprey,89):
• Estimación, planeación y seguimientos de proyectos
• Organización y control de la documentación
• Aseguramiento de calidad en los proyectos
* Permita detallar los modelos de desarrollo de software que la organización necesita.
En nuestro caso, un modelo genérico lo más universal posible para que sea útil a
c u al q u i e r o rgan i zac i ó n.
3 1
Recurriendo a la regla Vil de Descartes bajo las consideraciones recién mencionadas, se
puede visualizar el proceso de desarrollo de software desde dos ángulos distintos: como un
proceso interdisciplinario que involucra la interacción cooperativa de distintas
especialidades para construir el software disciplinadamente; y como un proceso de
producción compuesto de etapas genéricas (no necesariamente secuenciales) que buscan,
sistemáticamente, obtener un producto de calidad a partir de las necesidades de los
usuarios.
Cabe reconocer que este modelo se originó del trabajo de caracterización de una guía de
desarrollo de software para el Instituto de Investigaciones Eléctricas (Galván,91), una
organización que desarrolla toda clase de aplicaciones de software para el sector eléctrico
mexicano.
Desde el primer ángulo, se deben considerar cuando menos tres especialidades distintas
para poder alcanzar el nivel repetible (Humphrey,89):
Desarrollo de Software
Administración de Proyectos de Software
Aseguramiento de Calidad.
Sin embargo, la organización puede demandar otras, como la Trasferencia de Resultados,
El Mejoramiento Institucional. El Trato al Cliente (Galván,91). etc. Las tres primeras se
describen a continuación:
a) Desarrollo de Software.
Agrupa el conjunto de actividades para definir las necesidades del usuario hasta
hacer explícitos los requerimientos de software, implementar estos requerimientos
en un producto y liberar el producto para su uso operativo por los usuarios.
b)Aseguramiento de Calidad.
32
Agrupa el conjunto de actividades de control de calidad que permiten asegurar que
el sistema de software producido satisface adecuadamente a las necesidades que
demanda el usuario.
c) Administración de Proyectos de Software.
Agrupa actividades que permiten dimensionar la magnitud de las componentes que
conforman los sistemas de software para estimar su de desarrollo, planear el
trabajo, y dar seguimiento a su ejecución; asimismo establece la manera en que se
organizará y controlará la documentación del trabajo.
Por lo que respecta a las etapas genéricas, se desean considerar sólo las necesarias para
permitir la aplicación de cualquiera de los modelo de desarrollo de software que se han
descrito u otros:
Etapa de Definición
• Etapa de Implementación
Etapa de Liberación
Etapa de Definición.
En esta primera etapa se entiende la naturaleza del problema por resolver
planteándose los objetivos, alcance y características del software por desarrollar. Se
proponen alternativas de solución, y. se recaban los requerimientos de la solución
escogida que definen el producto de software por implementar.
Etapa de Implementación.
El propósito de esta etapa es diseñar, construir, probar y/o evaluar software que
satisfaga los requerimientos que se estipularon en la etapa de definición. Los
productos típicos de esta etapa son el código, fuente y objeto; así como la
documentación, de diseño y de usuario.
f) Etapa de Liberación.
33
Comprende el periodo de tiempo en que el sistema de software implementado se
integra a su medio ambiente operativo y ahí se prueba para asegurar que se
desempeña como se requiere.
LIBERACIÓN
Adminis t rac ión Desarrollo de P royec tos de Software
Figura 10. Mode lo Genér ico de Desarrol lo de Software
La generalidad del modelo de desarrollo de software que se acaba de describir es tan abierta
que permite desarrollar software como se desee, por ello es conveniente establecer algunas
políticas: lineamientos de tiso apropiado del modelo.
Aseguramien to de Cal idad
34
3.4.1 Pol í t icas del mode lo genér ico de desarrollo de software.
Organizadas por especialidad, las políticas que acompañan al modelo genérico de desarrollo
de software son:
Políticas de Desarrollo de Software.
1. Juiciosamente se debe seleccionar y usar un modelo de desarrollo de software que sea un
refinamiento del modelo genérico.
Esta política dice que para desarrollar software hay que utilizar alguna implantación del
modelo genérico de desarrollo de software como son los modelos cascada, espiral, etc.
2. Se deben definir las necesidades de los productos antes de implantarlos.
Esta política pretende prevenir la implementación de un producto (sistema de software,
prototipo, etc.) sin saber que es lo que se va a implantar. En particular, evita que el modelo
Laissez-Faire de desarrollo de software pueda ser utilizado.
3. Se deben establecer las condiciones de la transferencia del sistema de software antes de
liberarlo.
Esta política pretende acordar con el cliente bajo que condiciones se realizará la
transferencia del producto durante la liberación (derechos sobre el producto, soporte al
cliente, etc.).
4. La nueva tecnología en forma de equipos, herramientas de trabajo ométodos debe
seleccionarse e incorporarse al trabajo con cuidado, pues puede deteriorar el control del
proceso de desarrollo de software.
La incorporación de nuevas tecnologías puede implicar la necesidad de: usar nuevos
modelos de desarrollo de software, ajustar o crear estimadores de tamaño, tiempo y costo
de proyectos de software; y por supuesto capacitar al equipo de desarrollo. Un conjunto de
factores que pueden convertir un proceso de desarrollo de software que ya es predecible en
otro caótico.
3.4.2 Pol í t icas de Aseguramien to de Calidad.
1. El aseguramiento de calidad debe tener un canal de reporte independiente al del equipo de
desarrollo de software.
El aseguramiento de calidad requiere de independencia del equipo de desarrollo de software
con el fin de que sus juicios sean confiables, y en base a ellos, la dirección pueda tomar
decisiones apropiadas.
2. Los productos que se obtengan de cada etapa genérica deben verificarse.
Esta política pretende establecer el mínimo de revisiones que cualquier desarrollo de
software debe tener. Naturalmente, el modelo de desarrollo de software que se use puede
requerir de verificaciones adicionales.
3. El sistema de software que resulte de la implantación debe satisfacer los requerimientos
acordados con el cliente.
36
Esta política no es más que una forma de establecer lo que significa producir software de
calidad.
4. Se debe capacitar a los recursos humanos, pues son el elemento más importante para
producir software de calidad.
No importa que tan buenos recursos materiales tenga una organización que tan bien
definido esté su proceso de desarrollo de software, si sus recursos humanos son
incompetentes, el desarrollo de software será deficiente.
3.4.3 Pol í t icas de Adminis t rac ión de Proyectos de Software.
1. Se requiere de un sistema de compromisos que vayan desde el programador hasta el
director de la organización.
Desarrollar software es un trabajo de equipo con riesgos considerables que requiere de
responsabilidades claras para todos los que participan.
2. Se deben usar modelos de desarrollo de software cuyas actividades se puedan estimar,
planear y programar.
Esta es una característica que se pide a los modelos con el fin de que el desarrollo de
software pueda ser predecible en tiempo y costo.
3 7
3. Antes de comprometerse se debe estimar juiciosamente: el tamaño del producto, el
t iempo de desarrollo y el costo de los recursos humanos y materiales que requerirá el
proyecto de desarrollo de software.
En ausencia de esta estimación, lo más probable es que se contraten proyectos de desarrollo
de software cuyos compromisos no se cumplirán ni en tiempo, ni en costo, ni mucho
menos en lo que se refiere a la calidad del producto.
4. El sistema de compromisos debe permitir la acción concertada de los participantes en los
proyectos de desarrollo de software y un seguimiento efectivo de los mismos.
El sistema de compromisos debe permitir darle seguimiento al trabajo sin obstaculizar su
ejecución, es decir sin burocratizarlo.
5. Durante el seguimiento de cada proyecto de desarrollo de software se deben recolectar
mediciones administrativas, particularmente de tamaño, tiempo y costo.
Las mediciones administrativas son la base del control estadístico que permiten mejorar un
proceso de desarrollo de software del nivel inicial al repetible.
6. La documentación del proyecto de desarrollo de software debe estar organizada y
controlada para que el equipo de desarrollo de software pueda hacer un uso operativo de
ella.
El proceso de desarrollo de software es un trabajo intelectual que se materializa en multitud
de documentos que si no se organizan y controlan, generan una torre de babel para el
equipo de desarrollo de software.
38
4. CREACIÓN DEL MODELO.
En base a los modelos expuestos en el marco teórico y a la descripción del software, se
propone el siguiente modelo para desarrollar software educativo:
I. ANÁLISIS.
1.1 Análisis de objetivos.
1.1.1 Analizar el resultado deseado.
1.1.2 Presentar las metas a alcanzar.
1.1.3 Describir el comportamiento final esperado.
1.1.4 Describir las destrezas que el educando debe evidenciar.
1.2 Análisis de requerimientos.
1.2.1 Analizar el equipo de trabajo.
1.2.2 Analizar las herramientas de desarrollo.
I I . DISEÑO.
2.1 Diseñar los objetivos.
2.1.1 Flexibilidad en las estrategias de los cursos a diseñar.
2.1.2 Minimizar la memoria de usuario
2.1.3 Adaptación a la experiencia del usuario.
2.1.3.1 software comercial
III . DESARROLLO.
3.1 Especificar ios eventos y actividades de aprendizaje.
3.2 Documentación del programa.
3.3 Seleccionar los medios que se van a utilizar.
3.3.1 Interacción con periféricos.
3.3.2 Minimización de errores.
3.3.3 Depuración.
3.3.4 Recuperación de errores
3 9
3.3.5 Ayuda en línea.
3.3.6 Interfase amigable
3.3.7 Comandos rápidos.
3.3.8 Respaldo de versiones.
3.3.9 Edición
3.3.10 Control de flujo.
3.3.11 Análisis de respuesta.
IV. EJECUCIÓN.
4.1 Puesta en marcha.
V. CONTROL.
5.1 Control del aprendizaje
5.2 Control del sistema.
El desarrollo de los pasos anteriores se da a continuación:
1. ANÁLISIS.
1.1 ANÁLISIS DE OBJETIVOS.
En donde se destaca y analiza el resultado deseado, se presentan las metas a alcanzar , se
describe el comportamiento final esperado, esto es, el comportamiento que pueda ser
observado más tarde por más de una persona, se describen las destrezas que el educando
debe evidenciar.
4 0
Se indican las condiciones en las que el comportamiento debe manifestarse, asi como el
criterio de apreciación del desempeño, para que se le considera aceptable o no.
Se seleccionan, analizan y jerarquizan las conductas y/o competencias que se quieren
lograr en los alumnos, determinando los posibles prerequisitos y conductas de entrada.
1.2 ANÁLISIS DE REQUERIMIENTOS.
Con base en los objetivos se analizan posibles alternativas de solución, hasta que se definen
y especifican los requerimientos del sistema de software a desarrollar.
1.2.1 El equipo de trabajo, la preparación y el soporte técnico.
Un equipo de trabajo multidisciplinario logra resultados más rápidamente y obtiene
productos más profesionales.
Para conformar el equipo interdisciplinario se sugieren los siguientes profesionistas:
educadores,
programadores,
diseñadores,
• ayudantes qtie preparen la documentación y los ejercicios.
Sin embargo, hay que considerar que el equipo de trabajo es mucho más difícil de
coordinar ya que puede haber serios problemas de motivación y que aunque un profesor
requiere de más tiempo inicial para obtener resultados, los productos en la madurez de su
trabajo son más creativos y el costo es mucho menor.
4 1
1.2.2 Las herramientas de desarrollo.
Tipos de herramientas que se puden utilizaren el desarrollo del software son:
a) Presentaciones:
Power Point.
Persuasión.
b) Mediana Interacción
HyperCalc.
HyperTalk.
Director.
c) Programación con lenguajes
Normales: C, Pascal, QBasic.
Específicos: cT, Tutor, Fantavisión, Visual Basic, Hypercard.
2 DISEÑO.
2.1 DISEÑAR LOS OBJETIVOS.
2.1.1 Flexibilidad en los cursos a diseñar.
Es muy importante tener flexibilidad en las estrategias de los cursos a diseñar,ya que el
diseño del sistema tiene que estar acorde a las necesidades que se tienen para el desarrollo
del mismo, este además, deberá manejar un ambiente capaz de ser modificado para
mejorarlo o adecuarle algunos otros requerimientos conforme se vaya necesitando, con un
estilo predeterminado en la manera de estructurar el programa, para que sean más fácil los
cambios.
Por otro lado, deberá existir un ambiente personalizado que permita al usuario controlar las
funciones que el programa contenga, y también que tenga sesiones independientes para
4 2
poder trabajar con el de una manera ordenada y más rápida. Estas ventajas permitirán que el
programa funcione de manera eficiente para los diferentes usos que se le quieran dar.
2.1.2. Minimizar la memoria del usuario.
El sistema deberá contener ayudas de tipo informativas que permitan al usuario ahorrar
t iempo y espacio en la utilización de cuaderno de notas para llevar un control de las
secuencias que utilice, para esto se utilizarán objetos gráficos que sean capaces de llevar en
forma clara y precisa al usuario por el recorrido del programa sin tener dificultades.
El uso de gráficos para un programa es vital, ya que con la asociación de imágenes resulta
más fácil el manejo de cualquier tipo de herramienta. Con esta ventaja puesta en manos del
usuario, le permitirá dedicarse más a la actividad que va a desarrollar que a la utilización de
memoria ( física incluso ) y con esto no perdiendo tanto tiempo en ello.
2.1.3 Adaptación a la experiencia del usuario.
La capacidad del software que se va a desarrollar debe estar adecuado a las necesidades y
conocimientos que tenga el usuario, así como los requerimientos que se le puedan ir
ocurriendo.
Podemos ver como referencia el caso de un software comercial que se vende con una
estructura general y que por lo regular no es adaptable 100% a todos los usuarios de un
sistema parecido, es decir las facilidades que proporciona nunca van a satisfacer
completamente a los clientes.
Para esto es necesario dos cosas, una desarrollar un software personalizado y que se adapte
a la experiencia y necesidad del cada usuario en forma independiente, así pues se le deben
de presentar la mayor cantidad de opciones posibles para que pueda trabajar con ellas y el
4 3
sistema esté siempre al día, con esto se evita que en un futuro inmediato resulte obsoleto y
otra es adaptar diferentes softwares comerciales dependiendo de la necesidad de ese
momento.
2.1.3.1 Software comercial.
1. P r o g r a m a s educat ivos por nivel.
Juanito y los frijoles mágicos. Juanito debe ir hasta la punta de su planta de frijoles o
explorar el interior de una nube. Volverá a ver a su mejor amigo?. En esta versión del
cuento clásico el niño toma decisiones.
Juanito y los frijoles mágicos, ed TSnyder Productions, Mac, preescolar-3 primaria, en
inglés.
Sala de lectura de Stickybear. Programa bilingüe con efectos de sonido. Refuerza el
aprendizaje de la lengua; el niño lee y maneja dibujos y palabras; construye oraciones que
se resuelven en imágenes en movimiento.
Stickyberar's Reading Room,ed Stikybear Software, Mac, Preescolar-Primaria
Línea del t i empo. Es un programa que permite hacer líneas de tiempo con la
información que se desee e imprimirlas en formato horizontal, lo que permite construir una
línea de hasta 99 páginas continuas.
Incluye varias líneas de tiempo histórico que se pueden editar intercalando información
personal. Es fácil comparar dos líneas de eventos de un mismo periodo. El maestro podrá
elegir la escala de tiempo que le convenga: día, semana, año, década etc. Se puede usar en
cualquier grado y tema: en ciencias sociales, para comparar patrones históricos; en ciencias
para planear y registrar experimentos científicos: en literatura, para elaborar un esquema de
4 4
los eventos más importantes de una novela; en preescolar, para anotar los cumpleaños; por
último, los administradores podrán organizar los eventos escolares, entre sus muchas
posibilidades de uso y aplicación.
Time Liner, ed Tom Snyder, Mac, preescolar-adultos, en inglés.
Dónde en el mundo está Carmen Sancliego. Este programa abarca 1500 años de
historia. Los jugadores recogen pistas de eventos históricos, de científicos y personas
famosas, viajan por todo el mundo entrevistando testigos y tomando notas de las pistas.
Con frecuencia deben obtener información de un almanaque mundial incluido en el paquete.
La versión para escuela incluye guía para el maestro.
Broderbund Mac, IBM 17- ad Dónde en el mundo está Carmen Sandiego?, ed adultos,
español..
Gráficas bilingües en tus dedos. Es una colección de 4000 gráficas bien organizadas
para ilustrar composiciones, reportes, periódicos, presentaciones, etc. Las imágenes de
todas las categorías se pueden transportar fácilmente a otros programas de computadora y a
los procesadores de texto. Incluye manual en español.
Bilingual Graphics at Your Fingers, ed Yicy Lengue, Mac,2-adultos,bilingüe.
Inteligencia artificial. Presenta una serie de problemas en los que el estudiante explora
los "procesos de pensamiento" que la computadora emplea al tiempo que ejercita sus
habilidades para resolver problemas y tomar decisiones. El crea sus propias competencias
para retar AI (sus siglas en inglés). Al finalizar cada competencia, AI evalúa la información
del último juego y la compara con los resultados de otros juegos.
A ed Scholastic. IBM Primaria- secundaria. Se abre desde MS-DOS.
El cuerpo humano es una máquina El programa permite explorar los sistemas,
estructuras y funciones del cuerpo. Vistas y cortes muestran las elaboradas estructuras
45
celulares, y detalladas animaciones permiten comprender las intrincadas funciones vitales.
Las gráficas y los textos son fácilmente exportables a otros programas y pueden traducirse
utilizando un programa de traducción .
BodyWorks 3. 0, ed Software Marketing, Windows, primaria-adultos, en inglés. Se abre
desde Windows.
En busca del tesoro. Ayuda a desarrollar la memoria, a ejercitar procesos de
razonamiento y la coordinación motora de mano y ojos. El lugar es una isla fantástica con
muchos y diferentes escenarios (bosques, ríos, puentes, cascadas etc). El niño debe
recolectar información, interpretarla y tomar decisiones con el propósito de ayudar a un
niño o a una niña a descubrir un tesoro. El maestro puede incorporar preguntas y textos
sobre cualquier tema.
En busca del tesoro, ed Edicinco, Windows, 1-4 primaria, en español. Se abre desde MS
DOS.
Encarta, es una enciclopedia que contiene 25,000 artículos y 17,000 elementos en medios
múltiples.
Incluye miles de fotos, un instructivo de animación, detalles sobre las ilustraciones, un
atlas y horas de música y narración. Ofrece opciones para consulta rápida y tiene
herramientas para copia así como un formato para elaborar fichas bibliografías que los
maestros podrán utilizar para incluir sus textos.
Encarta, ed AicrosoflWindows, cd-roml primaria-adultos, en inglés. Se abre desde
Windows.
Inspirador internacional. Son juegos de geografía diseñados para una computadora en
el salón de clases o bien para un laboratorio donde varios grupos pequeños o uno grande
crea rutas navieras o aéreas, desarrolla cartas geográficas y determina puntos estratégicos
para puertos y aeropuertos.
International Inspirer, ed Tom Snyder Productions, Mac, primaria-adultos, en inglés.
4 6
Roedores suicidas (Lemmings). Juego de estrategia y desarrollo de habilidades de
solución de problemas. El jugador debe hacer llegar a salvo a un grupo de roedores (los
que se tiran al mar en el Ártico), a través de paisajes llenos de peligros. Los roedores del
juego marchan felices a su autodestrucción si el usuario no lo impide. Para ello cuenta con
un número limitado de recursos. El juego requiere capacidad estratégica, buenos reflejos,
localización de la atención y coordinación psicomotora.
Lemmi r.s, d , 7losis, ac, primaría-adultos.
Pueblo de las matemáticas. Practicador de habilidades aritméticas básicas. Cada
edificio del pueblo tiene diferentes problemas numéricos que el usuario debe resolver. Se
puede graduar la dificultad. Usa animación y sonido como motivación. Ideal para niños
pequeños.
Math Town, ed SticyBear, Mac, primaria, en inglés.
Misterios de las poderosas matemáticas. Ayuda al alumno a desarrollar la habilidad
para enunciar problemas. El estudiante convertido en detective, elige una las cuatro
maneras de conducir su investigación: Sigue los pasos, pesa la evidencia. Descifra el
código y busca pistas. Se presenta en cuatro niveles de dificultad. Los problemas implican
números enteros, fracciones, decimales, porcentajes, números positivos y negativos, y
preálgebra.
Math BlasterMystery, ed Davidson, Mac, primaria-secundaria, en inglés.
Medio Ambiente. Con la asesoría de cuatro expertos un científico, un economista, un
ecologista y un publicista los alumnos evalúan infomiación conflictiva, hechos y opiniones
para tomar decisiones de política social. Aprenden sobre contaminación del agua, reciclaje,
uso de la tierra, problemas de los depósitos de basura. Los estudiantes jerarquizan
prioridades y observan el impacto de sus decisiones.
4 7
El programa produce informes de evaluación para el grupo y el maestro.
Medio ambiente, ed Tom Snyder Productions, Mac, primaria-adultos, en español.
Oxyd. Es un juego de exploración, estrategia y habilidad para la solución de problemas.
Requiere que el jugador explore cada paisaje para recolectar los datos que le permitan
comprender la lógica de cada situación y resolverla. Manipula una "canica" a través de
paisajes llenos de sorpresas y peligros, acertijos lógicos y pruebas de habilidades de
coordinación psicomotora.
Oxyd Magnum, ed Dongleware Verlags GmbH, Mac, primaria-adultos.
La fábrica. Juego sobre percepción espacial, casualidad y lateralidad. El usuario manipula
tres "máquinas" a fin de igualar una pieza manufacturada que el juego genera. Exige
imaginar la secuencia correcta, así como los giros y rotaciones qtie la placa de materia prima
requiere para que, al finalizar el proceso de troquelado, la pieza sea igual a la muestra. Ideal
para la enseñanza técnica y capacitación para el trabajo en áreas industriales.
The Factory, ed Sunburst, Mac, primaria-adultos.
La máquina increíble. Es un juego de mecánica del movimiento en el que el jugador
debe construir una o más máquinas que permitan lograr el objetivo que plantea cada
escenario: meter un balón en una cesta, cruzar ríos y arroyos peligrosos, echar a andar un
aparato.
The lncredíble Machine, ed Jeff Túnel Productions, PC, primaria-adultos. Se abre desde
Windows.
Ventanas a la ciencia. Es un currículo de ciencias naturales para primaria y secundaria
construido de manera impecable. Adopta la organización moderna de las ciencias naturales:
ciencias de la vida, ciencias de la tierra y ciencias físicas.
4 8
El currículo se desarrolla en unidades, secciones y lecciones. Cada una de estas categorías
contiene la planeación, el objetivo, actividades de observación, recolección de información,
organización de la misma, e interpretación y, cuando procede, de diseño de experimentos;
incluye también instrumentos de evaluación por unidad y formatos de patrones de
actividades que el maestro puede reproducir.
La primera unidad de cada volumen proporciona al alumno una amplia ejercitación en los
métodos de la ciencia, y a lo largo del programa, desarrolla sistemáticamente sus
habilidades de observación, recolección de datos relevantes, organización, análisis e
interpretación de los mismos para obtener conclusiones.
El guión de cada lección indica mediante números y códigos de barras las imágenes del
disco láser que apoyan los contenidos.
Ciencias de la tierra. Consta de tres discos láser y tres volúmenes organizados en 15
unidades de estudio correspondientes a los grados medios de la escuela primaria y a los tres
de secundaria.
Los temas establecen relaciones con los tópicos de los otros dos grupos de ciencias. El
estudiante avanzará seguro en la comprensión de la geología, la meteorología, la
oceonografía y la astronomía.
Windows on Science: Earth Science, discos láser, primaria-secundaria, bilingüe.
Ciencias de la vida. Dos discos láser y dos volúmenes organizados en 12 unidades
introducen al alumno en el mundo vivo. Los estudiantes exploran la biología de la célula, la
genética, las plantas, los animales y el cuerpo humano. La relación con los tópicos de las
ciencias de la tierra y físicas están cubiertas.
Windows on Science: Life Science, discos láser, primaria-secundaria, bilingüe.
Ciencias físicas. Tres volúmenes y tres discos láser. El alumno comprenderá qué cosas
han sido hechas y cómo trabajan. Las once unidades de este programa cubren: Medición,
4 9
propiedades físicas y químicas de la materia, fuer/as y movimiento, electricidad y
magnetismo, máquinas simples y compuestas, energía de la temperatura, la luz y el sonido.
Se relacionan estos temas con los de ciencias de la vida y de la tierra.
Windows on Science: Pliysical Science, discos láser, primaria-secundaria, bilingüe.
Ciencia básica. Tres volúmenes y tres discos láser: El primero cubre ciencias de la vida;
el segundo, ciencias de la tierra el tercero, ciencias físicas para los tres primeros grados de
primaria. El currrículo introduce a los niños en los prncipios de las ciencias mediante
ejemplos de la vida real.
Windows on Science: Priman Science, discos láser, primaria.
Windows of Sience. ed Optical Data Corporation, 11 discos láser, 11 volúmenes en
español, preescolar-secundaria y adultos, narración en inglés y español, materias para el
maestro en español. Modelo de currículo y recursos para el maestro.
Lenguas del mundo. Contiene 132 directorios bilingües, definiciones, traducción a doce
idiomas que cubren las áreas de ciencia, tecnología, negocios, información estadística y
expresiones idiomáticas.
Lenguajes ofthe World, ed NTC Publishing/Mac/Win/5 adultosJ$130.
En el siguiente ctiadro se mtiestra la relación del software con el nivel escolar y el tema en el
cual se puede aplicar.
Software nivel tema Juanito y los frijoles
mágicos. preescolar-primaria
en inglés toma de decisiones
Sala de lectura de Stickybear
primaria en inglés Refuerza el aprendizaje de la lengua
Línea del tiempo Preescolar. primaria secundaria y preparatoria
realizar líneas del tiempo
50
Dónde en el mundo está Carmen Zamaniego
Preescolar, primaria Almanaque mundial de eventos históricos
Gráficas bilingües en tus dedos.
Preescolar, primaria secundaria y preparatoria
Es una colección de 4000 gráficas bien organizadas para ilustrar composiciones, reportes, periódicos, presentaciones, etc.
Inteli gen ci a arti ficial. Preescolar, primaria secundaria y preparatoria
Presenta una serie de problemas en los que el estudiante explora los "procesos de pensamiento" que la computadora
emplea al tiempo que ejercita sus habilidades para resolver problemas y
tomar decisiones El cuerpo humano es
una máquina Preescolar, primaria
secundaria y preparatoria
El programa permite explorar los sistemas, estructuras y funciones del
cuerpo. En busca del tesoro. Preescolar. primaria Ayuda a desarrollar la memoria, a
ejercitar procesos de razonamiento y la coordinación motora de mano y ojos
Encarta. Preescolar, primaria secundaria y preparatoria
enciclopedia que contiene 25,000 artículos y 17,000 elementos en medios
múltiples. Inspirador
internacional. Preescolar, primaria
secundaria y preparatoria
crear rutas navieras o aéreas, desarrolla caitas geográficas y determina puntos
estratégicos para puertos y aeropuertos. Roedores suicidas
(Lemmings). Preescolar, primaria
secundaria y preparatoria
Juego de estrategia y desarrollo de habilidades de solución de problemas.
Pueblo de las matemáticas.
Preescolar, primaria secundaria y preparatoria
Practicador de habilidades aritméticas básicas.
Misterios de las poderosas matemáticas.
Preescolar, primaria secundaria y preparatoria
Aytida al alumno a desarrollar la habilidad para enunciar problemas.
Medio Ambiente secundaria y preparatoria
Con la asesoría de cuatro expertos un científico, un economista, un ecologista
y un publicista los alumnos evalúan información conflictiva, hechos y
opiniones para tomar decisiones de política social.
Oxyd. secundaria y preparatoria
Es un juego de exploración, estrategia y habilidad para la solución de problemas.
La fábrica. secundaria y preparatoria
enseñanza técnica y capacitación para el trabajo en áreas industriales.
La máquina increíble. Preescolar, primaria secundaria y preparatoria
mecánica
Ventanas a la ciencia. Preescolar, primaria secundaria y preparatoria
ciencias naturales
Ciencias de la tierra. Preescolar, primaria secundaria y preparatoria
geología, la meteorología, la oceonografía y la astronomía
5 1
Ciencias de la vida. Preescolar, primaria secundaria y preparatoria
la biología de la célula, la genética, las plantas, los animales y el cuerpo humano
Ciencias físicas. Preescolar, primaria secundaria y preparatoria
Medición, propiedades físicas y químicas de la materia, fuerzas y
movimiento, electricidad y magnetismo, máquinas simples y compuestas, energía
de la temperatura, la luz y el sonido Ciencia básica. Preescolar, primaria ciencias de la vida, ciencias de la tierra,
ciencias físicas Windows of Sience, Preescolar, primaria
secundaria y preparatoria
Ciencias
Lenguas del mundo. Preescolar, primaria secundaria y preparatoria
Contiene 132 directorios bilingües, definiciones, traducción a doce idiomas
que cubren las áreas de ciencia, tecnología, negocios, información
estadística y expresiones idiomáticas.
Cuadro 1. Programas educativos por nivel.
2. Herramientas para elaborar materiales.
las herramientas de autor son programas para producir materiales educativos. Estas
herramientas permien que con relativa facilidad los maestros incorporen elementos gráficos,
sonido, animación, video digital en sus materiales educativos.
Productos profesionales. Ofrece al maestro rutinas preconstruidas para rastrear el
desempeño del alumno (tiempo en la tarea, número de intentos, número de aciertos e
incluso interpretación de resptiestas para preguntas abiertas. Tiene capacidad para manejar
múltiples medios.
Authorware professional, ed Macromedia/, PC.
Productos para autores. Es la versión de Authorware para Macintosh. Es posible
exportar de Macintosh a Windows los materiales desarrollados.
Authorware. ed Macromedia, Mac.
5 2
Claris Works y Works para vvindows. Estos programas integran procesador de
palabras, base de datos, hoja de cálculo, dibujo, pinturas y comunicaciones.
Claris Works, ed Claris, Mac
Works para Windows, ed Microsoft, PC.
Cincel digital. Combina la sencillez de un programa de presentación con el manejo de
medios múltiples. Incluye "formatos" para elaborar diferentes tipos de reactivos de
evaluación. Incluye un cd-rom con imágenes, animaciones, sonidos y videos para cortar y
pegar en los trabajos.
Digital Chisel, ed Pierian SpringSoft, Mac.
LinkWay live. La herramienta de presentación más popular para DOS. Requiere conocer
un lenguaje simple de programación. La nueva versión permite incorporar vídeo digital.
LinkWay Alive, ed IBM, PC.
Traductor poderoso. Para traducción instantánea de palabras, oraciones y documentos.
Incluye diccionarios de 250 mil palabras y frases: Es fácilmente expandible y maneja
pantallas bilingües. Velocidad de traducción 180 palabras por minuto.
Power Traslator, ed Globalink, Mac, PC.
En el siguiente cuadro se muestra la relación del prodcto para utilizar al desarrollar software
educativo y su utilidad.
53
Producto Utilidad Productos profesionales. Ofrece al maestro rutinas preconstruidas para rastrear el
desempeño del alumno (tiempo en la tarea, número de intentos, número de aciertos e incluso interpretación de
respuestas para preguntas abiertas. Productos para autores. Es la versión de Authorware para Macintosh.
Claris Works y Works para windows.
Estos programas integran procesador de palabras, base de datos, hoja de cálculo, dibujo, pinturas y
comunicaciones. Cincel digital. Incluye "formatos" para elaborar diferentes tipos de
reactivos de evaluación. Incluye un cd-rom con imágenes, animaciones, sonidos y videos para cortar y
pegar en los trabajos.
LinkWay live La herramienta de presentación más popular para DOS. Requiere conocer un lenguaje simple de programación.
La nueva versión permite incorporar vídeo digital. Traductor poderoso. Para traducción instantánea de palabras, oraciones y
documentos. Incluye diccionarios de 250 mil palabras y frases
Cuadro 2. Herramientas para elaborar materiales
3. P rocesador de med ios .
Los procesadores de medio son equivalentes a los procesadores de palabras, pero para
imágenes, sonido, animación y video digital. Son programas que permiten crear o llevar a
la computadora esos elementos mediante su captura o digitali/.ación. Lo mismo que un
procesador de texto, los procesadores de medios permiten copiar, pegar o cambiar las
características de estilo y formato.
Ofolo v2. Es un programa para digitali/ación de imágenes fijas mediante escáner. Permite
que la computadora ajuste automáticamente la resolución, brillantez, contraste e incluso
horizontalidad, y los optimice para el dispositivo en que se presentará la imagen-
impresora, monitor. Es muy fácil de usar pero su capacidad para modificar imagen es
limitada.
Ofoto v2, ed Light Source lnc /Mac.
54
Pintor. Es un programa para crear imágenes en la propia computadora, pero también sirve
para editarlas. Incluye un amplio repertorio de herramientas para pintar y dibujar pinceles
de todos tipos y grosores, crayones, lápices, etc y soportes variados- distintos tipos de
papel, texturas, etc.
Fractal Design Paintcr, ed Fracial Disign, Mac.
Almanaque visual. Contiene 7000 imágenes, incluyen video con movimiento, de vistas
espaciales de la tierra, animales y plantas, historia, vida cotidiana, retratos, temas de
ciencia, etc. Para manejarlo desde la computadora, incluye un software flexible de uso
sencillo.
Visual Almanac, ed Voyager, disco láser.
En el siguiente cuadro se muestra la relación entre el procesador de medios y su utilidad.
Procesador de medios Utilidad Ofoto v2. Es un programa para digitalización de imágenes fijas
mediante escáner. Pintor. Es un programa para crear imágenes en la propia
computadora, pero también sirve para editarlas. Almanaque visual. Cont iene 7000 imágenes , incluyen video con
movimiento, de vistas espaciales de la tierra, animales y plantas, historia, vida cotidiana, retratos, temas de ciencia, etc.
Cuadro 3. Procesador de medios.
4 . Utilerías.
Las utilerías son programas que facilitan el uso de la computadora, o ayudan a prevenir y
corregir problemas. Los más conocidos son los antivirales, los programas para
recuperación de información y los programas de resguardo.
55
Anywhere for Windows. Sirve para comunicar a dos computadoras una huésped y una
terminal para intercambiar archivos, detectar problemas sencillos en la terminal, ejecutar en
la terminal programas de la computadora huésped, leerlos en ambas e imprimir los
resultados.
AnyWhere for Windows, ed Symantec. PC.
Licencia Me AFFE. Ofrece rutinas de detección y vacunas para virus informáticos.
Esta licencia se actualiza cada 45 días.
Licencia Me AFFE, ed Me AFFE
Norton Utilities, ed Norton, PC.
SAMSyinantec . AntiVirus. Programa para detectar y eliminar virus informáticos en
Windows.
Snooper. Es un programa para diagnóstico
Snooper, ed Macrophone.
Virex. Programa antiviral. Los "virus" son programas que "infectan" los discos con los
que tienen contacto. Se autocopian en cada disco que tocan, de manera similar a un virus,
algunos virus son sólo broma sacan letreros chistosos o hacen desfiguros con la
información en la pantalla, pero algunos son capaces de destruir toda la información de un
disco duro. Estos antivirales detectan un virus en un disquetes antes de que infecte a la
computadora y puede reparar hasta cierto punto un disco infectado.
Virex, ed Triangle Sofware, Mac.
(Compendio catalogado por Siglo XXI. SEP).
56
El siguiente cuadro muestra la relación entre la utilería y su utilización.
Utilería Utilización Anywhere for Windows. Sirve para comunicar a dos computadoras una huésped y
una terminal para intercambiar archivos, detectar problemas sencillos en la terminal, ejecutar en la terminal programas de la computadora huésped, leerlos en ambas e imprimir los resultados.
Licencia Me AFFE. Ofrece rutinas de detección y vacunas para virus informáticos.
SAMSymantec. Anti Virus. Programa para detectar y eliminar virus informáticos en Windows.
Snooper. Es un programa para diagnóstico Virex. Programa antiviral. Los "virus" son programas que
"infectan" los discos con los que tienen contacto.
Cuadro 4. Utilerías.
3 D E S A R R O L L O .
Al llevar a cabo el desarrollo se deben especificar los eventos y actividades de aprendizaje,
así como el plan administrativo y actividades de aprendizaje. Se seleccionan los medio que
se van a utilizar y se desarrolla la secuencia de instrucciones, llevándose a cabo la
documentación del programa.
3.1 Especificar los eventos y actividades de aprendizaje.
Las características de los eventos y actividades de apendizaje deben estar de acorde con los
siguientes puntos:
a) Estar basada en objetivos instrucionales, los objetivos ayudan a desarrollar las
actividades apropiadas, deben estar claros para que el diseñador, los estudiantes y
los maestros puedan leerlos y entenderlos.
57
b) Las características de los aprendices deben ser iguales, el primer paso es estimar el
conocimiento de la población estudiantil que usará el programa ya que las
instaicciones deben ser apropiadas para el nivel de ellos.
c) Se debe maximizar la interacción, tal vez la mayor ventaja de la instrucción
computarizada es el potencial de interacción que se tiene.
d) Se debe adaptar a las necesidades individuales de los estudiantes, la computadora
tiene el potencial de adaptarse a la secuencia instruccional de los aprendices
individualmente.
e) Debe mantener el interés en los estudiantes, la lección debe ser motivante
intrínsecamente.
f) Debe acercarse a un aprendizaje positivo, la lección propiciará una conversación
entre el programa y el estudiante en cada una de las sesiones, en muchos de los
casos es necesario informar al estudiante el número de preguntas contestadas
incorrectamente.
g) Debe dar una gran variedad de retroalimentación, a los estudiantes les gusta
aprender y tal vez en la mayoría de las veces una positiva retroalimentación es lo
indicado cuando lo están haciendo bien.
h) Debe estar dentro de un ambiente instruccional, muchas de las lecciones
desarrolladas por la escuela pueden ser utilizada individualmente por los estudiantes
en un salón de clases estándarmientras el maestro y otros estudiantes están
ocupados en diferentes actividades.
3.2 Documentación del programa
El sistema deberá estar documentado técnicamente y también deberá contar con un manual
del usuario, para ahorrarle tiempo en caso de tener problemas con el manejo del mismo.
Así, si se presenta algún error o falla en el sistema podrá ser corregido fácilmente y llegar a
58
una conclusión más rápida del problema, además que permite acordarse de las funciones
que tiene cada línea y cada variable del programa, porque muchas veces ( l a mayoría ) se
nos olvida para que servía un procedimiento o una variable, o porque esta puesta en un
lugar u otro, para que servía un ciclo, e t c . . y si documentamos estos problemas se verán
reducidos.
3.3 Seleccionar los medios que se van a utilizar.
3.3.1 Interacción con periféricos.
La interacción con periféricos es un punto muy importante en la realización de un software
moderno en el cual las herramientas que se utilizan para el manejo del mismo serán las que
den al usuario final la mejor de las presentaciones.
Esto sucede porque exite una gran diferencia entre los sistemas desarrollados tiempo atrás
con los actuales, respecto a que antes se utilizaba mucho el teclado para el manejo de la
herramienta, esto si bien era algo cómodo comparado con sistemas no computarizados, hoy
en día resulta ser tedioso tener que manejar el teclado para darle instrucciones al programa
que se esté ejecutando. Y resulta ser más fácil el uso del mousse ( ratón ) que permite de
una manera muy sencilla desplazarnos por la pantalla y seleccionar de entre las múltiples
opciones alguna que necesitemos, esto no resulta caro ni problemático, ya que todas las
computadoras pueden tener un mousse conectado y manejarlo en cualquier aplicación que
lo requiera. (Rockart,1983).
Existe también otro tipo de manejo que le da una presentación por encima de las anteriores
como lo es, el TOUCHSCREEN (tocando la pantalla ) que como su nombre lo indica sólo
requiere tocar la pantalla con los dedos para seleccionar alguna opción del software que se
esté usando y así trabajar con él. Esto es lo más cómodo y ventajoso que existe en la
actualidad en el medio comercial, de manera que si nuestro sistema cuenta con algo
parecido pues será sumamente presentable para cualquier usuario final qtie desconozca o
conozca el mundo computacional.
5 9
La desventaja en este último punto es que el precio del touchscreen no mucha gente lo
quiere pagar y se evita el gasto sustituyéndolo por el cómodo mousse. Aproximadamente el
precio de una pantalla de este tipo esta alrededor de $900 usd, ya incluida la tarjeta que
pennite la utilización completa de esta herramienta, también depende mucho de la aplicación
a desarrollar para el empleo del touchscreen.(Lucas,1972).
El sistema también deberá de permitir al usuario imprimir reportes de la información que
esté accesando y las modificaciones que se le puedan hacer. Esto para que también pueda
tener la información en papel y no únicamente dentro del software desarrollado. Además
que sería conveniente poder grabar en archivos las pruebas y todo lo que se maneje dentro
del sistema para tener respaldos en caso de algún desastre o para llevar la información de
manera portátil de un lugar a otro.
3.3.2 Minimización de errores.
Un sistema debe estar perfectamente validado para que su funcionamiento sea adecuado. El
sistema tiene que tener opciones de salida en caso de infomación o acciones que no
concuerden con el desarrollo del programa. Esto con el fin de que no vaya a "tronar" el
programa y de una mala imagen al usuario, aparte de que no le funcione bien. Por otro
lado, las validaciones deberán permitir solamente los tipos de datos que sean requeridos por
el usuario, dándole opción a modificación en caso de así requerirlo, pero poniendo
mensajes de ayuda en caso de trabajar de manera inadecuado con los datos.
Ahora bien, el uso de la memoria en un programa de este tipo deberá ser el óptimo posible,
ya que si desarrollamos un sistema que ocupe demasiada memoria y que tenga demasiados
requerimientos de hardware, pues simplemente va a funcionar de manera no muy adecuada
a cualquier tipo de necesidades del usuario, a menos que este cuente con una infraestructura
muy buena para soportar el uso de memoria.
Otro punto dentro de la minimización de errores es evitar los ciclos o formas que no
conduzcan a ninguna parte, es decir que se queden recadadas, ya que en este momento el
6 0
programa será ineficiente y ya no funcionará correctamente. Este último punto es un detalle
que hay cuidar ya que entre tanta programación y uso de formas y presentaciones se puede
perder el hilo y omitir algún ciclo correctamente, aunque parezca que es un problema muy
sencillo, en la práctica sucede con frecuencia.
3.3.3 Depuración de los datos.
La depuración de los datos dentro del programa a desarrollar se tiene que ir haciendo paso a
paso, siguiendo las variables tisadas línea a línea, es decir, correr el programa manualmente
para checar que la secuencia en el uso de variables y los cambios que estas puedan sufrir
durante la corrida del programa sean los adecuados para su buen funcionamiento, esto
resulta fácil de llevar a cabo, aunque tedioso, porque existen lenguajes de programación
que permiten ir corriendo el programa paso por paso, viendo como cambian los valores de
las variables conforme pasa alguna línea.
Se puede ir editando lo qtie se va corriendo en forma correcta, para no volver a comprobar
si funciona o no todo el sistema, se puede hacer de manera estrcuturada y así llevar un
orden de la ejecución del mismo.
3.3.4 Recuperación de errores.
Se deben de tener respaldos del sistema para evitar pérdidas catastróficas que nos hagan
perder toda la información o parte del sistema y tener que trabajar doble en una
recuperación del mismo. También deberán de probarse rutinas antes de ser instaladas como
parte del sistema para evitar que vayan a perjudicar a las demás partes. Esto con el fin de
tener un programa que pueda correr con el 100% de seguridad y confiabilidad.
3.3.5 Ayudas en línea.
Las ayudas en línea proporcionan al usuario ayuda hasta en el más mínimo detalle,
pudiendo moverse a través de la ayuda hacia otros lados que le permitan conocer más del
6 1
paquete y también pueda copiar definiciones, ejemplos, etc.... todo esto con un tipo de
ayuda fácil que sea manejada por índices para que el usuario encuentre más rápido la
información que desee.
Las ayudas son muy importantes sobre todo al principio del manejo de alguna herramienta
nueva, ya que pueden sacarnos del problema sin tener que consultar al manual o a otra
persona con conocimientos del tema. El inconveniente que pudiera existir con las ayudas es
nuevamente el consumo de memoria de la máquina, pero esto como ya se mencionó
anteriormente, no será problema si se cuenta con una máquina capaz de soportarlo.
3.3.6 Interfase amigable.
La interfase debe ser amigable para que el usuario sin ningún problema pueda manejarlo,
aún sin estar familiarizado con el. Cualquier sistema hoy en día desarrollado para un
usuario final deberá contener gráficos de manera que sean agradables a la vista y fáciles de
entender por las personas, y que con esto el uso del sistema sea mucho más efectivo y no
tenga el usuario que estarse aprendiendo los modos de acceso a alguna parte del programa,
sino que cada vez que lo requiera lo pueda hacer sin complicaciones, para todo esto es
indispensable al menos el uso del mousse para facilitar el recorrido por la pantalla y sus
diferentes opciones.
Ahora bien, si el programa cuenta con animaciones y sonidos que ayuden a entender mejor
las tareas a efectuar, pues esto será aún mejor. Y este último punto no es muy difícil de
implementar si se cuenta con el hardware apropiado y los conocimientos de multimedia (
manejo de voz, imagen, texto ) en una computadora.
A final de cuentas la interfase es la carta de presentación del sistema, asi es que esta deberá
ser desarrollada lo mejor posible. Ya que de nada servirá tener un programa muy eficiente
si no se entiende ni para que funciona o cuales son las instrucciones que requiere para su
fincionamiento, así pues, tenemos que poner mucho énfasis en la parte del diseño de
6 2
pantallas que se van a presentar al usuario final, colores que se van a emplear, gráficos a
usar, imágenes interactivas, sonidos, e tc . .
3.3.7 Comandos rápidos.
El uso de comandos rápidos siempre ha sido usado en el ambiente computacional, aunque
cada vez se tiene que ir mejorando, todo esto para accesar aún más rápido a las acciones o
procedimientos que vayamos a utilizar.
Respecto al uso de las teclas ALT y CTRL son de mucha utilidad y de gran ayuda para
disponer más fácilmente de algunas ventajas del sistema, no todas las personas que lo van a
usar ( de hecho la mayoría ) está familiarizada con las mismas, por lo cual es mejor se
utilicen métodos como el de resaltar alguna letra para dirijirse hacia una acción
predeterminada.
Este punto es también muy utilizado en sistemas de información y no se debe de pasar por
alto, ya que esto complementa aún más nuestro sistema y lo hace de mejor presentación y
efectividad.
3.3.8 Respaldo de versiones.
Es importante hacer backup's o respaldos del sistema por si éste sufriera algún daño, de
cualquier tipo, que suelen pasar. Además no solamente del sistema, sino que, el sistema en
sí tenga utilerías como la de grabar, cada determinado tiempo en forma automática la
información que se está manejando, para en caso de algún desperfecto ( como corte de luz )
y que el usuario haya olvidado grabar su documento, pues el sistema haya hecho un
respaldo y la información no se haya perdido.
63
Ahora, pasando al respaldo general del sistema, se deben de guardar al menos dos
versiones del mismo y estas no deberán estar en un mismo sitio de preferencia, ya que si
algo llegara a pasar, un robo, un temblor, o algo que provocara la pérdida del sistema, pues
se pudiera contar con respaldos que no hayan sufrido daño alguno.
3.3.9 Edición.
A su ve / , el sistema deberá proporcionar herramientas que le permitan al usuario hacer uso
de gráficos, textos, objetos, mentís, iconos, botones, áreas activas, e t c . . para que con
estos pueda trabajar y que generen código. Esto con la finalidad de tener un sistema aún
más completo y con más apoyo para el manejador, es así entonces, mucho más completo,
sin ser aburrido ni simple.
Un ejemplo claro de esto lo podemos observar en el Ms Word para Windows, el cual
permite el uso de manejador de texto, gráficos, y un sin fin de herramientas en sus barras y
opciones que presenta. Así, se pueden coordinar y realizar trabajos con mejor presentación,
mejor especificados, más vistosos, y otras tantas características que dan una vista excelente
del trabajo presentado.
3.3.10 Control de flujo.
El sistema será capaz de controlar el flujo de la exposición de los temas a tratar, por
ejemplo: en un sistema que proporciona información al alumno referente a temas a tratar y
que se pueden ir seleccionando uno a uno e ir viendo la información referente a cada cual,
pues el sistema controlará las llamadas a ciertas rutinas seleccionadas y no a otras ajenas,
para esto es necesario tener bien especificados cuáles son los que corresponden a cada una
de las opciones, para no brincar de tina a otra.
Existen varios métodos por los cuales se pueden lograr estos flujos, que son por botones,
es decir seleccionar uno de ellos e ir a la opción deseada, otro es por mentís, donde también
se escojen opciones para ir a ejecutar determinada acción, y por último se puede hacer por
6 4
aciertos, donde según pase alguna acción el sistema hará una reacción a esta, y se ejecutará
lo indicado.
3.3.11 Análisis de respuesta.
El análisis de respuesta debe ser muy tomado en cuenta, ya que aquí recae la interacción
entre el sistema y el usuario, y este tiene que ser lo más entretenido posible para que no se
aburra el usuario, dándole la opción de corregir sus errores durante la ejecución y
mostrándole mensajes para que cuide todas sus formas de ejecución y sus actos, haciéndole
preguntas de confirmación para asegurar si lo que pide al sistema es lo correcto o si desea
abortar la misión.
Asimismo informar al usuario de algún evento que este ocurriendo mientras usa el sistema,
o de mensajes de impresión cuando estos ocurran.
4 EJECUCIÓN.
4.1 Puesta en marcha.
El sistema deberá estar en punto de ejecución para que tanto su acceso como su manejo sea
mucho más rápido y de manera independiente a cualquier otro sistema, con esto las
velocidades tanto de respuesta como de corrida serán más efectivas, el programa funcionará
mejor y no habrá complicaciones para correrlo. También se obtendrán beneficios como el
ahorro de espacio en memoria de la máquina, teniendo el sistema en discos flexibles y
cargarlos sólo cuando sean necesarios.
En caso de no tener muchas aplicaciones dentro del disco duro, se puede dejar residente en
la memoria, y no habrá demasiada dificultad para su ejecución, en algunos casos sucede
así, ya que únicamente se utiliza solo ese sistema, y por lo tanto no presenta mayores
problemas ni de espacio en memoria, ni de tiempo de ejecución y respuesta.
65
5 CONTROL.
EL control del programa se debe llevar a cabo en dos formas: una para el control del
aprendizaje y el otro para el control del operar del sistema.
5.1 Control del aprendizaje.
La evaluación debe ser apropiada, se debe ser cuidadoso al escoger los objetivos los cuales
deben ser medióles con facilidad.
Es importante que el uso del recurso de la computadora se lleve a cabo de una manera
juiciosa, esto quiere decir que hay que aprovechar todos los recursos que nos da la
computadora y que no parezca como tina hoja de cualquier libro de ejercicios, hay que
utilizar colores, gráficas, movimientos.
Debe estar basado en los principios del diseño instruccional, una lección bien diseñada
motiva e informa al estudiante sobre los objetivos de la lección, revisa las destrezas que
necesita el estudiante para lograr con éxito la lección presenta instrucciones bien
organizadas, evalúa el progreso frecuentemente, dá tina adectiada retroalimentaciónpermite
una práctica adecuada y evalúa la ejecución final del estudiante y de la lección en sí (Gagné
y Briggs, 1979).
Debe ser evaluada completamente, las lecciones deben ser evaluadas en varios niveles, por
su calidad instruccional, sus consideraciones afectivas, y su relevancia curricular. Se debe
evaluar qué tan atractiva es la lección para los alumnos, se eliminarán combinaciones
ofensivas de colores, el abuso de información intermitente.
66
5.2 Control del sistema.
Deben realizarse procedimientos de control, los cuales especificarán qué tareas deben
efectuarse al utilizar el sistema y quiénes sol los responsables de llevarlas a cabo.
El control se llevará a cabo mediante la documentación del programa, una buena
documentación proporciona una explicación de la forma en que opera el sistema y qué
características tienen los modelos y algoritmos utilizados en él.
Entre los procedimientos importantes que se deben documentar se encuentran:
- Procedimientos de control para entradas de datos, es la secuencia para dar entrada a
los datos registrados en los documentos fuente.
- Procedimientos de control durante la ejecución, son los pasos y aciones
emprendidos por los operadores del sistema (profesores) y en ocasiones por los
usuarios finales (alumnos), que interactúan con el sistema para alcanzar los
resultados deseados, como por ejemplo introducir algún disket o colocar en la
impresora formas preimpresas.
- Procedimientos para el manejo de errores, son las acciones a seguir cuando se
presentan resultados inesperados, por ejemplo cuando ocurre un error al estar
intentando el sistema leer datos de un archivo o la impresora se atasca durante la
impresión de una gran cantidad de hojas.
- Procedimientos de seguridad y respaldo, son las acciones para proteger al sistema y
sus recursos contra posibles daños, por ejemplo ¿cómo y cuando hacer copias de
los archivos maestros o de partes de la base de datos? (James. 1991).
6 7
5. C O N C L U S I O N E S .
5.1 RELEVANCIA DEL MODELO PROPUESTO.
A través del presente trabajo se logró llegar a la propuesta de un método para desarrollar
software educativo.
Lo relevante de este método es que se puede dividir en 6 grandes etapas que son:
Análisis
Figura 11. Modelo para desarrollar software educativo
Cada uno de estas etapas se subdivide a su vez en más. los cuales son:
68
Análisis de. objetivos
Analizar el resultado deseado
Presentar las metas a alcanzar
Describir el comportamiento final esperado
Describir las destrezas que el educando debe evidenciar
Análisis de requerimientos Analizar el equipo de
trabajo
Analizar las herramientas de trabajo
Figura 12. ANÁLISIS
6 9
Diseñar los objetivos
Flexibilidad en las estrategias de los cursos a diseñar
Minimizar la memoria del usuario
Adaptar a la experiencia del usuario
Software comercial
Fisura 13. DISEÑO
Especificar los eventos y actividades de aprendizaje
Documentación del programa
Seleccionar los medios que se van a utilizar
Fisura 14. DESARROLLO
70
Interacción con periféricos
—, Minimización de errores
Depuración
Recuperación de errores
Interfase amicable
Ayuda en línea
Comandos rápidos
Respaldo de versiones
Edición
Control de fluio
Análisis de respuesta
Figura 15. Selección de los medios que se van a utilizar
7 1
Ejecución
Puesta en marcha
Fisura 17. EJECUCIÓN
Control
Control del aprendizaje
Control del sistema
Fisura 17. CONTROL
72
5.2 BENEFICIOS DEL MODELO PROPUESTO.
Este modelo tiene como beneficio principal que combina la pedagogía con la técnica, el
hacedor del software educativo, que en la mayoría de las veces es el mismo profesor, debe
tomar en cuenta los dos aspectos, ya que con dificultad se logra contar con un equipo de
trabaj o mu 1 tidisci p 1 i n ar i o.
En este modelo el aspecto técnico es de gran valor ya que si la persona que esta elaborando
el software no tiene conocimientos de sistemas, con este modelo tiene la guía de qué es lo
que debe preguntarles a los especialistas en sistemas para la elaboración del software
deseado.
El aspecto pedagógico que contiene el modelo propuesto, permite llevar acabo un software
de calidad ya que :
a) ayuda a los alumnos a participar activamente en el proceso de su aprendizaje.
b) confia en que el estudiante desea alcanzar metas para él significativas.
c) centra su atención en el estudiante, permitiéndole total iniciativa.
d) promueve el desarrollo intelectual de los alumnos.
e) propicia el trato individual hacia los alumnos.
f) adapta el ritmo de instrucción al logro de cada uno de los alumnos.
g) ayuda al alumno a competir consigo mismo.
73
5.3 DIFERENCIACIÓN DEL MODELO PROPUESTO.
En el siguiente cuadro se hace la comparación entre los modelos de software expuestos en
el marco teórico y el modelo propuesto, en el se puede observar que el modelo propuesto
tiene una ventaja competitiva con los demás y es el de llevar un control de lo que se realizó,
con lo cual se puede llevar a cabo la retroalimentación, así como mejoras para los próximos
desarrollos.
Laissez-
Faire
Cascada Modelo
reusable
Desarrollo
Incremental
Prototipo Espiral Modelo
propuesto
Análisis X X X X X X X
diseño X X X X X X
desarrollo X X X X X
Ejecución X X X X X X
Control X Cuadro 5. Comparación de modelos para desarrollar software
con el modelo propuesto
7 4
6. Bibliografía
Alavi, M., Wetherbe, J., Mixing Prototyping and Data Modeling for Information System
Pes ien . IEEE Software. Mayo 1991.
Austin, Tackett. The technologv advisor council: a vehicle for improving our schools.
ISTE Publications. U.S.A. 1993.
Bohem, B., A spiral model of software development and enhancement. IEEE Computer,
May 1988, pags. 61-72.
Buschman, Larry. Katie's computen Instructor, vol 101, febrero de 1992. pág. 33.
Calderón A. Enrique. Computadoras en la educación, ed Trillas. México, 1988.
Codd, E., "A Relational Model of Data for Shared Data Banks". Communications of the
ACM. vol. 13, no. 6. 1970.
Collis,Betty. The best of research windows: trends and issues in educational computing.
ISTE Publications. U.S.A. 1990.
Coll is .Bet ty.Thecnology enriched schools: nine case studies with reflections. ISTE
Publications. U.S.A. 1992.
75
Demás Chris. A strategy for developing C.A.I., Educational Technology, abril de 1978. pp
26-29.
Descartes, R., El discurso del método, sección: Reglas para dirigir el espíritu. Colección
"Sepan Cuantos...", Num. 177. Ed. Porrúa.
Digital, The Digital Cuide to Software Development. Digital Press, 1989.
Ellis, Alian B. The use & misuse of computers in education. McGraw-Hill Book
Company. U.S.A. 1974.
Fraisse,Paul y Piaget, Jean. Historia y método de la psicología experimental, ed. Paidós.
Barcelona, 1982.
Fredman,Al ice . Yes. I can: action proiects to resolve eqtiitv issues in educational
computing. ISTE Publications. U.S.A. 1993.
Gagné, R.M., y Briggs. J.L. Principies of Instructional Design. Holt. Rinehart and
Winston. New York. U.S.A., 1979.
Galván. C , Caracterización de una Guía de Desarrollo de Software. IV Reunión de la
AN1EI, Octubre de 1991.
Galván, C. Poniendo la Ingeniería de Software a trabajaren la Informática. V Reunión de
la AN1EI, Octubre de 1992.
76
Giordano. e y Edelstein, R. La creación de programas didácticos, ed. Gustavo Gili, S.A.
Barcelona, España, 1987.
Hamacher, Cari. Organización de computadoras. Ed. McGraw-HillMéxico, 1987.
Hannafin, Michael. The design. development. and evaluation of Instructional Software, ed
Macmillan. New York, U.S.A. 1988.
Hernández. Porfirio. Computación y práctica educativa. Escuela Normal del Estado de
Qu eré taro. México. 1993.
HumphreyW. .Manag ing the Software Process. SE1 Seriesin Software Engineering.
Addison Wesley Publishing Company, 1989 pp.247-286.
James A. Senn. Análisis y diseño de sistemas de información. McGraw-Hill. 1991.
Jonassen, David. Instructional designas for microcomputer courseware. Lawrence Erlbaum
Associates Inc., Publisher. U.S.A. 1988.
Johnson, M. Clemens. Utilización didáctica del ordenador electrónico. Ed. Anaya. Madrid
1978.
Lewis. R. Advanced Research on Computers in Education. North Holland, 1991.
Long, Larry. Introducción a las computadoras y a los procesos de información. Ed.
Prentice Hall. México. 1990.
7 7
Lucas,H.C. Jr. Performance Evaluation and the management of Information services. Data
Base, 1987.
Martin, Ch., User-Centered Requirements Analysis, Prent¡ce Hall, 1988.
Marsh al 1, Gail. The Challenge of change. Questions and resources for eomputer-using
educators. ISTE Publications. U.S.A. 1993.
Meyer, B., Object-Oriented Software Construction, Prentice Hall International Series in
Computer Science, 1988.
Moursund, David. The Technology Coordinator.ISTE Publications. U.S.A. 1993.
Mowe, Richard. Evaluating Technology Integration in the Elementary SchoohA step by
step guide.ISTE Publications. U.S.A. 1993.
Naur, Peter. Software Engineering. Petrocelli/Charter. New York, 1976.
Polya, G., Como Plantear y Resolver Problemas. Ed. Trillas, reedición 1980, primera
edición 1965.
Pressman, R., Software Engineering, A prectitioner's Aproach. Englewood Cliffs, NJ:
Prentice Hall, 1988.
Rodríguez O., G.; The ELKA Model Aproach to the design of databaseconceptual models;
Ph.D. Dissertation, University of California, Los Angeles 1981.
78
Rockart, J.F. y L.S. Flannery. The management of end user computing. Communications
of the ACM, 1983.
Royce, W., Management the Development of large software systems. Proceedings of IEEE
WESCON, Aug. 1970.
Smith, M., Software Prototyping. adoption. practice and management. Me Graw Hill
Software Engineering Series, 1991.
Willis, Jerry. Computers. Teaching & Learning. Dilithium Press. U.S.A.,1983.
Yeh, R., Naumann, D., et all, A common sense management model. IEEE Software, pp.
23-33 .
Thornburg, David. Look to the future. Journal InCider At. vol 9, noviembre de 1991, pág
8.
Whitehead, David. Software educational maternals. Times educational supplement.
Enero,25 de 1991. pág.42.
7 9