Vous êtes sur la page 1sur 46

Ing.

Marco Aedo Lpez


Generalidades del Curso:
Ingeniera de Software 2
Ing. Marco Aedo Lpez
PRESENTADO POR:
M Sc (c). Ing. Marco Aedo Lpez

Contacto:
marcoaedo@hotmail.com
maedol@unsa.edu.pe
Blog:
marcoaedo.blogspot.com

Ing. Marco Aedo Lpez
Horarios
TEORA
Lunes 11:00 13:00 (A)
Lunes 13:00 15:00 (B)

Viernes 11:00 13:00 (A)
Viernes 13:00 15:00 (B)

LABORATORIOS
Jueves: 15:00 17:00 (A)
Viernes: 15:00 17:00 (B)

Ing. Marco Aedo Lpez
CALIFICACIN
TEORA
1 Examen 20%
2 Examen 25%
Trabajo Final 35%
Evaluacion Permanente 20%
Controles de lectura
Prcticas en clase (individual y grupal)
Prcticas calificadas
Exposiciones

NOTA FINAL=TEORA*0.70+LAB*0.30
Ing. Marco Aedo Lpez
Anlisis y Diseo de Sistemas
Ingeniera de Software 1
Bases de Datos
Lenguajes de Programacin
Sistemas de Informacin
Otros...
Prerrequisitos
Ing. Marco Aedo Lpez
Temario del Curso
1. Puntos Clave de la Ingeniera de Software
2. Los problemas, la complejidad y la construccin
de software correcto
3. Ingeniera de requerimientos, conociendo lo que
el cliente desea
4. Gestin, planeamiento, organizacin y
programacin exitosa de proyectos de software
Ing. Marco Aedo Lpez
Temario del Curso
5. Diseo Correcto aplicando tcnicas Orientado a
Objetos e Implementacin
6. Interaccin Humano - Computador
7. Diseo de la Interfaz de Usuario
8. Control de Versiones Desarrollo Defensivo
9. Testing: Verificacin y Validacin
Ing. Marco Aedo Lpez
Sommerville, Ian. Software Engineering, Addison
Wesley. Novena Ed, 2011
Pressman, Roger. Software Engineering. A
Practitioners Approach, McGraw - Hill, Octava Ed,
2014
Pilone, Dan. Head First Software Development,
OReally. Primera Ed, 2008
Leffingwell, D., Widrig, D. Managing Software
Requirements, Addison Wesley, 2003
Booch, Grady. Object Oriented Analysis and Design
with Applications. Addison Wesley, Tercera Ed. 2007
Abascal Julio, Aedo Ignacio, Caas Jos. La Interaccin
Persona Ordenador, 2001
Dix, Alan. "Human-Computer Interaction". Prentice Hall,
Tercera Ed. 2003
BIBLIOGRAFA
Ing. Marco Aedo Lpez
CAPTULO 1
Puntos clave de la Ingeniera
de Software
Ing. Marco Aedo Lpez
Objetivos
Responder a un conjunto de preguntas clave
sobre la Ingeniera de Software
Introducir a temas profesionales y de tica
importantes para los ingenieros de software
Ing. Marco Aedo Lpez
Contenido
Preguntas clave sobre la ingeniera de software
Responsabilidad profesional y tica
Ing. Marco Aedo Lpez
Enfoque informal en el desarrollo de software lleva a:
Tiempo de retraso
Costo mayor que lo presupuestado
Software difcil de mantener
Desempeo pobre
Incluso irrealizables
Problemtica
Ing. Marco Aedo Lpez
Las economas de todas las naciones
desarrolladas son cada vez ms dependientes
del software
Ms y ms sistemas son controlados por
software
La Ing. Sw tiene que ver con teoras, mtodos y
herramientas para el desarrollo profesional de
software
El gasto en Software representa una fraccin
importante del PBI en los pases desarrollados
Ingeniera de Software
Ing. Marco Aedo Lpez
Ing. Marco Aedo Lpez
1. Qu es software?
2. Qu es Ingeniera de Software?
3. Cul es la diferencia entre Ing. Sw y CS?
4. Cul es la diferencia entre la Ing. Sw y la
Ingeniera de Sistemas?
5. Qu es un proceso de software?
6. Qu es un modelo de proceso de software?
7. Qu conocimientos sern necesarios para
hacer un buen desarrollo de software?
Puntos Clave sobre el Desarrollo
De Software
Ing. Marco Aedo Lpez
Puntos Clave sobre la Ing. De
Software
8. Cules son las actividades fundamentales de cualquier
proceso de software?
9. Cules son los mtodos de la Ingeniera de Software?
10. Qu es CASE? Ejemplos
11. Cules son los atributos de un buen software?
12. Cules son los desafos claves a los que se enfrenta la
Ing. De Sw en la actualidad?
13. Son suficientes las habilidad tcnicas?
14. Qu opina de la afirmacin?
El cientfico construye para aprender
El ingeniero aprende para construir

Ing. Marco Aedo Lpez
1. Qu es software?
Programas computacionales y su documentacin
asociada
Los productos de sw pueden ser desarrollados para
un cliente particular o para un mercado generalizado
Los productos de sw pueden ser:
Genricos: desarrollados para ser vendidos a un grupo de
clientes diferentes
Personalizados: desarrollados para un cliente
determinado de acuerdo a sus necesidades y
especificaciones
Ing. Marco Aedo Lpez
2. Qu es Ingeniera de Software?
Es la disciplina de la Ingeniera que comprende
todos los aspectos de la produccin de software
Los ing. de sw deben adoptar enfoques
sistemticos y organizados para su trabajo y usar
herramientas y tcnicas apropiadas al:
Problema a resolver
Restricciones de desarrollo
Recursos disponibles

Ing. Marco Aedo Lpez
3. Cul es la diferencia entre la
Ingeniera de Software y las Ciencias
de la Computacin?
Ciencias de la Computacin: Comprende las
teoras y fundamentos subyacentes a la
computacin
Ingeniera de Software: Comprende la prctica y
los problemas asociados a la produccin de
software (desarrollo y liberacin)
Las teoras de la CS son actualmente
insuficientes para actuar como una base
metodolgica completa para la ingeniera de
software
Ing. Marco Aedo Lpez

INGENIEROS DE SOFTWARE
CIENCIAS DE LA COMPUTACIN

INGENIEROS ELCTRICOS FSICA
Ing. Marco Aedo Lpez
4. Cul es la diferencia entre la
Ingeniera de Software y la Ingeniera
de Sistemas?
Ingeniera de Sistemas: comprende todos los
aspectos del desarrollo de sistemas basados en
computadoras. Tales como HW, SW, redes e
ingeniera de procesos
Ingeniera de Software: es parte de este proceso
Los ingenieros de sistemas estn involucrados
en la especificaicn del sistema, diseo
arquitectnico, integracin e implementacin
Ing. Marco Aedo Lpez

Ingeniera de sistemas es ms antigua que
la de software
El % de software en los sistemas ha
aumentado notablemente

Ing. Marco Aedo Lpez
ACTIVIDAD
Visitar: http://www.incose.org/
Leer el pdf de los 12 roles de la Ingeniera de
Sistemas
Ing. Marco Aedo Lpez
5. Qu es un Proceso de
Software?
Es un conjunto de actividades cuya meta es el
desarrollo o evolucin del software
Incluyen las actividades de especificacin,
desarrollo, validacin y evolucin
Ing. Marco Aedo Lpez

Ejercicio: Cmo debera ser el proceso
para el desarrollo de?

Software de tiempo real de un avin
Sistema de Comercio Electrnico




Ing. Marco Aedo Lpez
6. Qu es un modelo de proceso
de software?
Una representacin abstracta de un proceso
de software, presentada desde una
perspectiva
Modelos generales de procesos
Cascada (Waterfall)
Desarrollo iterativo
Transformacin formal
Integracin desde componentes reusables
Ing. Marco Aedo Lpez

Ejercicio: Cundo usar cada modelo de
proceso genrico?





Ing. Marco Aedo Lpez
7. Qu conocimientos sern
necesarios para hacer un buen
desarrollo de software?
Ingeniera de Software
Ciencias de la Computacin
Gestin de proyectos
Etc.
Ing. Marco Aedo Lpez
8. Cules son las actividades
fundamentales de cualquier proceso de
software?
Existen 4 actividades fundamentales:
Especificacin: qu es lo que el sistema debe
hacer y sus restricciones de desarrollo?
Desarrollo: diseo y programacin de un sistema
de software
Validacin: chequeo de que el software es lo que
el cliente desea
Evolucin: cambios en el software en respuesta
a demandas cambiantes
Ing. Marco Aedo Lpez
9. Cules son los Mtodos de la
Ingeniera de Software?
Enfoques para el desarrollo de software que incluye guas de
procesos, notaciones, reglas, gua de diseo y modelos de
sistemas. Ejemplos: estructurado y OO
COMPONENTES
Gua de proceso
Que actividades seguir
Descripciones de Modelos
Descripciones de modelos grficos que deben ser producidos
Reglas
Restricciones aplicadas a modelos de sistemas
Recomendaciones
Sugerencias sobre buenas prcticas de diseo

Ing. Marco Aedo Lpez
10. Qu es CASE? (Computer-
Aided Software Engineering)
Sistemas de sw destinados a dar soporte automatizado
para las actividades de procesos de sw
Frecuentemente son utilizados para soportar un mtodo
Upper-CASE
Herramientas que apoyan las actividades tempranas
de un proceso (requerimientos/diseo)
Lower-CASE
Herramientas que apoyan las actividades tardas de
un proceso (programacin, depuracin y pruebas)
Ing. Marco Aedo Lpez
11. Cules son los atributos de
un buen sw?
El sw debera brindar la funcionalidad y desempeo
requeridos por el usuario, y debera ser mantenible,
confiable, eficiente y usable
Mantenible
Sw debe ser fcil de modificar para evolucionar a las
nuevas necesidades requeridad
Confiable
Sw debe producir los resultados esperados
Eficiente
Sw debe hacer buen uso de los recursos del sistema
Usable
Sw debe ser de fcil uso para los usuarios finales
Ing. Marco Aedo Lpez

No estn asociados directamente con lo
que el sw hace

Se relacionan a su ejecucin, organizacin
de cdigo fuente y documentacin
asociada



Ing. Marco Aedo Lpez
12. Cules son los desafos que
enfrenta la Ingeniera de Software?
Tiene que lidiar con:
Sistemas heredados
Sistemas antiguos pero valiosos, deben ser
mantenidos y actualizados
Heterogeneidad
Los sistemas estn distribuidos e incluyen diversos
Hw y Sw
Tiempo de Entrega
Presin de tiempo para entregar el sw ms rpido
Confianza
Demostrar que el Sw puede ser confiable para los
usuarios

Ing. Marco Aedo Lpez
13. Son suficientes las habilidades
tcnicas?
Tambin habilidades humanas!!!!!!
Responsabilidad Profesional y tica
Ing. Sw. NO involucra slo habilidades tcnicas, sino
adems otras responsabilidades
Para ser respetados como profesionales se debe
actuar de manera honesta y tica
El comportamiento tico es ms que simplemente
cumplir con las leyes
Hay compromisos con la SOCIEDAD
Ing. Marco Aedo Lpez
Aspectos de Responsabilidad
Social
Confidencialidad
Competencia
Derechos de la propiedad intelectual
Uso inapropiado de las computadoras


Ing. Marco Aedo Lpez
Cdigo de tica de ACM/IEEE
Las sociedades profesionales en USA han
cooperado para producir un cdigo de tica para
la prctica de la disciplina
Los miembros de estas organizaciones las
aceptan cuando se incorporan a ellas
Contiene 8 principios
Ing. Marco Aedo Lpez
Cdigo de tica - Principios
1. PBLICO
Los ingenieros de software debern actuar
consistentemente con el inters pblico
2. CLIENTE Y EMPLEADOS
Actuarn de una manera que responda a los
intereses de sus clientes y empleadores,
consistentemente con el inters pblico
3. PRODUCTO
Asegurarn que sus productos cumplen con los
ms altos estndares profesionales posibles
Ing. Marco Aedo Lpez
Cdigo de tica - Principios
4. JUICIO
Mantendrn integridad e independencia en sus juicios
profesionales
5. ADMINISTRACIN
Los ingenieros de software administradores y lderes
suscribirn y promovern un enfoque tico en la
administracin del desarrollo y mantenimiento del sw
6. PROFESIN
Promovern la integridad y reputacin de la profesin,
acord al inters pblico

Ing. Marco Aedo Lpez
Cdigo de tica - Principios
7. COLEGAS
Debern ser justos, imparciales y apoyar a sus
colegas
8. PERSONAL
Participarn en un aprendizaje continuo
durante toda su vida sobre las prcticas de la
profesin y promovern un enfoque tico sobre
la misma
Ing. Marco Aedo Lpez
Dilemas ticos
Desacuerdo en los principios con las polticas de
urgencia del administrador del proyecto
El empleador acta de una manera no tica al
liberar un sistema de seguridad crtica sin
finalizar la prueba del sistema
Participacin en el desarrollo de sistemas de
armas militares o nucleares

Ing. Marco Aedo Lpez
14. Qu opina de la afirmacin?

El cientfico construye para aprender
El ingeniero aprende para construir
Ing. Marco Aedo Lpez
CONCLUSIONES
La Ingeniera de Software es una disciplina de ingeniera
que comprende todos los aspectos de la produccin del sw
Los productos de software consisten de los programas
desarrollados y de su documentacin asociada
Atributos escenciales del producto son mantenibilidad,
confiabilidad, eficiencia y usabilidad
El proceso de sw consiste de actividades involucradas en el
desarrollo de productos de software.
Activididades bsicas: Especificacin, desarrollo, validacin
y evolucin
Ing. Marco Aedo Lpez
CONCLUSIONES
Los mtodos son formas organizadas de producir sw.
Incluyen sugerencias del proceso, de la notacin, reglas
que dirigen la descripcin del sistema y lineamientos de
diseo
Las herramientas CASE son sistemas de sw que sirven
para ayudar en las actividades del proceso de sw
Los ingenieros de software tienen responsabilidades,
tanto con la profesin como con la sociedad, NO es slo
su capacidad tcnica lo importante
Las sociedades profesionales publican cdigos de
conducta que definen los estndares de comportamiento
esperados de sus miembros
Ing. Marco Aedo Lpez
CUESTIONARIO
1. Considerando la distribucin de costos, por
qu es apropiado considerar al sw como ms
que programas ejecutables?
2. Analice las diferencias entre el desarrollo de
software genrico y personalizado
3. Enumere otros 4 atributos importantes que
deba tener el sw. Justifique
4. Por qu los costos de las pruebas son altos
para el desarrollo de sw genrico?
Ing. Marco Aedo Lpez
ENLACES
Online Ethics Center for Engineering and Science
http://onlineethics.org/
Software Engineering Ethics Research Institute
http://seeri.etsu.edu/

Vous aimerez peut-être aussi