Beruflich Dokumente
Kultur Dokumente
Ingeniera de Software I
DOCENTE:
ING. JOS DENYS HERNNDEZ ESPINOZA
Objetivo de la Asignatura 2
Practicas/Exposicin 20%
Examen 40%
Tareas 30%
Asistencia 10%
100%
Las actividades se mandarn por email usando:
- Asunto: Usar la nomenclatura segn la actividad que esta anexando al email.
- Cuerpo del email Mensaje: Solo poner su nombre completo o algn otro dato relevante que desee.
- Solo se aceptarn usando la nomenclatura establecida para tal, y al email jodesite88@Hotmail.com
En las Exposiciones:
- Crear material para 10 minutos como mnimo y 15 como mximo.
- Debern participar y estar presentes todos los integrantes de equipo.
- Deber tener una estructura y diseo grfico apropiado al tema a ser presentado.
- Debern tener una carga de informacin por diapositiva apropiada de forma que tengan valor didctico, se
recomienda de 6 a 10 renglones y un tamao de letra de 20 puntos como mnimo, tipografa clara o
entendible y podrn apoyarse de grficos bajados de Internet como, Tablas, Imgenes, Fotos, etc.
NOTA: La falta u omisin de alguno de los aspectos de Evaluacin repercutir en puntos menos en su
calificacin final.
7
INTRODUCCIN RPIDA.
UNIDAD 1.
Metodologa del
Desarrollo de Software.
Concepto de Ingeniera de Sistemas
8
Concepto de sistema, conjunto de cosas que ordenadamente relacionadas
entre s contribuyen a un determinado objeto. De forma recursiva, las partes de
un sistema pueden ser consideradas como nuevos sistemas (subsistemas).
Los sistemas informticos estn compuestos por ordenadores y sus perifricos.
Entre ellos podemos distinguir dos tipos de subsistemas:
Sistemas Hardware, son los elementos materiales, los que se pueden tocar.
Sistemas Software, los programas que gobiernan el funcionamiento del
computadora.
El objetivo de los sistemas informticos es el tratamiento de la informacin:
almacenamiento, elaboracin y presentacin de datos. De esta forma se
automatizan determinadas acciones.
En la concepcin del sistema informtico no solo se decide el trabajo a realizar,
sino tambin cmo ha de ser utilizado por los usuarios.
Concepto de Ingeniera de Sistemas
9
Caractersticas del software (lo contrario para el hardware):
No se desgasta ni envejece, y por este motivo no requiere reparaciones ocasionales.
Su duplicacin es poco costosa, lo caro es el desarrollo.
Puede ser modificado fcilmente, tanto que es necesario un control de versiones.
La Ingeniera del Software comprende las tcnicas y procedimientos ingenieriles para el
desarrollo del software. La Ingeniera del Software no se plantea solo una actividad de
programacin, previamente son necesarias las fases de anlisis y diseo y posteriormente
la integracin y la verificacin, incluso el manteniendo cuando el producto ya est en
explotacin. (CICLO DE VIDA).
Inicialmente la tarea de desarrollo era realizada individualmente por hbiles creativos, de
forma poco disciplinada. El trabajo en equipo supone la divisin y organizacin del
trabajo utilizando metodologas de desarrollo.
En los 70 y los 80 empiezan a usarse herramientas CASE (Computer Aided Software
Engineering). En los 90 IPSE (Integrated Project Support Environment Ambiente de Apoyo
Integrado de Desarrollo) e ICASE (Integrated Computer - Aided Software Engineering
Ingeniera de Software Asistida e Integrada por Computadora).
La crisis del Software 10
Podemos definir a la Ingeniera del Software como la aplicacin prctica del conocimiento
cientfico en el diseo y construccin de programas de computadora y la documentacin
asociada requerida para desarrollar, operar (funcionar) y mantenerlos. Se conoce tambin como
desarrollo de software o produccin de software.
Entonces, la Ingeniera del Software implica un trabajo integral, es decir, se produce un anlisis del
contexto, se disea el proyecto, se desarrolla el correspondiente software, se efectan las
pruebas para asegurar su correcto funcionamiento y finalmente se implementa el sistema.
El proceso de desarrollo de un software se denomina formalmente como ciclo de vida del
software, en tanto, se encuentra conformada por cuatro estados:
Concepcin (en esta se fijan los objetivos y se desarrolla el modelo).
Elaboracin (en este paso se establecen las caractersticas y cmo ser la arquitectura del
mismo y porqu).
Construccin (implica el desarrollo del programa).
Transicin (es el momento en el cual se transfiere el producto final al usuario).
20
Identificable: Debe tener una identificacin que permita acceder fcilmente a sus
servicios que permita su clasificacin.
Auto contenido: Un componente no debe requerir de la utilizacin de otros para finiquitar
la funcin para la cual fue diseado.
Puede ser remplazado por otro componente: Se puede remplazar por nuevas versiones u
otro componente que lo remplace y mejore.
Con acceso solamente a travs de su interfaz: Debe asegurar que estas no cambiaran a
lo largo de su implementacin.
Sus servicios no varan: Las funcionalidades ofrecidas en su interfaz no deben variar, pero
su implementacin s.
Bien Documentado: Un componente debe estar correctamente documentado para
facilitar su bsqueda si se quiere actualizar, integrar con otros, adaptarlo, etc.
Es genrico: Sus servicios deben servir para varias aplicaciones.
Reutilizado dinmicamente: Puede ser cargado en tiempo de ejecucin en una
aplicacin.
Independiente de la plataforma: Hardware, Software, S.O.
Grfico del desarrollo de software basado en componentes
27
Ventajas:
28
Evaluacin del
prototipo por el
cliente
(Paso 4)
Modelo de Desarrollo 51
Concurrente
Este modelo define una serie de acontecimientos que dispararn
transiciones de estado a estado para cada una de las actividades.
Durante las primeras etapas del diseo, no se contempla una
inconsistencia del modelo de anlisis. Esto genera la correccin del
modelo de anlisis de sucesos, que disparar la actividad de anlisis del
estado hecho al estado cambios en espera.
Se utiliza a menudo como el paradigma de desarrollo de aplicaciones
cliente/servidor. Un sistema cliente/servidor se compone de un conjunto
de componente funcionales. Cuando se aplica a cliente/servidor, el
modelo de proceso concurrente define actividades en dos
dimensiones: una divisin de sistemas y una divisin de componentes.
52
Los aspectos del nivel de sistemas se afrontan mediante dos actividades: diseo y
realizacin. La concurrencia se logra de dos formas:
Las actividades del sistema y de componente ocurren simultneamente y
pueden modelarse con el enfoque orientado a objetos descrito anteriormente.
Una aplicacin cliente/servidor tpica se implementa con muchos componentes,
cada uno de los cuales se pueden disear y realizar concurrentemente.
Ventajas
Excelente para proyectos en los que se conforman grupos de trabajo
independientes.
Proporciona una imagen exacta del estado actual de un proyecto.
Desventajas
Si no se dan las condiciones sealadas no es aplicable.
Si no existen grupos de trabajo no se puede trabajar en este mtodo
53
Iterativo: Cada vez re-visitamos las etapas del modelo en cascada, rehacemos,
refinamos y extendemos lo hecho.
Anlisis
Diseo N"
veces
N"
veces Codificacin
Pruebas e Integracin
64
Las iteraciones se pueden entender
como miniproyectos: en todas las
iteraciones se repite un proceso de
trabajo similar (de ah el nombre
iterativo) para proporcionar un
resultado completo sobre producto final,
de manera que el cliente pueda obtener
los beneficios del proyecto de forma
incremental.
Un aspecto fundamental para guiar el
desarrollo iterativo e incremental es la
priorizacin de los objetivos/requisitos en
funcin del valor que aportan al cliente.