• No se han encontrado resultados

Ingeniería del Software

N/A
N/A
Protected

Academic year: 2021

Share "Ingeniería del Software"

Copied!
24
0
0

Texto completo

(1)

www.inf.upv.es www.upv.es

(2)

 

La Ingeniería del Software se ocupa de todos los procesos

y herramientas orientadas a la construcción y el

mantenimiento del software,

entendido éste como un

producto industrial.

 

Objetivo: Formar Ingenieros Software, integrando:

–  Prácticas ingenieriles:

•  control de calidad, diseño de procesos

•  uso de herramientas

•  reutilización de componentes

–  Destrezas computacionales:

•  modelado/abstracción

•  automatización

(3)

3

Nuestra sociedad depende de la Calidad del Software

Visión

  Software “everywhere”   Software vez más complejo

y sometido a severas restricciones de diseño   Software como elemento

estratégico para las empresas

  Presión para desarrollar software en plazos más cortos y sin renunciar a altos niveles de calidad.

  Fuerte demanda de

profesionales capaces de desarrollar soluciones y

(4)

Objetivos

Formación integral como

Ingeniero Software

, con conocimientos y

habilidades para abordar

todas las etapas de la vida de un

proyecto

:

–  La gestión del proceso de desarrollo de Software.

–  El análisis de las necesidades del cliente.

–  La especificación de requisitos.

–  El diseño.

–  La selección de tecnologías y herramientas de desarrollo.

–  La verificación de la alineación del código con los modelos de alto nivel del sistema.

–  La integración, depuración, prueba, verificación, certificación, evolución, mantenimiento y gestión del proceso software.

(5)

1.  Capacidad para desarrollar, mantener y evaluar servicios y sistemas software que se comporten de forma fiable y eficiente, sean asequibles de desarrollar y mantener y cumplan

normas de calidad

.

2.  Capacidad para valorar las necesidades del cliente y especificar los requisitos software, reconciliando objetivos en conflicto dentro de las limitaciones derivadas del

coste

, del tiempo, de la existencia de sistemas ya desarrollados y de las propias organizaciones.

Competencias

(6)

3.  Capacidad de dar solución a problemas de

integración

en función de las estrategias,

estándares

y tecnologías disponibles.

4.  Capacidad de identificar y analizar problemas, y diseñar, desarrollar, implementar, verificar y

documentar

soluciones software.

5.  Capacidad de identificar, evaluar y gestionar los

riesgos potenciales

que pudieran presentarse.

6.  Capacidad para diseñar soluciones apropiadas en diversos

dominios

de aplicación utilizando métodos que integren aspectos éticos, sociales, legales y económicos.

(7)
(8)

Metodologías Test-driven

Static analysis


Runtime analysis

Estándares

Generación de casos de prueba

Pruebas y automatización

Pruebas unitarias y de integración, de aceptación, rendimiento y carga, pruebas funcionales, de regresión y de usabilidad

Asignaturas de la Intensificación

(9)

Negociación

Ingeniería de Requisitos

Detección de errores en la

especificación de requisitos

Elicitar, modelar, analizar, validar

y documentar los requisitos

Asignaturas de la Intensificación

Análisis y especificación de requisitos

 

(10)

Gestión, control y garantía de la calidad

Calidad del producto y del proceso Software

Asignaturas de la Intensificación

Calidad de software

 

Modelos, métricas y estándares

Planes de garantía


(11)

Plataformas industriales: Eclipse EMF, OMF

Consorcio OMG, Microsoft DSL:

artefactos software/factorías

Asignaturas de la Intensificación

Desarrollo de software dirigido por modelos

 

Compilación/Transformación de modelos

Metamodelos, Ontologías

(12)

Asignaturas de la Intensificación

Diseño de software

 

Reutilización y calidad del código

Refactorización, ingeniería inversa

Diseño OO basado en componentes

Interfaces

.Net

Patrones de diseño

(13)

Tecnologías de comunicación (RMI, msg, Servicios Web)

Middleware y arquitecturas software

Asignaturas de la Intensificación

Integración e interoperabilidad

Patrones de diseño

para la integración

Arquitecturas SOA

(14)

Tipos, costes, y problemas

Asignaturas de la Intensificación

Mantenimiento y evolución de software

Herramientas y técnicas para planificar y

gestionar y ejecutar eficazmente el proceso

(15)

Métodos formales ligeros

Asignaturas de la Intensificación

Métodos formales industriales

Model checking y asistentes de prueba

Estándares de certificación (Common Criteria )

(16)

Modelos de Proceso Software

organización, gestión, medición y mejora

Asignaturas de la Intensificación

Proceso de software

eXtreme programming, SCRUM

Rational Unified Process (RUP), Metrica 3

Casos prácticos,

Gestión de riesgos

(17)

Planificación, roles:


gestor, analista, probador, consultor, auditor

Metodologías ágiles

Asignaturas de la Intensificación

Proyecto de ingeniería de software

Recrea un proyecto de desarrollo de software

(18)

Salidas Profesionales

–  Ingeniero de sistemas/aplicaciones

–  Gestor de proyectos de Software

–  Auditor de procesos de desarrollo

–  Consultor sobre calidad

–  Asesor en seguridad

–  Arquitecto software

–  Ingeniero en infraestructuras de datos

–  Desarrollador de Software/de Herramientas Software

–  Desarrollador Web

–  Experto en Usabilidad

–  Perito informático

(19)

Mercado Laboral para II en IS

 http://money.cnn.com/magazines/moneymag/best-jobs/!

 http://www.softwareengineerjobs.org/!

 http://www.facebook.com/careers/department.php?dept=engineering!

 http://www.bls.gov/oco/ocos303.htm!

 http://www.infoempleo.com (canal informática)!

 http://www.trabajar.com ("informático")!

 http://www.tecnoempleo.com!

 http://www.madrimasd.org/empleo/!

 http://buscartrabajo.monster.es ("analista programador")!

 http://www.coiicv.org/servicios/ofertas-de-empleo.html!

 http://www.upv.es/entidades/SIE/!

(20)

  Software Engineer, Infrastructure Engineering   Software Engineer, Mobile/Network

  Software Engineer, Platform/Integrity   Software Engineer, Benchmarking

  Software Engineer, Compiler & Virtual Machine   Software Engineer, Data Center Tools

  Software Engineer, Data Infrastructure Engineering   Software Engineer, Desktop Software

  Software Engineer, Developer Platform   Software Engineer, Developer Tools

  Software Engineer, HTML5 Application Developer   Software Engineer, IT Tools

  Software Engineer, Products

  Software Engineer, Test Frameworks   Software Engineer, Tools Engineering

(21)

Mercado Laboral para II en IS  

(22)
(23)

Incremento    

de  la    

Demanda  

32%  

(2010  a  2018)  

23  

(24)

Referencias

Documento similar

Se ha proporcionado un Marco de Trabajo Motivacional (MTM) para la evaluación y mejora de la motivación de estudiantes en ingeniería, especialmente ingeniería del software.

If certification of devices under the MDR has not been finalised before expiry of the Directive’s certificate, and where the device does not present an unacceptable risk to health

In addition to the requirements set out in Chapter VII MDR, also other MDR requirements should apply to ‘legacy devices’, provided that those requirements

The notified body that issued the AIMDD or MDD certificate may confirm in writing (after having reviewed manufacturer’s description of the (proposed) change) that the

García-Holgado, "Introducción a la Ingeniería del Software," Recursos docentes de la asignatura Ingeniería de Software I. Grado en

Conjunto de técnicas que se enfrentan al software como un producto de ingeniería que requiere: planificación, análisis, diseño, implementación, pruebas y mantenimiento..

n La aplicación disciplinada de principios, métodos y herramientas de ingeniería, ciencia y matemáticas para la producción económica de software de calidad [Humphrey, 1989].

1.2.2 Consecuencias de la Complejidad Ilimitada.  Mayor Riesgo.- Entre más complejo es el sistema, es más riesgoso aplicar cambios ya que se puede afectar