Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Informáticos
ANALISIS Y DISEÑO DE
SISTEMAS
Año 2019
PRESENTACION.
1
En la guía se enuncian los diferentes conceptos teóricos y ejemplos
de aplicación de los mismos. Sobre este material de estudio, se
recomienda una lectura lenta y comprensiva, releyendo en forma
reiterada todo aquello que el alumno no comprenda.
2
Es importante para el alumno la utilización de la herramienta de
foro que también provee nuestro campus virtual. En el módulo o en
las clases se utilizará:
Foro.
Atención o recuerde.
El icono de Lea con atención será usado cuando el texto para leer
con atención es largo y tal vez de allí surge una actividad o un
ejemplo posterior.
3
Las respuestas al trabajo práctico serán recibidas de modo que
puedan ser evaluadas por la cátedra. El segundo trabajo práctico se
realizará sobre el final de la cursada, y por las características de
desarrollo de la materia, el carácter del mismo será de integración de
todos los temas tratados.
4
etapa del diseño de un sistema pudiendo determinar con precisión el
papel del analista en todas las etapas de un proyecto.
5
INDICE.
Presentación. 001
Índice. 006
6
7. Método y Metodología. 074
8. Abstracción y Jerarquía. 075
9. El Proceso Unificado. 076
10. Importancia de los 3 conceptos básicos del Proceso 084
Unificado.
7
Unidad 5: La arquitectura dirige el Proceso. 119
1. La arquitectura. 119
2. Descripción de la arquitectura. 120
3. Objetivos de la arquitectura. 122
4. Restricciones de la arquitectura. 122
5. Desarrollo de la arquitectura. 124
6. Patrones de la arquitectura. 125
8
Unidad 8: Casos de Uso. 155 1
Glosario. 201
Bibliografía. 219
Modelo de Examen. 221
9
ANALISIS Y DISEÑO DE SISTEMAS.
1. Definición de sistemas.
2. Clasificación de sistemas.
3. Los actores en los sistemas de información.
4. Orígenes de solicitud de un sistema.
5. Solicitud de un proyecto.
6. Administración de la revisión y selección de un proyecto.
7. Requerimientos de un sistema.
8. Selección y contrato del software.
9. Recolección de datos.
10. La importancia de una Metodología.
1. Definición de Sistema.
10
Dentro de un sistema, sus elementos o subsistemas que lo
conforman, conviven y trabajan entre sí para alcanzar una meta u
objetivo común.
11
sistemas podemos destacar sistemas sociales (organizaciones
de leyes, doctrinas, costumbres, etc), sistemas de transportes
(redes de carretera, canales, aerolíneas, buques cargueros),
sistemas de comunicación (teléfono, señales de humo, señales
de manos), sistema de manufactura (fábricas, líneas de
ensamblado, etc), sistemas financieros (contabilidad,
inventarios, bolsas de valores), etc.
12
Los sistemas de información son como cualquier otro sistema
dentro de una empresa pues tienen propósitos e interactúan con
otros imponentes de la empresa. Su tarea consiste en procesar la
entrada, mantener archivos de datos en relación con la empresa
y producir información, informes y otras salidas.
13
Los sistemas de apoyo a la toma de decisiones, en contraste
apoyan a la toma de decisiones que está menos estructurada y no
rutinaria, es decir, aquellas decisiones donde parte del proceso de
decisión consiste en definir qué información es la necesaria y al
manera de utilizarla. El gerente define los formatos de los
informes durante el proceso real de decisión. No se desarrollan
antes de tiempo, los gerentes trabajan en forma interactiva con
una terminal. Los desarrolladores deben diseñar sistemas con la
flexibilidad necesaria para dar apoyo a los análisis especiales y a
las consultas no planeadas.
14
Estos sistemas de distribución de información están basados en
hipertextos o hipermedios enlazados y accesibles a través de
Internet. Con un navegador web, un usuario visualiza sitios web
compuestos de páginas web que pueden contener texto,
imágenes, videos u otros contenidos multimedia, y navega a
través de ellas usando hiperenlaces.
15
concreto, es el producto final de la empresa. La información que
circula en una empresa es la que hace que todos los sectores
terminen de vincularse entre sí. La información es un elemento
abstracto y su manejo es complejo.
3. Diseñadores de Sistemas.
16
4. Constructores de Sistemas.
5. Analistas de Sistemas.
Los usuarios del sistema son lo que definen los requerimientos del
negocio y las expectativas del sistema.
17
Usuarios Internos: Son aquellos empleados del negocio para el
cual se está construyendo el sistema y son el mayor porcentaje de
usuarios de un sistema. Dentro de este grupo tenemos:
18
Socios: son cualquier organización a la cual nuestra compañía
compre servicios o de la que sea socio. Ejemplo:
mantenimiento, manejo de la red, outsourcing, etc.
19
Arquitectos de redes: se especializan en redes y
telecomunicaciones.
20
programación. Ellos desarrollan y prueban programas de
computación que capturan y almacenan datos.
5. Analista de Sistemas.
21
procesos y la tecnología de la información pueden en conjunto
mejorar un negocio.
22
que apoyarse en los usuarios de los sistemas de información
para entender la cultura organizacional desde el punto de vista
que ellos tienen.
23
Su presencia en el negocio inicia el cambio. Como analista de
datos, usted debe estar consciente de este hecho y utilizarlo
como punto de partida para su análisis. De ahí que tenga que
interactuar con los usuarios la administración desde el principio
del proyecto. Sin su colaboración usted no podría entender lo
que ocurre en una organización y el cambio real nunca se
daría.
24
mayoría de los analistas de sistemas tienen algunas cualidades
comunes.
25
puede surgir un problema a resolver y en consecuencia se origina
la necesidad de solicitar una propuesta de aplicación.
26
En muchos negocios, el trabajo hecho en determinada área es
coordinado con el que se lleva a cabo en otra. Los sistemas de
información se utilizan para integrar las actividades que se
expanden alrededor de diversas áreas de la empresa.
27
Mayor velocidad en el Utilizar la capacidad de la
proceso. computadora para calcular,
clasificar y consultar datos e
información cuando se desea
una mayor velocidad que la del
personal que efectúa las mismas
tareas.
Mayor exactitud y mejor Llevar a cabo correctamente y en
consistencia la misma forma cada vez las
etapas de cálculo que incluyen
aritmética.
Consulta más rápida de la Localizar y consultar información
información del almacenamiento. Efectuar
rastreos complejos.
Integración de las áreas Coordinar las actividades del
del negocio negocio que se realizan en forma
separada de la empresa a través
de la captación y distribución de
la información.
Reducción de costos Utilizar la capacidad de cómputo
para procesar datos a un costo
menor que con otros métodos,
mientras se mantiene la exactitud
y los niveles de rendimiento.
Mayor seguridad. Salvaguardar los datos
confidenciales e importantes, de
manera que sean accesibles
solamente para aquellas
personas que tengan
autorización.
28
departamento o sector. El gerente de departamento que solicita
un proyecto no suele tener en cuenta la interacción con otros
departamentos Estos proyectos no suelen ser amplios y
abarcativos a toda la empresa, no benefician a otros
departamentos.
29
Los diferentes acontecimientos fuera de la compañía también
originan solicitudes de proyectos. Los grupos externos a la
empresa, por ejemplo organismos gubernamentales requieren
que las empresas usen sistemas especiales para contabilidad,
economía, leyes. Surgen diversas leyes u ordenanzas que las
empresas deben cumplir. Por lo tanto los proyectos que surgen
por este motivo tienen máxima prioridad con respecto a los
propios de la empresa y además tienen el mismo nivel de
importancia.
5. Solicitud de un proyecto.
30
El comité debe conocer si la solicitud del proyecto surgió por un
solo evento o su causa se debe a una situación recurrente. Si
existe un contínuo problema de control.
31
6. Administración de la revisión y selección de un proyecto.
32
En estos comités debe haber siempre un encargado de comité. El
encargado se especializa en llevar adelante la reunión. Su perfil
es muy característico, pues debe ser un muy buen líder.
Justamente es la persona que integra las opiniones de todos los
miembros, los ordena, y es que se encarga de resolver problemas
de comunicación entre todos cuando existen los desacuerdos. Su
rol es muy importante.
33
puesta en marcha de un proyecto. Este estudio preliminar ayuda a
los miembros del comité en el proceso de decisión.
34
Otras veces, se tienen que decidir cuestiones importantes sobre
equipos, herramientas de desarrollo para el área de sistemas,
capacitación para el personal de sistemas, cambios en los
sistemas operativos o lenguajes de programación, bases de
datos, etc. Si el área de sistemas tiene cierta autonomía y
presupuesto asignado para estas cuestiones, también se reúne
este comité. En este caso, los usuarios del área de sistemas
realizan sus propias solicitudes de proyectos hacia el encargado
de este comité.
35
usuarios del sector. En este caso se conforma un comité de
grupo de usuarios.
Los sectores que conforman este tipo de comité, son sectores que
tienen una autonomía propia y un presupuesto asignado. Este tipo
de presupuesto suele ser incrementado por grupos o empresas
externas a la compañía que les brindan apoyo monetario o a
través de sus propios servicios.
36
decisiones por “mano propia” y generalmente sus proyectos no
coinciden con las metas propias de la empresa. Dichos sistemas
de información concebidos bajo este tipo de decisiones son
sistemas que duplican información y no consideran la interacción
con otros departamentos. Por lo tanto, el sector de sistemas de la
empresa debe implementar varias tareas que solucionen los
problemas ocasionados.
7. Requerimientos de un Sistema.
37
procesar datos, producir información, controlar una nueva
actividad de negocio o dar apoyo a la gerencia.
38
Durante el análisis de los requerimientos básicos también se debe
determinar el tiempo del proceso y la cantidad de trabajo. La
frecuencia de las actividades del negocio varía enormemente.
Algunas actividades se llevan a cabo en todo momento del día,
otra son diarias, semanales o mensuales. El efecto de estas
actividades es totalmente distinto. Por eso es importante conocer
la frecuencia de las actividades. Es interesante conocer la función
de iniciación de la actividad para poder determinar su tiempo y la
cantidad de trabajo pues a veces es difícil obtener esta
información. El tiempo por sí mismo no determina la importancia
de la actividad aunque afecta directamente al proceso. En general
cuando una actividad se ejecuta con poca frecuencia tiene
asociado una gran cantidad de trabajo. Y las actividades muy
frecuentes se asocian con poco trabajo. Las actividades de poca
frecuencia son importantes y de gran complejidad.
39
de información una transacción es una actividad que necesita una
entrada de datos, realiza un cálculo o proceso y almacena otro
dato o conjunto de ellos. Es interesante averiguar en qué consiste
la operación de transacción, la persona que la realiza, su
operatoria el tiempo que necesita para llevarla a cabo y si existe
alguna condición diferente que afecte la forma en que las
transacciones sean procesadas. El analista de sistemas debe
averiguar los datos que se necesitan para procesar la transacción,
la información que genera y los datos que se almacenan.
40
En los negocios o empresas los departamentos dependen entre sí
para obtener un resultado exitoso. Surgen los requerimientos
para toda la empresa. Cuando los analistas estudian un proyecto
para un departamento, también deben tener en cuenta las
implicaciones que haya en otros departamentos que interactúan
con el sistema que se investiga. A veces los sistemas de
información ayudan a tareas que se llevan a cabo en varios
departamentos. En otros casos, los sistemas se operan en forma
separada dependen de datos que otros departamentos
proporcionan. Es responsabilidad de los analistas de sistemas
identificar las dependencias entre departamentos y determinar
cómo pueden afectar al proyecto de sistemas.
41
La selección de software es determinar si el software comercial
se adecua a una tarea específica y el arreglo de los términos de
contrato son responsabilidad de la empresa usuaria.
42
volumen de datos que debe almacenarse,
volumen de transacciones que se procesarán,
características únicas respecto a la aplicación que
requieran consideración especial,
requisitos de consulta,
mejoras futuras y apoyo a las mismas,
características de hardware y de comunicación que
requieren el software y
los límites del sistema.
43
podrían ofrecerse con diferentes formas de ordenarse y
presentarse. En la definición de parámetros, a su vez se observa
la flexibilidad. Una impresión de etiquetas que se pueda efectuar
en distintos tamaños se da sólo si el sistema es flexible y es
capaz de soportarlo. La entrada de datos es importante para
evaluar la flexibilidad. Es mejor ingresar el dato correspondiente a
un correo electrónico de una persona con la libertad de poder
escribirlo en dos o tres renglones que sólo tener disponibilidad
para uno.
44
tienden a confiar en exceso en los sistemas de información y esto
no es aconsejable.
45
el analista debe determinar quién lo llevará a cabo y a qué costo,
antes de que el acuerdo de compra se haya firmado.
46
proveedora. Se debe establecer también la cantidad de horas y de
personas que recibirán dicha capacitación.
47
La asignación de programación al cliente se llama cuando la
empresa contrata los servicios de una agencia independencia
para producir software. Se puede estipular si la labor se llevará a
cabo por un pago fijo o por el costo del trabajo del encargado. Se
puede llegar a sumar un porcentaje específico del costo que se
añade al costo original, considerándolo ganancia para el
encargado. También se puede sumar una cantidad fija de acuerdo
a duración por calendario o por horas.
48
mejoras en los casos en que el comprador desee efectuar un
contrato para llevar a cabo su propio mantenimiento.
9. Recolección de datos.
49
La utilización de los métodos mencionados no se lleva a cabo en
forma única. No es conveniente investigar con un solo método,
todos los métodos son complementarios para recopilar los datos.
Cada uno tiene ventajas y desventajas. Es importante usar varios
de estos métodos pues en la investigación es vital tener en cuenta
la verificación cruzada de datos.
9.1 Entrevistas.
50
Al evaluar las entrevistas, se debe tener en cuenta los datos que
se obtienen, el tipo de entrevista a desarrollar, las personas que
se entrevistan y la realización de la entrevista en sí.
51
Cuando se desea obtener datos de los gerentes de alto nivel, es
más fácil pedirles una entrevista a que llenen un cuestionario.
52
El tiempo que debe invertir el analista para la preparación de las
entrevistas estructuradas con respuestas cerradas es mayor al
invertido para su administración y posterior análisis.
Selección de entrevistados.
Realización de la entrevista.
53
Y las dificultades que pueden presentarse en una entrevista son
variadas y el entrevistador debe acudir a su vasta experiencia.
Los analistas deben estar al tanto y atentos cuando se intenta
minimizar el esfuerzo de la investigación con preguntas evasivas
o incompletas. Un entrevistador sin experiencia puede llegar a ser
cuestionado fácilmente por los entrevistados y esto no es
adecuado para la obtención de datos.
9.2 Cuestionario.
54
información de varios aspectos del sistema. Se suele preparar los
cuestionarios y distribuirlos a todas las personas apropiadas.
55
Algunas personas encuentran más fácil escoger entre varias
posibilidades y este tipo de cuestionarios se denomina cerrados.
Este tipo de cuestionario limita las respuestas posibles del
interrogado. Se aplican los cuestionarios cerrados cuando se
quiere conocer información sobre los hechos. Este tipo de
cuestionario fuerza a los interrogados a tomar una posición con
respecto a aspectos importantes. Tienen preguntas con respuesta
del tipo si no.
56
elemento de la base de datos sino a cualquier tipo de documento
que pueda quedar registrado o guardado en la empresa. Pude ser
una factura emitida, un cronograma, un manual de procedimiento,
una norma de trabajo, un organigrama o un simple papel escrito
por un empleado con recordatorios para llevar a cabo su tarea.
57
mantienen completamente actualizados para llegar a reflejar los
procedimientos existentes. Algunos diagramas de organización
muestran cómo las distintas unidades se relacionan con el resto.
Si se comparan formularios en blanco con manuales de
operación, el analista puede observar y darse cuenta como se
llenan. Es importante muestrear algunos formularios o
documentos con el objetivo de calcular porcentajes de error y
estadísticas que describan en forma completa una situación.
58
9.4 Observación.
59
se pueden observar aquellas tareas que hacen retardar a otro
procedimiento. Son los llamados cuellos de botella. Diagnosticar
los cuellos de botella es fundamental en la etapa de investigación.
60
que le permite trabajar e interactuar con sus pares de una manera
clara, concisa y sin malos entendidos. La metodología provee
orden de trabajo y permite que muchas personas que llevan a
cabo diferentes actividades hablen el mismo lenguaje y se puedan
comunican a través del resultado de sus tareas.
61
ANALISIS Y DISEÑO DE SISTEMAS.
62
El diseño de sistemas es el proceso de planeación de un nuevo
sistema dentro de la empresa para reemplazar o completar al
existente.
63
2. Definición de objeto.
64
3. Definición de análisis y diseño orientados a objetos.
65
clases están relacionadas con otras clases por medio de
relaciones de herencia. La herencia es una relación entre clases
en la que una clase comparte la estructura y/o el comportamiento
definidos en otra clase.
5. El software y su complejidad.
66
Un sistema grande, debido a la inversión financiera que implica,
no puede desecharse y reemplazarse por uno nuevo cada vez
que los requerimientos cambian. Debe evolucionar.
67
comunicación más rigurosa y coordinación más difícil, más aún si
el grupo y el proyecto se extienden geográficamente.
68
dominar dicha complejidad lleva a proyectos retrasados, que
exceden al presupuesto y que son deficientes respecto a los
requerimientos fijados. A esto se lo denomina Crisis del software.
Una vez que se ve esta jerarquía, la misma está unificada por una
serie de mecanismos comunes. La relación o el grado de
interacción entre los empleados de una sola oficina es mayor que
entre empleados de oficinas diferentes. Por ejemplo, un jefe de
ventas no interactúa con el director de la empresa pero lo hace
siempre con los vendedores de su local. Ambos, el jefe de ventas
69
como el director de la empresa reciben el sueldo de la misma
organización y comparten el mismo edificio y mismo sistema
telefónico para cumplir con sus objetivos.
La jerarquía.
Los componentes.
70
La interacción de los componentes.
71
aún. Nunca se pueden crear estos objetos primitivos de forma
correcta la primera vez, hay que utilizarlos antes en un contexto,
y mejorarlos entonces con el tiempo cuando se aprende más
sobre el comportamiento real del sistema.
72
Pero por otro lado, más actualmente, se pude descomponer un
sistema complejo de acuerdo con las abstracciones claves del
dominio del problema. En vez de descomponer el sistema en
pasos, se identifican objetos que se derivan directamente del
vocabulario del dominio del problema.
Ambas son buenas, pero hay algo muy importante para resaltar.
La visión algorítmica enfatiza el orden delos eventos y la visión
orientada a objetos resaltan los agentes que o bien causan
acciones o bien son sujetos de estas acciones.
73
7. Método y Metodología.
74
La descomposición orientada a objetos produce sistemas más
pequeños a través de la reutilización de mecanismos comunes,
economizando expresiones. A su vez, los sistemas orientados a
objetos son también más resistentes al cambio y por lo tanto
están mejor preparados para evolucionar en el tiempo.
8. Abstracción y jerarquía.
El rol de la abstracción.
El rol de la jerarquía.
75
estructura y comportamiento comunes en el interior del
sistema.
9. El Proceso Unificado.
76
tenemos que agregarle a estos requerimientos el tiempo de
respuesta cada vez más óptimo.
77
El Proceso Unificado de Desarrollo ofrece un entorno de trabajo
que sirve para:
78
El usuario es alguien o algo que interactúa con el sistema que se
desarrolla Éste lleva a cabo una interacción con el sistema y
éste lleva a cabo una secuencia de acciones que proporcionan al
usuario un resultado importante.
79
Los casos de uso inician el proceso y son un hilo conductor, por
eso se dice que el Proceso Unificado de Desarrollo está dirigido
por casos de uso. Los casos de uso se especifican, se diseñan, y
los mismos sirven de base para que los ingenieros de pruebas
generen sus casos de prueba.
80
los bloques de construcción reutilizables disponibles,
consideraciones de implementación,
sistemas heredados y
requisitos no funcionales.
Para que dicha forma sea válida, los arquitectos deben trabajar
sobre la comprensión general de las funciones claves, es decir
sobre los casos de uso claves del sistema, que en general se
supone que corresponden al cinco o diez por ciento de todos los
casos de uso. Y que son las funciones más significativas del
sistema.
81
después que los casos de uso se especifican y maduran, se
van descubriendo más aún de la arquitectura, es decir, van
apareciendo más casos de uso en la misma arquitectura.
82
convirtiendo los casos de uso en código ejecutable de dicha
iteración.
83
10. Importancia de los 3 conceptos básicos del Proceso
Unificado.
Dirigido por los casos de uso significa que los casos de uso se
utilizan como un artefacto básico para establecer el
comportamiento deseado del sistema, para verificar y validar la
arquitectura del sistema, para las pruebas y para la comunicación
entre las personas involucradas en el proyecto.
84
La arquitectura proporciona la estructura sobre la cual se guían
las iteraciones. Los casos de uso definen los objetivos y dirigen el
trabajo de cada iteración.
85
ANALISIS Y DISEÑO DE SISTEMAS.
86
directores, que especifiquen, que diseñen, que implementen, que
prueben, y que utilicen el sistema.
87
2. Los Modelos dentro del Proceso Unificado.
Desde este punto de vista también podemos afirmar que todos los
elementos que componen el producto se organizan en modelos y
en consecuencia el producto está compuesto por varios modelos:
88
3. Relación entre los Modelos y su vista autocontenida.
Foro. Artefacto.
89
4. El Proceso y las Personas.
90
Las herramientas están constituídas por el software que se
utilizan para automatizar las actividades definidas en el proceso.
91
especificador de casos de uso está compuesto por un grupo de
ellos.
92
Gestión de riesgo. De la misma manera se puede detener el
proyecto en las primeras fases, cuando las personas se sienten
incómodas al no tener analizado los riesgos.
93
Los requisitos tienen que ver con comprender las necesidades de
los clientes. Además se debe comprender o capturar los requisitos
que tienen que ver con el negocio de los clientes y el entorno en
el que trabajan los usuarios.
94
A partir de esto se puede identificar fácilmente las actividades
que los trabajadores deben llevar a cabo cuando se activan.
Estas actividades son significativas para cada persona que actúa
como trabajador. Además se puede observar fácilmente si un
trabajador necesita participar en más de un flujo de trabajo.
Nacimiento Muerte
Tiempo
95
La vida de un proceso consta de ciclos desde su nacimiento hasta
su muerte.
Tiempo
Versiones
96
Fases
Flujos de
Trabajo
Fundamentales Inicio o Elaboración Construcción Transición
Requisitos Concepción
Implement
Prueba
Iteraciones
97
Todo esto se ve en un modelo de casos de uso simplificado que
tiene los casos de uso más críticos. Luego la arquitectura es
bastante provisional y consiste en un esbozo que contiene los
subsistemas más importantes. Se identifican y se priorizan los
riesgos más importantes.
La fase de Elaboración.
98
La fase de Construcción.
La fase de Transición.
99
básicas, casos de uso, arquitectura y desarrollo iterativo e
incremental.
100
ANALISIS Y DISEÑO DE SISTEMAS.
1. Flujos y Modelos.
2. Los Modelos.
3. Objetivos de los Casos de Uso.
4. Modelo de Casos de Uso.
5. Modelo de Análisis.
6. Modelo de Diseño.
7. Modelo de Implementación.
8. Modelo de Prueba.
1. Flujos y Modelos.
101
análisis, de diseño, de despliegue, de implementación, de
prueba).
2. Los Modelos.
102
Un sistema tiene muchos tipos de usuarios, cada unos de ellos
representado por un actor, que interactúan con el sistema con los
casos de uso.
103
Los desarrolladores también preparan el modelo de despliegue
donde se define la organización física del sistema en términos de
nodos de cómputos que verifican que los casos de uso pueden
implementarse como componentes que se ejecutan en esos
nodos.
104
Se llama caso de prueba candidato a cada forma de ejecutar un
caso de uso o cada camino a través de una realización de un
caso de uso.
105
usuario? De esta manera no sugerimos funciones que
proporcionan valor agregado al sistema.
106
Podemos decir que los casos de uso constituyen un elemento que
sirve para brindar trazabilidad al proyecto de desarrollo a través
de todos los modelos. Este aspecto es muy importante para la
gestión de un proyecto. Al modificar un caso de uso, todos los
componentes de los modelos se deben comprobar para ser
actualizados y la trazabilidad entre los casos de uso hace muy
fácil mantener la integridad del sistema y conservar actualizado al
sistema.
107
4. Modelo de Casos de Uso.
108
Debe tenerse en cuenta que los actores no son sólo personas,
sino que pueden ser otros sistemas o hardware externo que
interactúa con el mismo sistema. Cada actor tiene asumido un
conjunto de papeles al interactuar con el sistema.
Los casos de uso sirven para cumplir los deseos de los usuarios
cuando utilizan el sistema. El modelo de casos de uso captura los
requisitos funcionales.
109
justamente lo que añade un valor agregado al usuario y se lo
toma como un caso de uso candidato. Estos casos de uso se
ampliarán, se dividirán o se achicarán o integrarán otros casos de
uso más completos.
110
5. Modelo de Análisis.
111
dependencia entre el modelo de casos de uso y el modelo de
análisis.
112
los casos de usos. Estos diagramas también pueden utilizarse
para mostrar subsistemas e interfaces.
113
Hasta ahora siempre analizamos cada caso de uso y por lo tanto
se observan los roles de clase que corresponden en cada
realización de caso de uso. Luego si juntamos todos los roles de
todas las realizaciones de casos de uso y eliminamos las
repeticiones de roles, se lograrán las responsabilidades y
atributos de la clase.
6. Modelo de Diseño.
114
de esos casos de uso. Pero en este modelo los elementos se
adaptan al entorno de la implementación, es decir, el modelo de
diseño es físico y el modelo de análisis es conceptual.
Existen clases de diseño que tiene una sola traza o varias a una
clase del modelo de análisis.
115
El diagrama de secuencia tiene como objetivo modelar las
interacciones entre los objetos del diseño. Este diagrama muestra
cómo el control pasa de un objeto a otro a medida que se ejecuta
el caso de uso y a medida que se envían mensajes entre objetos.
Cuando un objeto envía un mensaje a otro, hace que este objeto
receptor tome el control y la realización de las operaciones de su
clase.
116
7. Modelo de Implementación.
8. Modelo de Prueba.
117
Un procedimiento de prueba es una especificación de cómo poner
en marcha la preparación, la ejecución y la evaluación de los
resultados de un caso de prueba en particular.
118
ANALISIS Y DISEÑO DE SISTEMAS.
1. La arquitectura.
2. Descripción de la arquitectura.
3. Objetivos de la arquitectura.
4. Restricciones de la arquitectura.
5. Desarrollo de la arquitectura.
6. Patrones de la arquitectura.
1. La arquitectura.
119
los usuarios y clientes, tratando de cumplimentar con un objetivo
de rendimiento.
2. Descripción de la arquitectura.
120
Todas las vistas juntas representan la arquitectura.
121
3. Objetivos de la arquitectura.
122
Los casos de uso dirigen la arquitectura pero además debemos
tener en cuenta las restricciones y posibilidades que influyen en la
arquitectura.
123
5. Desarrollo de la arquitectura.
124
Como ya dijimos, cada iteración, se desarrolla, comenzando con
los requisitos y siguiendo con el análisis, diseño, implementación
y pruebas pero haciendo énfasis en los casos de uso que tienen
que ver con la arquitectura y en otros requisitos. El resultado al
final de la fase de elaboración es la línea base de la arquitectura.
6. Patrones de la arquitectura.
125
dan ejemplos de cómo se utiliza el patrón, sus variantes, resumen
con variantes, consecuencias y referencias de los mismos.
Foro. La Trazabilidad.
126
ANALISIS Y DISEÑO DE SISTEMAS.
127
grandes rasgos, los costos, los esfuerzos y el calendario. Y
también con límites amplios, se inicia el análisis del negocio.
2. Objetivos de la Iteraciones.
128
preparando un sistema que se adapte a ellas. Pensamos así en la
función del sistema.
129
tiene todo lo que tiene un proyecto de desarrollo de software, una
serie de flujos de trabajo, requisitos, análisis, diseño,
implementación, prueba y entregas.
3. La iteración.
130
Una iteración es un mini proyecto, es decir, un recorrido completo
a lo largo de todos los flujos de trabajo fundamentales, que
obtiene como resultado una versión interna. Los flujos de trabajo
más importantes son requisitos, análisis, diseño, implementación
y prueba. A estos flujos se los denomina flujos de trabajo
fundamentales. Pueden existir algunas iteraciones que contengan
flujos de trabajo más concretos, los cuales se denominan flujos de
trabajo de iteración.
131
funcionando correctamente. Esto es realmente muy significativo e
importante en el ciclo de vida iterativo e incremental pues cada
iteración produce una adición al incremento previo, al igual que
una cantidad de cambios.
132
iteración, el conjunto de modelos que representa el sistema
queda en un estado concreto llamado línea base.
Las fases reúnen iteraciones que dan como resultado los hitos
principales sobre los cuales la dirección toma decisiones de
negocios muy importantes. Dependiendo del proyecto este
número de iteraciones puede variar, no es fijo. Es decir, cada una
de las cuatro fases termina con un hito principal.
133
Los objetivos fundamentales de la fase de construcción son el
desarrollo del sistema entero y que el producto pueda comenzar
su transición a los clientes.
Dentro de cada fase hay hitos menores con criterios para cada
uno. Al llegar a los hitos secundarios los directivos y los
desarrolladores deciden cómo continuar con las próximas
iteraciones. Cuando se llega a los hitos principales del final de la
fase, se toman decisiones cruciales tales como seguir o no y
determinar el calendario y el presupuesto.
134
Las iteraciones construyen los modelos resultantes incremento
por incremento. Cada iteración le aporta un poco más al proyecto,
a cada modelo, a medida que la iteración fluye por los requisitos,
análisis, diseño, implementación y prueba.
135
ANALISIS Y DISEÑO DE SISTEMAS.
136
Los usuarios no saben cómo puede hacerse más eficiente la
operación en forma global. Tampoco saben cómo puede
transformarse en software su parte de su trabajo.
Se dice que los usuarios saben lo que quieren y cuáles son sus
requisitos y los analistas deben entrevistarlos para construir el
sistema propuesto. Así los usuarios les transmiten a los analistas
su experiencia sobre las interacciones que deben tener con el
sistema.
137
también se modifica. Puede modificarse la tecnología, las
herramientas, los usuarios, los recursos, etc.
138
tanto existen también varias y diferentes formas de comenzar con
la captura de requisitos.
139
2. Pasos a seguir en el flujo de trabajo de requisitos.
140
Para enunciar el contexto de un sistema de manera que los
desarrolladores luego puedan utilizarlo, se puede verlo desde dos
puntos de vista, el modelado del dominio y el modelado del
negocio.
141
5. Capturar requisitos funcionales.
¿Qué tienen que hacer los analistas? Deben describir todos los
casos de uso con el objetivo de conocer lo que el sistema debe
hacer.
142
6. Capturar requisitos no funcionales.
143
Para comprender el contexto del sistema, los analistas preparan
el modelo del dominio y el modelo del negocio.
144
En la fase de elaboración, los analistas terminan de capturar la
mayoría de los casos de uso restantes. Esto sirve para que luego
los desarrolladores puedan continuar con su tarea.
Fases
Flujos de
Trabajo
Fundamentales Inicio o Elaboración Construcción Transición
Concepción
Requisitos
Análisis
Aquí se
Diseño observa
cómo el flujo
Implement de trabajo de
los requisitos
Prueba y todos sus
artefactos
Iteración Iteración Iteración Iteración resultantes
1 2 n-1 N adquieren
distintas
formas.
Iteraciones
145
8. Lista de características.
146
¿Para qué sirven estos valores agregados de las características?
Por ejemplo, la prioridad y el riesgo de una característica sirve
para decidir en qué iteración se va a implementar dicha
característica.
9. Modelo de Dominio.
147
Los objetos del mundo real representan conceptos reales y
aquellos de los que el sistema debe hacer un seguimiento como
aviación enemiga, misiles y trayectorias.
148
También se coloca un texto al final de una línea. Este texto
representa el rol que lleva a cabo una clase con relación a la otra.
Este concepto se denomina rol de asociación.
149
Finalmente, ¿dónde se usa el modelo de dominio? Las clases de
dominio y el glosario de términos se utilizan en el modelo de
casos de uso y de análisis. Esto es para describir los casos de
uso y para diseñar la interfaz del usuario y para sugerir las clases
internas al sistema a desarrollar durante el análisis.
150
¿Cómo está compuesto el modelo de negocio?
151
Las entidades de negocio y las unidades de trabajo se utilizan
para representar los mismos tipos de conceptos que las clases de
dominio. Se confecciona un diagrama de entidades parecida al
diagrama de clases del modelo de dominio. Además se pueden
confeccionar otros diagramas que muestran cómo se utilizan las
entidades de negocio y las unidades de trabajo.
152
Las clases de dominio se obtienen del conocimiento de expertos
del dominio o del conocimiento asociado a sistemas similares que
se está desarrollando. Las entidades del negocio se derivan de
los clientes del negocio, identificando los casos de uso y luego las
entidades. A su vez, la asociaciones entre las clase en función de
la experiencia de los expertos de dominio.
153
Los requisitos adicionales se pueden clasificar de la siguiente
manera:
Requisitos de interfaz.
Requisitos físicos.
Requisitos de diseño.
Requisitos de implementación.
154
ANALISIS Y DISEÑO DE SISTEMAS.
155
Los requisitos no funcionales restantes se mantienen en un
documento aparte y constituyen los requisitos adicionales.
156
Una actividad es un fragmento realizado por un trabajador en el
flujo de trabajo, es decir, la ejecución de una de las operaciones
de los trabajadores.
Trabajador
Artefacto
157
2. Actor en el caso de uso.
Un actor juega un papel para cada uno de los casos de uso con
los que colabora. Luego, cada vez que un usuario real interactúa
con el sistema, se dice que hay una instancia de un actor. Por lo
tanto cualquier entidad que se ajuste a un actor, puede actuar
también como instancia de ese actor.
3. Caso de uso.
158
son fragmentos de funcionalidad que el sistema brinda para darles
un valor a sus actores.
159
uso es lo que el sistema hace cuando obedece a un caso de uso.
Desde otro lugar, esto quiere decir que cuando se lleva a cabo
una instancia de un caso de uso, la misma interactúa con
instancias de actores y ejecuta una secuencia de actores de
acuerdo cómo se especifica el caso de uso.
160
Las instancias de los casos de uso no interactúan con otras
instancias de casos de uso. En el modelo de casos de uso, las
únicas interacciones que existen se dan entre instancias de los
casos de uso e instancias de los actores. Esto se da para que
permitir que los usuarios finales y otros interesados puedan
comunicarse en forma relevante.
161
¿Qué son los requisitos especiales? Constituyen una descripción
textual que agrupa a todos los requisitos no funcionales sobre el
caso de uso y se tratan posteriormente en el flujo de trabajo de
análisis, diseño o implementación.
162
5. Trabajadores en los casos de uso.
163
casos de uso, haciendo que el modelo de casos de uso sea
consistente y bien completo.
Para que el modelo sea consistente se puede usar el glosario y
hacer que existan acuerdos a la hora de utilizar términos y poder
comunicarse, durante la captura de requisitos.
164
6. El flujo de trabajo de la captura de requisitos.
165
Luego, el arquitecto identifica los casos de uso relevantes
para la arquitectura, con el objetivo de brindarle las
entradas a la priorización de los casos de uso que se van a
desarrollar en la iteración actual.
166
Esbozar los actores que interactúan con el sistema y su
funcionalidad que se espera del mismo a través de los
casos de uso.
167
Encontrar los casos de uso.
Describir cada caso de uso en forma breve.
Describir el modelo de casos de uso completo, con una
preparación de un glosario de términos.
Encontrar actores.
168
Para seleccionar estos actores se pueden seguir dos
razonamientos. Con el primero, se deben identificar por lo menos
un usuario que representa al actor candidato. De esta forma se
encuentran los candidatos los candidatos más relevantes. Con el
segundo, se debe encontrar una coincidencia mínima entre los
roles que desempeñan las instancias de los diferentes actores en
relación con el sistema. No puede haber dos o más actores que
tengan los mismos roles. Si es así, se combinan los papeles en un
conjunto de roles que se asignan a un actor. O se encuentra un
actor generalizado que se le asigne los roles comunes a los
actores que se solapan.
169
Luego, debe rectificar cada uno de los actores y luego proponer
los casos de uso para ellos. Puede usar la técnica de entrevista y
gráficos con descripciones para comprender qué casos de uso
son necesarios.
170
Para identificar los casos de uso, se tiene en cuenta dos
conceptos importantes: resultado de valor y actor en concreto.
171
Los analistas renegocian los requisitos con el cliente para obtener
un sistema mejor y más fácil de implementar y mantener para los
mismos desarrolladores. A su vez, los clientes ganan con un
sistema que tiene mejor funcionalidad.
172
Se puede elegir diagramas de casos de uso que describan el
sistema en forma clara. Se muestran los casos de uso que
participan en el negocio y que ejecuta un actor.
173
necesarios para desarrollar en las primeras iteraciones y cuáles
se dejan para más adelante.
174
discutir con ellos las propuestas y solicitarles que hagan una
revisión.
175
básico debe tener pocas excepciones que el sistema puede
manejar.
176
Las descripciones de caminos alternativos que se no
incluyen en la descripción del camino básico.
La interacción de los actores con el sistema y qué cambios
se ingresan. Describimos la secuencia de acciones del
caso de uso, cómo se invocan los estas acciones por los
actores.
Se utilizan objetos, valores y recursos del sistema, es decir,
se describen las secuencias de acciones en la utilización
del caso de uso y se le asigna valores a los atributos del
caso de uso.
Se deben mostrar al describir los casos de uso las
responsabilidades del sistema y la de los actores. Si no la
misma no se podrá utilizar como caso de uso.
177
¿Cómo se formaliza una descripción de los casos de uso?
178
En su lugar, a veces es más conveniente describir con detalle los
flujos de los sucesos de los casos de uso. Incluso, las dos
técnicas se pueden complementar.
179
El objetivo de esto es especificar qué se necesita antes de decidir
cómo realizar la interfaz de usuario, es decir, se entiende las
necesidades antes de llevarlas a cabo.
180
¿Cómo se relacionan estos elementos entre ellos?
¿Cómo se utilizan los elementos?
¿Cómo debería ser la apariencia de cada uno de estos
elementos?
¿Cómo se manipulan estos elementos?
181
El diseñador de interfaz de usuario prepara en primer lugar
esquemas aproximados de la configuración de los elementos de
la interfaz de usuario para los actores.
182
Antes de hacer esta actividad, se identifican los actores y los
casos de uso, usando diagramas y explicando el modelo de casos
de uso.
183
estructurar el modelo de los casos de uso, al revisar los casos de
uso con los usuarios.
Los casos de uso que comienzan los actores y que los mismos
instancian se denominan casos de uso concretos. Los casos de
uso que se fabrican con acciones compartidas que luego se
reutilizan por otros casos de uso, se denominan casos de uso
abstractos.
184
instancia del caso de uso destino sigue su secuencia de acciones
y llega a dicho punto se evalúa la condición de la relación. Si la
condición evaluada es verdadera se sigue la secuencia del caso
de uso extendido.
Los casos de uso reales son aquellos que les aportan valor a los
usuarios. Los casos de uso reales son casos de uso que en
general se obtienen utilizando relaciones de generalización y
extensión.
185
ANALISIS Y DISEÑO DE SISTEMAS.
Unidad 9: Análisis.
186
obtener una buena especificación de funcionalidad amplia e
intuitiva.
187
El análisis se basa en un modelo de análisis que es un modelo de
objetos conceptual. Este modelo depura los requisitos para
pensar en los aspectos internos del sistema y los recursos
compartidos internos. Un objeto interno de este modelo es la
clase. También este modelo proporciona una mayor formalización,
los diagramas de interacción que describe aspectos dinámicos del
sistema.
188
Por este motivo antes de diseñar e implementar, en la etapa del
análisis, se debe sólo llegar a una comprensión muy completa de
los requisitos.
Podemos decir que:
189
requisitos, en la fase de la construcción se pase a al diseño e
implementación.
Fases
Flujos de
Trabajo
Fundamentales Inicio o Elaboración Construcción Transición
Concepción
Requisitos
Análisis
Diseño
Aquí se
Implement observa
cómo el flujo
Prueba de trabajo
del análisis
Iteración Iteración Iteración Iteración y todos sus
1 2 n-1 N artefactos
resultantes
adquieren
Iteraciones distintas
formas.
190
sólo durante la fase de elaboración. Cuando el sistema pasa por
el diseño y la elaboración el modelo de análisis deja de
actualizarse.
3. Modelo de Análisis.
191
Las clases de análisis representan abstracciones de clases y los
casos de uso en este modelo se describen mediante clases de
análisis y sus objetos. Esto se representa por colaboraciones en
el modelo de análisis, las cuales se denominan realizaciones de
casos de uso.
4. Clases de análisis.
192
En las clases de análisis aparecen las relaciones entre
ellas pero sólo también en forma conceptual.
Clases de Interfaz.
193
Cada clase de interfaz se asocia por lo menos con un actor. Un
actor también se asocia con al menos una clase de interfaz.
Clases de Entidad.
194
Clases de Control.
195
Una realización de caso de uso- análisis tiene una descripción
textual del flujo de suceso, diagramas de clases y diagramas de
interacción. Los diagramas de clases muestran las clases de
análisis que participan. Los diagramas de interacción muestran la
realización de un flujo del caso de uso en función de los objetos
del análisis. Por este motivo, el de usar las clases de análisis y
sus objetos, la realización del caso de uso se especializa en los
requisitos funcionales, dejando los no funcionales para el diseño e
implementación.
Diagramas de clases.
Diagramas de interacción
196
Así los objetos que estén involucrados interactuarán para llevar a
cabo el caso de uso.
197
Una clase de control encapsula el control asociado con un
caso de uso concreto. Esto significa que hay que crear un
objeto de control cuando empieza el caso de uso. Cuando
termina el caso de uso, hay que destruir el objeto.
198
7. Trabajadores en el análisis.
Arquitecto.
199
comportamiento del caso de uso correspondiente del modelo de
casos de uso.
Ingeniero de componentes.
200
GLOSARIO.
201
Artefacto: Pieza de información tangible que es creada, modificada
y usada por los trabajadores al realizar actividades.
202
C
203
dispositivos de entrada/salida (E/S), junto a los buses que permiten
la comunicación entre ellos.
204
de pequeños segmentos. El disco puede ser rígido (hard) o flexible
(floppy).
205
Fibra óptica: Cable compuesto de fibra de vidrio que transporta
señales de luz en lugar de eléctricas, brindando un mayor nivel de
velocidad y confiabilidad.
206
Herencia: Mecanismo mediante el cual elementos más específicos
incorporan la estructura y el comportamiento de elementos más
generales.
207
Instalar: Grabar un programa en el disco rígido y configurarlo de
forma que funcione correctamente. La mayor parte de los programas
incluyen instaladores que realizan esta labor en forma casi
automática.
208
L
209
Memoria: Almacenamiento primario de una computadora, como la
RAM o la ROM.
210
necesita más de un procesador (máquinas grandes) o
microprocesadores especiales.
Objeto: Instancia.
211
Password: Contraseña utilizada para ingresar en una red o en un
sistema de manera segura. Conjunto de caracteres alfanuméricos
requeridos para acceder a una determinada red, sistema, aplicación
o recurso.
212
Programa: Secuencia de instrucciones que dirige a la computadora
a realizar operaciones específicas para obtener un resultado
deseado.
213
Ratón: También conocido como mouse. Puntero manejado a mano
para manipular el cursor en la pantalla. Especialmente útil en las
GUI.
214
Sistema de Archivo: Un sistema de archivos consta de tipos de
datos abstractos, que son necesarios para el almacenamiento,
organización jerárquica, manipulación, navegación, acceso y
consulta de datos. La mayoría de los sistemas operativos poseen su
propio sistema de archivos. Los sistemas de archivos son
representados ya sea textual o gráficamente utilizando gestores de
archivos o shells. En modo gráfico a menudo son utilizadas las
metáforas de carpetas (directorios) conteniendo documentos,
archivos y otras carpetas. Un sistema de archivos es parte integral
de un sistema operativo moderno. Los sistemas de archivos más
comunes utilizan dispositivos de almacenamiento de datos que
permiten el acceso a los datos como una cadena de bloques de un
mismo tamaño, a veces llamados sectores, usualmente de 512 bytes
de longitud. El software del sistema de archivos es responsable de la
organización de estos sectores en archivos y directorios y mantiene
un registro de qué sectores pertenecen a qué archivos y cuáles no
han sido utilizados. En la realidad, un sistema de archivos no
requiere necesariamente de un dispositivo de almacenamiento de
datos, sino que puede ser utilizado también para acceder a datos
generados dinámicamente, como los recibidos a través de una
conexión de red
215
Software de aplicación: Programas que realizan las tareas
específicas de procesamiento de datos.
216
Unidad central de procesamiento (CPU): La Unidad Central de
Proceso (UCP) o CPU (siglas de Central Processing Unit) es la
unidad donde se ejecutan las instrucciones de los programas y se
controla el funcionamiento de los distintos componentes de la
computadora. Suele estar integrada en un chip denominado
microprocesador.
217
Z
218
BIBLIOGRAFIA.
BIBLIOGRAFÍA OBLIGATORIA:
BIBLIOGRAFÍA DE CONSULTA:
219
- Sistemas de Información. Análisis. Diseño. Puesta a punto. 1987.
Henry C. Lucas, Jr. Editorial Paraninfo.
220
MODELO DE EXAMEN.
Enunciados:
Preparar pollo
Cocinero al horno
221
5) Para un sistema sencillo para manejo de datos de la asistencia de personal
de limpieza y seguridad de un edificio, definir los actores y sólo 3 items
de la lista de características involucrados en el mismo. Luego armar los
tres casos de uso que lo resuelvan. Finalmente, elegir un caso de uso y
armar las clases de análisis (entidad, interfaz de usuario o de control) que
apoyen al caso de uso a través de la realización del mismo.
222