Está en la página 1de 3

Ingeniería de Software

Ingeniería es la ciencia de la producción.


Definición de ingeniería de software
 Aplicación de un enfoque sistemático, disciplinado y cuantificable al desarrollo, operación y
mantenimiento de software; es decir, la aplicación de la ingeniería al software.
Aspectos específicos de una disciplina profesional:
 Conocimiento y competencia validado por la comunidad profesional (SWEBOK)
 Conocimiento y competencia validado por criterios racionales y científicos
 El juicio y consejos profesionales de valores (Código de Etica)
¿Qué es el software?
Conjunto de instrucciones que cuando se ejecutan proporcionan las características, función y
desempeño buscados.
No sólo son los programas, sino los documentos asociados y la configuración de datos necesarios
para que los programas operen de manera adecuada.
Características:
• El software se desarrolla o se modifica con intelecto.
• El software no se “desgasta”, pero sí se deteriora o se vuelve “obsoleto”.
• La mayor parte del software se desarrolla para un uso personalizado.
Realidades:
 Entender el problema.
 El diseño de software es una actividad crucial.
 El software debe ser de alta calidad.
 El software debe tener la facilidad de recibir mantenimiento.
Aplicaciones
 Software de sistemas
 Software de tiempo real
 Software de ingeniería y científico
 Software empotrado
 Software de computadoras personales
 Software de Inteligencia Artificial
Calificaciones de la Ingeniería del Software
• Enfoque sistémico, es decir sigue métodos en su procedimiento o planes
• Actividad cuantificable, sus resultados se pueden medir.
• Actividad disciplinada sujeta al control de estándares, norma o patrón
Desafíos de la Ingeniería de Software
• Crisis del Software
• Resultados no deseados
• Adaptar y adoptar las nuevas tecnologías
• Satisfacer la demanda de los usuarios
• Vincular la investigación y la industria (teoría y práctica).
Modelo
Un modelo es una representación de un objeto, sistema o idea, de forma diferente al de la entidad
misma.
Ciclo de Vida
El ciclo de vida de un producto o proyecto de software es la evolución del mismo desde el momento
de su concepción hasta el momento en que deja de usarse, y puede describirse en función de las
actividades que se realizan dentro de él.
Proceso de software
Un proceso de desarrollo de software es un conjunto de personas, estructuras de organización,
reglas, políticas, actividades y sus procedimientos, componentes de software, metodologías, y
herramientas utilizadas o creadas específicamente para definir, desarrollar, ofrecer un servicio,
innovar y extender un producto de software.
Las actividades de la Ing. de Software están definidas por el proceso, las tareas y las disciplinas que
apoyan cada paso para obtener un producto software de calidad.
De manera general:
 Obtención de requisitos: Consiste en capturar el propósito y funcionalidades del
sistema desde la perspectiva del usuario.
 Análisis de los requisitos: Estudiar las necesidades del usuario para obtener una
definición detallada de los requisitos.
 Diseño de la aplicación
 Desarrollo de la aplicación: Es la construcción del software mediante lenguajes de
programación.
 Implementación:
• Prueba de software es el proceso orientado a comprobar la calidad del software
mediante la identificación de fallos.
• La implementación es crear el ambiente apropiado para que el sistema sea
utilizado por los usuarios
Características de los requisitos
 Verificable
 Cuantificable
Tipos de requisitos
 Funcional:
 Especifica una función que el sistema.
 Definen el comportamiento del sistema.
 Es tarea esencial en el desarrollo de software
 No funcional:
 Especifican aspectos técnicos.
 La restricción se refiere a limitación.
 Calidades se refieren a rendimiento, fiabilidad o disponibilidad.
Los requisitos funcionales son particulares, mientras que los no funcionales se pueden establecer
por categorías
En el modelo de proceso llamado Proceso Unificado la arquitectura se describe por medio de
cuatro vistas complementarias más una vista adicional 4+1 Vistas

Validación de requisitos
Revisión de los requisitos
Búsqueda de inconsistencias, puntos poco claros, conflictos poco claros.
Prototipo
Permite mostrar el funcionamiento del sistema o parte de él.
Validación del modelo
Verificar si el modelo es consistente
Pruebas de aceptación
Plan para detectar problemas en los diferentes requisitos.
Diseño de la aplicación
• Revisión de los requisitos
– Búsqueda de inconsistencias, puntos poco claros, conflictos pocos claros
• Prototipo
– Permite mostrar el funcionamiento del sistema o parte de él.
• Validación del modelo
– Verificar si el modelo es consistente
• Pruebas de aceptación
– Plan para detectar problemas en los diferentes requisitos
Modelo Descripción
Cascada - Definir antes de diseñar, diseñar antes de codificar
- Metodología rígida e inflexible
Cascada en V - Más caro, poco flexible, ejecución secuencial no lineal, alto nivel de éxito.
- Entregar en módulos funcionales a clientes
Prototipado - El objetivo es entender los requisitos del usuario y cliente.
- Entregar módulos funcionales a clientes
Espiral - Se desarrolla en versiones incrementales
- Énfasis en hacer prototipos con los aspectos controlados y sistémicos del modelo de
cascado.
- Introduce por primera vez “Riesgo”
Incremental - EL usuario se involucra más
iterativo - Difícil de aplicar a los sistemas transaccionales que se tienden a ser integrado y a
Evolutivo operar como
- Permite refinar los requisitos en sus iteraciones.
- Modelo se suele utilizar en proyectos en los que los requisitos no están claros por parte
del usuario.
Reutilización - Se buscan los componentes disponibles y se compran. Las disponibles se diseñan y
desarrollar.
- Se debe de confiar en que los componentes que se reutilizan son confiables y
compatibles.
O. Funciones - Requiere un diagrama del flujo de datos, un discomomio de datos, gráficos de estructuras y
pseudocodigo.
O. objetos - Incluye mecanismo para optimizar el acceso, el control de la concurrencia y seguridad.
- El diseño se realiza pensando en elementos generales y no en detalles los cuales se ocultan.
Proceso Unificado - Centrado en la arquitectura
- Utiliza lo mejor de cada de metodología, comportándose como na recopilación de los
mismo.

También podría gustarte