Diseño Físico de Sistemas
Diseño Técnico
Adaptar las funcionalidades al entorno tecnológico y al equipo técnico (analistas, programadores, administradores).
- Resultados del diseño técnico: Cuaderno de carga (documentación de todo el desarrollo, programas, pseudocódigo, plan de pruebas, formularios, ordinogramas, diagramas de flujo, registros de bases de datos y tablas de especificación); diseño de estructura modular Vtoc; diseño de interfaces entre módulos; definición de interfaces con otros sistemas; definición de interfaces de usuario; descripción de los elementos del sistema.
Técnicas de Programación Estructurada
Sigue un orden, tiene un inicio y un fin, se emplean tres tipos de estructuras (repetitivas, secuenciales y condicionales), se ejecuta de arriba a abajo, tiene tres etapas de desarrollo (entrada, salida de datos y procesado).
- Pseudocódigo: Lenguaje intermedio entre el lenguaje de programación y la máquina, es genérico, se puede usar en cualquier lenguaje.
- Organigrama: Representación de los vínculos entre elementos de un sistema, representa flujos de datos.
- Ordinograma: Representación gráfica de la secuencia lógica y detallada de todas las operaciones de un programa, es genérico.
Dispositivos Externos para Almacenar Información
- Fichero: Conjunto de información relacionada, se divide en registros.
- Registro lógico: Conjunto de datos relacionados, se divide en campos.
- Registro físico (bloques): Cantidad de información que se divide de una sola vez.
- Factor de bloqueo: Número de registros lógicos que hay en un registro físico.
Operaciones a Realizar con Ficheros
Creación de fichero; apertura (prepararlo para leer/escribir); cierre; actualizarlo (modificar, borrar, insertar, etc.).
Clasificación de los Ficheros
Permanentes (con el tiempo las modificaciones son nulas o escasas)
- Maestros: Se usan para mantener actualizados los campos.
- Constantes: No sufren variaciones nunca.
- Históricos: Guardan los cambios sufridos por los maestros a lo largo del tiempo.
Temporales (modificaciones periódicas)
- De movimientos: Variaciones que permiten actualizar los maestros, validez corta, hasta que no se actualiza.
- De maniobras: Durante la ejecución del programa, para actualizar un dato, no son visibles, se destruyen al cerrar la aplicación.
Acceso a los Ficheros
- Tipos: Secuenciales (es lento, no hay orden, el más sencillo de modificar/borrar, un dato detrás de otro); direccionales (se accede a una dirección directamente).
- Directo: Se accede a él mediante la clave.
- Indexado: Hay un índice con una clave.
- Dinámico: Permite cualquier tipo de organización.
Tipos de Ficheros según su Organización
- Secuencial: Contiguo, no deja huecos blancos, búsqueda lenta si los datos no son contiguos, no se puede eliminar, se marca como borrado.
- Secuencial encadenada: Mediante punteros, un registro apunta al otro, tiene los mismos campos que el secuencial más los punteros.
- Indexada: Contiene un índice con la posición relativa, un puntero apunta a cada uno de los bloques y una vez dentro hace búsqueda secuencial. Tiene registros, índices y overflow.
- Indexada encadenada: Combina punteros e índices, una vez dentro de cada bloque usamos los índices.
- Organización relativa: Con la clave conocemos la posición relativa dentro del fichero, aprovecha espacio. Función hash (y=H(x)) para conocer la posición que le corresponde a cada registro.
- Organización relativa directa: Obtiene el dato a través de la clave o secuencialmente a partir del primer registro. Desaprovecha espacios, acceso inmediato a datos.
- Organización relativa aleatoria directa: Acceso a los datos a través de la clave, deja espacios en blanco, desaprovecha espacios. Lectura y escritura simultáneas.
Clasificación y Operaciones con los Registros
- Registro: Cada línea de un fichero, tiene campos de longitud fija (DNI) y variable (nombres).
- Operaciones: Dar de baja/alta, leerlo, modificarlo y consultarlo.
Entorno Tecnológico
(Físico, lógico, red de comunicaciones y gestión de datos) Descripción de los componentes del equipo físico y lógico. El analista, mediante entrevistas con los programadores y administradores, define el entorno tecnológico.
Redes
- Según conexión entre nodos: Punto a punto; multipunto (bus, anillo, estrella (HUB (el mensaje pasa por todos los nodos), SWITCH (solo momento transmisión, mensaje no visible a todos))).
- Según distribución lógica: Secuenciales (envía mensaje de nodo a nodo); difusos (a todos los nodos a la vez).
- Según distribución física: Redes LAN, MAN, WAN.
- Según tipología: RDSI (64Kbps); fibra óptica (100Mbps); frame relay (1,5 Mbps, datos/voz); redes ATM (2Mbps, datos/voz).
- Según protocolo: Normas a cumplir en una comunicación, se compone del formato de los datos, semántica y temporización. HTTP, FTP, TCP/IP.
Dispositivos de Interconexión de Redes
- Repetidor: Recibe, amplifica y reenvía la señal.
- Puente: Interconecta redes LAN.
- Encaminador: Busca el camino para llegar a la dirección.
- Pasarelas: Para protocolos incompatibles.
- Módem: Convierte analógico en digital.
Medios de Transmisión
Cable (coaxial (banda base TV, banda ancha TV cable); par trenzado (apantallado RJ11 con cobertura aislante; no apantallado RJ45 para red); fibra óptica (ondas de luz)).
Plan de Pruebas
Comienza en la fase de análisis y dura todo el desarrollo. Se definen los elementos, el encargado de realizarlo, el alcance y los objetivos, se concretan los recursos y el personal, se definen las circunstancias para la realización de pruebas.
- Tipos de pruebas: Unitarias (cada elemento), de integración (todos los módulos), de sistema (sistema con otros), de aceptación (usuario).
Construcción de Sistemas
Plan de Construcción
- Objetivos: Definir la secuencia de construcción de la aplicación atendiendo a los módulos que se pueden, o no, realizar simultáneamente. Especificación de los recursos necesarios.
- Etapas: Identificar actividades, planificación temporal de ellas, comprobar dependencias entre ellas, asignación de recursos necesarios, evaluación del proyecto y análisis de resultados.
- Sobrecarga de los recursos: Individual (cuando un recurso se necesita más de lo que podemos disponer de él) y colectiva (una persona que trabaja en varias actividades). A tiempo fijo (tiempo de finalización fijo), a recurso fijo (no pueden estar sobrecargados).
- Representación gráfica: Descomposición temporal (diagrama de Gantt); representación de cada actividad, cuya longitud representa su duración y su secuencia.
Técnicas PERT y CMP
Gráfico dirigido de PERT, los nodos representan sucesos y las letras actividades, siguen un orden temporal. Lineales (a-b); convergentes (a-b-c y d); divergentes (a y b-c-d); mixtas (a-b y c-d).
Actividades Ficticias
Actividades que no existen pero necesitamos representarlas, no consumen recursos.
Tipos de Tiempos
Early (lo antes posible que se puede comenzar una actividad); Last (lo más tarde posible que se puede terminar una actividad).
Holgura de un Suceso
Diferencia entre los tiempos Last y Early (H(i)=TLast(i)-TEarly(i) >=0, =0 no hay margen para retrasos, >0 hay margen).
Holgura de una Actividad
Ht(i,j)=TLast(i)-TEarly(i)-T(i,j) >=0; Ht=0 actividad crítica, no tiene holgura.
Holgura Libre
Parte de la holgura total que se podrá consumir sin afectar a las actividades posteriores. Hl=TEarly(i)-T(i,j) Ht>=Hl
Camino Crítico
Conjunto de todas las actividades críticas que forman una actividad. Ht(i,j)=0 ==H(i)=H(j)=0. ¡Al revés no es igual!
Desarrollo de los Componentes de un Sistema
Desarrollar componentes basándose en las pruebas que se planifican/realizan en el desarrollo, se realizan siempre aunque compremos un componente. Son unitarias, de integración, de sistemas, de aceptación. Actividades al desarrollar un componente (creación de base de datos ficticia o sistema de ficheros, configuración del entorno de desarrollo, herramientas a utilizar, configurar entorno de pruebas, definir las operaciones de implantación y mantenimiento).