View
92
Download
3
Category
Preview:
Citation preview
T O R I B I O A L C A R A Z V A L E N Z U E L A
INGENIERIA EN SOFTWARE
INTRODUCCIÓN
• Tema principal es definiciones, orígenes, su
importancia. Definiciones de Software Engineering
Suit (SEI) y el World Wide Web Consortium (W3C)
que son organizaciones que se encargan de la
ingeniería de software como nos ayuda a la
creación de software de calidad que también se
incluyen los modelos de desarrollo y sus procesos
para el desarrollo del mismo.
DEFINICIÓN
• La ingeniería del software es el desarrollo,
operación y mantenimiento del software de forma
sistemática, disciplinada y cuantificable, y
el estudio de dichos métodos.
En otras palabras, es el estudio dedicado a
la creación de software de buena calidad, barato
y fácil de desarrollar y mantener. Es la aplicación
de la ingeniería al software.
HISTORIA
• El concepto de ingeniería del software surgió en
1968, tras una conferencia en Alemania que tuvo
como objetivo resolver los problemas de la crisis del
software.
• El término crisis del software se usó desde finales de
1960 hasta mediados de 1980 para describir los
frecuentes problemas que aparecían durante el
proceso de desarrollo de nuevo software.
IMPORTANCIA
• La importancia de la ingeniería en software es muy
importante ya que con ella se puede analizar,
diseñar, programar y aplicar un software de
manera correcta y organizada, cumpliendo con
todas las especificaciones del cliente y el usuario
final. Lo anterior es posible gracias a los objetivos
que esta propone.
UTILIDAD
• Facilitar el control en el proceso de desarrollo de
software
• Suministrar a los desarrolladores las bases para
construir software de alta calidad en una forma
eficiente.
• Definir una disciplina que garantice la producción y
el mantenimiento de los productos software
desarrollados en el plazo fijado y dentro del costo
estimado.
CLASIFICACIÓN DE APLICACIONES DE COMPUTO
Los sistemas de computo se pueden dividir de acuerdo a los siguientes puntos:
• De acuerdo a la forma de representación física de la Información
• De acuerdo al Tipo de Uso
• De acuerdo a la Potencia
• De acuerdo al paralelismo
• IBM vs. APPlE
• Clones vs. de marca.
SEI (SOFTWARE ENGINEERINGINSTITUTE)
• Es un centro de investigación y desarrollo fundado
por el Departamento de Defensa de los Estados
Unidos y operado por la Carnegie Mellon University,
en Pittsburgh, Pennsylvania. La SEI ayuda en el
avance de los principios y prácticas de la ingeniería
de software, y sirve como un recurso nacional en la
ingeniería de software, seguridad en computación,
y mejora en procesos.
W3C (WORLD WIDE WEB CONSORTIUM)
• Es la principal organización internacional de
estándares para la World Wide Web. Fue fundada
por Tim Berners-Lee en Octubre de 1994, en la
MIT/LCS (Massachusetts Institute Of Tecnology
Laboratory for Computer Science), y actualmente
es quien lo encabeza. Dicho consorcio está
conformado por organizaciones que mantienen un
staff de tiempo completo con el propósito de
trabajar juntos en el desarrollo de estándares para
la World Wide Web.
MODELOS Y FILOSOFÍAS DE DESARROLLO DE SOFTWARE.
Modelo en Cascada: Es el enfoque metodológico que ordena rigurosamente las etapas del proceso para el desarrollo de software, de tal forma que el inicio de cada etapa debe esperar a la finalización de la etapa anterior. Un ejemplo de dicha metodología es:
• Análisis de requisitos.
• Diseño del Sistema.
• Diseño del Programa.
• Codificación.
• Pruebas.
• Implantación.
• Mantenimiento.
De esta forma, cualquier error de diseño detectado en la etapa de prueba conduce necesariamente al rediseño y nueva programación del código afectado, aumentando los costos del desarrollo.
• Modelo de Prototipos: Se trata de un modelo de desarrollo de tipo evolutivo. La mecánica consiste en construir un prototipo en poco tiempo, utilizando los programas adecuados y tratando de no usar mucho dinero pues, a partir de que el prototipo sea aprobado, se podrá comenzar con el desarrollo del producto final.
• El modelo de prototipos consta de varias etapas.
• Comunicación
• Plan Rápido
• Modelado, Diseño Rápido
• Construcción del Prototipo
• Desarrollo, Entrega y Retroalimentación
• Modelo en Espiral: Es un modelo de desarrollo
evolutivo. Las actividades a realizar se encuentran
dentro de una espiral, donde cada bucle
representa un conjunto de actividades, las cuales
no cuentan con ninguna prioridad, sino que las
siguientes se definen en función del análisis de
riesgos.
• Para cada ciclo, habrá cuatro actividades a
realizar.
CICLO DE VIDA DEL DESARROLLO DE SOFTWARE
PROCESOS PARA EL DESARROLLO DE SOFTWARE
• Definición de objetivos: definir el resultado del
proyecto y su papel en la estrategia global.
• Análisis de los requisitos y su viabilidad: recopilar,
examinar y formular los requisitos del cliente y
examinar cualquier restricción que se pueda
aplicar.
• Diseño general: requisitos generales de la
arquitectura de la aplicación.
• Diseño en detalle: definición precisa de cada
subconjunto de la aplicación.
• Programación (programación e implementación):
es la implementación de un lenguaje de
programación para crear las funciones definidas
durante la etapa de diseño.
• Prueba de unidad: prueba individual de cada
subconjunto de la aplicación para garantizar que
se implementaron de acuerdo con las
especificaciones.
• Integración: para garantizar que los diferentes
módulos se integren con la aplicación. Éste es el
propósito de la prueba de integración que está
cuidadosamente documentada.
• Prueba beta (o validación), para garantizar que el
software cumple con las especificaciones
originales.
• Documentación: sirve para documentar
información necesaria para los usuarios del
software y para desarrollos futuros.
• Implementación
• Mantenimiento: para todos los procedimientos
correctivos (mantenimiento correctivo) y las
actualizaciones secundarias del software
(mantenimiento continuo).
ARQUITECTURA DE SOFTWARE.
• conjunto de patrones que proporcionan un marco
de referencia necesario para guiar la construcción
de un software, permitiendo a los programadores,
analistas y todo el conjunto de desarrolladores del
software compartir una misma línea de trabajo y
cubrir todos los objetivos y restricciones de la
aplicación. Es considerada el nivel más alto en el
diseño de la arquitectura de un sistema puesto que
establecen la estructura, funcionamiento e
interacción entre las partes del software.
CONCLUSIÓN
En este documento se aprecia el desarrollo de un
software y los estándares que se tienen que seguir
para poder obtener un software de calidad.
Hay diferentes tipos de desarrollos de software, los
cuales si no se llevan a cabo podría fallar en un 70%
el sistema diseñado.
BIBLIOGRAFIA
• http://www.slideshare.net/almoralgon/clasificacion
-de-los-sistemas-de-computo
• http://ingenieriadesoftware3.blogspot.mx/p/import
ancia-de-la-ingenieria-del.html
• http://www.monografias.com/trabajos5/inso/inso.s
html#intro
• http://www.alegsa.com.ar/Dic/ingenieria%20del%2
0software.php
Recommended