Você está na página 1de 27

Anlisis y Diseo Orientado a Objetos

Introduccin a la Ingeniera de Software


Page 2
Los temas del da
La ingeniera de software
La crisis del software
Desarrollo de software
La psicologa de los objetos cotidianos
Page 3
Page 4
Los problemas habituales
Entregas de productos demoradas (Delivery)
Proyectos fuera de presupuesto (Budget)
Recortes en la funcionalidad inicialmente acordada (Scope)
Atributos basicos de calidad no satisfechos (Quality)
Disponibilidad
Performance
Escalabilidad
Seguridad
Usabilidad
Correctitud / Completitud
Mantenimiento excesivo y caro (Budget)
Page 5
Algunos Datos
70 % de las aplicaciones
tiene problemas
disponibilidad o
Performance (Epidata).
75% of new J2EE
rollouts use more
hardware to fix
performance (Giga).
50% of all deployed
applications are rolled
back (Gartner).
At least 80 percent of
applications put into
production environment
will fail due to poor
quality issues through
2007 (Gartner).
Page 6
La visin desde la Calidad
Requisitos
del Cliente
Producto
Desarrollado
Page 7
La visin desde la Calidad*
(Habindose entendido la necesidad de una visin desde la calidad)
* Mara del Mar Fuentes Fuentes, Francisco Javier Llorens Montes
Page 8
Que es la ingeniera? Definicin
Utilizamos la ingeniera para:
Crear soluciones eficientes
A problemas prcticos
Aplicando conocimiento cientfico
Construyendo cosas
Al servicio de la humanidad
Page 9
La evolucin de la Ingeniera*
* Mary Shaw - Prospect for an Engineer Discipline of Software
Page 10
La idea de una Ingeniera para el Software
* SEI Web site
Page 11
NATO Softwaer Engineering Conference*
The term software engineering first appeared in the 1968
NATO Software Engineering Conference and was meant to
provoke thought regarding the current "software crisis" at the
time.
Projects running over-budget.
Projects running over-time.
Software was very inefficient.
Software was of low quality.
Software often did not meet requirements.
Projects were unmanageable and code difficult to maintain.
Software was never delivered.
*Wikipedia EN
Page 12
Un gran Ingeniero de Software
La principal causa de la crisis del software es que las mquinas
[computadoras] se han desarrollado en varios rdenes de magnitud ms!
[respecto de la capacidad de procesamiento]
Para decirlo sin rodeos: cuando no existan mquinas, la programacin
no era problema en absoluto, cuando haba algunos pocos dbiles
ordenadores, la programacin se convirti en un problema leve, y ahora
tenemos computadoras gigantescas, la programacin se ha convertido en
un problema igualmente gigantesco.
Edsger Dijkstra,
The Humble Programmer (EWD340),
Communications of the ACM
Page 13
Grandes Ingenieros de
Software
1950
2010
1960
1970
1980
1990
Edsger Dijkstra
Tim Berners-Lee
Robert Floyd
Alan Kay
Fred Brooks
Kent Beck
Barry Boehm
http://en.wikipedia.org/wiki/Category:Software_engineers
David Parnas
Tom DeMarco
2000
Page 14
Page 15
La Ingeniera de Software
Desarrollo de
Software
Calidad
Comercializacin
y Aspectos
Legales
Educacin Formal
Direccin de
Proyectos
Page 16
Desarrollo de
Software
La Ingeniera de Software
Desarrollo de
Software
Calidad
Comercializacin
y Aspectos
Legales
Educacin Formal
Direccin de
Proyectos
Page 17
Desarrollo de Software
ADOO
Arquitectura
Requerimientos
Page 18
Desarrollo de Software
ADOO
Arquitectura
Requerimientos
Page 19
Anlisis y Diseo Orientado a Objetos
En que vamos a trabajar?
Principios de la Ingeniera de
Software
Principios bsicos de diseo
Paradigma de Objetos
Objetos
Mensajes
Mtodos
Herencia
Polimorfismo
Delegacin
TDD
Patrones
Framework
Arquitectura de Software
Page 20
Ya que no todo es diseo.
Page 21
Actividades para la Prxima Semana
Lecturas Obligatorias
No Silver Bullet Frederick
Brooks.
Nuevos Paradigmas en la
Ingeniera de Software,
Ing. Mateo Gomez Ortega.
(Kenintro200103)
Lecturas Adicionales
The early story of smalltalk,
Alan Kay.
Maria del Mar Fuentes Fuentes,Francisco Javier Llorens Montes / Calidad Total - Fundamentos E
Implantacion.
Mary Shaw - Prospect for an Engineer Discipline of Software
http://www.inf.ed.ac.uk/teaching/courses/seoc/2005_2006/resources/bullet08.pdf
Software Engineering http://en.wikipedia.org/wiki/Software_engineering
Edsger Dijkstra, The Humble Programmer (EWD340), Communications of the ACM
Referencias y Citas
Actividad
Page 24
La psicologa de los objetos cotidianos
Leer el primer capitulo de La Psicologa De Los Objetos Cotidianos de
Donald Norman.
Luego:
Realice una breve sntesis del texto.
Proponga estrategias que basndose en el texto
puedan ser utilizadas en el Diseo Orientado a
Objetos.
Cada equipo deber encontrar un consenso entre sus
miembros para luego presentar sus ideas al resto de la clase
Page 25
La psicologa de los objetos cotidianos
Las prestaciones aportan claras pistas del funcionamiento
de las cosas. Las placas son para empujar, los pomos para
darles la vuelta. Las ranuras para insertar cosas en ellas. Las
pelotas para lanzar o botar. Cuando se aprovechan las
prestaciones, el usuario sabe que hacer con slo mirar: no
hace falta una imagen, una etiqueta ni una instruccin. Las
cosas complejas pueden exigir una explicacin, pero las
sencillas no deberan exigirla.
Cuando las cosas sencillas necesitan imgenes, etiquetas o
instrucciones, es que el diseo ha fracasado.
*Wikipedia EN
Page 26
La psicologa de los objetos cotidianos
La falta de retroalimentacin inmediata de lo
que hace uno no sirve precisamente de
ayuda: con un plazo de veinticuatro horas,
quin va a recordar lo que intent hacer?
*Wikipedia EN
Page 27
La psicologa de los objetos cotidianos
Cuando el nmero de mandos es igual al
nmero de funciones, cada mando puede ser
especializado y llevar una indicacin. Las
funciones posibles son visibles, pues cada
una corresponde a un mando. Si el usuario
olvida las funciones, los mandos sirven de
recordatorio.
*Wikipedia EN

Você também pode gostar