Tipos de software

Page 1

TIPOS DE SOFTWARE

SOFTWARE Software: Es el conjunto de los programas de cómputo, procedimientos, reglas, documentación y datos asociados, que forman parte de las operaciones de un sistema de computación. Considerando esta definición, el concepto de software va más allá de los programas de computación en sus distintos estados: código fuente, binario o ejecutable; también su documentación, los datos a procesar e incluso la


información de usuario forman parte del software: es decir, abarca todo lo intangible, todo lo «no físico» relacionado. TIPOS DE SOFTWARE SOFTWARE DE SISTEMA En terminología informática el software de sistema, denominado también software de base, consiste en un software que sirve para controlar e interactuar con el sistema operativo, proporcionando control sobre el hardware y dando soporte a otros programas; en contraposición del llamado software de aplicación. Como ejemplos cabe mencionar a las bibliotecas, como por ejemplo OpenGL, para la aceleración gráfica; PNG, para el sistema gráfico; o demonios que controlan la temperatura, la velocidad del disco duro, como hdparm, o la frecuencia del procesador como cpudyn. Sistema de operación El software de sistema por antonomasia es Microsoft Windows, que entre todas sus versiones acumula cerca de un 90% de la cuota de mercado. Mención especial merece el proyecto GNU, cuyas herramientas de programación permitieron combinarse con el núcleo informático basado en Unix denominado Linux, formando entre ambos las conocidas como distribuciones GNU/Linux. A diferencia de la plataforma de Microsoft u otros ejemplos como Mac OS, es software libre. Estos programas realizan diversas tareas, como la transferencia de datos entre la memoria RAM y los dispositivos de almacenamiento (disco rígido, unidades de discos ópticos, etc) entre otros. Tipos de software de sistemas: Cargadores de programas. Sistemas operativos (y sus componentes, muchos de los cuales pueden considerarse como software de sistema). Controladores de dispositivos. Herramientas de programación: compiladores, ensambladores, enlazadores, etc. Programas utilitarios. Entorno de escritorio / Interfaz gráfica de usuario (que pueden incluir Gestores de ventanas. Línea de comandos. BIOS. Hipervisores. Bootloaders (Gestor de arranque). Si el software de sistema se almacena en una memoria no borrable tal como circuitos integrados, usualmente se lo denomina firmware.


SOFTWARE DE PROGRAMACION Es aquel que nos ayuda a realizar una tarea determinada, existen varias categorías de Software de Aplicación por que hay muchos programas (solo nombramos algunos) los cuales son: Aplicaciones de negocio. Aplicaciones de Utilería. Aplicaciones Personales. Aplicaciones de Entretenimiento. Ejemplo de software de aplicación El software de aplicación ha sido escrito con el fin de realizar casi cualquier tarea imaginable. Esté puede ser utilizado en cualquier instalación informática, independiente del empleo que vayamos a hacer de ella. Existen literalmente miles de estos programas para ser aplicados en diferentes tareas, desde procesamiento de palabras hasta cómo seleccionar una universidad. Como existen muchos programas se dividen en cuatro categorías de software de aplicaciones El Desarrollo de una aplicación tiene varias fases elaboradas como analizar el problema, encontrar el algoritmo correcto, determinar el rendimiento de un algoritmo para diferentes entradas, traducir el algoritmo en el código real, mejorar las prácticas de programación siguientes y varios módulos de prueba rigurosamente. Si todos estos pasos se hacen bien, entonces la aplicación tiende a producir menos errores, y esto se traduce en mayor productividad y menor tiempo de inactividad; aparte de esto, muchos otros factores también contribuyen en la fabricación de un producto de software de calidad. Cada fase de un ciclo de desarrollo de software tiene medidas rigurosas para asegurarse de que el producto final tiene menos errores y lagunas. Por ejemplo, pruebas pueden parecer como una tarea sencilla, pero en realidad, probadores profesionales hacen varias clases de pruebas para comprobar si un producto de software cumple los requisitos funcionales y los requerimientos de negocios de un problema. Como clasificación de software principalmente depende de la facilidad de uso de un producto, se da más importancia a pruebas para asegurarse de que las pantallas son según los diseños de interfaz de usuario de uso. Buena clasificación de software depende de cómo un producto es capaz de realizar en su conjunto. Cuando se trata de codificación, los programadores tienen que seguir convenciones de codificación, y siguen un enfoque para reducir los varios tipos de errores y encontrar algoritmos eficientes que puede solucionar el problema. Todos estos procesos llevan a producir software de buena calidad. Un producto de software sano es el resultado de los esfuerzos combinados que se siguen en el ciclo de vida de desarrollo de software. Calibradores de un usuario producen al final un producto de software basado en sus características tales como: Instalación: Independientemente de la complejidad y el tamaño de una aplicación, que es esencial para que un producto de software tenga procedimientos de instalación fácil. Si un producto de software requiere sólo una configuración inicial mínima a configurar, es muy probable que se gane la confianza de los clientes. Previsibilidad: Los usuarios finales no deben molestarse principalmente sobre cuan predecible es una aplicación. Un desarrollador puede aplicar pruebas rigurosas para averiguar la eficacia de un algoritmo, pero el esfuerzo se paga sólo cuando este se trabaja en tiempo real. Si un usuario final considera que una aplicación produce resultados impredecibles o no es capaz de soportar más allá de cierto umbral, entonces es muy probable que se obtengan malas nitas. Funcionalidad: Los usuarios finales dan


importancia ala funcionalidad porque si un producto de software no funciona como se espera, ni tienen suficiente funcionalidades entonces se niega el propósito de comprarlo. Además, es esencial para una aplicación poder retroceder a un estado estable en caso de errores. La fase de diseño de un ciclo de desarrollo de software se encarga de requerimientos funcionales de una aplicación mediante la recopilación de datos de clientes o usuarios finales; por lo tanto, es esencial asegurarse de que el producto final se adhiere estrictamente a datos recogidos de los requisito funcional. Diseño: Incluso si un producto de software cumple con el diseño de la interfaz de usuario basado en las aportaciones de los usuarios finales o clientes, contar con un atractivo diseño siempre ha sido difícil porque mantener apareciendo nuevas aplicaciones ahora y luego con mejores diseños e interfases amistosas para el usuario. Un usuario final tasa un producto de software basado en su usabilidad. Independientemente de la complejidad es una aplicación, si no es fácilmente utilizable, fácilmente puede frustrar a los usuarios finales y esto puede llevar a la calificación de software deficiente. Extendibilidad: Es muy esencial para un producto de software ampliar su arquitectura para acomodar nuevas características o funcionalidades existentes en su actualización. Como nuevas plataformas siguen llegando, extendibility juega un papel importante en el rating de un producto de software.

SOFTWARE DE APLICACIÓN El Software de Aplicación son los programas diseñados para o por los usuarios para facilitar la realización de tareas específicas en la computadora, como pueden ser las aplicaciones ofimáticas (procesador de texto, hoja de cálculo, programa de presentación, sistema de gestión de base de datos...), u otros tipos de software especializados como software médico, software educativo, editores de música, programas de contabilidad, etc.


Software de aplicación Las funciones de una aplicación dependen de su propósito, según el cual pueden clasificarse en dos categorías: Programas básicos (o utilitarios) Son aplicaciones cuyo propósito es mejorar, en alguna forma, el desempeño del ordenador. Programas de productividad Son aplicaciones cuyo propósito es facilitar, agilizar y mejorar para el usuario, la ejecución de ciertas tareas. Algunos programas de productividad Procesadores de texto: Aplicaciones diseñadas para editar y/o procesar de texto, logrando documentos de alta calidad. Hojas de cálculo: Aplicaciones especialmente diseñadas para introducir, calcular, manipular y analizar conjuntos de números. Presentaciones automatizadas: Aplicaciones que permiten al usuario crear y editar presentaciones atractivas, incluyendo imágenes y sonidos. Navegadores de Internet: Aplicaciones diseñadas para proveer acceso a Internet, sus servicios y sus recursos. Administradores de bases de datos: Aplicaciones diseñadas para acceder, almacenar y procesar grandes colecciones de datos, en una forma eficiente. Desarrolladores de sitios web: Aplicaciones que brindan al usuario las herramientas necesarias para diseñar, crear, editar y publicar páginas y sitios Web.


SOFTWARE EDUCATIVO Tipos y clasificación de Software Educativo Así como existen diferencias entre las filosofías pedagógicas, también se encuentra una amplia gama de enfoques para la creación de software educativos diferentes tipos de interacción que se origina entre los actores de los procesos de enseñanza y aprendizaje: enseñante, aprendiente, conocimiento, computadora.

Los programas educativos a pesar de tener unos rasgos esenciales básicos y una estructura general común se presentan con unas características muy diversas: unos aparentan ser un laboratorio o una biblioteca, otros se limitan a ofrecer una función instrumental del tipo máquina de escribir o calculadora, otros se presentan como un juego o como un libro, bastantes tienen vocación de examen, unos pocos se creen expertos... y, por si no fuera bastante, la mayoría participan en mayor o menor medida de algunas de estas peculiaridades. Para poner orden a esta disparidad, se han elaborado múltiples tipologías que clasifican los programas didácticos a partir de diferentes criterios.

Uno de estos criterios se basa en la consideración del tratamiento de los errores que cometen los estudiantes, distinguiendo:

Programas tutoriales directivos, que hacen preguntas a los estudiantes y controlan en todo momento su actividad. El ordenador adopta el papel de juez poseedor de la verdad y examina al alumno. Se producen errores cuando la respuesta del alumno está en desacuerdo con la que el ordenador tiene como correcta. En los programas más tradicionales el error lleva implícita la noción de fracaso. Programas no directivos, en los que el ordenador adopta el papel de un laboratorio o instrumento a disposición de la iniciativa de un alumno que pregunta y tiene una libertad de acción sólo limitada por las normas del programa. El ordenador no juzga las acciones del alumno, se limita a procesar los datos que éste introduce y a mostrar las consecuencias de sus acciones sobre un entorno. Objetivamente no se producen errores, sólo desacuerdos entre los efectos esperados por el alumno y los efectos reales de sus acciones sobre el entorno. No está implícita la noción de fracaso. El error es sencillamente una hipótesis de trabajo que no se ha verificado y que se debe sustituir por otra. En general, siguen un modelo pedagógico de inspiración cognitivista, potencian el aprendizaje a través de la exploración, favorecen la reflexión y el pensamiento crítico y propician la utilización del método científico. Otra clasificación interesante de los programas atiende a la posibilidad de modificar los contenidos del programa y distingue entre programas cerrados (que no pueden modificarse) y programas abiertos, que proporcionan un esqueleto, una estructura, sobre la cual los alumnos y los profesores pueden añadir el contenido que les interese. De esta manera se facilita su adecuación a los diversos contextos educativos y permite un mejor tratamiento de la diversidad de los estudiantes.


No obstante, de todas las clasificaciones la que posiblemente proporciona categorías más claras y útiles a los profesores es la que tiene en cuenta el grado de control del programa sobre la actividad de los alumnos y la estructura de su algoritmo, que es la que se presenta a continuación de los Software Educativos.

Programas tutoriales Son programas que en mayor o menor medida dirigen, tutorizan, el trabajo de los alumnos. Pretenden que, a partir de unas informaciones y mediante la realización de ciertas actividades previstas de antemano, los estudiantes pongan en juego determinadas capacidades y aprendan o refuercen unos conocimientos y/o habilidades. Cuando se limitan a proponer ejercicios de refuerzo sin proporcionar explicaciones conceptuales previas se denominan programas tutoriales de ejercitación, como es el caso de los programas de preguntas (drill&practice, test) y de los programas de adiestramiento psicomotor, que desarrollan la coordinación neuromotriz en actividades relacionadas con el dibujo, la escritura y otras habilidades psicomotrices.

En cualquier caso, son programas basados en los planteamientos conductistas de la enseñanza que comparan las respuestas de los alumnos con los patrones que tienen como correctos, guían los aprendizajes de los estudiantes y facilitan la realización de prácticas más o menos rutinarias y su evaluación; en algunos casos una evaluación negativa genera una nueva serie de ejercicios de repaso. A partir de la estructura de su algoritmo, se distinguen cuatro categorías:

Programas lineales, que presentan al alumno una secuencia de información y/o ejercicios (siempre la misma o determinada aleatoriamente) con independencia de la corrección o incorrección de sus respuestas. Herederos de la enseñanza programada, transforman el ordenador en una máquina de enseñar transmisora de conocimientos y adiestradora de habilidades. No obstante, su interactividad resulta pobre y el programa se hace largo de recorrer. Programas ramificados, basados inicialmente también en modelos conductistas, siguen recorridos pedagógicos diferentes según el juicio que hace el ordenador sobre la corrección de las respuestas de los alumnos o según su decisión de profundizar más en ciertos temas. Ofrecen mayor interacción, más opciones, pero la organización de la materia suele estar menos compartimentada que en los programas lineales y exigen un esfuerzo más grande al alumno. Pertenecen a éste grupo los programas multinivel, que estructuran los contenidos en niveles de dificultad y previenen diversos caminos, y los programas ramificados con dientes de sierra, que establecen una diferenciación entre los conceptos y las preguntas de profundización, que son opcionales. Entornos tutoriales. En general están inspirados en modelos pedagógicos cognitivistas, y proporcionan a los alumnos una serie de herramientas de búsqueda y de proceso de la información que pueden utilizar libremente para construir la respuesta a las preguntas del programa. Este es el caso de los entornos de resolución de problemas, "problem solving", donde los estudiantes conocen parcialmente las informaciones necesarias para su resolución y han de buscar la información que falta y aplicar reglas, leyes y operaciones para encontrar la solución. En algunos casos, el programa no sólo comprueba la corrección del resultado, sino que también tiene en cuenta la idoneidad del camino que se ha seguido en la resolución. Sin llegar a estos niveles de análisis de las respuestas, podemos citar como ejemplo de entorno de resolución de problemas el programa MICROLAB DE ELECTRÓNICA.


Sistemas tutoriales expertos, como los Sistemas Tutores Inteligentes (Intelligent Tutoring Systems), que, elaborados con las técnicas de la Inteligencia Artificial y teniendo en cuenta las teorías cognitivas sobre el aprendizaje, tienden a reproducir un diálogo auténtico entre el programa y el estudiante, y pretenden comportarse como lo haría un tutor humano: guían a los alumnos paso a paso en su proceso de aprendizaje, analizan su estilo de aprender y sus errores y proporcionan en cada caso la explicación o ejercicio más convenientes. Bases de datos Proporcionan unos datos organizados, en un entorno estático, según determinados criterios, y facilitan su exploración y consulta selectiva. Se pueden emplear en múltiples actividades como por ejemplo: seleccionar datos relevantes para resolver problemas, analizar y relacionar datos, extraer conclusiones, comprobar hipótesis... Las preguntas que acostumbran a realizar los alumnos son del tipo: ¿Qué características tiene este dato? ¿Qué datos hay con la característica X? ¿Qué datos hay con las características X e Y?

Las bases de datos pueden tener una estructura jerárquica (si existen unos elementos subordinantes de los que dependen otros subordinados, como los organigramas), relacional (si están organizadas mediante unas fichas o registros con una misma estructura y rango) o documental (si utiliza descriptores y su finalidad es almacenar grandes volúmenes de información documental: revistas, periódicos, etc). En cualquier caso, según la forma de acceder a la información se pueden distinguir dos tipos:

Bases de datos convencionales. Tienen la información almacenada en ficheros, mapas o gráficos, que el usuario puede recorrer según su criterio para recopilar información.. Bases de datos tipo sistema experto. Son bases de datos muy especializadas que recopilan toda la información existente de un tema concreto y además asesoran al usuario cuando accede buscando determinadas respuestas. Simuladores Presentan un modelo o entorno dinámico (generalmente a través de gráficos o animaciones interactivas) y facilitan su exploración y modificación a los alumnos, que pueden realizar aprendizajes inductivos o deductivos mediante la observación y la manipulación de la estructura subyacente; de esta manera pueden descubrir los elementos del modelo, sus interrelaciones, y pueden tomar decisiones y adquirir experiencia directa delante de unas situaciones que frecuentemente resultarían difícilmente accesibles a la realidad (control de una central nuclear, contracción del tiempo, pilotaje de un avión...). También se pueden considerar simulaciones ciertos videojuegos que, al margen de otras consideraciones sobre los valores que incorporan (generalmente no muy positivos) facilitan el desarrollo de los reflejos, la percepción visual y la coordinación psicomotriz en general, además de estimular la capacidad de interpretación y de reacción ante un medio concreto.

En cualquier caso, posibilitan un aprendizaje significativo por descubrimiento y la investigación de los estudiantes/experimentadores puede realizarse en tiempo real o en tiempo acelerado, según el simulador, mediante preguntas del tipo: ¿Qué pasa al modelo si modifico el valor de la variable X? ¿Y si modifico el parámetro Y? Se pueden diferenciar dos tipos de simulador:


Modelos físico-matemáticos: Presentan de manera numérica o gráfica una realidad que tiene unas leyes representadas por un sistema de ecuaciones deterministas. Se incluyen aquí los programas-laboratorio, algunos trazadores de funciones y los programas que mediante un convertidor analógico-digital captan datos analógicos de un fenómeno externo al ordenador y presentan en pantalla un modelo del fenómeno estudiado o informaciones y gráficos que van asociados. Estos programas a veces son utilizados por profesores delante de la clase a manera de pizarra electrónica, como demostración o para ilustrar un concepto, facilitando así la transmisión de información a los alumnos, que después podrán repasar el tema interactuando con el programa. Entornos sociales: Presentan una realidad regida por unas leyes no del todo deterministas. Se incluyen aquí los juegos de estrategia y de aventura, que exigen una estrategia cambiante a lo largo del tiempo. Programas herramienta Son programas que proporcionan un entorno instrumental con el cual se facilita la realización de ciertos trabajos generales de tratamiento de la información: escribir, organizar, calcular, dibujar, transmitir, captar datos.... A parte de los lenguajes de autor (que también se podrían incluir en el grupo de los programas constructores), los más utilizados son programas de uso general que provienen del mundo laboral y, por tanto, quedan fuera de la definición que se ha dado de software educativo. No obstante, se han elaborado algunas versiones de estos programas "para niños" que limitan sus posibilidades a cambio de una, no siempre clara, mayor facilidad de uso. De hecho, muchas de estas versiones resultan innecesarias, ya que el uso de estos programas cada vez resulta más sencillo y cuando los estudiantes necesitan utilizarlos o su uso les resulta funcional aprenden a manejarlos sin dificultad.Los programas más utilizados de este grupo son:

Procesadores de textos. Son programas que, con la ayuda de una impresora, convierten el ordenador en una fabulosa máquina de escribir. En el ámbito educativo debe hacerse una introducción gradual que puede empezar a lo largo de la Enseñanza Primaria, y ha de permitir a los alumnos familiarizarse con el teclado y con el ordenador en general, y sustituir parcialmente la libreta de redacciones por un disco (donde almacenarán sus trabajos). Al escribir con los procesadores de textos los estudiantes pueden concentrarse en el contenido de las redacciones y demás trabajos que tengan encomendados despreocupándose por la caligrafía. Además el corrector ortográfico que suelen incorporar les ayudará a revisar posibles faltas de ortografía antes de entregar el trabajo. Además de este empleo instrumental, los procesadores de textos permiten realizar múltiples actividades didácticas, por ejemplo: Ordenar párrafos, versos, estrofas. Insertar frases y completar textos. Separar dos poemas... Gestores de bases de datos. Sirven para generar potentes sistemas de archivo ya que permiten almacenar información de manera organizada y posteriormente recuperarla y modificarla. Entre las muchas actividades con valor educativo que se pueden realizar están las siguientes: Revisar una base de datos ya construida para buscar determinadas informaciones y recuperarlas. Recoger información, estructurarla y construir una nueva base de datos. Hojas de cálculo. Son programas que convierten el ordenador en una versátil y rápida calculadora programable, facilitando la realización de actividades que requieran efectuar muchos cálculos matemáticos. Entre las actividades didácticas que se pueden realizar con las hojas de cálculo están las siguientes:


Aplicar hojas de cálculo ya programadas a la resolución de problemas de diversas asignaturas, evitando así la realización de pesados cálculos y ahorrando un tiempo que se puede dedicar a analizar los resultados de los problemas. Programar una nueva hoja de cálculo, lo que exigirá previamente adquirir un conocimiento preciso del modelo matemático que tiene que utilizar. Editores gráficos. Se emplean desde un punto de vista instrumental para realizar dibujos, portadas para los trabajos, murales, anuncios, etc. Además constituyen un recurso idóneo para desarrollar parte del currículum de Educación Artística: dibujo, composición artística, uso del color, etc. Programas de comunicaciones. Son programas que permiten que ordenadores lejanos (si disponen de módem) se comuniquen entre sí a través de las líneas telefónicas y puedan enviarse mensajes y gráficos, programas... Desde una perspectiva educativa estos sistemas abren un gran abanico de actividades posibles para los alumnos, por ejemplo: Comunicarse con otros compañeros e intercanviarse informaciones. Acceder a bases de datos lejanas para buscar determinadas informaciones. Programas de experimentación asistida. A través de variados instrumentos y convertidores analógicodigitales, recogen datos sobre el comportamiento de las variables que inciden en determinados fenómenos. Posteriormente con estas informaciones se podrán construir tablas y elaborar representaciones gráficas que representen relaciones significativas entre las variables estudiadas. Lenguajes y sistemas de autor. Son programas que facilitan la elaboración de programas tutoriales a los profesores que no disponen de grandes conocimientos informáticos. Utilizan unas pocas instrucciones básicas que se pueden aprender en pocas sesiones. Algunos incluso permiten controlar vídeos y dan facilidades para crear gráficos y efectos musicales, de manera que pueden generar aplicaciones multimedia. Algunos de los más utilizados en entornos PC han sido: PILOT, PRIVATE TUTOR, TOP CLASS, LINK WAY, QUESTION MARK...


CARACTERISTICAS DE LOS SOFTWARES Características del Software El software tiene tres características principales: 1) Características operativas 2) Características de transición 3) Características de revisión

Características operativas del Software Son factores de funcionalidad, es como se presenta el software, es la “parte exterior” del mismo. Incluye aspectos como:

Corrección: El software que estamos haciendo debe satisfacer todas las especificaciones establecidas por el cliente. Usabilidad / Facilidad de aprendizaje: Debe ser sencillo de aprender. Integridad: Un software de calidad no debe tener efectos secundarios. Fiabilidad: El producto de software no debería tener ningún defecto. No sólo esto, no debe fallar mientras la ejecución. Eficiencia: Forma en que el software utiliza los recursos disponibles. El software debe hacer un uso eficaz del espacio de almacenamiento y el comando ejecutar según los requisitos de tiempo deseados. Seguridad: Se deben tomar medidas apropiadas para mantener los datos a salvo de las amenazas externas Características de transición del Software Interoperabilidad: Es la capacidad para el intercambio de información con otras aplicaciones. Reutilización: Es poder utilizar el código de software con algunas modificaciones para diferentes propósitos. Portabilidad: Capacidad para llevar a cabo las mismas funciones en todos los entornos y plataformas. Características de revisión de Software Son los factores de ingeniería, la “calidad interior ‘del software como la eficiencia, la documentación y la estructura. Incluye aspectos como:

Capacidad de mantenimiento: El mantenimiento del software debe ser fácil para cualquier tipo de usuario. Flexibilidad: Los cambios en el software debe ser fácil de hacer. Extensibilidad: Debe ser fácil de aumentar nuevas funciones. Escalabilidad: Debe ser muy fácil de actualizar para más trabajo. Capacidad de prueba: Prueba del software debe ser fácil.


Modularidad: Debe estar compuesto por unidades y mĂłdulos independientes entre sĂ­.


Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.