Ejercicios del ejemplo práctico de GUI y gráfi cos

5.1  

Dibuje 12 círculos concéntricos en el centro de un objeto 

JPanel

 (fi gura 5.28). El círculo más interno debe tener 

un radio de 10 píxeles, y cada círculo sucesivo debe tener un radio 10 píxeles mayor que el anterior. Empiece por buscar el 
centro del objeto 

JPanel

. Para obtener la esquina superior izquierda de un círculo, avance un radio hacia arriba y un radio 

a la izquierda, partiendo del centro. La anchura y la altura del rectángulo delimitador es el diámetro del círculo (el doble del
radio).

5.2

Modifi que el ejercicio 5.16 de los ejercicios de fi n de capítulo para leer la entrada usando cuadros de diálogo, y mos-

trar el gráfi co de barras usando rectángulos de longitudes variables.

5.11 (Opcional) Ejemplo práctico de Ingeniería de Software: 
cómo identifi car los estados y actividades de los objetos

En la sección 4.15 identifi camos muchos de los atributos de las clases necesarios para implementar el sistema 
ATM, y los agregamos al diagrama de clases de la fi gura 4.24. En esta sección le mostraremos la forma en que 
estos atributos representan el estado de un objeto. Identifi caremos algunos estados clave que pueden ocupar nues-
tros objetos y hablaremos acerca de cómo cambian los objetos de estado, en respuesta a los diversos eventos que 
ocurren en el sistema. También hablaremos sobre el fl ujo de trabajo, o

actividades

, que realizan los objetos en 

el sistema ATM. En esta sección presentaremos las actividades de los objetos de transacción 

SolicitudSaldo

 y 

Retiro

.

Diagramas de máquina de estado

Cada objeto en un sistema pasa a través de una serie de estados. El estado actual de un objeto se indica mediante 
los valores de los atributos del objeto en cualquier momento dado. Los 

diagramas de máquina de estado

(que

se conocen comúnmente como 

diagramas de estado

) modelan varios estados de un objeto y muestran bajo 

qué circunstancias el objeto cambia de estado. A diferencia de los diagramas de clases que presentamos en las 
secciones anteriores del ejemplo práctico, que se enfocaban principalmente en la estructuradel sistema, los diagra-
mas de estado modelan parte del comportamiento del sistema. 

La fi gura 5.29 es un diagrama de estado simple que modela algunos de los estados de un objeto de la clase 

ATM

. UML representa a cada estado en un diagrama de estado como un 

rectángulo redondeado

 con el nom-

bre del estado dentro de éste. Un 

círculo relleno

con una punta de fl echa designa el 

estado inicial

. Recuerde 

que en el diagrama de clases de la fi gura 4.24 modelamos esta información de estado como el atributo 

Boolean

de nombre 

usuarioAutenticado

. Este atributo se inicializa en 

false

, o en el estado “Usuario no autentica-

do”, de acuerdo con el diagrama de estado.

Las fl echas indican las 

transiciones

 entre los estados. Un objeto puede pasar de un estado a otro, en respuesta 

a los diversos eventos que ocurren en el sistema. El nombre o la descripción del evento que ocasiona una transi-
ción se escribe cerca de la línea que corresponde a esa transición. Por ejemplo, el objeto 

ATM

 cambia del estado 

“Usuario no autenticado” al estado “Usuario autenticado”, una vez que la base de datos autentica al usuario. En 
el documento de requerimientos vimos que para autenticar a un usuario, la base de datos compara el número de 

Figura 5.28 

 |  Cómo dibujar círculos concéntricos.

5.11 (Opcional) Ejemplo práctico de Ingeniería de Software: como identifi car los estados y ... 

197

05_MAQ_CAP_05.indd197

4/19/081:21:39AM