Sunteți pe pagina 1din 54

Taller de Anlisis de Sistema.

Primera parte

Docente.: Manuel Reyes O.


Copyright 2012, Estudio. Todos los derechos reservados.

Introduccin a la Ingeniera de Software


Indice Software. Ingeniera del Software. Producto y Proceso. Principios de la Ingeniera del Software

Copyright 2012, Estudio. Todos los derechos reservados.

Software.
Definicin. Caractersticas. Evolucin hacia ingeniera. Progreso de las tcnicas. Crisis del Software.

Ingeniera del Software. Producto y Proceso. Principios de la Ingeniera del Software.

Copyright 2012, Estudio. Todos los derechos reservados.

Software: Definicin de Software

Copyright 2012, Estudio. Todos los derechos reservados.

Software: Caractersticas (I)


Es un elemento lgico y no fsico. Es desarrollado, no fabricado. Se deteriora. No hay piezas de repuesto. Se construye a medida

Copyright 2012, Estudio. Todos los derechos reservados.

Software: Caractersticas(II)

Copyright 2012, Estudio. Todos los derechos reservados.

Software: Caractersticas(III)
El software es algo vivo

Copyright 2012, Estudio. Todos los derechos reservados.

Software: Caractersticas(IV)
Un sistema software debe ser... Fcil de mantener. Construido y documentado para permitir cambios. Fiable. Debe hacer lo que se espera de l, no debe fallar ms a menudo de lo que se acord en la especificacin. Eficiente. No debe hacer uso innecesario de recursos.

Fcil de usar. Interfaz de usuario adecuada.

Copyright 2012, Estudio. Todos los derechos reservados.

Software: Caractersticas (V)


Algunos de estos atributos son exclusivos

Copyright 2012, Estudio. Todos los derechos reservados.

Software: Evolucin hacia ingeniera (i)

Copyright 2012, Estudio. Todos los derechos reservados.

Software: Evolucin hacia ingeniera (ii)

Copyright 2012, Estudio. Todos los derechos reservados.

Software: Evolucin hacia ingeniera (iii)

Copyright 2012, Estudio. Todos los derechos reservados.

Software: Progreso de tcnicas en su


construccin (I) Programacin de cualquier modo Programacin a pequea escala Programacin a gran escala

Copyright 2012, Estudio. Todos los derechos reservados.

Software: Progreso de tcnicas en su construccin (II)

Copyright 2012, Estudio. Todos los derechos reservados.

Software: Crisis del Software (I)


Causas. Sntomas. Consecuencias. Solucin.

Copyright 2012, Estudio. Todos los derechos reservados.

Software: Crisis del Software (II)


Causas: Hardware ms potente. Mayor demanda. Falta de metodologas y tcnicas (hasta hace poco). Uso inadecuado de recursos. Sistemas ms complejos. Poca informacin de los desarrolladores.
Copyright 2012, Estudio. Todos los derechos reservados.

Software: Crisis del Software (III)


Sntomas: Productividad de los desarrolladores: baja en relacin a la demanda. Expectativas: los sistemas no responden a las expectativas de los usuarios. Fiabilidad: Los programas fallan a menudo. Calidad: No es adecuada. Costes: Difciles de predecir, a menudo sobrepasan lo esperado. Mantenimiento: Modificacin del sw costosa y compleja. Plazos: No se cumplen. Portabilidad: Difcil cambiar de plataforma. Eficiencia: No hay aprovechamiento ptimo de recursos

Copyright 2012, Estudio. Todos los derechos reservados.

Software: Crisis del Software (IV)


Consecuencias: Baja productividad.
Baja calidad.

Copyright 2012, Estudio. Todos los derechos reservados.

Software: Crisis del Software (V)


Solucin: Aplicar la Ingeniera del Software en la construccin de Sistemas Informticos.
La necesidad de un enfoque de ingeniera en el desarrollo del software fue propuesta en una conferencia de la OTAN en 1968.

Copyright 2012, Estudio. Todos los derechos reservados.

ndice
Software. Ingeniera del Software.
Desafos. Definicin. Objetivos. Diferencias con otras ingenieras. Disciplinas que la componen. Fundamentos y tcnicas. Actividades del Ingeniero del Software

Producto y Proceso. Principios de la Ingeniera del Software.

Copyright 2012, Estudio. Todos los derechos reservados.

Ingeniera del Software: Desafos (I)


Reducir el coste y mejorar la calidad del software. Explotar y aprovechar el potencial proporcionado por el hardware

Copyright 2012, Estudio. Todos los derechos reservados.

Ingeniera del Software: Desafos (II)


Desarrollar y mantener software asegurando:
Calidad. Fiabilidad. Facilidad de uso Imposibilidad de mal uso

...de tal manera que el humano dirija el ordenador y no al revs.


Copyright 2012, Estudio. Todos los derechos reservados.

Ingeniera del Software: Desafos (III)


Existen muchas clases de software: De sistemas. De tiempo real. De gestin. Cientfico. De Inteligencia Artificial. Empotrado. Para PC. ...

Copyright 2012, Estudio. Todos los derechos reservados.

Ingeniera del Software: Desafos (IV)


...pero existen mtodos y procedimientos comunes para construir buen software

Copyright 2012, Estudio. Todos los derechos reservados.

Ingeniera del Software: Desafos (V)

Copyright 2012, Estudio. Todos los derechos reservados.

Ingeniera del Software: Definicin (I)


El establecimiento y uso de principios de ingeniera robustos, orientados a obtener econmicamente software que sea fiable y funcione eficientemente sobre mquinas reales

Fritz Bauer

Copyright 2012, Estudio. Todos los derechos reservados.

Ingeniera del Software: Definicin (II)


La aproximacin sistemtica al desarrollo, operacin y mantenimiento del software.
Software: programas de ordenador, procedimientos, reglas, documentacin y datos asociados a un sistema de ordenador. IEEE Standard Glossary of Software Engineering (IEE83).
Copyright 2012, Estudio. Todos los derechos reservados.

Ingeniera del Software: Objetivos (I)


El principal (comn a todas las ingenieras)Construir instrumentos (HW, SW) que ayuden o faciliten al ser humano la realizacin de alguna tarea

Copyright 2012, Estudio. Todos los derechos reservados.

Ingeniera del Software: Objetivos (II)


Conseguir un producto Software fiable, de alta calidad y bajo coste. Conducir un proceso de desarrollo y mantenimiento software de manera eficiente y con xito

Copyright 2012, Estudio. Todos los derechos reservados.

Ingeniera del Software: Objetivos (III)


Actuar sobre las causas de la crisis del software:
Mejorar la calidad de los productos software. Aumentar la productividad de los ingenieros del software. Facilitar el control y seguimiento del proceso de desarrollo. Suministrar a los desarrolladores las bases para construir software de alta calidad de forma eficiente.

Definir una disciplina que garantice la produccin sistemtica y el mantenimiento de los productos software desarrollados en el plazo fijado y dentro del coste estimado.

Copyright 2012, Estudio. Todos los derechos reservados.

Ingeniera del Software: Diferencias con otras Ingenieras Ingenieras:


Construyen instrumentos que imitan, aumentan, ayudan, facilitan o sustituyen capacidades fsicas del ser humano.

Ingeniera del Software:


Construyen instrumentos que imitan, aumentan, ayudan, facilitan o sustituyen capacidades psquicas del ser humano (imitan y ayudan al ser humano en su capacidad de resolucin de problemas).

Copyright 2012, Estudio. Todos los derechos reservados.

Ingeniera del Software: Disciplinas que la componen


Economa

Informtica

Gestin

Ingeniera

Psicologa

Copyright 2012, Estudio. Todos los derechos reservados.

Ingeniera del Software: Fundamentos y tcnicas (i)


Mtodos:
Definen cmo construir el software desde el punto de vista tcnico.

Herramientas:
Proporcionan un soporte automtico o semi-automtico para los mtodos.

Procedimientos.
Punto de unin entre mtodos y herramientas. Definen la secuencia en la que se aplican los mtodos, cmo usar las herramientas, las entregas que se requieren, controles de seguimiento y calidad, guas para facilitar la labor de gestores y desarrolladores, etc.

Copyright 2012, Estudio. Todos los derechos reservados.

Ingeniera del Software: Fundamentos y tcnicas (ii)


Mtodos:
Planificacin y estimacin de proyectos. Anlisis de requisitos. Diseo. Codificacin. Pruebas. Mantenimiento.

Herramientas:
CASE. CAD, ...

Procedimientos.

Copyright 2012, Estudio. Todos los derechos reservados.

Ingeniera del Software: Fundamentos y tcnicas (iii)

Copyright 2012, Estudio. Todos los derechos reservados.

Ingeniera del Software: Otras tcnicas de apoyo


Abstracciones:
Modelos de ciclo de vida. Principios de las distintas fases, ...

Representaciones:
Notaciones y lenguajes.
Diagramas de GANTT Lenguaje Z,...

Evaluaciones:
Mediciones (sobre proceso y producto).
Copyright 2012, Estudio. Todos los derechos reservados.

Ingeniera del Software: Actividades del Ingeniero del SW (I) El Ingeniero del Software debe: Trabajar en equipo. Analizar y estudiar problemas. Trabajar bajo restricciones de tiempo, costes y recursos. Interactuar con clientes y usuarios. Tomar decisiones.
Copyright 2012, Estudio. Todos los derechos reservados.

Ingeniera del Software: Actividades del Ingeniero del SW (II)


Tipo de actividades:
de desarrollo. de control. de gestin. de operacin.

Copyright 2012, Estudio. Todos los derechos reservados.

Ingeniera del Software: Actividades del Ingeniero del SW (III) Actividades de desarrollo: Decidir qu hacer. (Anlisis) Decidir cmo hacerlo. (Diseo) Hacerlo. (Codificacin) Probar el producto. (Pruebas) Usar el producto. (Entrega/Instalacin) Mantener el producto. (Mantenimiento)

Copyright 2012, Estudio. Todos los derechos reservados.

Ingeniera del Software: Actividades del Ingeniero del SW (IV)

Copyright 2012, Estudio. Todos los derechos reservados.

Ingeniera del Software: Actividades del Ingeniero del SW (V) Actividades de Control: se ocupan de evaluar y asegurar la calidad del software. Mtricas. Garanta de calidad. Gestin de configuraciones. ...

Copyright 2012, Estudio. Todos los derechos reservados.

Ingeniera del Software: Actividades del Ingeniero del SW (VI) Actividades de Gestin: Planificacin y estimacin. Seguimiento de los proyectos. Administracin de proyectos. Direccin de proyectos. ...

Copyright 2012, Estudio. Todos los derechos reservados.

Ingeniera del Software: Actividades del Ingeniero del SW (VII) Actividades de Operacin: Entrega (e instalacin). Puesta en marcha. Formacin a los usuarios. ...

Copyright 2012, Estudio. Todos los derechos reservados.

Ingeniera del Software: Actividades del Ingeniero del SW (VIII)


Realizar un proyecto software no es (slo) programar El proceso de construir software es una actividad de resolucin de problemas

Copyright 2012, Estudio. Todos los derechos reservados.

Indice
Software. Ingeniera del Software. Producto y Proceso. Principios de la Ingeniera del Software.

Copyright 2012, Estudio. Todos los derechos reservados.

Producto y Proceso

Copyright 2012, Estudio. Todos los derechos reservados.

Indice
Software. Ingeniera del Software. Producto y Proceso. Principios de la Ingeniera del Software.
Teora de las 4 Cs Principios de la Ingeniera del Software Principios para una cultura empresarial de ingeniera del software.
Copyright 2012, Estudio. Todos los derechos reservados.

Teora de las 4 Cs
Ser Coprnico: El sistema que se est construyendo no es el centro del universo, ni va a estar aislado. Ser Convencional: Los usuarios aceptan mejor las tcnicas convencionales. Ser Conservador: Si en un proyecto no se introducen demasiados cambios, se minimizan los riesgos y se maximizan las posibilidades de financiarlo con xito. Tener Confianza: No es imposible acabar los proyectos software con xito: manteniendo una disciplina en el desarrollo y revisando peridicamente los objetivos y resultados
Copyright 2012, Estudio. Todos los derechos reservados.

Principios de la Ingeniera del Software (I)


Haz de la calidad la razn de trabajar. Una buena gestin es ms importante que una buena tecnologa. Las personas y el tiempo no son intercambiables. Seleccionar el modelo de ciclo de vida adecuado. Entregar productos al usuario lo ms pronto posible. Determinar y acotar el problema antes de escribir los requisitos. Realizar un diseo. Minimizar la distancia intelectual.
Copyright 2012, Estudio. Todos los derechos reservados.

Principios de la Ingeniera del Software (II)



Documentar. Las tcnicas son anteriores a las herramientas. Primero hazlo correcto, luego hazlo rpido. Probar, probar y probar (** incluye inspecciones **). Introducir las mejoras y modificaciones con cuidado. Asuncin de responsabilidades. La entropa del Software es creciente. La gente es la clave del xito.
Copyright 2012, Estudio. Todos los derechos reservados.

Principios para una cultura de Ingeniera del Software (I)


Nunca dejes que tu jefe o cliente te convenza para hacer un mal trabajo. La gente necesita sentir que su trabajo es apreciado. La educacin continua es responsabilidad de cada miembro del equipo. El compromiso del cliente es el factor ms crtico en la calidad del software Tu mayor desafo es compartir la visin del producto final con el cliente. La mejora continua de tu proceso de desarrollo de software es posible y esencial. Tener procedimientos escritos de desarrollo de software puede ayudar a crear una cultura compartida de buenas prcticas.

Copyright 2012, Estudio. Todos los derechos reservados.

Principios para una cultura de Ingeniera del Software (II)


La calidad es el principal objetivo; la productividad a largo plazo es una consecuencia de una alta calidad. Haz que los errores los encuentre un colaborador y no un cliente. Una clave en la calidad en el desarrollo de software es realizar iteraciones en todas las fases del desarrollo excepto en la codificacin. La gestin de errores y solicitud de cambios es esencial para controlar la calidad y el mantenimiento. Si mides lo que haces, puedes aprender a hacerlo mejor. Haz lo que tenga sentido; no recurras a los dogmas. No puedes cambiar todo de una vez. Identifica los cambios que se traduzcan en los mayores beneficios, y comienza a implementarlos.

Copyright 2012, Estudio. Todos los derechos reservados.

Resumen
Software = Programas + Datos + Documentacin. La I.S. ha tenido una evolucin similar al resto de las ingenieras pero mucho ms rpida. Lo anterior, las caractersticas peculiares del sw y la ayuda a mejorar las capacidades psquicas del ser humano, constituyen las grandes diferencias entre la i.s. y las dems ingenieras. La i.s. surge como respuesta a la crisis del software. La i.s. se enfoca en el producto y proceso de software.
Copyright 2012, Estudio. Todos los derechos reservados.

Resumen
Producto: rentable, fiable, de calidad, eficiente, que cumpla con los requisitos, etc. Proceso: con xito, eficiente, de calidad, controlado, etc. La i.s. se apoya en fundamentos (mtodos, herramientas y procedimientos) y tcnicas (abstracciones, representaciones, evaluaciones) para conseguir sus objetivos. El ingeniero del software trabaja en equipo y puede llevar a cabo diversas actividades (desarrollo, control, gestin y operacin).
Copyright 2012, Estudio. Todos los derechos reservados.

S-ar putea să vă placă și