Está en la página 1de 25

FUNDAMENTOS DE INGENIERA

DE SOFTWARE
Unidad I.

UNIDAD I: FUND. DE ING. DE SW


1.1. Conceptos bsicos 1.2. El papel evolutivo del software 1.3. Etapas del desarrollo software 1.4. Clasificacin de la tecnologa en el desarrollo de software (Tecnologa Estructurada y Orientada a Objetos) 1.5. Definicin e historia de las herramientas CASE 1.6. Clasificacin de las herramientas CASE

1.1. CONCEPTOS BSICOS

IEEE Standard Glossary of Software Engineering Terminology (IEEE Std . 610.121990. ) The computer field is continuing to expand. New terms are being generated and new meanings are being adopted for existing terms. The IEEE Computer Dictionary project was undertaken to document this vocabulary. Its purpose is to identify terms currently in use in the computer field and to establish standard definitions for these terms. The dictionary is intended to serve as a useful reference for those in the computer field and for those who come into contact with computers either through their work or in their everyday lives.

1.1. CONCEPTOS BSICOS


Ingeniera Latn - ingenium. Trmino que puede traducirse como producir. La ingeniera es el estudio y la aplicacin de las distintas ramas de la tecnologa. La ingeniera supone la aplicacin de la inventiva y del ingenio para desarrollar una cierta actividad. No implica que no se utilice el mtodo cientfico para llevar a cabo los planes. Tareas que puede llevar a cabo un ingeniero: investigacin (la bsqueda de nuevas tcnicas), el diseo, el desarrollo, la produccin, la construccin y la operacin.
Tecnologa: aplicacin de un conjunto de conocimientos y habilidades con un claro objetivo, este es conseguir una solucin que permita al ser humano desde resolver un problema determinado hasta el lograr satisfacer una necesidad en un mbito concreto.

1.1. CONCEPTOS BSICOS

Software: Computer programs, procedures, and possibly associated documentation and data pertaining to the operation of a computer system. See also: application software; support software; system software. Contrast with: hardware.

El software puede ser: Genrico: desarrollado para venderse a mltiples clientes (Excel, Word, etc.) A la medida: desarrollado bajo demanda del cliente a un desarrollador especfico

Objetivo de la ingeniera de software La ingeniera del software persigue la produccin de sistemas de calidad a bajo coste y a tiempo
Sistemas de calidad: La calidad de un sistema viene definida por el cumplimiento de los objetivos establecidos para el sistema Bajo coste: El coste de un sistema debe incluir tanto el coste de desarrollo como el de mantenimiento A tiempo: En unos plazos preestablecidos y que vienen garantizados por el establecimiento de una secuencia de actividades a llevar a cabo

1.1. CONCEPTOS BSICOS

software engineering. (1) The application of a systematic, disciplined, quantifiable ap- proach to the development, operation, and maintenance of software; that is, the application of engineering to software. Una disciplina de la Ingeniera que concierne a todos los aspectos de la produccin de software

Los Ingenieros de Software deben: Adoptar un enfoque sistemtico para llevar a cabo su trabajo Utilizar las herramientas y tcnicas apropiadas para resolver el problema planteado, de acuerdo a las restricciones de desarrollo y a los recursos disponible

1.1. CONCEPTOS BSICOS


Diferencia entre Ingeniera de software e Ingeniera de sistemas La Ingeniera de Sistemas concierne a todos los aspectos del desarrollo de sistemas basados en cmputo incluyendo hardware, software y la ingeniera de procesos. La Ingeniera de Software es una parte de este proceso que comprende el desarrollo de software, control, aplicaciones y bases de datos del sistema Los ingenieros de software son los encargados de la especificacin del sistema, del diseo de l arquitectura, la integracin y la puesta en marcha

1.1. CONCEPTOS BSICOS


Proceso de software: Un conjunto estructurado de actividades cuya meta es el desarrollo o evolucin de un software Algunas actividades genricas en todos los procesos de software son: Especificacin: Qu debe hacer el software y cules son sus especificaciones de desarrollo Desarrollo: Produccin del sistema de software Validacin: Verificar que el software cumple con lo solicitado por el Cliente Evolucin: Cambiar/adaptar el software a las nuevas demandas Estas actividades varan dependiendo de la organizacin y del

1.1. CONCEPTOS BSICOS

Modelo de software: Representacin formal y simplificada de un proceso de software, presentada desde una perspectiva especfica. Ejemplos de perspectivas del proceso de software:

Modelos Genricos:

Flujo de trabajo, secuencia de actividades Flujo de datos, flujo de la informacin Rol/accin, quin realiza qu

Cascada: separar en distintas fases de especificacin y desarrollo Desarrollo Iterativo: la especificacin, desarrollo y validacin estn interrelacionados Prototipado: un modelo sirve de prototipo para la construccin del sistema final Basado en componentes: asume que partes del sistema ya existen y se enfoca a su integracin

Modelo en cascada

SRD,SDD, cada actividad considerada una actividad discreta, bajo riesgo para desarrollos bien comprendidos utilizando tecnologa conocida.

Modelo en espiral

1.1. CONCEPTOS BSICOS

Software life cycle. The period of time that begins when a software product is conceived and ends when the software is no longer available for use. The software life cycle typically includes a concept phase, requirements phase, design phase, implementation phase, test phase, installation and checkout phase, operation and maintenance phase, and, sometimes, retirement phase. Note: These phases may overlap or be performed iteratively.

1.1. CONCEPTOS BSICOS


Requirement. (1)A condition or capability needed by a user to solve a problem or achieve an objective. (2) A condition or capability that must be met or possessed by a system or system component to satisfy a contract, standard, specification, or other formally imposed documents. (3) A documented representation of a condition or capability as in (1)or (2). Requirements specification (SRS): (IEEE Std 1012-1986 [121) Documentation of the essential requirements (functions, performance, design constraints, and attributes) of the software and its external interfaces.

1.1. CONCEPTOS BSICOS

software product. (1) The complete set of computer programs, procedures, and possi- bly associated documentation and data designated for delivery to a user. El costo total de un software esta dividido aproximadamente de la siguiente forma:

En el software a la medida los costos de evolucin a menudo exceden los costos de desarrollo Los costos dependen del tipo de sistema que se desarrolla y de los requerimientos del mismo tales como desempeo y confiabilidad La distribucin de los costos depende del modelo de desarrollo empleado

60 % costos de desarrollo 40 % costos de pruebas

COSTOS DE ING. DE SW

1.1. CONCEPTOS BSICOS


Herramientas CASE: CASE: Computer-Aided Software Engineering Programas que son usados para dar soporte automatizado a las actividades del proceso de software: Anlisis de requerimientos, modelado del sistema, pruebas y depuracin ( debugging), etc. Las herramientas CASE son comnmente usadas para dar soporte a los mtodos de software:

Editores para la notacin del mtodo, Mdulos de anlisis que verifican que las reglas del mtodo se cumplan Generadores de reportes que facilitan la creacin de la documentacin del sistema Generadores de cdigo a partir del modelo del sistema Generadores de bases de datos

1.1. CONCEPTOS BSICOS


Atributos de calidad del SW ISO /IEC 9126-1:2000:

Functionality (Funcionalidad) Reliability (Confiablilidad) Usablity (Usabilidad) Efficiency (Efieciencia) Maintainability (Mantenibilidad) Portability (Portabilidad)

ISO 9126 a evoluciona a: ISO/IEC 25000:2005, Software Engineering -- Software product Quality Requirements and Evaluation (SQuaRE) -- Guide to SQuaRE

1.1. CONCEPTOS BSICOS


Retos de la Ingeniera de software

Heterogeneidad: Desarrollar tcnicas para construir software que pueda hacer frente a plataformas y ambientes de ejecucin heterogneos (diferentes tipos de Hw y Sw) Tiempos de entrega: Desarrollar tcnicas que permitan reducir los tiempos de entrega del software sin comprometer la calidad Confianza: Desarrollar tcnicas que permitan que los usuarios confen plenamente en el software La Ingeniera de Software comprende responsabilidades que van ms all de la simple aplicacin de habilidades tcnicas Los ingenieros de Software deben actuar de manera honesta y tica si desean ser respetados como profesionales Una conducta tica es ms que slo respetar la ley

1.1. CONCEPTOS BSICOS


Qu es software? Qu es la Ingeniera de Software? Cul es la diferencia entre Ingeniera de Software e Ingeniera de Sistemas? Qu es el ciclo de vida del software? Qu son los requerimientos? Qu es la especificacin de requerimientos? Qu es un proceso de software? Qu es un modelo de proceso de software? Cules son los costos de la Ingeniera de Software? Qu son los mtodos de Ingeniera de Software? Qu es CASE? Cules son los atributos del software de calidad? Cules son los retos de la Ingeniera de Software?

1.2. EL PAPEL EVOLUTIVO DEL SOFTWARE


1 generacin del software ???? - 1965 Hardware de propsito general Software como algo aadido Desarrollo a medida Ninguna planificacin Orientacin por lotes 2 generacin del software 1965 - 1975 Sistemas multiusuario Interactividad (Tiempo Real) Almacenamiento y bases de datos La industria del software Software de gran volumen Mantenimiento

1.2. EL PAPEL EVOLUTIVO DEL SOFTWARE


3 generacin del software 1975 - 1990 Microprocesadores, PCs y sistemas distribuidos Hardware de bajo coste Industria planetaria 4 generacin del software 1990 - ???? Tecnologas Orientadas a Objeto Interfaces grficas de usuario Sistemas expertos Proceso paralelo Tecnologas de componentes COTS (Commercial Off-TheShelf ) Internet y Servicios Web

CAMBIOS GENERADOS POR SI


Trabajo inteligente: El ordenador se ocupa de las labores repetitivas y rutinarias. Fusin global de empresas: La transformacin de informacin, no de bienes, permite a la empresa diversificar su rea de negocio. Idea e Informacin: Antes la base del negocio era el uso del dinero y los recursos tangibles. Ahora son las ideas y la informacin. Usuarios: trabajadores de la informacin La industria de la manufactura representa el 28% de los sueldos, el resto se alojan en empresas de servicios y manejo de informacin

CAMBIOS GENERADOS POR TI


Soporte tecnolgico al crecimiento de la empresa Hace 20 aos una empresa de distribucin generaba 500 facturas ao utilizando mquinas de escribir. Actualmente genera 50.000 con ayuda de ordenadores. Dependencia legal de los SI Una caida en la red de comunicaciones forzo la publicacin en BOE de una extensin de plazo para presentacin decaracin de impuestos

También podría gustarte