Anda di halaman 1dari 5

1.

-Definición de ingeniería de software

La Ingeniería de Software es una disciplina o área de la Informática o


Ciencias de la Computación, que ofrece métodos y técnicas para
desarrollar y mantener software de calidad que resuelven problemas de
todo tipo.
La Ingeniería de Software trata con áreas muy diversas de la informática y
de las ciencias de la computación, tales como construcción de
compiladores, sistemas operativos o desarrollos en Internet, abordando
áreas tales como: negocios, investigación científica, medicina, producción,
logística, banca, control de tráfico, meteorología, el mundo del derecho, la
red de redes internet, redes Intranet y Extranet, etc.
Autor: Roger S. Pressman.
Roger S. Pressman. (2002). INGENIERÍA DEL SOFTWARE. ESPAÑA:
Concepción Fernández Madrid

La Ingeniería de Software es la aplicación práctica del conocimiento


científico en el diseño y construcción de programas de computadora y la
documentación asociada requerida para desarrollar, operar (funcionar) y
mantenerlos. Se conoce también como desarrollo de software o producción
de software.
Autor: Bohem

La ingeniería de software es una disciplina de ingeniería que se interesa por


todos los aspectos de la producción de software, desde las primeras etapas
de la especificación del sistema hasta el mantenimiento del sistema después
de que se pone en operación.
Autor: Ian Sommerville
Ian Sommerville. (2011). INGENIERÍA DE SOFTWARE. México: Editorial
Mexicana. Reg. núm. 1031.
2.-Describir el contexto de ingeniería de software

La historia de la ingeniería del software es paralela a la historia del software,


durante la década de los cincuenta se aplica al desarrollo de software el
mismo proceso que al desarrollo de hardware, se usa el método científico
para aprender a través de la experiencia, el software se consideraba como
un producto añadido y la programación de computadores era un arte para
el que no existían métodos sistemáticos, el desarrollo de software se
realizaba sin ninguna planificación una solo persona lo escribía, lo ejecutaba
y, si fallaba, lo depuraba, el diseño era un proceso implícito, que se realizaba
en la mente del programador y la documentación no existía.

En la década de los sesenta con el surgimiento de la multiprogramación y


los sistemas multiusuario se introducen nuevos conceptos de interacción
hombre – máquina, los sistemas en tiempo real recogían, analizaban y
transformaban datos de múltiples fuentes y apoyan la toma de decisiones,
y como consecuencia nace la primera generación de sistemas de gestión
de bases de datos. Esta era se caracteriza por la aparición del software
como producto y el nacimiento de las casas de software donde se
producían programas de miles de líneas de código fuente que tenían que
ser corregidos cuando se detectaban fallas y modificados cuando
cambiaban los requisitos, entonces se fomenta el proceso de desarrollo de
software tipo codifica y corrige. Como consecuencia de esta práctica y
debido a que los proyectos de software presentaban muchas fallas dado
que los desarrollos terminaban sobrepasando el tiempo y costos estimados
al inicio del proyecto, no se obtenían los resultados esperados y el software
era poco flexible, se inicia un fenómeno conocido como la “crisis del
software”, por esta razón en 1968 se realiza la primera conferencia sobre
desarrollo de software en Múnich, financiada por la OTAN. Allí la “crisis del
software” se convierte en el tema central y se utilizó por primera vez el
término "ingeniería del software" para describir el conjunto de conocimientos
que existían en un estado inicial, así pues, nace formalmente la rama de
ingeniería de software.

Salvador Sánchez Alonso, Miguel Ángel Sicilia Urbán, Ingeniería del


Software, un enfoque desde la guía SWEBOK, Alfaomega Editores,S.A. de
C.V., México, 2012.
El concepto “ingeniería de software” se propuso originalmente en una
conferencia realizada para discutir lo que entonces se llamaba la “crisis del
software”.
Se volvió claro que los enfoques individuales al desarrollo de programas no
escalaban hacia los grandes y complejos sistemas de software. Éstos no eran
confiables, costaban más de lo esperado y se distribuían con demora.
A lo largo de las décadas se desarrolló una variedad de nuevas técnicas y
métodos de ingeniería de software, tales como la programación
estructurada, el encubrimiento de información y el desarrollo orientado a
objetos. Se perfeccionaron herramientas y notaciones estándar y ahora se
usan de manera extensa.
La noción de ingeniería de software fue propuesta en una conferencia para
discutir lo que en ese entonces era llamado “crisis del software”. Esta crisis
de software fue el resultado de la introducción de las nuevas computadoras
de hardware basados en circuitos integrados.
Su poder hizo que las aplicaciones hasta ese entonces irrealizables fueran
una propuesta factible, el software resultante fue de órdenes de magnitud
más grande y más complejo que los sistemas de software previos.
La experiencia previa en la construcción de estos sistemas mostro que un
enfoque informal para el desarrollo del software no era muy bueno. Los
grandes proyectos a menudo tenían años de retraso. Costaban más de los
presupuestado, eran irrealizables, difíciles de mantener y con un desempeño
pobre. El desarrollo de software estaba en crisis. Los costos del hardware se
tambaleaban mientras que los del software se incrementaban con rapidez.
Se necesitaban nuevas técnicas y métodos para controlar la complejidad
inherente a los sistemas grandes.
Estas técnicas han llegado a ser parte de la ingeniería del software y son
ampliamente utilizadas.

Autor: Ian Sommerville


Ian Sommerville. (2011). INGENIERÍA DE SOFTWARE. México: Editorial
Mexicana. Reg. núm. 1031.
3.-Describir el papel que desempeña las 4p´s de la
ingeniería de software

(a) Persona:
-Arquitectos, desarrolladores, ingenieros de prueba, personal de gestión, usuarios,
clientes
-El proceso de desarrollo afecta a las personas (viabilidad, gestión del riesgo,
estructura de los equipos, planificación, comprensión, cumplimiento)
-Formación, entrenamiento y experiencia
-De recurso a trabajador (puestos que asumen las personas)
-Cada trabajador tiene un conjunto de responsabilidades y lleva a cabo un
conjunto de actividades

(b) Proyecto:
-Elemento organizativo de gestión
-El proyecto construye el producto
-Secuencia de cambio: El sistema evoluciona
-Serie de iteraciones: Cada iteración implementa un conjunto de casos de uso o
atenúa algunos riesgos. Mini-proyecto
-Patrón organizativo: Tipos de trabajadores y artefactos a conseguir.

(c) Producto:
-Artefactos que se crean durante la vida del proyecto
-Modelos, códigos, ejecutables, documentación, diagramas
-UML, bocetos de la interfaz de usuario, prototipos, componentes, planes de prueba
-Ingeniería y gestión
-Colección de modelos
-Modelo de casos de uso, análisis, diseño, despliegue, implementación y prueba.
(d) Proceso:
-Conjunto de actividades para crear el producto
-Es una plantilla para crear proyectos
-Se define en términos de flujos de trabajo (conjunto de actividades)
-Se identifican trabajadores y artefactos
Adaptación o especialización del proceso
-Se utilizan diagramas de actividad de UML para describir los flujos de trabajo

Libro: El proceso unificado de Desarrollo de Software de Ivar Jacobson,Grandy


Booch,James Rumbaugh
(a) Persona: El factor humano siempre será el más importante en el
desarrollo de soluciones de software, son los principales autores de un
proyecto de software, cada trabajador tiene un conjunto de
responsabilidades y actividades, por ejemplo, arquitectos,
desarrolladores, ingenieros de pruebas, y personal de prueba.

(b)Proceso: Un proceso de software es una secuencia de actividades


que conducen a la elaboración de un producto de software. El
proceso se define en términos de flujos de trabajo (conjunto de
actividades), se identifican trabajadores y artefactos. El equipo de
desarrollo debe elegir el proceso adecuado y que le permita obtener
una solución o producto que satisfaga las necesidades o
requerimientos del cliente.

(c) Proyecto: Un proyecto es un esfuerzo temporal que se lleva a cabo


para crear un producto, servicio o resultado único. Es un elemento
organizativo de gestión que establece una secuencia de cambios,
por el cual va evolucionando diariamente.

(d) Producto: son los resultados de una actividad del proceso, se


denomina productos a todos aquellos artefactos que se creen
durante la vida del proyecto.
Por ejemplo, el Resultado de la actividad del diseño arquitectónico es
un modelo de la arquitectura de software.

Autor: Ian Sommerville


Ian Sommerville. (2011). INGENIERÍA DE SOFTWARE. México: Editorial
Mexicana. Reg. núm. 1031.

Anda mungkin juga menyukai