Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Sistema de Información I - Final
Sistema de Información I - Final
UNIDAD III
Software – Ingeniería del Software
PRODUCTOS DE SOFTWARE
Software = Producto
1 - Software de sistemas: conjunto de programas escritos para dar servicio a otros programas.
(Por ejemplo, compiladores, editores y herramientas para administrar archivos).
2 - Software de aplicación: programas aislados que resuelven una necesidad específica de
Negocios. Las aplicaciones en esta área procesan datos comerciales o técnicos en una
forma que facilita las operaciones de negocios o la toma de decisiones administrativas o
técnicas.
3 - Software de ingeniería y ciencias: se ha caracterizado por algoritmos “devoradores de
números”. Las aplicaciones van de la astronomía a la vulcanología, del análisis de tensiones
en automóviles a la dinámica orbital del transbordador espacial, y de la biología molecular
a la manufactura automatizada.
4 - Software incrustado: reside dentro de un producto o sistema y se usa para implementar y
controlar características y funciones para el usuario final y para el sistema en sí.
5 - Software de línea de productos: es diseñado para proporcionar una capacidad específica
para uso de muchos consumidores diferentes. Se centra en algún mercado limitado y
particular (por ejemplo, control del inventario de productos) o se dirige a mercados masivos de
consumidores (procesamiento de textos, hojas de cálculo y aplicaciones para finanzas
personales o de negocios).
6 - Aplicaciones web: llamadas “webapps”, esta categoría de software centrado en redes
agrupa una amplia gama de aplicaciones. En su forma más sencilla, las webapps son poco más
que un conjunto de archivos de hipertexto vinculados que presentan información con uso de
texto y gráficas limitadas.
7 - Software de inteligencia artificial: hace uso de algoritmos no numéricos para resolver
problemas complejos que no son fáciles de tratar computacionalmente o con el análisis
directo. Las aplicaciones en esta área incluyen robótica, sistemas expertos, reconocimiento de
patrones (imagen y voz), redes neurales artificiales, demostración de teoremas y juegos.
1 – Mantenibles: debe ser que el software evolucione y que siga cumpliendo con sus
especificaciones.
2 – Confiabilidad: el software no debe causar daños físicos o económicos en el caso de fallos.
3 – Eficiencia: el software no debe desperdiciar los recursos del sistema.
4 – Utilización Adecuada: el software debe contar con una interfaz de usuario adecuada y su
documentación.
SOFTWARE HEREDADO
Fueron desarrollados hace varias décadas y han sido modificados de manera continua para
que satisfagan los cambios en los requerimientos de los negocios y plataformas de
computación de manera continua para que satisfagan los cambios en los requerimientos de los
negocios y plataformas de computación. Sin embargo, conforme pase el tiempo será frecuente
que los sistemas de software evolucionen por una o varias de las siguientes razones:
• El software debe adaptarse para que cumpla las necesidades de los nuevos ambientes del
cómputo y de la tecnología.
• El software debe ser mejorado para implementar nuevos requerimientos del negocio.
• El software debe ampliarse para que sea operable con otros sistemas o bases de datos
modernos.
• La arquitectura del software debe rediseñarse para hacerla viable dentro de un ambiente de
redes.
Los costos del software es a menudo más caro que una PC. Cuesta más mantener el software
que desarrollarlo. Para sistemas con una larga vida, este costo se multiplica.
La crisis del software abarca los problemas asociados con cómo desarrollar el software, como
mantener un volumen creciente de software existente y cómo podemos satisfacer la demanda
creciente del software. Las causas son, la complejidad que supone la tarea de programar, y los
cambios a los que se tiene que ver sometido un programa para ser continuamente adaptado a
las necesidades de los usuarios.
Una estructura de proceso general para la ingeniería de software consta de cinco actividades:
1 -Comunicación. Antes de que comience cualquier trabajo técnico, tiene importancia crítica
comunicarse y colaborar con el cliente (y con otros participantes). Se busca entender los
objetivos de los participantes respecto del proyecto, y reunir los requerimientos que ayuden a
definir las características y funciones del software.
2 - Planeación. La actividad de planeación crea un “mapa” que guía al equipo mientras viaja.
El mapa —llamado plan del proyecto de software— define el trabajo de ingeniería de software
al describir las tareas técnicas por realizar, los riesgos probables, los recursos que se requieren,
los productos del trabajo que se obtendrán y una programación de las actividades.
3 - Modelado. Un ingeniero de software crea modelos a fin de entender mejor los
requerimientos del software y el diseño que los satisfará.
4 - Construcción. Esta actividad combina la generación de código (ya sea manual o
automatizada) y las pruebas que se requieren para descubrir errores en éste.
5 - Despliegue. El software (como entidad completa o como un incremento parcialmente
terminado) se entrega al consumidor que lo evalúa y que le da retroalimentación, misma que
se basa en dicha evaluación.
CLIENTE: Persona a quien va dirigido el resultado del proyecto, generalmente ellos presentan
un problema que requiere solución.
DESARROLLADORES: deben convertir la especificación del sistema en código fuente
ejecutable utilizando uno o más lenguajes de programación, así como herramientas de
software de apoyo a la programación.
GERENTE O DIRECTOR DEL PROYECTO: Persona responsable del proyecto. Encargado de la
dirección del proyecto, su planificación y el control de todos los costos, recursos, programas y
de la satisfacción del cliente.
USUARIOS: es aquella persona que utilizará el producto o servicio resultado del proyecto,
aunque no participe en la ejecución del proyecto, en su contratación, y algunas veces incluso ni
en la definición.
EL ANALISTA