Вы находитесь на странице: 1из 61

Grado en Ingeniera Informtica

Fundamentos y Funcin de la Ingeniera del Software


Desarrollo de Sistemas de Informacin Corporativos

Departamento de Informtica

Contenido
Conceptos generales Ingeniera del Software Sistemas de Informacin Sistemas de informacin corporativos Elementos de un sistema de informacin

Ciclos de vida e un proyecto


Anlisis de viabilidad de un proyecto

Fundamentos y Funcin de la Ingeniera del SW

En un principio
Programar los primeros ordenadores era una labor de chinos. Al encenderlo el operador tena que actuar sobre una serie de conmutadores que representaban un cdigo de operacin o datos (cdigo octal en aquella poca) que activaban directamente el bus de datos de la unidad de control y pulsar un botn de strobe, en respuesta a lo cual la unidad de control ejecutaba la orden. Una a una eran introducidas las ordenes mquina y datos hasta se lograba cargar un pequeo loader que poda leer uno de aquellos perifricos primitivos. Programar directamente en cdigo mquina era muy tedioso y muy susceptible a los defectos.

Fundamentos y Funcin de la Ingeniera del SW

Memorias ROM y el Ensamblador


Las memorias ROM permitieron obviar la carga del loader En los sistemas embebidos, adems contenan todo el programa que el ordenador poda ejecutar. Dadas las limitaciones de capacidad de memoria, los programas no podan ser muy grandes. El ensamblador era un lenguaje muy comn en la programacin. Estas limitaciones hacan que la complejidad de los programas tampoco pudiera ser muy elevada. Podan caber en la cabeza de un nico programador.
4

Fundamentos y Funcin de la Ingeniera del SW

Lenguajes compilados
Ante la dificultad inherente a programar directamente en cdigo ensamblador surgieron los lenguajes compilados Cobol, Algol, PLM, PL1, Fortran Por un lado simplificaron mucho la labor del programador, pero por otro y gracias al aumento de la capacidad de direccionamiento, se comenz a pedir de ellos programas de mayor y mayor complejidad. Que ya no caban en la mente de una nica persona.

Fundamentos y Funcin de la Ingeniera del SW

Programacin modular
Los grandes sistemas de la poca de tamaos, que hoy resultan ridculos (64KBytes) exigen replantearse el paradigma de programacin. La primera aproximacin fue sacar provecho de las prestaciones de las llamadas a subrutina, que pese a no ser eficientes en trminos de tiempo de ejecucin, si lo eran en trminos de tiempo de desarrollo, ya que permiten al programador organizar la composicin del programa, haciendo algo cercano a crear nuevas instrucciones que se desarrollan con la ejecucin de una secuencia de instrucciones de menor nivel. Se agruparon las subrutinas afines en mdulos-> Programacin modular.

Fundamentos y Funcin de la Ingeniera del SW

Programacin estructurada
Se modulariza el sw

Se separan datos y programa


Se reutiliza SW y se generan libreras comunes y especficas

Se utilizan procesos estructurados de programacin

Fundamentos y Funcin de la Ingeniera del SW

Programacin Orientada a
Un nuevo avance para reducir la complejidad aparente de los programas vino de la mano de los nuevos paradigmas que hoy estn en boga.

Programacin orientada a objeto Programacin orientada al conocimiento. Programacin orientada a aspectos.

Fundamentos y Funcin de la Ingeniera del SW

Definiciones : Ingeniera del Software


La Ingeniera del software es el estudio de los principios y metodologas para el desarrollo y mantenimiento de sistemas software.

Fundamentos y Funcin de la Ingeniera del SW

Conclusiones del proceso.


Cmo conclusin bsica de todo este proceso:

No se pueden hacer las cosas de cualquier modo

10

Fundamentos y Funcin de la Ingeniera del SW

Sistema de Informacin
Un Sistema de Informacin es el conjunto de elementos orientados al tratamiento y administracin de datos e informacin (procesamiento de los datos), organizados y listos para su posterior uso, generados para cubrir una necesidad (objetivo).

Los elementos de un sistema de informacin se pueden clasificar en:


Equipo humano que desarrolla las actividades encaminadas al cumplimiento del objetivo Los datos encaminados a producir la informacin deseada Las actividades encaminadas a cumplir los objetivos Recursos materiales necesarios tanto fsicos como TIC.

11

Fundamentos y Funcin de la Ingeniera del SW

Definiciones Caractersticas de una Corporacin


Meta: Objetivo a largo plazo de la Corporacin

Objetivos: Es el fin o intento al que se dirige una accin concreta que constituye un elemento encaminado a la consecucin de la meta.
Estrategia: Conjunto de reglas que aseguran una decisin ptima en cada momento. Plan estratgico: Es la definicin de lo que la empresa en cada momento quiere ser en un plazo y en como conseguirlo. Articula la meta y los objetivos dotndole de una estrategia para lograrlo. Asegura la rentabilidad a largo plazo.
12

Fundamentos y Funcin de la Ingeniera del SW

Definiciones: proyecto
Un proyecto software se puede considerar como un proceso que consume recursos y est sujeto a influencias externas (requisitos que cambian continuamente, costes, plazos, y recursos) y/o internas (dificultades tcnicas de produccin, sobre estimacin de productividad, etc.). Dicho proceso tendr una serie de objetivos tangibles, que normalmente sern entregados en un plazo, con un coste (y posiblemente, un precio) y con unos niveles (o atributos) de calidad, asumiendo por parte de quien lo realiza una serie de riesgos.

13

Fundamentos y Funcin de la Ingeniera del SW

Consideraciones
xito de un proyecto consiste lograr en plazo y coste con la calidad objetiva una meta Dificultad en la visualizacin de un proyecto Necesidad de establecimiento de procesos, indicadores y mtricas

Ingeniera del SW

14

Fundamentos y Funcin de la Ingeniera del SW

Definiciones I
Paradigma= filosofa

Ejemplo: Estructurado, Orientado a Objetos


Ejemplo: Cascada, V, Espiral, etc. Ejemplo: ISO 12207, IEEE 1074

Ciclo de Vida:

Modelo de proceso:

Metodologa: conjunto de fases, sub-fases, ....., tareas, tcnicas.

Ejemplo: Mtrica 3, RUP

15

Fundamentos y Funcin de la Ingeniera del SW

Definiciones II
Ciclo de Vida vs Modelo de proceso Ciclo de vida marca el orden entre procesos Modelo de proceso NO marca ningn orden entre procesos Ciclo de vida orientado al producto Modelo de proceso orientado al proceso

16

Fundamentos y Funcin de la Ingeniera del SW

Proceso
Un proceso incluye: Metodologas tcnicas Anlisis de calidad Metodologas de gestin Metodologas burocrticas No planificacin Estndares Personalizadas Mejor proceso >>> Mayor velocidad
17

Fundamentos y Funcin de la Ingeniera del SW

Caractersticas y Atributos de un Proyecto


Objetivos:

Tangibles, medibles, alcanzables, consensuados, ajustados en el tiempo Obligatorios, importantes y secundarios


Ayudar y satisfacer al cliente Humanos, logsticos, materiales

Cliente:

Recursos:

Plazo previsto

18

Fundamentos y Funcin de la Ingeniera del SW

Caractersticas
Objetivos: Tangibles, medibles, alcanzables, consensuados, ajustados en el tiempo obligatorios, importantes y secundarios Cliente: Ayudar y satisfacer al cliente Recursos: Humanos, logsticos, materiales Plazo previsto
19

Fundamentos y Funcin de la Ingeniera del SW

Caractersticas
Tecnologas: Existentes, emergentes, evolutivas, Sinergia Relaciones Humanas Aspecto administrativo

20

Fundamentos y Funcin de la Ingeniera del SW

Rasgos Comunes en los Proyectos


Tienen cierta entidad y se dirigen a fines con gran repercusin Medios cambiantes, variados e importantes Actividades discontinuas y/o espordicas

Estn en evolucin continua


Son irreversibles en sus acciones Estn sometidos a fuertes influencias externas Incorporan un alto nivel de riesgo
21

Fundamentos y Funcin de la Ingeniera del SW

Tipos de proyecto Sw
Sw Comercial

Sw Militar
Sw Domstico Sw Interactivo Sw Cientfico Sw empotrado, firmware, sistemas en tiempo real

22

Fundamentos y Funcin de la Ingeniera del SW

Ejemplos de proyectos

Realizacin de un prototipo de un sistema de evaluacin y control de costes para una empresa. Conversin de un conjunto de aplicaciones existente para adecuar la base de datos y la funcionalidad a los requisitos de fechas despus del ao 2000. Realizacin del software de control de un electrodomstico para una fbrica. Realizacin del software de control de un electrodomstico para una lnea de producto de una marca determinada. Realizacin del software de control de una central de telecomunicaciones.
Fundamentos y Funcin de la Ingeniera del SW

23

Ejemplos de proyectos II
Realizacin del software de un telemando para una red elctrica. Mantenimiento del sistema de informacin para adecuarlo a nuevos requisitos. Realizacin de un videojuego para varias plataformas (PlayStation, PC, Nintendo). Transformacin de un sistema de informacin para adecuarlo al Euro etc.

24

Fundamentos y Funcin de la Ingeniera del SW

Modelo integral del desarrollo de un SI


Paradigma
Modelo de proceso Ejemplo: ISO 12207, IEEE1074

Estructurado

OO

Metodologas
Metrica 2.1 Merisse SSADM Metodologas Estructuradas Metodologas OO RUP Craig Larman

25

Fundamentos y Funcin de la Ingeniera del SW

Mtodos de gestin. Dimensiones


Personas

otivacin, equipo, organizacin

Procesos
Gestin Planificacin Estimacin Control

Producto Calidad Cliente TTTecnologa Asentada, evolutiva

26

Fundamentos y Funcin de la Ingeniera del SW

Modelos de Gestin

Metodos ineficaces Metodos orientados a la Planificacin Riesgos de planificacin Visibilidad Velocidad Metodos eficaces

Conjunto de mtodos usados en un proyecto

27

Fundamentos y Funcin de la Ingeniera del SW

Caractersticas de los Productos SW

INVISIBILIDAD COMPLEJIDAD FLEXIBILIDAD USO DE MTODOS Y TCNICAS INMADURAS

Gestin del proyecto Seleccin Ciclo de vida Gestin e calidad Contexto

28

Fundamentos y Funcin de la Ingeniera del SW

Bases de la Gestin
Estimacin de tamao y recursos

Planificacin
Seguimiento Control de cambios

Control de calidad
Evaluacin tcnica

tecnologas Productos

29

Fundamentos y Funcin de la Ingeniera del SW

Contexto de los Productos SW


PREVENTA

CONTRATO PUESTA EN MARCHA PRODUCCIN ACEPTACIN

POSTVENTA

30

Fundamentos y Funcin de la Ingeniera del SW

Proceso de Subcontratacin

OFERTA

Proceso de Configuracin y Cambios

Proceso de Gestin

Proceso de Riesgos

Proceso de Calidad

Contexto de Productos SW
Gestin Econmico-contractual: Incluye las actividades de gestin del proyecto software, que permiten la estimacin de los costes y plazos de ejecucin, identificacin y asignacin de los recursos necesarios, la planificacin, programacin y seguimiento de entregas, recursos y actividades.

31

Fundamentos y Funcin de la Ingeniera del SW

Contexto de Productos SW
Gestin de Subcontratacin:

En donde se agrupan todos los aspectos de dilogo con los subcontratistas, como pueden ser: Catalogacin y Homologacin, Peticin de Oferta a Subcontratistas, Seguimiento y Aceptacin de las Subcontrataciones.

32

Fundamentos y Funcin de la Ingeniera del SW

Contexto de Productos SW
Gestin de Configuracin y Cambios:

Incluyen las actividades encaminadas a la identificacin, recoleccin, anlisis y seguimiento de partidas (elementos entregables del producto o sistema) y los cambios que se produzcan durante el proyecto, normalmente derivados de adaptaciones, mejoras y correccin de defectos de los elementos entregados al Cliente o en ejecucin.

33

Fundamentos y Funcin de la Ingeniera del SW

Contexto de Productos SW
Gestin de Riesgo:

Este grupo de actividades recoge aquellas relacionadas con la Identificacin, Anlisis, Seguimiento y Reduccin de Riesgos de cualquier tipo (Sobrecoste, Sobreplazo Tecnolgico, etc.).

34

Fundamentos y Funcin de la Ingeniera del SW

Contexto de Productos SW
Gestin del Calidad:

Este grupo de actividades incluye la definicin de disposiciones especficas de produccin a establecer para desarrollar software (enfoque general de actividades, mtodos, tcnicas, herramientas y normas) y las disposiciones a seguir para alcanzar los objetivos de calidad del proyecto, as cmo el seguimiento del proceso de produccin utilizado y el control de la aplicacin correcta de la disposiciones de calidad.

35

Fundamentos y Funcin de la Ingeniera del SW

Ciclo de Vida de un Proyecto


Ciclo de vida abarca todos los estadios de un proyecto desde su concepcin hasta el final de la vida de un proyecto Estudio de viabilidad, requisitos de usuario, diseo, anlisis, implementacin, pruebas, instalacin, mantenimiento, formacin retirada Existen diferentes modelos de CV Depende del tipo de proyecto Depende del modelo e gestin Depende de la duracin el proyecto Responsable el jefe de proyecto
36

Fundamentos y Funcin de la Ingeniera del SW

Ciclo de Vida en Cascada

37

Ciclo de Vida en V

38

Fundamentos y Funcin de la Ingeniera del SW

Ciclo de Vida en Espiral


Coste Acumulado Determinar objetivos, restricciones y alternativas Acordar enfoque para la siguiente iteracin Diseo detallado Identificar y Resolver Riesgos Evaluar Alternativas

Factibilidad Anlisis Diseo


39

Planificar la siguiente iteracin

Entrega

Codificacin Pruebas Unitarias Pruebas de Integracin Desarrollar Pruebas de y Verificar Aceptacin

Fundamentos y Funcin de la Ingeniera del SW

Prototipado Evolutivo
Anlisis de requisitos Espec. Funcional Diseo
Construccin

Especificacin funcional Diseo


Construccin

Diseo tcnico
Construccin

Desarrollo componentes Pruebas Implantacin Aceptacin

Pruebas

Pruebas

Pruebas

PROTOTIPO

PROTOTIPO

PROTOTIPO

40

Fundamentos y Funcin de la Ingeniera del SW

Entrega por Etapas

41

Fundamentos y Funcin de la Ingeniera del SW

Entrega Evolutiva

42

Fundamentos y Funcin de la Ingeniera del SW

Evaluacin de Proyectos Software


Estudio de viabilidad de un proyecto

Definir el problema

Hay que evaluar requisitos de usuario Evaluar las tecnologas Distintas perspectivas:

Hay que contextualizar el proyecto

Estratgica (marcada por la organizacin) Tecnolgica Econmica (coste y proyeccin del flujo de caja)

Hay que evaluar las posibles soluciones

Para cada contexto

De las posibles soluciones hay que escoger la mejor para un problema.

43

Fundamentos y Funcin de la Ingeniera del SW

Evaluacin de Proyectos Software Tecnolgica:


Lenguaje de programacin Arquitectura software Arquitectura hardware

44

Fundamentos y Funcin de la Ingeniera del SW

Evaluacin de Proyectos Software


Desde la perspectiva econmica:

Beneficio Neto (econmico). Tasa Interna de Rendimiento (TIR) (econmico) Valor Actual Neto (econmico) Anlisis y valor (tecnolgico y econmico)

45

Fundamentos y Funcin de la Ingeniera del SW

Evaluacin de Proyectos Software


Desde la perspectiva econmica: mtodos de anlisis financiero

Anlisis coste-beneficio

Valor del dinero (capitalizacin y amortizacin) Mtodos de actuacin


Payback (plazo de recuperacin) Tasa Interna de Rendimiento (TIR) (Tasa de rentabilidad interna (TRI)) Valor Actual Neto (VAN)

Anlisis y valor: implica anlisis de ventajas valor y riesgo

46

Fundamentos y Funcin de la Ingeniera del SW

Evaluacin de Proyectos Software


Procedimiento de anlisis de Valor
Definir soluciones Anlisis funcional del producto Estimacin Eleccin de una solucin

Definir criterios de evaluacin Evaluacin de riesgos

Ejercicio: tratar de aplicarlo a la compra o alquiler de un automvil


47

Fundamentos y Funcin de la Ingeniera del SW

Evaluacin de Proyectos Software


Anlisis funcional del Producto
Identificacin de los requisitos (obligatorio).
Ej. Compra de un coche: factor de utilizacin del vehculo, potencia, etc.

Estudio del producto en su entorno y establecimiento de restricciones. (Recomendable). Estudio del ciclo del vida del producto (fases y duracin). (Recomendable).

Estudio del producto desde distintos puntos de vista. (Recomendable)


Ej. De puntos de vista: posible crecimiento futuro, del cliente, precio del

mantenimiento en el futuro.

48

Fundamentos y Funcin de la Ingeniera del SW

Evaluacin de Proyectos Software


Criterios de Evaluacin
Ejemplo de rbol de criterios
Global C0

C1
Servicios C21 C11 Implantacin C12 Formacin C13

C2

Software C21

Usabilidad Asistencia
C211 C212 Ergonoma

Ejemplo de rbol de criterios


49

Fiabilidad

Fundamentos y Funcin de la Ingeniera del SW

Evaluacin de Proyectos Software


Definicin de Soluciones
Requisitos Criterios R1 C11 C12 ... C21 C22 ... C31 C32 ... ... Cn1 Cn2 ... Nivel Alcanzado Flexibilidad Lmite Criticidad Cualificacin Aceptacin

R2

R3

... Rn

Matriz de Evaluacin
50

Fundamentos y Funcin de la Ingeniera del SW

Evaluacin de Proyectos Software


Estimacin de Costes y Plazos
Componente Coste Componente Plazo de disponibilidad Fun. 1 Fun. 2 ... Comp. 1 X X Comp.2 .... Comp. M X TOTALES Fun. N X

Matriz de Costes
51

Fundamentos y Funcin de la Ingeniera del SW

Evaluacin de Proyectos Software


Estimacin de Costes y Plazos
Param 1 4000 3000

2000
1000

Param 4

Param 2

Solucin 1 Solucin 2

Param 3

Diagrama de Coste
52

Fundamentos y Funcin de la Ingeniera del SW

Evaluacin de Proyectos Software


Eleccin de una Solucin
Comparacin de Soluciones
12 10 8 6 4 2 0 0 2000 4000 6000 8000

La solucin a elegir es aquella que tenga mayor ratio, que es la divisin del valor del parmetro por el coste. La mejor a solucin ser la que este situada ms arriba a la izquierda, mientras que las peores se situarn ms abajo a la derecha.

53

Fundamentos y Funcin de la Ingeniera del SW

Evaluacin de Riesgos
Gestin de Riesgo:

Este grupo de actividades recoge aquellas relacionadas con la identificacin, anlisis, seguimiento y reduccin de cualquier tipo riesgo de cualquier tipo (sobrecoste, sobreplazo tecnolgico, etc.).

54

Fundamentos y Funcin de la Ingeniera del SW

Proceso de Gestin de Riesgos


Identificacin de riesgos Consiste en documentar cada riesgo potencial. Elaborar una lista de riesgos indicando: Clase: Marketing, comercial, de especificacin de requisitos, de aceptacin, etc. Tipo: Alto, medio, bajo. Descripcin: Describir el riesgo de forma textual. Impacto potencial: Qu puede pasar?, Cules son las consecuencias en que se materializa el riesgo?
55

Fundamentos y Funcin de la Ingeniera del SW

Proceso de Gestin de Riesgos


Identificacin de riesgos : Gravedad del Impacto (Cualitativa): Lista de consecuencias. Gravedad del Impacto (Cuantitativa): Cifras relacionadas con las consecuencias. Probabilidad de que suceda (Cuantificada si es posible). Periodos previstos de aparicin.

56

Fundamentos y Funcin de la Ingeniera del SW

Proceso de Gestin de Riesgos


Factores de Riesgo Software Definicin de presupuestos reales. Implantar funciones errneas. Implantar interfaces de usuarios errneas. Defectos inherentes. Continuos cambios de requisitos.

57

Fundamentos y Funcin de la Ingeniera del SW

Proceso de Gestin de Riesgos


Factores de Riesgo Software Bajo rendimiento. Mantenimiento catico (documentacin). Retrasos en suministros(proyectos y proveedores). Falta experiencia del personal(sobre todo con las nuevas tecnologas). Falta de visibilidad y dificultad de seguimiento. Falta de metodologa.
Fundamentos y Funcin de la Ingeniera del SW

58

Proceso de Gestin de Riesgos


Anlisis de riesgos

El Anlisis de Riesgos consiste en decidir la seriedad de cada riesgo y especificar estrategias de contencin para cada una de ellos, a ser posible con fechas concretas en las que se demuestre el logro de reduccin (Plan de Seguimiento y Contencin materializado en un conjunto de acciones). A nivel de proyecto completo consiste en evaluar el riesgo del mismo (Contrato y Puesta en marcha).
59

Fundamentos y Funcin de la Ingeniera del SW

Proceso de Gestin de Riesgos


Anlisis de riesgos

Estrategias de contencin:
Riesgo Bajo: no hacer nada.

Riesgo Medio: vigilarlos e iniciar acciones para

reducir la probabilidad de que aparezca. Riesgo Alto: alertar la Direccin, vigilando la situacin con todo detalle e iniciar acciones para reducir la probabilidad de aparicin y desarrollar planes de contencin.

60

Fundamentos y Funcin de la Ingeniera del SW

Proceso de Gestin de Riesgos


Seguimiento de riesgos

Consiste en:
Asignar acciones a quienes tengan suficiente autoridad. Revisin peridica (segn programacin) de la Lista de Riesgos. Reanalizar los riesgos. Refinar y aplicar las estrategias de contencin, si procede. Revalorar el riesgo del proyecto completo

61

Fundamentos y Funcin de la Ingeniera del SW

Вам также может понравиться