Trabajo de Investigación. Analisis de Sistemas CATE
Trabajo de Investigación. Analisis de Sistemas CATE
Trabajo de Investigación. Analisis de Sistemas CATE
Investigar:
procedimientos.
Analista de sistemas.
● Relevamiento.
● Requerimientos de usuario.
Completar el trabajo de investigación respetando las normas APA, se debe citar de manera
Índice:
Análisis de Requisitos: 24
Requerimientos de Usuario: 24
Herramientas de modelado para la planificación de Sistemas: 25
Estudio Ambiental o de contexto: 25
Diagrama de contexto Nivel 0: 26
Diagrama de contexto Nivel 1: 27
Diagrama Gantt: 28
Diagrama Pert: 30
Herramienta para el modelado de diseño de sistemas: 31
Diagrama de casos de uso: 31
Descripción de caso de uso de Cine: 33
Diagrama de Secuencia: 34
Diagrama de clases: 35
Gestión de Requisitos y Análisis y soluciones: 36
Verificación y Validación: 37
Soporte al proyecto: 37
Diccionario de Datos: 37
Diseñador: 38
Programador: 41
Administrador de la Base de Datos: 45
Planificación de la base de datos: 45
Diseño de la base de datos: 46
Modelo Entidad-Relación: 46
Implementación: 46
Mantenimiento: 47
Documentación: 47
Función de auditores: 47
Departamento de Normas: 47
Personal de operaciones: 48
Carta de estructura: 48
Calidad de software: 48
Acoplamiento y cohesión: 49
Propuesta(Propuesta Funcional): 50
Ciclo de vida de proyecto: 52
Bibliografía: 54
Centro de Acompañamiento a las Trayectorias Escolares (CATE)
4
estratégicos de una manera informada. Los sistemas ESS extienden las capacidades de los
ejecutivos y les ofrecen soporte para que puedan entender mejor sus entornos.
Planificación de Proyecto:
El Líder y/o Administrador del proyecto tiene que encargarse de en la primera instancia de
definir los alcance del sistema que se vaya a desarrollar, que es lo que el cliente solicita, lo
Centro de Acompañamiento a las Trayectorias Escolares (CATE)
9
que se puede llegar a realizar y se tiene que priorizar como objetivo principal del sistema y
también las funcionalidades que no son críticas pero a futuro pueden implementarse. A
continuación tenemos los Alcances del proyecto de Cine:
Funcionalidades Incluidas:
● Venta de entradas.
● Reserva de entradas.
● Gestión de horarios y carteleras.
● Funciones de Administración.
● Generación de reportes y estadísticas.
Estos alcances vendrían a ser la prioridad y lo requerido que tiene que hacer el sistema.
Funcionalidades Excluidas:
En este apartado como funcionalidad excluida vendrían a ser alcances que si bien pueden ser
positivos en el sistema, no es necesario que estén incluidos de forma crítica.
El líder del desarrollo del sistema se va a encargar de ejecutar las etapas de pre-análisis
necesarias. Verificar Alcances, Objetivos, Observación y Relevamiento, Estudios de
Factibilidades, Análisis FODA y los Diagrama de Pert y Gantt correspondientes. (de todo
esto vamos a hablarlo mejor más adelante para dejarlo más claro. Lo importante ahora es
conocer la labor de cada integrante).
Gestión de Recursos:
Una de las tareas más necesarias justamente del Líder es la de gestionar los recursos que se
van a asignar y administrar durante todo el trayecto.
Para esto va a necesitar como mencionamos antes las herramientas de gestión y
administración y las técnicas necesarias para realizarlas.
Una herramienta de gestión que vemos claramente durante todo el trayecto es la de Gant
Project.
Centro de Acompañamiento a las Trayectorias Escolares (CATE)
10
De esta manera tenemos un control más completo y gestionar mejor los recursos de cada
integrantes del equipo.
Ejecución y Monitoreo:
Durante todo el trayecto del proyecto se tiene que hacer un seguimiento sobre cada etapa y
como se va desenvolviendo cada integrante del equipo en su respectiva tarea. Para verificar
que todo esté funcionando lo que se vaya desarrollando hay que ir gestionando un control y
un seguimiento. De esta manera vamos a ir viendo cómo se va desarrollando la estructura y la
arquitectura del sistema y los posibles errores que pueden ocurrir. Un ejemplo sobre esto
vendrían a ser justamente las pruebas que se hacen en la etapa de testing para verificar que el
código realizado por el programador o la base de datos interpretada por el ADM de base de
datos esté correctamente. Sin siquiera ir a código directo también ocurre hasta en la etapa de
diseño y arquitectura donde es más análisis que otra cosa y en los casos de uso se deja
Centro de Acompañamiento a las Trayectorias Escolares (CATE)
11
constancia sobre cómo debería responder el programa y su posible falla y respuesta del
sistema. Esto también ocurre con los diagramas de secuencia que a su vez se pueden medir
por testing de caja negra.
Por ejemplo acá tenemos casos de uso del Sistema de gestión Cine.
Identificador D1.0
Actor Cliente
y acá su respectiva descripción. Esto se supone que es como se debería por ejemplo
interpretar y realizar en el sistema.
Pero para verificar si esta todo bien y como debería responder ante alguna falla se hace como
mencionamos antes el testing de caja negra:
Centro de Acompañamiento a las Trayectorias Escolares (CATE)
12
Caso de uso: D1.0 Permite que el Step1 accede al botón de El cliente será
Registro Cliente pueda registrarse redirigido a la
registrarse en el vista de registro
sistema en la app web.
Como vemos es muy descriptivo cada paso como se realiza pero lo vamos a repasar rápido.
Ante una posible falla de por ej: el usuario pone mal su contraseña o usuario, como es que
tendría que responder el sistema ante eso y dar una respuesta. Tenemos tanto una entrada de
datos como una salida y salidas alternas respecto a lo que podría suceder.
Mientras todo esto se vaya actualizando y verificando puede ser que la gestión y las tareas a
realizar en el sistema se vean alteradas y se requiera un cambio en el cronograma. La idea es
evitar esto pero si sucede corregirlo dentro de las fechas establecidas. Caso contrario veremos
reflejado un problema en los días establecidos y metas de objetivo y también puede verse
afectado el costo final o nuestra ganancia. Así que siempre es necesario tener un plan sólido y
respetar el esquema establecido durante todo el trayecto.
Comunicación:
Es una parte fundamental que el Líder se pueda comunicar con los demás miembros. Como
repasamos anteriormente si hay algún inconveniente en el cronograma y los tiempos se ven
afectados es una falla fundamental en el esquema y puede afectar al flujo de trabajo y el
proyecto.
Por eso el Lider tiene que implementar buenas medidas de comunicación y tener un control
sobre cómo van las tareas de cada miembro.
● Se hace un seguimiento e informes de los demás miembros al lider.
● reuniones y entornos de software donde se pueden hablar sobre lo que ocurrió o
cómo van en cada etapa.
● Frente a alguna problemática o inconveniente tomar las medidas necesarias y
resolverlas para que no escalen.
Acá juega mucho las herramientas de gestión que se puede llegar a usar: Por ejemplo
Trello o Jira que dan un entorno a cada integrante del proyecto para tener un control de
cada tarea y su seguimiento. Y también la metodología de trabajo: Que usualmente suelen
usarse Scrum o Agile.
Cierre de proyecto:
En la etapa final de cierre se suelen hacer las evaluaciones finales sobre los resultados. Esto
incluye hacer una actualización de lo que se esperaba al principio con cómo fue todo el
desarrollo final. Se toma muy en cuenta las lecciones aprendidas y lo que se puede llegar a
implementar en un nuevo desarrollo y correspondientemente hacer la documentación
necesaria para que en caso de tener que repasar o mirar algún eje del proyecto se pueda
estudiar y visualizar de mejor manera.
Otras responsabilidades:
Al final de cada desarrollo puede haber una continuidad con el cliente por lo que se puede
generar algún tipo de soporte y se requiera la gestión de cambios en el desarrollo. Algo típico
es la actualización sobre una nueva funcionalidad y verificar la factibilidad o actualizar algo
más en particular como el sistema gestor de base datos por la expansión del sistema. Lo ideal
es asegurar la conformidad del cliente tanto al final como en su futura continuidad si esto
surge.
Centro de Acompañamiento a las Trayectorias Escolares (CATE)
14
Analista:
El analista de un proyecto juega un papel vital en asegurar que el proyecto se alinee con las
necesidades y expectativas de los interesados, proporcionando una base sólida para el
desarrollo y la implementación de soluciones efectivas.
A continuación vamos a desarrollar el gráfico superior.
Recolección de Requisitos:
En esta etapa suelen estar trabajando los analistas en la pre-análisis del proyecto. Es una etapa
fundamental donde van a recolectar todo tipo de información. Principalmente esta
información es la que suelen pasar luego al Líder del proyecto y al equipo de trabajo según
sea necesario para poder ejecutar e ir desarrollando el sistema.
Las técnicas suelen ser justamente las de Observación y Relevamiento más usadas en esta
parte.
Observación:
En el reconocimiento vamos a poder identificar cómo se maneja actualmente la la regla de
negocio, como operan los usuarios en el sistema actual.
La idea principal es tener varias vistas y entendimiento del primer contacto y conocimiento
de la organización y del personal involucrado en el problema.
Las técnicas comúnmente más usadas en esta etapa son las entrevistas, formularios/encuestas
y observación personal.
También para poder entender una estructura y esquema de la información se suelen usar
organigramas.
Pongamos de ejemplo el proyecto Cine:
Centro de Acompañamiento a las Trayectorias Escolares (CATE)
16
Centro de Acompañamiento a las Trayectorias Escolares (CATE)
17
Este es un diagrama donde podemos ver como funcionaria y que se espera conseguir del
proyecto.
También como mencionamos las técnicas usadas son las de cuestionarios o formularios. A
continuación tenemos un cuestionario que sirve como ejemplo del proceso para obtener y
recaudar información por parte de los analistas
https://forms.gle/6DSt1mNfbUowoSKH7
Centro de Acompañamiento a las Trayectorias Escolares (CATE)
18
En este ejemplo usamos google forms para realizarlo. Una ventaja de esto es que es fácil
gestionar lo que se quiere realizar. Lo idóneo también es que para poder realizarlo tienes que
tener un correo electrónico. Lo que principalmente buscamos siempre es el Nombre del
participante para ubicar quién es. Su puesto en la organización para conocer mejor la
Centro de Acompañamiento a las Trayectorias Escolares (CATE)
19
En estas preguntas lo que buscamos es en primera el rol del participante y su tarea dentro del
sistema actual. También su opinión sobre las funcionalidades que cree necesarias para el
mejor desarrollo del sistema. Tener opiniones de los distintos operarios nos permite al final
tener un resultado más personalizado y obviamente no hay que perder de vista los objetivos y
alcances principales.
Centro de Acompañamiento a las Trayectorias Escolares (CATE)
20
Es importante saber qué funcionalidades adicionales pueden ser útiles para que se
desempeñen mejor en su tarea.
Centro de Acompañamiento a las Trayectorias Escolares (CATE)
21
Relevamiento:
El objetivo de esta etapa es determinar la situación existente en el sistema actual. Si bien se
suelen usar técnicas parecidas a las de reconocimiento, lo que se busca en el relevamiento es
profundizar de manera más técnica y hacer una investigación detallada en las áreas
importantes de la organización. Al obtener un primer contacto sobre cómo se maneja la
organización, se busca comparar y avanzar con la resolución de la problemática principal.
Una vez conocido lo que se quiere lograr y como actualmente llevan a cabo sus reglas de
negocio, se busca opiniones y observaciones del personal y miembros de la organización para
conocer más en profundidad sus puntos sobre lo que se quiere lograr.
Las técnicas más usadas son:
● Entrevista y observación personal.
● Investigación y reunión de trabajo.
● Cuestionarios.
● Revisión de registros
En esta imagen podemos ver a la entidad del cine: Cine Milonga (Ejemplo de cine)
Este cine tiene 3 sucursales ubicadas en los centros comerciales de Palermo(Sucursal 1),
Caballito(Sucursal 2) y Puerto Madero (Sucursal 3). Cada cine tiene 3 salas que cuentan
con diferentes capacidades de personas para sus funciones.
Centro de Acompañamiento a las Trayectorias Escolares (CATE)
22
A continuación vamos a ver el organigrama de la estructura del lugar con sus respectivos
roles:
En estas imágenes está representado los roles de cada sucursal y el trabajo realizado por cada
empleado del establecimiento. De esta manera podemos identificar y conocer cómo opera
cada integrante del sistema y tener más en claro el funcionamiento de la regla de negocio
actual.
Todo esto gracias a la primera etapa donde hicimos los requerimientos de Observación y
obtención de los datos.
Centro de Acompañamiento a las Trayectorias Escolares (CATE)
23
Ya una vez gestionada esto para profundizar se hacen nuevamente las entrevistas,
cuestionarios y formularios.
https://forms.gle/6DSt1mNfbUowoSKH7
Centro de Acompañamiento a las Trayectorias Escolares (CATE)
24
Ahora las preguntas en vez de ser un tono más general se van haciendo más específicas para
ir descartando y confirmando que requerimiento es necesario y analizar la factibilidad de
desarrollarlo.
Análisis de Requisitos:
En el análisis de los requisitos lo que principalmente se busca es empezar a plasmar la
información recaudada de una forma más visual y de esa manera entender mejor la estructura
y generar la arquitectura del sistema.
Para poder definir qué es importante y que no, según los alcances y objetivos previamente
establecidos anteriormente, se empieza a construir los diagramas para ir entendiendo el
proceso del sistema.
Antes de esto hay que explicar lo siguiente para ir entendiendo justamente los requerimientos
y los requisitos que se suelen ir priorizando y gestionando.
Requerimientos de Usuario:
Dentro de los requerimientos de usuario también es importante resaltar que todo tiene que
estar documentado y hacer un seguimiento para poder determinar la usabilidad, el
escalamiento y mantenimiento del sistema.
Dentro de esto se puede destacar:
A-los requisitos legales y regulatorios:
: Describen los requisitos legales y regulaciones que el sistema debe cumplir, como leyes de
privacidad, estándares de la industria, etc.
Centro de Acompañamiento a las Trayectorias Escolares (CATE)
25
B-Requisitos de Documentación:
Se implementa la importancia de realizar documentación que especifique la necesidad de
manuales de usuario, manuales de administrador, documentación técnica, etc.
El manual de usuario es un documento técnico muy importante. Explica el funcionamiento
del software o sistema desarrollado como producto resultante del proyecto.
Expone los procesos que el usuario puede realizar con el sistema implantado. Para lograr
esto, es necesario que se detallen todas y cada una de las características que tienen los
programas y la forma de acceder e introducir información.
Permite a los usuarios conocer el detalle de qué actividades ellos deberán desarrollar para
la consecución de los objetivos del sistema. Reúne la información, normas y
documentación necesaria para que el usuario conozca y utilice adecuadamente la
aplicación desarrollada.
Estas herramientas nos permiten planificar y visualizar cómo será el recorrido del proyecto y
cómo va a ir tomando forma el sistema. Para ayudarnos a entender mejor esto vamos
mencionar 3 herramientas de modelado de planificación. Estudio ambiental o de contexto,
Diagrama de Gantt y Diagrama de Pert.
Cliente:
El cliente a la hora de registrarse tiene 2 instancias. Una en la que se valida con éxito y otra
en la que se deniega el acceso por algún inconveniente con los pasos a seguir. Lo mismo
funcionaria en la instancia de Login.
El cliente inicia sesión y si es todo correcto se valida el acceso. Caso contrario se rechaza la
sesión.
Administrador de Cartelera:
Va a actualizar la cartelera correspondiente y va a tener 2 instancias.
1-La cartelera se modifica con éxito.
2-No se producen cambios en cartelera.
Como la actualización está sujeta a las condiciones del INCAA, en caso de no seguir con las
mismas se va a rechazar la misma.
Gerencia:
Como tal la gerencia va a estar encargada de verificar que el funcionamiento sea correcto,
pero principalmente va a realizar solo el reporte de ventas de lo que se fue recaudando y
viendo a medida que el sistema va funcionando e interactuando con los clientes.
Centro de Acompañamiento a las Trayectorias Escolares (CATE)
28
Administrador de Función:
Encargado de realizar y gestionar las salas y marcar los tipos de salas.
Si las condiciones validadas son correctas, se genera: función validada. Caso contrario, no
se genera función. También sujeto a las condiciones del INCAA y de la Gerencia.
Base de Datos:
La base de datos estará en contacto con el sistema.
Cuando el sistema necesite leer y cargar películas como leer y actualizar las butacas de los
asientos que se van reservando y vendiendo en el sistema
Sistema:
El propio sistema generará su propio requerimiento.
Diagrama Gantt:
Un gráfico de Gantt es una forma fácil de programar tareas. Es un gráfico en el que las barras
representan cada tarea o actividad. La longitud de cada barra representa la longitud relativa
de la tarea.
Centro de Acompañamiento a las Trayectorias Escolares (CATE)
29
En la parte horizontal tenemos el tiempo que se tarda en desarrollar las tareas. En la parte
vertical en cambio ahí podemos ver las tareas a desarrollar. Según el dibujo mientras más
largo sea más tiempo se demorara en desarrollar.
Actualmente hay una herramienta llamada Gantt Project. Es algo con lo que se puede
gestionar la organización y asignación de tareas. También con esta misma vamos a poder
sacar el presupuesto de las horas trabajadas.
En la imagen podemos ver las áreas a realizar de principio a fin. Las fechas asignadas, el
tiempo, la persona responsable de la realización de la misma y la prioridad.
Justamente hay una flecha de asignación a cada tarea dando una prioridad de que si la
anterior no se resuelve, la próxima no puede seguir.
Centro de Acompañamiento a las Trayectorias Escolares (CATE)
30
Diagrama Pert:
Se representa mediante una red de nodos y flechas que después se evalúan para determinar
las actividades críticas, mejorar el programa de trabajo en caso de ser necesario y revisar el
avance una vez que se empiece el proyecto.
Se suele usar para poder desarrollar tareas en paralelo que se pueden hacer al mismo tiempo
que se desarrolla otra tarea.
para reconocer que una actividad se completó e indicar qué actividades hay que completar
para poder empezar una nueva (precedencia).
Del trayecto 10 al 20 hay 4 días y del 20 al 40 hay 5. Esto puede tomar que hay 9 días en total
para desarrollarlo.
Igualmente la tarea C(del trayecto del 20 al 40) no se puede realizar a menos que el la tarea B
se finalice.
La ruta crítica se denomina como la ruta más larga y esta no puede retrasarse sino implicaría
un retraso en las tareas a realizar. En este caso la ruta crítica sería 10+20+40+50 dándonos un
total de 15 días.
En cambio la ruta 10-30-40-50 tiene un total de 11 días y en este caso no habría problema de
retrasarse de darse el caso. Tiene un margen de 4 días más como máximo. A esto se le llama
tiempo de inactividad.
Una vez visto las herramientas de modelado para la gestión de proyectos, también tenemos
que ver las herramientas para el diseño de sistemas.
Un actor es alguien o algo que interactúa con el sistema, pero que es externo al sistema. El
actor envía o recibe mensajes a y desde el sistema, o intercambia información con el sistema.
Un caso de uso siempre es iniciado por un actor que le envía un mensaje o estímulo
(stimulus). Los actores llevan a cabo casos de uso. Cuando un caso de uso se realiza, el caso
de uso podría enviar mensajes a uno o más actores. Estos mensajes también pueden ir a otros
actores además del que inició el caso de uso.
A continuación vamos a ver un diagrama usado en el proyecto Cine:
En este mismo diagrama vemos a los actores que interactúan con el sistema y también hay
sistemas externos que actúan como actores. Al ser externos se ubican del lado derecho.
El actor “Cliente” interactúa con el sistema y tiene 3 relaciones. Puede
1-Registrarse en el sistema.
2-Iniciar Sesión en el sistema
3-Comprar entrada en el sistema.
Para que esas funcionalidades se ejecuten antes que nada tiene incluida una relación
obligatoria que es la de verificar credenciales y comprar entrada verificar compra, por medio
Centro de Acompañamiento a las Trayectorias Escolares (CATE)
33
de un sistema externo que interactúa también como actor por fuera del sistema que es el de
MercadoPago.
A su vez también se gestionan las descripciones de los casos de uso. Estos nos ayudan a
tener una información más detallada del caso de uso en particular y poder extender y
verificar la funcionalidad en el sistema. Estos mismos también nos va a ayudar a etapas
posteriores para hacer análisis de calidad y testing.
Caso de uso 1:
Identificador D1.0
Actor Cliente
Flujo Normal:
Flujo Alternativo:
Centro de Acompañamiento a las Trayectorias Escolares (CATE)
34
Diagrama de Secuencia:
El diagrama de secuencia es un tipo de diagrama de interacción cuyo objetivo es describir el
comportamiento dinámico del sistema de información haciendo énfasis en la secuencia de los
mensajes intercambiados por los objetos.
Tiene dos dimensiones, el eje vertical representa el tiempo y el eje horizontal los diferentes
objetos. El tiempo avanza desde la parte superior del diagrama hacia la inferior.
Normalmente, en relación al tiempo sólo es importante la secuencia de los mensajes, sin
embargo, en aplicaciones de tiempo real se podría introducir una escala en el eje vertical.
Respecto a los objetos, es irrelevante el orden en que se representan, aunque su colocación
debería poseer la mayor claridad posible.
Cada objeto tiene asociados una línea de vida y focos de control. La línea de vida indica el
intervalo de tiempo durante el que existe ese objeto. Un foco de control o activación muestra
el periodo de tiempo en el cual el objeto se encuentra ejecutando alguna operación, ya sea
directamente o mediante un procedimiento concurrente.
Objeto
Un objeto se representa como una línea vertical discontinua, llamada línea de vida, con un
rectángulo de encabezado con el nombre del objeto en su interior. También se puede incluir
el nombre de la clase, separando ambos por dos puntos.Si el objeto es creado en el intervalo
de tiempo representado en el diagrama, la línea comienza en el punto que representa ese
instante y encima se coloca el objeto. Si el objeto es destruido durante la interacción que
muestra el diagrama, la línea de vida termina en ese punto y se señala con un aspa de ancho
equivalente al del foco de control. En el caso de que un objeto existiese al principio de la
interacción representada en el diagrama, dicho objeto se situará en la parte superior del
diagrama, por encima del primer mensaje. Si un objeto no es eliminado en el tiempo que dura
la interacción, su línea de vida se prolonga hasta la parte inferior del diagrama. La línea de
vida de un objeto puede desplegarse en dos o más líneas para mostrar los diferentes flujos de
mensajes que puede intercambiar un objeto, dependiendo de alguna condición.
Se representa como un rectángulo delgado superpuesto a la línea de vida del objeto. Su largo
dependerá de la duración de la acción. La parte superior del rectángulo indica el inicio de una
acción ejecutada por el objeto y la parte inferior su finalización.
Mensaje
Centro de Acompañamiento a las Trayectorias Escolares (CATE)
35
Un mensaje se representa como una flecha horizontal entre las líneas de vida de los objetos
que intercambian el mensaje. La flecha va desde el objeto que envía el mensaje al que lo
recibe. Además, un objeto puede mandarse un mensaje a sí mismo, en este caso la flecha
comienza y termina en su línea de vida. La flecha tiene asociada una etiqueta con el nombre
del mensaje y los argumentos. También pueden ser etiquetados los mensajes con un número
de secuencia, sin embargo, este número no es necesario porque la localización física de las
flechas que representan a los mensajes ya indica el orden de los mismos.
Diagrama de clases:
En el diagrama de clases la estructura de clases del sistema se especifica, con relaciones entre
clases y estructuras de herencia. Durante el análisis del sistema, el diagrama se desarrolla
buscando una solución ideal. Durante el diseño, se usa el mismo diagrama, y se modifica para
satisfacer los detalles de las implementaciones.
Durante la primera instancia se usa la información recopilada de los otros diagramas de
diseño.
Casos de uso, diagrama de secuencia y diagrama de colaboración.
Los objetos en los diagramas son usados como término de clase a la que instancian y las
interacciones entre objetos son referenciados a las relaciones entre las clases instanciadas.
Centro de Acompañamiento a las Trayectorias Escolares (CATE)
36
Verificación y Validación:
En esta etapa lo que se busca es que el sistema desarrollado cumpla con los requisitos
especificados y satisfaga las necesidades del cliente. Por los cuales se suele someter a
pruebas. Para verificar la implementación completa. Algo previo a eso es justamente los
procesos de control que suelen efectuarse de testing y calidad, blackbox testing, pero de esto
vamos a hablarlo un poco más adelante. Pero la idea de esta etapa es quedarnos con que:
● Se realizan pruebas (unitarias, de integración, de aceptación).
● Validación de requisitos con el cliente.
● Revisión de resultados de pruebas y corrección de errores.
Soporte al proyecto:
Esta etapa no siempre suele estar pero en caso de tener continuidad con el cliente, siempre va
a querer que estemos actualizando su sistema y le podamos brindar soporte post producción.
Para esto se suele capacitar a los usuarios con el sistema, hacer la documentación de usuario
correspondiente y monitorear y someter a evaluaciones tanto a los operadores como al
sistema.
Algo que se resalta mucho en esta etapa es justamente la gestión del diccionario de datos.
Diccionario de Datos:
El diccionario de datos es una versión especializada de los diccionarios que se utilizan como
referencias en la vida cotidiana. El diccionario de datos es una obra de consulta de
información
sobre los datos (es decir, metadatos); es compilado por los analistas de sistemas para guiarse
a través del análisis y diseño. Como documento, el diccionario de datos recopila y coordina
términos de datos específicos, además de confirmar lo que significa cada término para
distintas
personas en la organización.
El diccionario de datos es un listado organizado de los datos del sistema, con una definición
precisa y rigurosa para que se pueda entender las entradas, salidas, componentes de
almacenamiento y cálculos intermedios. Contiene las características lógicas de los sitios
donde se almacenan los datos del sistema. Incluyendo nombre, descripción, alias, contenido y
organización. También se identifican los procesos donde se usan los datos y los sitios donde
se necesita el acceso inmediato de la información.
La información del diccionario de datos tiene que ser identificable así que se usa la siguiente
estructura:
Descripción: Cada entrada en el diccionario consiste de un conjunto de detalles que
describen los datos utilizados o producidos por el sistema. Cada artículo se identifica por un
nombre-descripción-sinónimo-longitud de campo y tiene valores específicos que se permiten
para este en el sistema estudiado.
nombre: Se usa para poder referenciar y distinguir un dato del otro. Es más preciso si se usa
algo significativo como FECHA FACTURA antes que ABCXXX.
Descripción: Establece brevemente lo que representa el dato: FECHA-DATO-FACTURA
fecha en la cual se prepara la misma(para distinguirla de la fecha de salida al cliente)
Alias: ayuda a evitar la confusión por posible duplicación de nombre.
longitud de campo: para saber la cantidad de espacio necesario para cada dato.
Centro de Acompañamiento a las Trayectorias Escolares (CATE)
38
valores de los datos: porque en algunos procesos solo son permitidos valores muy
específicos para los datos. Si los valores de los datos están restringidos a un intervalo
específico, esto debe estar en la entrada del diccionario. Por ejemplo, en muchas compañías
con frecuencia los números de orden de compra se proporcionan con un prefijo de una letra
para indicar el departamento de origen
Diseñador:
En un proyecto, el rol del diseñador puede variar dependiendo del tipo de proyecto y del
campo en el que esté trabajando, pero generalmente implica la creación y el desarrollo de
soluciones visuales y funcionales que satisfagan las necesidades del proyecto y las
expectativas de los clientes o usuarios.
Ellos se comunican con los demás miembros del proyecto y con respecto a la información
que recauda tanto del cliente como del proyecto a realizar va generando ideas de diseño que
poco a poco se ven reflejados en el proyecto.
Para poder realizar su trabajo utilizan una variedad de herramientas de software especializado
en diseño gráfico e interfaz de usuario hasta herramientas de colaboración y gestión de
proyectos.
Centro de Acompañamiento a las Trayectorias Escolares (CATE)
39
Centro de Acompañamiento a las Trayectorias Escolares (CATE)
40
1-Investigación y Análisis:
Para poder llevar a cabo el diseño del producto se tiene que llevar a cabo una investigación
sobre lo que se quiere desarrollar o lograr. En esta etapa van a estar principalmente los
analistas y el administrador de proyecto encargándose de ir moldeando cuales son las
cualidades necesarias de lo que se quiere implementar. Al ya hacer un seguimiento sobre que
se busca, la estructura de trabajo actual y a lo que se quiere llegar, ya se puede empezar a
hacer los primeros diseños e implementaciones del proyecto a realizar.
Algo que se va a llevar a cabo por partes de los demás integrantes y hasta por el diseñador es
la investigación de mercado. Nos va a permitir entender cómo se maneja la competencia y
el mercado. Al mismo tiempo, También se va a realizar un análisis sobre las necesidades de
los usuarios, para darles lo que realmente necesitan y vayan a poder usar del producto, pero
tomando en cuenta y moldeando a la par de las expectativas del cliente que a veces pueden
interrumpir o interponerse en cuanto a lo que es mejor para el desarrollo del proyecto.
2-Diseño Conceptual:
Ya teniendo una idea y concepto gracias a la información recaudada, se empieza a crear
conceptos y propuestas de diseño inicial basadas en los requisitos del proyecto y la
retroalimentación del cliente.
Para desarrollar esto se suele implementar bocetos, wireframes o prototipos para visualizar
ideas y conceptos. A medida que se vayan realizando se van a ir aumentando o quitando
utilidades necesarias para el uso del sistema y quedará registrado en cada etapa de diseño.
3-Diseño visual:
En esta etapa lo que se busca es empezar con el desarrollo visual. Se empieza a ver la
selección de colores, tipografía, iconografía y otros elementos visuales.
Ya con una idea más solidificada se empiezan a desarrollar las interfaces de usuario (UI) para
aplicación web, móvil u otro sistema.
En esta etapa se suele trabajar con muchas ilustraciones y gráficos de lo que se busca,
mostrando los avances a los demás miembros del equipo e ir dando una devolución al cliente.
Programador:
Los programadores deben convertir la especificación del sistema en código fuente ejecutable
utilizando uno o más lenguajes de programación, así como herramientas de software de
apoyo a la programación. En los mercados actuales, rápidamente cambiantes y altamente
competitivos, se hace necesario conocer los últimos desarrollos, quien da soporte, y cómo
pueden beneficiar al proyecto y a la organización. A través de este conocimiento es que la
organización genera un camino hacia el éxito futuro.
Para poder llevar a cabo su tarea los programadores suelen usar las siguientes herramientas:
Entorno de Desarrollo Integrado(IDEs): Visual Studio Code, Visual Studio, Eclipse,
NetBeans son entornos de desarrollo muy usados por los programadores. Son usados para
construir la estructura del software con los lenguajes, frameworks y librerías necesarias
para cada proyecto.
A su vez para poder desplegar y tener un control sobre el flujo de trabajo también necesitan
una herramienta. Para poder ir documentando y compartir el proceso de cada etapa. En esta
instancia entra GIT, que nos va a permitir poder subir nuestro repositorio y mantener una
estructura sobre cada etapa a desarrollar.
Por su parte para seguir en contacto con los demás miembros y poder coordinar y compartir
la información los programadores en un proyecto también son parte de usar herramientas de
gestión que son armadas por el Administrador de Proyecto. Ejemplos de esto son Trello,
JIRA.
Otra tipo de herramienta muy usada son las de pruebas y depuración, que nos permite
encontrar y solucionar errores en el código fuente. Unos ejemplo de esto son: POSTMAN,
SELENIUM, JUnit.NUnit.
Centro de Acompañamiento a las Trayectorias Escolares (CATE)
42
A continuación vamos a ver un gráfico sobre las etapas que tiene que implementar un
programador en un desarrollo de software.
Centro de Acompañamiento a las Trayectorias Escolares (CATE)
43
Centro de Acompañamiento a las Trayectorias Escolares (CATE)
44
1-Análisis de Requisitos:
En esta etapa el programador analiza y comprende los requisitos del sistema ya
proporcionados por los analistas y el administrador del proyecto. Esto le permite tener
entendimiento sobre las reglas de negocio establecidas y a lo que se quiere llegar con el
producto. El programador tiene que leer y revisar la documentación técnica y funcional para
asegurarse que los requisitos sean claros y factibles.
2-Diseño Técnico:
En conjunto con los diseñadores y analistas se empieza a construir y realizar un diseño de la
arquitectura del sistema. Lo que se suele utilizar mucho son los Diagramas de Clases y
Objetos. Se tiene que crear las especificaciones técnicas detalladas que describen cómo se
implementarán los requisitos funcionales en el código, de esta forma podemos realizar la
estructura de software, los componentes y la tecnología a utilizar.
3-Desarrollo de Software:
Ya una vez establecido los patrones de diseño de la estructura se empieza a pasar todo eso a
código con ayuda de los IDE. Se tiene que escribir código limpio, eficiente y bien
documentado utilizando lenguajes de programación, frameworks y librerías apropiados para
el proyecto.(Java, Python, C#, JavaScript etc..).
A la par de la estructura principal se crean los módulos, componentes y funcionalidades del
sistema según las especificaciones técnicas y los estándares de calidad del proyecto.
4-Pruebas y Depuración:
Una vez realizada las funcionalidades para poder saber en qué estado está actualmente, se
empieza a realizar las pruebas unitarias para poder verificar cada módulo y componente del
sistema y que no presenten alguna falla. Lo más normal es que al efectuar el testing se
encuentre siempre algún tipo de fallo o situación particular, pero una vez encontrado y
realizado el feed back, se implementa una solución a la situación buscando la identificación
y corrección de errores o bugs en el código mediante técnicas de depuración y pruebas
exhaustivas.
5-Integración de Sistemas:
El sistema ya al someterse a constantes iteraciones de testing empieza la integración de
sistemas. Cada módulo y componente desarrollado se empieza a ensamblar para construir el
producto. También en esta etapa se hacen pruebas pero de integración, para verificar que cada
componente funciona bien juntos de manera correcta y sin conflictos.
6-Mantenimiento y Soporte:
Una vez armado el software se hace un despliegue de prueba. En esta etapa lo que se busca es
solucionar problemas típicos y realizar correcciones reportados por usuarios durante la fase
de prueba para ya una vez tener todo esto cubierto realizar el despliegue definitivo
correctamente.
Centro de Acompañamiento a las Trayectorias Escolares (CATE)
45
reuniones con el cliente y con el equipo de desarrollo. De esta manera el puede decir el
tamaño de la base de datos y el sistema gestor que va a usar en el proyecto. También con esto
definimos tipo de software y licencias a usar que son muy importantes en las primeras etapas
para la factibilidad. A su vez mientras va iniciando y conociendo el sistema gracias a los
analistas y la información recaudada va generando el diseño de la arquitectura.
Modelo Entidad-Relación:
El Modelo Entidad Relación (MER) es una herramienta de modelización de los datos que
describe las asociaciones que existen entre las diferentes categorías de datos de un sistema
de empresa o de información.
Vamos a dar un ejemplo rápido sobre cómo se usa esto.
Gracias a este tipo de herramienta se van a empezar a desarrollar los campos, tablas e índices
necesarios para el sistema y ejecutando la normalización correspondiente.
Implementación:
Una vez ya diseñada y verificado que todo esté correctamente por parte de la información del
team lider y los demás miembros del equipo se procede a hacer la implementación. Se van a
empezar a crear y configurar las base de datos físicas y cargar los datos si es que es necesario.
Mantenimiento:
En la etapa de mantenimiento lo que se busca es verificar el rendimiento y disponibilidad.
Una vez ya implementado el sistema hay que darle seguimiento y ver cómo responde frente a
Centro de Acompañamiento a las Trayectorias Escolares (CATE)
47
Documentación:
Una tarea importante del administrador es dejar la documentación necesaria del sistema para
que cuando otro integrante del equipo de la misma área o otra necesite ver algún registro,
pueda entender todo el sistema. Desde la arquitectura, diseño e implementación. Por eso es
de vital importancia tener todo estructurado y anotado.
Función de auditores:
La auditoría es otra forma de asegurar la calidad de la información que contiene el sistema.
En términos generales, la auditoría se refiere al proceso de hacer que un experto que no esté
involucrado en el proceso de establecer o usar un sistema examine la información para
evaluar su confiabilidad. Sin importar que la información resulte confiable o no, el hallazgo
sobre su confiabilidad se comunica a los demás con el fin de que actúen en consecuencia.
Hay 2 tipos de auditores.
auditores externos:
Se utilizan cuando el sistema de información procesa datos que influyen en los estados
financieros de la empresa; los externos realizan una auditoría sobre el sistema para asegurar
la imparcialidad de los estados financieros que se producen. También se pueden usar cuando
ocurre algo fuera de lo normal en el que hay empleados de la empresa involucrados, como
una sospecha de fraude por computadora o malversación de fondos.
auditores internos:
Estudian los controles que se utilizan en el sistema de información para asegurarse de que
sean adecuados y que estén realizando la función esperada. También evalúan la conveniencia
de los controles de seguridad. Aunque trabajan para la misma organización, los auditores
internos no se reportan con la persona responsable del sistema al que están auditando. Con
frecuencia, el trabajo de los auditores internos es más profundo que el de los auditores
externos.
Departamento de Normas:
El departamento de normas estaría compuesto principalmente por un grupo de personas
encargadas en que los requerimientos de calidad puedan ser llevados a cabo. Dependiendo del
tipo de sistema, se emplearía distinto tipo de resoluciones. Quienes van a estar
completamente dando feedback y notificando cómo está el sistema de acuerdo a los niveles
de calidad siempre van a ser llevadas por la gerencia y los usuarios.
Encargado también de las auditorías, y gestionar la calidad.
Centro de Acompañamiento a las Trayectorias Escolares (CATE)
48
Personal de operaciones:
Se encargan de la seguridad del hardware, la seguridad de los datos y copias de respaldo.
La ejecución de programas, administran los informes periódicos y administran informes de
las comunicaciones de red.
El personal de operaciones en un proyecto de software generalmente se encarga de gestionar
y mantener el entorno de producción del sistema una vez que ha sido desarrollado e
implementado. Su función principal es garantizar que el software se ejecute de manera
eficiente, confiable y segura en un entorno de producción en el mundo real.
Carta de estructura:
Calidad de software:
En esta etapa se realizan pruebas en el sistema para verificar su funcionalidad. Una vez
realizado hasta cierto punto el sistema tiene que someterse a pruebas de software para
verificar su funcionamiento. Gran parte del trabajo lo van a hacer los programadores o la
empresa podría contratar agentes externos a los programadores para verificar mejor el
funcionamiento ya que siempre es mejor que alguien ajeno a uno mismo revise el código y su
funcionamiento.
Centro de Acompañamiento a las Trayectorias Escolares (CATE)
49
Acoplamiento y cohesión:
Son conceptos que se utilizan para verificar la calidad que se está llevando a cabo el
proyecto:
El acoplamiento vendría a ser que los módulos de un programa dependan uno de otros. Si uno
quiere hacer un cambio en X modulo y es necesario también hacer cambios en Y módulo.
Esto quiere decir que tiene un acoplamiento.
La cohesión por su parte habla de una adherencia entre sí. Si algo está cohesionado tiene
sentido y una dirección.
De esta manera cuando uno encuentra cohesión suele estar mejor delimitado y ser
independiente.
Igualmente el exceso de cohesión podría hacer que no haya ninguna relación en el sistema.
Por lo cual se busca siempre un equilibrio donde haya bajo acoplamiento que nos pueda
garantizar la conexión y dependencias necesarias y a su vez que haya cohesión alta donde hay
una dirección marcada y si es necesario hacer algún cambio este no se vea perjudicado por
otro módulo o dependencia.
Centro de Acompañamiento a las Trayectorias Escolares (CATE)
50
Propuesta(Propuesta Funcional):
Etapa de Análisis:
Centro de Acompañamiento a las Trayectorias Escolares (CATE)
52
En esta etapa lo que se busca es tener un Análisis sobre el tipo de negocio que se quiere
implementar y desarrollar. Tanto el Líder con ayuda de sus Analistas lo que van a hacer
principalmente es formular las preguntas necesarias para poder empezar a llevar a cabo la
información necesaria para la implementación del sistema.
Saber ¿De qué se trata?¿Cómo funciona el negocio actualmente?¿Qué se busca realizar
actualmente? etc..
Se hace un pre-Análisis general del problema que tiene nuestro cliente, que nos permite
saber qué es lo que se va a necesitar realizar y lo que busca resolver.
En este primer encuentro o contacto vamos a verificar:
Análisis de Factibilidades:
En el análisis de factibilidades lo que se analiza son las herramientas, capacidades y
conocimientos que tenemos a la hora encarar el proyecto Se toma en cuenta las factibilidades
humanas, como mano de obra. Cantidad de personas implicadas.
Las factibilidades técnicas, que es la capacidad de conocimiento técnico del equipo para
poder desarrollar el proyecto.(Lenguaje de programación, IDE, software etc..)
Las factibilidades económicas, que esto nos permite saber:
¿Qué tipo de hardware y equipo técnico requerimos?¿El cliente con qué equipo trabaja?
¿Cuanto es el presupuesto establecido y el presupuesto particular de cada integrante del
equipo? etc..
FODA:
Con el FODA en conjunto de la información recaudada nos va a permitir evaluar los factores
internos en nuestro equipo (Fortalezas-Debilidades) y los factores externos (Oportunidades-
Amenazas).
Fortalezas: Aspectos positivos tanto del equipo como organización que pueden ayudar a
alcanzar el objetivo. Pueden incluir recursos, experiencias, reputaciòn, tecnologías usadas
etc..
Debilidades: Son los aspectos internos negativos que pueden obstaculizar el objetivo.
Centro de Acompañamiento a las Trayectorias Escolares (CATE)
53
Costes de Implementaciòn:
Lo que se busca realizando los costes de implementación es tener el cálculo de cuánto saldría
realizar el desarrollo del sistema solicitado. Va a estar conformado por el costo del equipo
requerido, entidad o elementos fìsicos(o servicios en la nube) de ser necesario. Horas
trabajadas de los integrantes del equipo y la ganancia obtenida por el desarrollo del sistema.
Dependiendo de los factores internos como externos obtenidos en el trabajo de investigación
por parte de los analistas, se va a obtener los costos requeridos para la operación. Esto
dependiendo de cómo evolucione el proyecto y de lo que solicite el cliente, puede alterar el
coste final.
Diseño y Arquitectura:
Se empieza a usar todos los diagramas anteriormente mencionado con el pus de que se tiene
que actualizar los informes y las actualización de costos y planificación.
Implementación:
Una vez ya gestionado que todo este en orden se empieza a implementar el código para dar
vida a todo el sistema a desarrollar.
Mantenimiento:
Como bien se indica se hace hincapié en crear el manual de usuario, manual de lanzamiento
y planificación, todo para tener un control y seguimiento de todo lo trabajado en el desarrollo.
En caso de requerirse con el cliente se procede a las mejoras y actualizaciones según se vayan
necesitando y se cierra la planificación y los costos del proyecto.
Bibliografía:
https://www.unipamplona.edu.co/unipamplona/portalIG/home_109/recursos/octubre2014/
administraciondeempresas/semestre7/11092015/analisisydisenosistinformacion.pdf
Centro de Acompañamiento a las Trayectorias Escolares (CATE)
54
SOFTWARE. https://www.startechup.com/es/blog/roles-in-software-development-teams/
https://campus.ort.edu.ar/secundaria/almagro/informatica/descargar/articulos/1782608/
https://drive.google.com/file/d/1cfzHYzuSE3yYH4COLoKPiMU4GauOyGWx/view
https://classroom.google.com/w/NTUzNzIwNzg2MDQy/t/all
https://miro.com/es/wireframe/