Introdcción a la ingeniería del sofwtware
Contenido
CONCEPTOS GENERALES PARA EL DESARROLLO DEL SOFTWARE
Definiciones
Software (Pressman):
- Instrucciones que cuando se ejecutan proporcionan la función y el comportamiento deseado.
- Estructuras de datos que facilitan a los programas manipular adecuadamente la información
- Documentos que describen la operación y el uso de los programas
Una definición más enfocada a un software estructurado que orientado a objetos
Nos da una idea de la naturaleza lógica del software
No recalca la importancia de la documentación aparentemente no necesaria para que el software funcione
¿Por qué crees que es importante la documentación en el software?
TIPOS DE SOFTWARE
El software automatiza tareas de diferente naturaleza.
Es muy intuitivo pensar que no requerirá las mismas necesidades un software que hace que salte un airbag de un coche donde es tiempo de respuesta debe de ser instantáneo (un segundo puede ser vital), que un software que se encarga de imprimir una nóminas donde ese requisito temporal carece de importancia (no importa que tarde 2 segundos en responder el sistema).
Por poner algunos ejemplos de tipos de software
- S. DE SISTEMAS
- Sirven de herramienta para otros software
- Ej.: S.O., Compiladores, Interpretes, CASE, Editores complejos …)
- Tienen una fuerte interacción con el hard del ordenador
- S. DE TIEMPO REAL
- Conjunto de programas que mide analiza y controla sucesos del mundo real a medida que ocurren.
- Ej. Aplicaciones de control de maquinaria
- S. DE INGENIERÍA Y CIENTÍFICO
- Utilizan algoritmos de manejo de números.
- Muy pesados en cuanto a cálculos
- Aplicaciones en Astronomía Meteorología, Biología molecular.
- Toma características de Tiempo Real.
- S. EMPOTRADO (FIRMWARE)
- Reside en ROM,
- Se utiliza para controlar productos de sistemas de los mercados
- Sistemas que suelen correr en microcontroladores
- SOFTWARE DE PC’S
- Como Procesadores de texto, hojas de cálculo, GBD
- Software diseñado para masas y claramente de propósito general
- SOFTWARE DE INTELIGENCIA ARTIFICIAL
- Algoritmos no numéricos para resolver problemas complejos.
- Aplican razonamiento para llegar a conclusiones a partir de alguna premisa.
- SOFTWARE DE GESTIÓN
- Realiza tareas de procesamientos de datos y operaciones de cálculo interactivo.
- Trabajan con gran cantidad de información y permite automatizar gran parte de procesos en las empresas.
- Los sistemas de información de gestión, suelen acceder a grandes bases de datos que contienen información comercial
- Estas aplicaciones reestructuran los datos existentes:
- Para facilitar las operaciones comerciales
- Para gestionar la toma de decisiones
- Además de las tareas convencionales de procesamiento de datos (Aplicaciones por lotes), las aplicaciones de gestión, también realizan cálculo interactivo,
CARACTERÍSTICAS DEL SOFTWARE
- Se desarrolla, no se fabrica
- No se estropea, pero se deteriora (su naturaleza no física)
- Se construye a medida, en vez de ensamblar componentes existentes. (Idea que se intenta cambiar)