Indice
Introduccin3
TEMA 1. Fases del anlisis orientado a objetos
2.1 Clase
2.2 Atributo
2.3 Mtodo
2.4 Encapsulamiento
2.5 Polimorfismo
2.6 Herencia
2.7 Relaciones
6
7
8
9
10
10
10
11
11
12
13
13
TEMA 3. Requerimientos15
3.1 Clasificacin de requerimientos
3.2 Tcnicas de captacin de requerimientos
17
18
21
IDEAS FUERZA
23
BIBLIOGRAFA24
Unidad 1: Introductorio
Introduccin
La tecnologa avanza vertiginosamente lo que conlleva a que los sistemas se deban adecuar de la
manera ms natural posible a dichos avances. Todos los sistemas estn afectos a cambios de esta
ndole, cambios que se deben enfrentar desde una perspectiva analtica, sin afectar al normal
funcionamiento de stos.
La orientacin a objetos es una metodologa que permite realizar anlisis, desarrollo e implementacin de cualquier sistema, y su uso correcto permite que ste sea consistente entre lo que ha
sido definido en una primera etapa y lo que se obtiene una vez que ha sido construido.
Los objetos son una parte fundamental en todo sistema integrado, los cuales se tornan cada vez
ms complejos debido a las condiciones externas e internas que los afectan. Adems, se debe
tener presente que las normas, fases y estructuras disponibles para realizar el correcto anlisis de
un sistema y poder lograr bosquejar una correcta solucin, sern diferentes dada la naturaleza del
problema. A esto se suma que todo ente que interacta con otro tendr, de una u otra manera,
incidencia en el resultado final del estudio, por tanto, se torna relevante el definir de ante mano,
valores, actores, lmites o fronteras, acciones, dependencias, condiciones, restricciones y mbito
en el cul se desarrollar la solucin y la incidencia de sta con el entorno.
Unidad 1: Introductorio
Justificar los
casos de uso
Captura de
requerimientos
Documentar
diagramas de clases
Elaborar diagramas de
actividad
Elaborar diagramas de
estado
Unidad 1: Introductorio
Captura de requerimientos, donde se solicita la informacin necesaria para poder saber exactamente que se necesita que haga el programa, identificar problemas y soluciones deseadas,
entre otros.
Formular el diagrama de clases, en esta etapa se deben identificar las clases, las relaciones
entre ellas y los atributos de cada una, adems de describir las operaciones que ofrecern
cada una de ellas.
Elaborar diagramas de estado, en esta etapa es necesario realizar una descripcin a travs
de los diagramas de estados el modelo interno de las clases que se identificaron en la etapa
anterior.
Elaborar diagramas de actividad, luego que ya tenemos definidas las clases y los diagramas
de esto debemos describir mediante diagramas de actividad los algoritmos que describen las
operaciones de la clase.
Justificar los casos de uso, para finalizar, ser necesario justificar los casos de uso del problema desde los diagramas de objetos, detallndolos para los objetos recin identificados.
Es importante tener presente que toda problemtica tendr un universo de aristas por las cuales
ser posible pre-visualizar una salida lgica para dar solucin a lo planteado, pero es relevante
recopilar la mayor cantidad de informacin con el propsito de estructurarla, usando alguna metodologa de resolucin de problemas.
El correcto proceso de anlisis de la problemtica permitir la toma correcta de decisiones y sin
duda un mejor control sobre las operaciones, una gestin eficiente de proyectos y un uso adecuado de las tecnologas existentes. Por el contrario, el uso no adecuado de la informacin de entrada,
la incorrecta manipulacin de los datos o el insuficiente control de cada entrada y salida, generarn
costos adicionales los que, en definitiva, se traducirn en prdida de tiempo y gastos de recursos
adicionales no contemplados en una primera etapa.
Unidad 1: Introductorio
2.1 Clase
Las clases son un conjunto de objetos que poseen caractersticas y comportamientos idnticos, esto quiere decir, que los objetos son definibles con los mismos atributos, operaciones (mtodos) y relaciones.
La representacin grfica de una clase est compuesta por un rectngulo con tres divisiones en
su interior. Toda clase debe tener un nombre que le permita distinguirse de las dems clases del
modelo. Dicho nombre, por lo general, es un sustantivo empleado en forma singular, expresado en
forma simple. Observa la siguiente figura en la que grficamente se denota una clase, el nombre
que la define sera pelota:
Pelota
Unidad 1: Introductorio
2.2 Atributo
Son generalmente utilizados para definir los valores de los datos sin identidad, tales como nmeros y cadenas de caracteres. En este sentido, un atributo define las caractersticas que posee una clase. Observa
el ejemplo en el que se detallan los atributos de la clase llamada pelota, que de acuerdo a lo expuesto,
posee los atributos: tamao-actual, color-actual y estado-actual.
Pelota
+tamao-actual
+color-actual
+estado actual
Figura 2: pelota de basquetbol y el equivalente de sta graficado en una clase con sus atributos.
Dado que no es necesario exponer todas las caractersticas de la clase al momento de generar el diagrama, es posible mostrar solo los atributos y mtodos bsicos que la definen. El nivel de detalle de la
clase depender, por una parte, del software con el que se generen los diagramas y por otra, del nivel de
abstraccin al cual se est haciendo referencia, que por lo general corresponde a la vista analtica o de
implementacin.
Los atributos describen las caractersticas propias de los objetos que son parte de una clase. La notacin
para definir los atributos de una clase est dada por la siguiente sintaxis:
Unidad 1: Introductorio
Pelota
+tamao-actual: string = pequea {pequea,mediana,grande}
+color-actual: string = rojo {verde,rojo,blanco,azul}
+estado actual: boolean = false
Figura 3: clase pelota y sus atributos. Fuente: Elaboracin propia.
2.3 Mtodo
Los mtodos describen el comportamiento o las acciones a las que pueden responder los objetos
de una clase. Por ejemplo: Una persona puede comer, dormir, estudiar, trabajar, comprar, etc. Cada
una de estas acciones constituyen los mtodos de la clase Persona. La notacin para definir los
mtodos est dada por la sintaxis:
Unidad 1: Introductorio
+ rebotar()
+ rodar()
+ inflar()
Pelota
+tamao-actual
+color-actual
+estado actual
Tambin es posible generar un mayor nivel de detalle en los mtodos que componen la clase. De
acuerdo a lo anterior, solo se sabe que la pelota rebota, rueda y se infla. Pero es posible agregar a
cada uno de esos mtodos informacin adicional para, eventualmente, indicar que dicho mtodo
tendr un comportamiento distinto de acuerdo a ciertas condiciones de entrada.
En la siguiente imagen se exponen mtodos con mayor grado de detalle, segn el formato previamente definido:
Pelota
+tamao-actual: string = pequea {pequea,mediana,grande}
+color-actual: string = rojo {verde,rojo,blanco,azul}
+estado actual: boolean = false
+rebotar (altura: integer = 10): integer
2.4 Encapsulamiento
Es un mtodo de diseo que consiste en ocultar la composicin de los objetos de manera tal que
slo se aprecien los resultados asociados a la funcionalidad de ellos.
Unidad 1: Introductorio
2.5 Polimorfismo
Es la capacidad que tienen los objetos de una clase de responder al mismo mensaje o evento en
funcin de los parmetros utilizados durante su invocacin. Un objeto polimrfico es una entidad
que puede contener valores de diferentes tipos durante la ejecucin del programa.
2.6 Herencia
Consiste en crear objetos tipo, que poseen caractersticas y acciones definidas usables por cualquier
objeto que las necesite, permitiendo, adems, ampliar ese rango de caractersticas y funcionalidades.
2.7 Relaciones
En un diagrama de clases permiten que estas interacten entre s, dado que, por lo general, las
clases son objetos que en su conjunto componen elementos estticos que dan cuenta de la problemtica. No se consideran como elementos aislados dentro del diagrama, por lo que es necesaria
una o ms relaciones que les permitan interactuar.
La relacin bsica que existe en un modelo o diagrama de clases es la asociacin. Por definicin,
este tipo de relacin corresponde a una relacin semntica entre los objetos de dichas clases. La
asociacin es una relacin estructural que indica que los objetos de una clase estn conectados
con los objetos de otra. Cuando la asociacin entre los objetos es de tipo semntica, se dice que la
asociacin es binaria. Esto quiere decir que existe un nmero determinado de ocurrencias que
pueden suceder de acuerdo a la naturaleza de la relacin.
Propietari o
Vehiculo
+posee
1..*
+pertenece a 0..*
Cliente
Cuenta
+posee
0..*
En las imgenes se ilustran dos tipos de navegacin entre clases: la primera asocia al propietario con
el vehculo. La lectura que puede darse al tipo de relacin es: la persona posee cero, uno o muchos
vehculos y el vehculo pertenece a un propietario. El segundo caso da cuenta que un cliente posee
cero, una o muchas cuentas, pero no se especifica cuntos clientes son dueos de esa cuenta.
Unidad 1: Introductorio
10
Para profundizar
Nombre: una relacin puede tener un nombre que es usado para describir la naturaleza de ella.
Esto permite eliminar cualquier ambigedad en el significado que se le quiera dar. Es importante
mencionar que el nombre de la relacin debe ser nico en todo el diagrama de clases.
Rol: cuando las clases que participan de la relacin juegan un rol especfico, este debe ser indicado
como corresponde. Normalmente, se usa un nombre descriptivo al final de la lnea, en cada lado de
la relacin.
Multiplicidad o cardinalidad: indica la cantidad de objetos que se encuentran conectados en
una instancia de asociacin. Dicho de otra forma, las veces que una puede ocurrir en relacin con la
otra.
Tomando en consideracin la definicin de multiplicidad o cardinalidad, podemos ver que esta posee
diferentes rangos. Estos pueden ser:
Pais
+tiene
+pertenece a
Capital
2.7.2Uno a muchos 1*
Una persona posee una o muchas credenciales y esas credenciales corresponden a solo una persona.
Persona
+tiene
1
+pertenece a
Credencial
Dentro de la relacin uno a muchos (1..*) es posible encontrar un tipo de relacin especial, en la cual
uno o ms atributos identifican en forma unvoca a la clase, que es la base para que se genere la relacin.
Este tipo de relacin se conoce como asociacin calificativa. Observa el siguiente ejemplo:
Unidad 1: Introductorio
11
Bus
+patente
Recorrido
+tiene
1..*
Figura 10: ejemplo de cardinalidad uno a muchos, asociacin calificativa. Fuente: elaboracin propia.
Para identificar a cada bus en particular se utiliza el atributo patente, que a su vez es la base para la relacin del recorrido asociado a este. Tambin es posible que objetos del mismo tipo se relacionen entre s,
dando origen al tipo de relacin conocida como asociacin reflexiva, donde el nombre de la relacin clarifica el rol que cumple el objeto al relacionarse consigo mismo, como se aprecia en el siguiente ejemplo:
es jefe de
Empleado
1..*
Figura 11: ejemplo de cardinalidad uno a muchos, asociacin reflexiva. Fuente: elaboracin propia.
Doctor
Paciente
atiende
1
1..10
Figura 12: ejemplo de cardinalidad un nmero especfico de ocurrencias. Fuente: elaboracin propia.
Unidad 1: Introductorio
12
Cliente
+posee
+corresponde a
Cuenta
1..*
+tiene
+es de
Tarjeta
de credito
0..*
Figura 13: ejemplo de cardinalidad cero a muchos. Fuente: elaboracin propia.
Un cliente que posee una o muchas cuentas, no est obligado a tener tarjetas de crdito, por lo tanto,
efectivamente, puede o no tener tarjetas de crdito.
Profesor
Asignatura
dicta
*
Una asociacin muchos a muchos, tambin descrita como asociacin n..n, indica que las ocurrencias
pueden ser mltiples en ambos sentidos. Segn el siguiente ejemplo, es posible deducir que un profesor
dicta una o muchas asignaturas y las asignaturas pueden ser dictadas por muchos profesores.
Profesor
Asignatura
dicta
*
Catedra
Figura 15: ejemplo de clase de asociacin. Fuente: elaboracin propia.
Unidad 1: Introductorio
13
En este caso, Ctedra es una clase de asociacin entre Profesor y Asignatura. Una forma ms elaborada de componer las asociaciones es tratarlas como agregacin. Existen tres tipos de agregaciones:
Agregacin normal.
Agregacin compartida.
Agregacin de descomposicin.
En cada uno de estos tipos de agregacin es posible indicar el grado de acoplamiento entre las clases, es
decir, cuanto afecta el comportamiento de una clase sobre otra. Tambin es posible unir clases en forma
semntica y dependientes unas de otras, esto quiere decir que una clase podra trabajar en conjunto con
otra clase para lograr un objetivo comn. Al respecto, se distinguen dos tipos:
Relacin de dependencia.
Relacin de generalizacin.
En estos tipos de relacin, la composicin de las clases est vinculada entre s, por lo tanto, la relacin
entre ellas es ms fuerte debido a la informacin que maneja una respecto a la otra.
Para profundizar
Unidad 1: Introductorio
14
TEMA 3. Requerimientos
Todo sistema de informacin existe para dar solucin a problemas y/o necesidades comunicacionales. Es lgico decir que cada vez que se presenta una necesidad de informacin, aparecer un sistema que intente mejorar esta situacin. Estos se construirn pensando en que su comportamiento
futuro con el medio, los flujos de informacin en los que participe y sus actividades de control,
harn desaparecer el problema detectado. Al comenzar la exploracin de los requerimientos,
generalmente ocurren dos hechos bsicos:
Los clientes y usuarios se renen con el equipo informtico, dando su visin acerca de la
situacin actual, sus consecuencias y que solucin esperan obtener.
En esta primera fase, l labor del equipo informtico ser la de preguntar, analizar, internalizar y presentar una solucin que resuelva de la forma ms adecuada el problema.
Por lo tanto, de manera ms esquemtica, podemos decir que nuestra labor ser investigar la situacin actual de la organizacin, al punto de conocer a fondo los procesos que se estn llevando a cabo.
Esto lo hacemos para tomar conocimiento del entorno en el cual trabajaremos, de la misma forma en
que un mdico, para poder realizar un diagnstico, enfoca su atencin en las dolencias que tenemos
y es por esto que necesitamos identificar y comprender los requerimientos del cliente.
Necesidad de informacin.
Idea de un nuevo sistema
Anlisis del
problema
Conjunto de Requisitos
Descripcin del
producto
Diseo
Tal como lo vemos en la imagen anterior el analizar el problema nos ayuda a conocer el contexto sobre el cual trabajaremos, comprender cmo trabajan actualmente los procesos dentro de
la organizacin bajo estudio y las decisiones que toman, visualizar la interaccin con sistemas y
entidades externas, como tambin comprender las causas del problema y sus consecuencias en
la actualidad. Recuerda que debemos conocer la organizacin para diagnosticar. Mientras que
la descripcin del producto se realiza una vez que hemos comprendido el problema y su entorno.
Unidad 1: Introductorio
15
En este punto usaremos ese conocimiento (definicin del problema) para describir la meta que
deseamos lograr con el desarrollo del nuevo sistema. La descripcin del producto la realizaremos
de manera operativa, es decir, detallaremos lo que ser capaz de hacer el sistema para resolver
el problema o necesidad. Posteriormente, la fase de diseo da forma a los requerimientos establecidos previamente. Aqu se nos permite modelar la arquitectura del hardware y software, los componentes, mdulos y datos de un sistema de informacin, para satisfacer ciertos requerimientos.
Los requerimientos involucran tareas o actividades relacionadas a la determinacin de las necesidades, condiciones o requisitos que debe satisfacer un software, sea este un nuevo producto o la
modificacin de alguno existente. Un requerimiento emana de una necesidad directa solicitada por
alguien, necesidad que debe ser resuelta de acuerdo a peticiones especficas.
En el mbito del desarrollo de software, los requerimientos son fundamentales para evaluar alternativas de solucin, puesto que son, en definitiva, los que permiten realizar un primer acercamiento a posibles soluciones dentro del marco establecido para ello. Estos representan:
Cabe sealar que una buena especificacin de requerimientos no es factible de lograr 100% en un
primer encuentro o acercamiento con el usuario, principalmente porque en algunos casos se dan
situaciones tales como:
Unidad 1: Introductorio
16
En definitiva, los requerimientos definen el problema y el diseo define la solucin, por lo tanto, un buen anlisis de requerimientos no da por sabidas situaciones que podran ser obvias, no
existen alternativas por defecto, ni se describen situaciones especficas, a no ser que el cliente lo
requiera en cuanto a software o hardware.
a)Requerimientos funcionales: Permiten describir la funcionalidad del o los servicios que el nuevo
software proveer. En este aspecto dependen del tipo de software a desarrollar y los posibles usuarios de
l. Cuando estos requerimientos representan requisitos de usuario son especificados en forma general,
pero cuando se tratan como requisitos del sistema, son detallados indicando claramente la funcionalidad,
las entradas y salidas correspondientes a los procesos asociados. Por ejemplo:
Requisitos legales,
Requerimientos de equipamiento tcnico,
Requerimientos de personal calificado, etc.
Y ms especficamente:
c)Requerimientos de dominio: Estn referidos a aquella parte del diseo que es particular (entorno
directo) al problema que se desea resolver. En este aspecto, no es posible ofrecer una metodologa para
realizar el anlisis, puesto que, en cada caso, el requerimiento es diferente. Por ejemplo, los requerimientos de dominio (particulares) de una aplicacin web, pueden ser muy distintos a los requerimientos de
dominio de un sistema de escritorio.
Unidad 1: Introductorio
17
Requerimientos
Permite a los desarrolladores explicar cmo han entendido lo
que el cliente espera que el sistema realice.
a)Entrevista: es un acto de comunicacin verbal que puede establecerse entre dos o ms personas,
con el propsito de obtener informacin. Es ideal que el entrevistado conozca el negocio o bien los procesos que intervienen en la problemtica en estudio, de tal manera que toda informacin obtenida sea
lo ms certera posible y represente la real necesidad del momento. El tipo de preguntas a realizar puede
ser:
Abiertas: preguntas que dan la posibilidad de respuestas amplias. Por ejemplo: cmo evaluara
el actual sistema en cuanto a los procesos que involucra? el sistema es relativamente estable en
condiciones ambientales normales?
Cerradas: preguntas de las que se espera una respuesta concreta. Por ejemplo: el sistema debe
estar operativo las 24 horas? Cuntas personas utilizan el sistema?
Unidad 1: Introductorio
18
Hipotticas: son aquellas preguntas que plantean, como su nombre lo indica, situaciones hipotticas. Por ejemplo: qu sucedera si el servidor de base de datos deja de funcionar en algn momento?
De sondeo: son preguntas que permiten obtener informacin extra para interiorizarse en el tema.
Por ejemplo: existe algn encargado de revisar el equipamiento computacional en forma permanente? ha previsto tener un sistema de respaldo de informacin?
Es importante mencionar que el tipo y la cantidad de preguntas a realizar estarn ligadas directamente al mbito asociado del problema, por tanto puede ser necesario realizar ms de un tipo de
ellas para obtener informacin relevante para el o los desarrolladores.
b)Encuesta: corresponde a un tipo de estudio en el cual el investigador utiliza un cuestionario prediseado, sin modificar, alterar o controlar el proceso que se investiga. La informacin es obtenida a partir
de un conjunto de preguntas normalizadas y dirigidas a una muestra representativa de las personas que
componen el entorno en el cual se presenta la problemtica. La forma temtica de preguntas normalmente involucra alternativas en las respuestas, en donde el encuestado debe seleccionar la que mejor
representa la realidad que vive en torno al problema. Es importante mencionar que la persona o el grupo
que aplica la encuesta debe seleccionar el conjunto de preguntas ms representativo de acuerdo a la
naturaleza de lo que se analiza.
c)Observacin directa: mediante esta tcnica es posible recopilar informacin observando el entorno, las personas y las actividades que cada uno de ellos realiza. De esta forma, quien realiza el estudio,
puede obtener datos acerca de procedimientos y funciones, adems de saber quines son los encargados de realizarlos.
Los tres mtodos antes mencionados nos ayudarn a levantar requerimientos, pero para poder tener una
visin completa del problema necesitamos conocer tambin el contexto sobre el cual trabajaremos, comprender cmo se trabajan actualmente los procesos dentro de la organizacin bajo estudio y las decisiones que toman. De esta forma se puede visualizar y comprender la interaccin con sistemas y entidades
externas, entender por qu surge el problema (causas) y cmo afecta en la actualidad (consecuencias).
Algunas preguntas que te pueden ayudar en tu investigacin podran ser:
A qu se dedica la empresa?
Cules son los datos que el sistema requiere para poner en marcha sus procesos?
Cules son las restricciones de tiempo existentes?
Cules son las cargas de trabajo mnimas y mximas?
Cules son las medidas de desempeo que presenta la organizacin?
19
Todas las preguntas anteriores, adems de comprender la situacin actual se busca descubrir y
comprender las necesidades del usuario, ya que debemos ser conscientes de que el sistema que
desarrollaremos ser la herramienta de trabajo que diariamente usarn para trabajar.
Unidad 1: Introductorio
20
Unidad 1: Introductorio
21
Cuando todos los antecedentes han sido analizados en el contexto adecuado, es posible realizar
un listado de los principales requerimientos y ordenarlos en funcin de las principales necesidades
acotadas por el cliente. Mediante este listado, ser posible formalizar las actividades que deben
ser realizadas para alcanzar dichos requerimientos.
El anlisis de requerimientos puede ser apoyado usando metodologas diseadas para hacer ms
fcil la tarea de captura.
Los sistemas han evolucionado tanto como las tecnologas que ellos utilizan, es por este motivo,
que las metodologas de desarrollo de software han migrado a plataformas que permiten al equipo desarrollador contar con una base de conocimiento que es posible utilizar, independiente del
enfoque que se quiera dar a la solucin.
Tradicionalmente se usaban esquemas de anlisis estructurado, lo que ha evolucionado a lo que
hoy se conoce como metodologas giles, que permiten el desarrollo de productos de software en
periodos cortos de tiempo, acoplndose perfectamente con las estructuras de orientacin a objetos que utilizan la mayora de los lenguajes de programacin actuales.
Unidad 1: Introductorio
22
IDEAS FUERZA
El anlisis orientado a objetos toma sentido y fuerza a la hora de enfrentar problemticas y proponer alternativas de solucin. Cabe sealar que los trminos que involucran las metodologas
constituyen estndares, con el propsito de reunir la mayor cantidad de informacin a la hora de
realizar el anlisis previo.
En definitiva, la orientacin a objeto no es tan slo un concepto abstracto que debe ser aplicado
al desarrollo de soluciones, sino un conjunto de herramientas que permiten dar solucin en forma
lgica y precisa a un problema planteado.
Unidad 1: Introductorio
23
BIBLIOGRAFA
Booch, G. (1996). Anlisis y diseo orientado a objetos con aplicaciones. Segunda
edicin. Mxico: Prentice Hall.
Spark Systems. (2012). Tutorial UML 2.0: Diagrama de Tiempo UML 2. Disponible
en: http://www.sparxsystems.com.ar/resources/tutorial/uml2_timingdiagram.htm
Yourdon, E. (1998). Modern Structured Analysis. USA: Prentice Hall.
Bibliografa obligatoria
Fontela, C. (2011). UML: modelado de software para profesionales. Argentina, Buenos Ares: Alfaomega Grupo Editor.
Gutierrez, C. C. (2011). Casos prcticos de UML. Madrid, ES: Editorial Complutense.
Disponible en: http://site.ebrary.com/lib/inacapsp/detail.action?docID=10536104
&p00=Casos+pr%C3%A1cticos+de+UML
Vlez, S. J., Pea, A. A., & Gortazar, B. P. (2011). Disear y programar, todo es empezar: una introduccin a la Programacin Orientada a Objetos usando UML y Java.
Madrid, ES: Dykinson. Disponible en: http://site.ebrary.com/lib/inacapsp/detail.act
ion?docID=10559590&p00=Dise%C3%B1ar+y+programar%2C+todo+es+empezar%
3A+una+introducci%C3%B3n+a+la+programaci%C3%B3n+orientada+a+objetos+us
ando+UML+y+Java
Kimmel, P. (2002). Manual de UML. Mxico, D.F., MX: McGraw-Hill Interamericana.
Disponible en: http://site.ebrary.com/lib/inacapsp/detail.action?docID=10433806
&p00=UML%3A+modelado+de+software+para+profesionales
Casas, R. J., & Conesa, I. C. J. (2014). Diseo conceptual de bases de datos en UML.
Barcelona, ES: Editorial UOC. Disponible en: http://site.ebrary.com/lib/inacapsp/
detail.action?docID=10903566&p00=Dise%C3%B1o+conceptual+de+bases+de+da
tos+en+UML
Bennett, S. (2006). Anlisis y diseo orientado a objetos de sistemas usando UML.
Mxico D. F.: McGraw Hill.
Schach, S. R. (2006). Ingeniera de software clsica y orientada a objetos. Mxico D.
F.: McGraw Hill Interamericana
Bibliografa obligatoria
Sparx Systems. (2010). Introduction to enterprise architect, UML Modeling Tool.
Australia: Sparx Systems. Disponible en: http://www.sparxsystems.com/enterprise_architect_user_guide/9.3/introduction/introduction.html
Stevens, P. (2007) Utilizacin de UML en ingeniera del software con objetos y componentes. Espaa: Pearson Educacin.
Unidad 1: Introductorio
24