Etapas de la Ingeniería en Software 1 Objetivos Diseñar aplicaciones informáticas que se ajusten a las necesidades
Views 98 Downloads 0 File size 793KB
Etapas de la Ingeniería en Software
1
Objetivos Diseñar aplicaciones informáticas que se ajusten a las necesidades de las organizaciones.
Dirigir y coordinar el desarrollo de aplicaciones complejas.
Intervenir en todas las fases del ciclo de vida de un producto.
Dirigir equipos de trabajo de desarrollo software.
Índice ............................................................................................................................................................. 1 Etapas de la Ingeniería en Software .................................................................................................... 1 Objetivos ............................................................................................................................................. 2 Etapas de la ingeniería en software ..................................................................................................... 3 Introducción .................................................................................................................................... 3 Procesos de ingeniería de software ................................................................................................. 3 Procesos de ingeniería de requerimientos ....................................................................................... 4 Tipos de Requerimientos ............................................................................................................. 5 Procesos de análisis ......................................................................................................................... 5 Procesos del diseño ......................................................................................................................... 6 Procesos de prueba .......................................................................................................................... 6 Mapa Mental: Etapas de la Ingeniería en Software ......................................................................... 8 Reactivos: Etapas de la ingenieria de software ............................................................................. 10 Ejercicio Práctico .......................................................................................................................... 12 Ejercicio Planteado: ...................................................................................................................... 12 Bibliografía ....................................................................................................................................... 13
2
esperado y sobre todo un software de
Etapas de la ingeniería en software
calidad. Las etapas de la ingeniería de software
Introducción La ingeniería en software se
son 5:
enfoca principalmente en el desarrollo de
Proceso ingeniería de software
productos tecnológicos (Software) y estos
Poseso de requerimientos
deben tener una confiabilidad muy alta
Proceso de análisis
donde para lograrlo se basan en
Proceso de diseño
estándares de ingeniería aplicando
Proceso de pruebas
herramientas y técnicas que permitan tener un producto de calidad. (Bauer,
Procesos de ingeniería de software Un proceso de software es una
1972) Indica que la Ingeniería del
serie de pasos o actividades que están
Software “es el establecimiento y uso de
relacionadas con el objetivo de
sólidos principios de ingeniería y buenas
implementar un sistema o software.
prácticas de gestión, así como la
El proceso de la ingeniería en software
evolución de herramientas y métodos
está basado en modelos, métodos y
aplicables y su uso cuando sea apropiado
herramientas que sirven como una guía
para obtener, dentro de las limitaciones de
para que durante el proceso de desarrollo
recursos existentes, software que sea de
con el objetivo de mejorar la calidad de
alta calidad en un sentido explícitamente
los procesos y a su vez la del proyecto a
definido”. Es decir para una mejor
realizarse. El proceso de ingeniería en
práctica se debe hacer uso de las técnicas,
software está comprendido por dos
herramientas, conocimientos y
enfoques, como primer enfoque tenemos:
habilidades para obtener el resultado 3
el ciclo de vida del software, procesos
3. Validación del software: Hay que
que se realizan durante la adquisición,
validar el software para asegurarse de que
desarrollo, mantenimiento y cierre.
cumple lo que el cliente quiere.
Como segundo enfoque tenemos
4. Evolución del software: El software
definición, implementación, evaluación
tiene que evolucionar para satisfacer las
cambios y las mejoras. Entonces también
necesidades cambiantes del cliente.
podemos decir que el proceso de la ingeniería en software es un conjunto de
Procesos de ingeniería de requerimientos Antes de adentrarnos en el tema
etapas parciales y ordenadas donde su primero veamos un concepto de intención es cumplir un objetivo final. En requerimientos, (SOMMERVILLE, este caso será la obtención de un software 2002)nos dice que “Un requerimiento es o sistema de calidad. simplemente una declaración abstracta de Existen diferentes procesos de software, alto nivel de un servicio que debe pero todos deben incluir cuatro proporcionar el sistema o una restricción actividades: de éste”. 1. Especificación del software: Tienen. que definirse tanto la funcionalidad del
Los requerimientos se definen con un
software como las restricciones de su
proceso de recolección de datos para
operación.
analizar y tener una idea clara de las
2. Diseño e implementación del
necedades del cliente. El objetivo de
software: Debe desarrollarse el software
realizar una recopilación es obtener datos
para cumplir con las especificaciones.
relevantes para un análisis correcto y completo. Durante este proceso usualmente el cliente o usuario tiene una
4
visión incompleta o confundida de lo que
en la cual se enfoca en descubrir
necesita y es necesario ayudarle para
problemas con los requerimientos del
obtener la visión completa de los
sistema identificados hasta el momento.
requerimientos. El contenido de
Normalmente se hace un análisis luego de
comunicación en esta etapa es muy
haber producido un bosquejo inicial del
intenso ya que el objetivo es eliminar la
documento de requerimientos en esta
ambigüedad en la medida de lo posible.
etapa se leen los requerimientos, se
Tipos de Requerimientos Pueden dividirse en 2 categorías: funcionales y no funcionales. Los requerimientos funcionales: hacen referencia a las funciones que le sistema será capaz de realizar, describen las transformaciones que el sistema realiza sobre las entradas para producir salidas. Requerimientos no funcionales: Es la acción de como el sistema es limitado como por ejemplo, el rendimiento, fiabilidad, mantenimiento, seguridad etc.
resaltan los problemas, se buscan alternativas y soluciones. El proceso o modelado de análisis es una primera representación técnica del sistema actual, utiliza y combina diferentes tipos de formatos de texto y sobre todo diagramas para representar los requisitos del software, las funciones y el comportamiento. El objetivo de usarlas es facilitar la comprensión de la representación que se esté haciendo, ya que es posible examinar los requisitos desde diferentes puntos de vista aumentando la probabilidad de encontrar
Procesos de análisis Con la información obtenida previamente, se da comienzo a esta fase
5
errores o debilidades.
Procesos del diseño El diseño es el primer paso en
software que se vaya a desarrollar. El proceso de diseño produce los detalles
la fase de desarrollo de cualquier
que establecen la forma en la que el
producto o sistema de ingeniería. De
sistema cumplirá con los requerimientos
acuerdo con Pressman, el objetivo del
identificados en la fase de análisis. Los
diseño es producir un modelo o
especialistas en sistemas se refieren con
representación de una entidad que se va a
frecuencia a esta etapa como diseño
construir posteriormente.
lógico en contraste con la del desarrollo
También podemos decir que en la etapa
del software, a la que denominan diseño
del diseño se plasman los requerimientos
físico.
funcionales y no funcionales en una representación de software. El diseño es
Procesos de prueba
El proceso d prueba se puede
el primer paso en la fase de desarrollo de
definir como una actividad en la cual
cualquier producto o sistema de
un sistema o uno de sus componentes
ingeniería. De acuerdo con Pressman
se ejecuta en circunstancias
además cumple con un objetivo el cual es
especificadas (ambiente de prueba), brindar un modelo de una entidad que se vaya a construir. Por lo General en la fase de diseño se
y registrando los resultados obtenidos. Luego se realiza un
produce varios diseños como el diseño de
proceso de Evaluación en el que los
datos, arquitectónico, interfaz, y un
resultados obtenidos se comparan
diseño procedimental además de ser en
con los resultados esperados para
donde se definen las relaciones entre los
poder localizar errores que se hayan
principales elementos estructurales del 6
encontrado en el software. Luego del
de que elementos del software que
fallo pasamos a un proceso de
interactúan entre sí, funcionan de manera
Depuración en el que es necesario
correcta.
identificar la falta y corregirla, lo que
Pruebas de Sistema: este tipo de pruebas
dará lugar a una nueva prueba. Como
deben ser ejecutadas idealmente por un
resultado final se puede obtener un sistema más fiable.
equipo de pruebas ajeno al equipo de desarrollo. La obligación de este equipo, consiste en la ejecución de
A continuación una breve descripción de
actividades de prueba en donde se debe
cada nivel de prueba:
verificar que la funcionalidad total de un sistema.
Pruebas Unitarias o de Componente: este tipo de pruebas son ejecutadas
Pruebas de Aceptación:
normalmente por el equipo de desarrollo,
Independientemente que el responsable
consisten en la ejecución de actividades
haya emitido un certificado de calidad
que le permitan verificar al desarrollador
sobre el sistema, es indispensable, que el
que los componentes unitarios están
cliente designe a personal que haga parte
codificados bajo condiciones de robustez,
de los procesos de negocio para la
esto es, soportando el ingreso de datos
ejecución de pruebas de aceptación, es
erróneos o inesperados.
incluso recomendable, que los usuarios finales que participen en este proceso.
Pruebas de Integración: este tipo de pruebas son ejecutas por el equipo de desarrollo y consisten en la comprobación
7
Mapa Mental: Etapas de la Ingeniería en Software
8
9
Reactivos: Etapas de la ingenieria de software 1.- Uno no pertenece a las etapas de la Ingenieria en software
5.- Según _______________ “Un
requerimiento es simplemente una declaración abstracta de alto nivel de un
a) Proceso ingeniería de software
servicio que debe proporcionar el sistema
b) Poseso de requerimientos
o una restricción de éste”.
c) Proceso de análisis d) Proceso de ejecución
a) Sommerville b) Landa
2.- Un proceso de software es una serie de
c) Keynes
pasos con el objetivo de implementar un
d) Marshall
sistema o software. 6.- Tipos de requerimientos a) Proceso ingeniería de software b) Poseso de requerimientos c) Proceso de análisis d) Proceso de ejecución 3.- no pertenece a los procesos de software
a) Funcional, No funcional, Parametrizados b) Funcional, No funcional c) Formal, No funcional d) Funcional, No Formal
a) Especificación del software b) Diseño e implementación del
7.- ______________ Describen las
software c) Validación del software
transformaciones que el sistema realiza
d) Recolección de datos
sobre las entradas para producir salidas.
4.- Debe desarrollarse el software para
cumplir con las especificaciones. a) Especificación del software b) Diseño e implementación del
10
a) Funcional b) No funcional
software c) Validación del software
c) Formal
d) Recolección de datos
d) No Formal
8.- __________ Es el primer paso en la fase de desarrollo de cualquier producto o sistema de ingeniería. a) Proceso ingeniería de software b) Poseso de requerimientos c) Proceso de análisis d) Proceso de diseño 9.- Pertenece a los Tipos de pruebas a) Pruebas Unitarias o de
Componente b) Pruebas de ejecución c) Pruebas de Confidencialidad d) Pruebas de Base de datos 10.- Este tipo de pruebas deben ser ejecutadas idealmente por un equipo de pruebas ajeno al equipo de desarrollo a) Pruebas Unitarias o de
Componente b) Pruebas de Sistema c) Pruebas de diseño d) Pruebas de aceptación
11
Ejercicio Práctico Representa mediante un diagrama de clases la siguiente especificación. Una aplicación necesita almacenar información sobre empresas, sus empleados y sus clientes.Ambos (empleados y sus clientes) se caracterizan por su nombre y edad. Los empleados tienen un sueldo bruto, los empleados que son directivos tienen una categoría, así como un conjunto de empleados subordinados. De los clientes, además se necesita conocer su teléfono de contacto. La aplicación necesita mostrar los datos de empleados y clientes.
Ejercicio Planteado: Especificar un diagrama de clases que describa redes de ordenadores. Los elementos que se pueden incluir en la red son:•Servidor, PC, Impresora.•Hub, Cable de red.Los PCs pueden conectarse con un único Hub, los servidores con uno o varios. Los Servidores y PCs pueden generar mensajes, con una cierta longitud. Los Hubs tienen un número de puertos, algunos de los cuales puede usarse para conectar con otros Hubs. Tienen cierta probabilidad de “perder” mensajes. Las impresoras pueden averiarse, con cierta probabilidad, durante cierto tiempo.
12
Bibliografía Rogger, P. (1997.). Ingeniería del Software: Un enfoque práctico. McGraw Hill . Arias Chaves, M. (2005). La ingeniería de requerimientos y su importancia en el desarrollo de proyectos de software. redalyc, 2-3. Bauer, F. (1972). Software engineering. En Information Processing (pág. 530). Amsterdam: North- Holland Publishing. Diaz Lopez, J. (23 de Frebrero de 2009). INGENIERÍA EN SOFTWARE. Obtenido de Etapas del desarrollo del software: https://sites.google.com/site/ingenieri aleosw/unidad-1-fundamentos-deingenieria-de-software/1-3-etapasdel-desarrollo-del-software SOMMERVILLE, I. (2002). INGENIERIA DE SOFTWARE. 3a. ed. MEXICO: PEARSON EDUCACION.
13