martes, 8 de mayo de 2012

Actividad 1. ADOO

Actividad Paranormal 1. ADOO

Definiciones de Ingeniería de Software.

Según la definición del IEEE, citada por [Lewis 1994] "software es la suma total de los programas de computadora, procedimientos, reglas, la documentación asociada y los datos que pertenecen a un sistema de cómputo". Según el mismo autor, "un producto de software es un producto diseñado para un usuario". En este contexto, la Ingeniería de Software (SE del inglés Software Engineering) es un enfoque sistemático del desarrollo, operación, mantenimiento y retiro del software", que en palabras más llanas, se considera que "la Ingeniería de Software es la rama de la ingeniería que aplica los principios de la ciencia de la computación y las matemáticas para lograr soluciones costo-efectivas (eficaces en costo o económicas) a los problemas de desarrollo de software", es decir, "permite elaborar consistentemente productos correctos, utilizables y costo-efectivos" [Cota 1994].

http://www.angelfire.com/scifi/jzavalar/apuntes/IngSoftware.html#IngSoft
  • Ingenieria del Software es el estudio de los principios y metodologias para desarrollo y mantenimiento de sistemas de software. [Zelkovitz, 1978]
  • Ingenieria del Software es la aplicacion practica del conocimiento cientifico en el diseño y construccion de programas de computadora y la documentacion asociada requerida para desarrollar y operar (funcionar) y mantenerlos. Asi como tambien desarrollo de software o produccion de software. [Bohem, 1976]
  • La Ingenieria del Software es el establecimiento y uso de principios solidos de la ingenieria para obtener economicamente un software confiable y que funcione de modo eficiente en maquinas reales. [Bauer, 1972]
  • Ingenieria de Software es la aplicacion de un enfoque sistematico, disciplinado y cuantificable al desarrollo operacion (funcionamiento) y mantenimiento del software: es decir, la aplicacion de ingenieria al software. [IEEE, 1993]
  • La Ingenieria de Software es una disciplina de la ingenieria que comprende todos los aspectos de la produccion de software desde las etapas iniciales de la especificacion del sistema hasta el mantenimiento de este despues que se utiliza. [Sommerville, 2004]
  • La Ingenieria de Software es una disciplina que integra el proceso, los metodos, y las herramientas para el desarrollo de software de computadora. [Pressman, 2005]
http://www.rodolfoquispe.org/blog/que-es-la-ingenieria-de-software.php


La Ingeniería de software abarca cuatro elementos clave:

1. Métodos o técnicas: Indican cómo construir técnicamente el software, y abarca una serie de tareas que incluyen la planificación y estimación de proyectos, el análisis de requisitos, el diseño de estructuras de datos, programas y procedimientos, la codificación, las pruebas y el mantenimiento. Los métodos introducen frecuentemente una notación específica para la tarea en cuestión y una serie de criterios de calidad.

2. Herramientas: Son instrumentos o sistemas automatizados para realizar algo de la mejor manera posible. Esta manera óptima puede significar que la herramienta produce resultados más exactos, más eficientes, más productivos, o que refuerza la calidad del producto resultante. Proporcionan un soporte automático o semiautomático para todas las fases del desarrollo y sistemas que integran las herramientas de cada fase de manera que sirven para todo el proceso. Estas herramientas se denominan CASE (Computer Aided Software Engineering).

3. Procedimientos: Son la combinación de las técnicas y las herramientas que en forma conjunta dan un resultado particular. Los procedimientos indicarán qué herramientas deberán utilizarse cuando se aplican determinadas técnicas. Definen la secuencia en que se aplican los métodos, los documentos que se requieren, los controles que aseguran la calidad y las directrices que permiten a los gestores evaluar los progresos.

4. Paradigmas: Representan un enfoque particular o filosofía para la construcción del software. No es mejor uno que otro sino que cada uno tiene ventajas y desventajas. También hay situaciones donde un paradigma resulta más apropiado que otro. Los más comunes son el desarrollo en cascada, el desarrollo en espiral, el desarrollo por prototipos, el desarrollo incremental, el desarrollo en V y el desarrollo orientado a objetos. También existen modelo híbridos, los cuales combinan elementos de diferentes modelos según las necesidades existentes.
http://www.conocimientosweb.net/portal/term3830.html
El ciclo de vida de un sistema de información
comprende las siguientes etapas:
_ Planificación
_ Análisis
_ Diseño
_ Implementación
_ Pruebas
_ Instalación / Despliegue
_ Uso y mantenimiento
Planificación
_ Ámbito del proyecto
_ Estudio de viabilidad
_ Análisis de riesgos
_ Estimación
_ Planificación temporal
_ Asignación de recursos.
Análisis (¿qué?)
_ Elicitación de requerimientos:
_ Requerimientos funcionales
_ Requerimientos no funcionales
_ Modelado:
_ Modelado de datos
_ Modelado de procesos
Diseño (¿cómo?)
Estudio de alternativas y diseño arquitectónico
_ Diseño de la base de datos
_ Diseño de las aplicaciones
Implementación
_ Adquisición de componentes.
_ Creación e integración de los recursos necesarios
para que el sistema funcione.
Pruebas
_ Pruebas de unidad.
_ Pruebas de integración.
_ Pruebas alfa.
_ Pruebas beta.
_ Test de aceptación.
Instalación / despliegue
Uso / mantenimiento
_ Mantenimiento adaptativo.
_ Mantenimiento correctivo.
_ Mantenimiento perfectivo.
http://elvex.ugr.es/idbis/db/docs/design/1-process.pdf

No hay comentarios:

Publicar un comentario