Sistema de información para la atención personalizada al cadete FAR
Texto completo
(2) Dictamen Hago constar que el presente trabajo fue realizado en la Universidad Central “Marta Abreu” de Las Villas como parte de la culminación de los estudios de la especialidad de Ciencia de la Computación, autorizando a que el mismo sea utilizado por la institución, para los fines que estime conveniente, tanto de forma parcial como total y que además no podrá ser presentado en eventos ni publicado sin la autorización de la Universidad.. _____________________ Firma del autor. Los abajo firmantes, certificamos que el presente trabajo ha sido realizado según acuerdos de la dirección de nuestro centro y el mismo cumple con los requisitos que debe tener un trabajo de esta envergadura referido a la temática señalada.. _______________________. ____________________. Firma del tutor. Firma del jefe del Laboratorio. 2.
(3) Dedicatoria. A mi mamá, porque siempre confió en mí, A mi exjefa de la Fábrica de Cemento 26 de Julio en Nuevitas, Madelaine Kim, que me enseñó todo y me ayudó muchísimo, A mi hermano Yoalbert, A mis primos y primas, Y a todos mis amigos y amigas por su apoyo incondicional, Aliesky, Osmany, los Carlos, Luis, Lismary, Xiomara y demás.. Yohan Erisdel Pérez Garcés.. 3.
(4) Agradecimientos. Al Dr. Carlos García González, A mis tutores, T. Cor. Msc. Félix Enrique Gomara Tristá y el Dr. Abel Rodríguez Morffi y a mi oponente, Ing. Ernesto Miguel Rodríguez Rodríguez, por su asesoría y orientación en este trabajo. A todos los profesores que nos formaron y enseñaron. A todos los que de una u otra forma me han ayudado y han contribuido a la terminación de esta tesis.. 4.
(5) Pensamiento. Son vanas y están plagadas de errores las ciencias que no han nacido del experimento, madre de toda certidumbre. Leonardo Da Vinci (1452-1519) Pintor, escultor e inventor italiano.. 5.
(6) Resumen A partir de la incorporación de los Cadetes FAR en nuestras Universidades surge la necesidad de gestionar y organizar la documentación sobre la formación de esta nueva figura para las FAR, por esto se propone este sistema con el objetivo de organizar y actualizar la información sobre los cadetes FAR en el proceso docente-educativo. Este trabajo persigue que los usuarios gestionen y organicen dicha información, ya que no existe otro servicio capaz de hacerlo, lo que se hace muy útil. Se concluye con la realización de este sistema, que cuenta con una aplicación de escritorio que le facilita al usuario ver toda la información almacenada en la base de datos creada, con el objetivo de que pueda ubicarlo en un servidor, o sencillamente guardarlo en un disco compacto, para su uso posterior.. 6.
(7) Abstract Starting from the incorporation of the Cadets FAR in our University the necessity arises of negotiate and to organize the documentation on the formation of this new figure for FAR, for this reason, it intends this system with the objective of to organize and to upgrade the information on the Cadets FAR in the educational process. This work pursues that the users negotiate and organize this information, since another service doesn't exist able to make it, what becomes very useful. You concludes with the realization of this system that has a desk application that facilitates the user to see all the information stored in the created database, with the objective that it can locate it in a servant, or simply to keep it in a compact disc, for their later use.. 7.
(8) Tabla de contenido Introducción ................................................................................................................................................. 10 Situación Problemática .................................................................................................................................. 11 Problema de Investigación ............................................................................................................................ 11 Objetivo General ........................................................................................................................................... 12 Objetivos Específicos .................................................................................................................................... 12 Preguntas de Investigación ............................................................................................................................ 13 Hipótesis ........................................................................................................................................................ 14 Capítulo 1. Aspectos Generales .................................................................................................................. 15 1.1 Aplicación Desktop ............................................................................................................................. 15 1.2 Metodologías de desarrollo de software .............................................................................................. 16 1.2.1 Proceso unificado de desarrollo (RUP)…………………………………………….…………….16 1.3 Lenguaje de modelado ......................................................................................................................... 17 1.3.1 Lenguaje unificado de modelado (UML)………………………………………………………...18 1.4 Plataformas de desarrollo…………………………………………………………………………….19 1.4.1 Herramienta CASE………………………………………………………………………………19 1.4.1.1 Visual Paradigm………………………………………………………………………………20 1.4.2 Lenguaje de programación……………………………………………………………………….21 1.4.2.1 C#.................................................................................................................................. ............22 1.4.3 Sistemas gestores de bases de datos……………………………………………………………...23 1.4.3.1 PostgreSQL…………………………………………………………………………………....24 1.5 Conclusiones Parciales ........................................................................................................................ 25 Capítulo 2. Análisis del sistema .................................................................................................................. 26 2.1 Descripción de los requerimientos....................................................................................................... 26 2.2 Diagrama de casos de usos .................................................................................................................. 28 2.2.1 Actor .............................................................................................................................................. 29 2.3 Diagrama de actividades ...................................................................................................................... 30 2.3.1 Para La Inserción de los Cadetes ................................................................................................... 31 2.3.2 Paso para Insertar Datos ............................................................................................................... 32 2.4 Diagrama de objetos ............................................................................................................................ 36 2.5 Conclusiones Parciales ........................................................................................................................ 37 Capitulo 3. Diseño, implementación y prueba del sistema…………………….………………………38 3.1 Arquitectura del sistema ...................................................................................................................... 38 3.3.1Características de la arquitectura de la plataforma………………………………………………40 3.2 Diagrama de despliegue....................................................................................................................... 42 3.3 Diagrama de lógico de la base de datos .............................................................................................. 44 3.4 Diagrama de Componentes .................................................................................................................. 46. 8.
(9) 3.5 Conclusiones Parciales ......................................................................................................................... 47 Conclusiones................................................................................................................................................. 48 Referencias Bibliográficas .......................................................................................................................... 49. 9.
(10) Tabla de Ilustraciones Ilustración 1El Framework .NET contiene bibliotecas diseñadas para facilitar la interoperabilidad entre serviscios, dispositivos y ordenadores. ____________________________________________________ 13 Ilustración 2Diagrama de casos de uso ____________________________________________________ 21 Ilustración 3Diagrama de actividades para la inserción de cadetes. ____________________________ 24 Ilustración 4Diagrama de transición de estados para cadete. _________________________________ 25 Ilustración 5Diagrama de actividades para la búsqueda de cadetes. ____________________________ 25 Ilustración 6Diagrama de actividades para la eliminación de cadetes. __________________________ 26 Ilustración 7Diagrama de actividades para la modificación de los cadetes. ______________________ 27 Ilustración 8Diagrama de actividades para la autentificación de los usuarios. ____________________ 27 Ilustración 9Diagrama de objetos. ________________________________________________________ 28 Ilustración 10 Arquitectura del sistema ____________________________________________________ 31 Ilustración 11Diagrama de despliegue. ____________________________________________________ 33 Ilustración 12 Diagrama lógico de la base de datos. _________________________________________ 34 Ilustración 13 Diagrama de componentes. _________________________________________________ 35. 10.
(11) Introducción El desarrollo tecnológico que ha alcanzado la humanidad en los últimos años ha propiciado de manera explosiva que exista gran cantidad y diversidad de datos, así como el constante incremento e interrelación entre los mismos, los cuales constituyen un recurso indispensable y estratégico para la obtención de información valiosa tanto para la competitividad y calidad de los servicios de las organizaciones, como en la vida cotidiana. Esta gran cantidad de información podría tener un mayor y más efectivo aprovechamiento para diversos fines, incluso diferentes para los que fueron creados los datos originales de los que procede. Al disponer de una descripción lo más completa posible de los datos se posibilita su compartición, reutilización y análisis; pero de manera especial que se entiendan por parte de las personas y en especial por los sistemas de información computarizados. Por tales motivos se debe lograr que se incremente la posibilidad de proporcionar mayor información sobre los datos, reto actual de la industria de las tecnologías de la información. Un sistema de información es un conjunto de componentes que interaccionan entre sí para alcanzar un fin determinado, el cual es satisfacer las necesidades de información de una organización. En este escenario se encuentran el equipo computacional necesario para que el sistema de información pueda operar y el recurso humano que interactúa con el sistema de información formado por las personas o actores que utilizan el sistema, así como el software para el procesamiento de dicha información, entre otros. Un sistema de información realiza cuatro actividades básicas: entrada, almacenamiento, procesamiento y salida de información.. 1.
(12) A medida que fueron creciendo estos datos, el hombre creó sistemas más grandes y avanzados para poder darle solución a estas necesidades mayores que iban surgiendo respecto a la manipulación de sus datos; a estos se les llama sistemas de gestión de bases de datos (SGBD). Estos sistemas automatizados han alcanzado gran auge en la actualidad para dar solución a diversos problemas de la sociedad en general donde se requiere un tratamiento intensivo de datos con tolerancia a errores y buen rendimiento. Estas herramientas también dan la facilidad de poder trabajar con redes públicas o privadas. A menudo se requiere de herramientas que sean compatibles con estos SGBD y permitan visualizar los datos, establecer conexión entre ellos y numerosos elementos que manejen los diferentes tipos de datos, así como métodos para facilitar su implementación en un lenguaje de programación de alto nivel. Todos estos elementos mencionados forman parte de un sistema de información computarizado. Desde el año 2000, en las universidades cubanas se encuentran insertados un número grande de una nueva figura estudiantil conocida como cadetes insertados de las Fuerzas Armadas Revolucionarias (FAR) que ha ido creciendo progresivamente de año en año. En el Estado Mayor de las FAR se controla toda la información académica, de salud, familiar, etc. sobre dichos cadetes. Actualmente, en la Universidad Central “Marta Abreu” de Las Villas (UCLV) es difícil gestionar toda esta variada información que se registra manualmente en papel y en algunos archivos digitales de formato heterogéneo sin capacidades para formular consultas a la misma. Entonces se hace necesario pasar a un estadio superior en la gestión de información donde se pueda recopilar, y conocer en cada momento, la situación académica, disciplinaria, estado de salud, pertenencia a batallón, compañía, etc. de los cadetes FAR insertados que estudian diferentes carreras. 2.
(13) universitarias en la UCLV. En esto consiste el problema de investigación de esta tesis. Consecuentemente, el objetivo general de esta investigación es crear un sistema de información para gestionar variada información sobre los cadetes FAR insertados en la UCLV. Para lograr este objetivo es necesario cumplir los siguientes objetivos específicos: Determinar los datos relevantes para el Estado Mayor de las FAR sobre los cadetes FAR insertados en la UCLV. Diseñar la arquitectura de la información apropiada para registrar esos datos relevantes. Concebir un sistema de información que emplee los datos considerados en la arquitectura de la información. Implementar el sistema de información que ayude a gestionar la información sobre los cadetes FAR insertados en la UCLV y sea fácil de usar. Como resultado de la revisión bibliográfica y de la factibilidad del trabajo en función de los objetivos, se define la siguiente hipótesis de investigación: se puede desarrollar un sistema para la gestión de la información sobre los cadetes FAR insertados que resuelva el problema de la dispersión y heterogeneidad de la misma y sea eficiente y fácil de usar. Este trabajo se justifica por la importancia que desde el punto de vista práctico tiene la gestión eficiente de la información sobre los cadetes FAR insertados para el Estado Mayor de las FAR y desde el punto de vista metodológico se sistematiza en el proceso de diseño de sistemas de información.. 3.
(14) Este trabajo es viable, ya que existen posibilidades de realización de esta investigación porque se cuenta con recursos materiales, expertos para la consulta y oportunidades de utilización de los resultados. La tesis está estructurada en tres capítulos: El capítulo 1 aborda algunos referentes teóricos fundamentales sobre las tecnologías utilizadas en la implementación de la solución propuesta. El capítulo 2 recoge los puntos más relevantes sobre el análisis, diseño e implementación del sistema de información propuesto. El capítulo 3 consta de una guía detallada para el usuario que utilizará el sistema de información y se brinda una serie de especificaciones y características. generales del funcionamiento del sistema, tanto para los. administradores como para los usuarios.. 4.
(15) Capítulo 1: Aspectos teóricos generales 1.1 Aplicación Desktop. Es la aplicación creada para ejecutarse en un ordenador de escritorio, sobre un sistema operativo de interfaz visual como Windows o Linux.. Ventajas de las aplicaciones de escritorio. El usuario está más acostumbrado. No se necesita un server. Aplicaciones muy pesadas deben correr en el cliente.. Hay aplicaciones que son de naturaleza web, y tendrían poco sentido hacerlas desktop, por ejemplo las redes sociales, buscadores y sitios de noticias. Hay aplicaciones que son de naturaleza desktop y que no tendría sentido volverlas web: compiladores, aplicaciones de oficinas e IDEs. La mayor parte de aplicaciones empresariales pueden perfectamente ser desarrolladas en ambas tecnologías, con las ventajas y desventajas de cada una. A mi opinión la decisión en cuánto al enfoque que se debe tomar depende de dos cosas: costo y tiempo. En una aplicación de escritorio normalmente no iniciamos sesión por cada aplicación que usemos, sólo se inicia sesión una vez cuando prendemos el sistema operativo, asumiendo que vamos a abrir una aplicación para ver nuestra lista de tareas: El usuario carga la aplicación. La aplicación (el código), se conecta a la base de datos y recupera la información del usuario. La aplicación muestra al usuario la información solicitada.. 5.
(16) 1.2 Metodologías de desarrollo de software. Las metodologías de desarrollo del software son un marco de trabajo usado para estructurar, planificar y controlar el proceso de desarrollo en sistemas de información. Su principal objetivo es aumentar la calidad del software que se produce, en todas y cada una de sus fases de desarrollo. En la actualidad, constituyen uno de los temas más polémicos en el mundo del desarrollo de aplicaciones. Su uso persigue, como objetivo principal, lograr el éxito rotundo de los proyectos de producción de software, para lo cual imponen un proceso disciplinado con el fin de hacerlo más predecible y eficiente. Se debe seleccionar la metodología más adecuada que posibilite obtener los resultados óptimos que se desean, es por esto que se necesita conocer las principales características de las diferentes metodologías y así poder elegir la correcta. 1.2.1 Proceso unificado de desarrollo (RUP).. La metodología a utilizar para el análisis y modelado de los procesos de desarrollo del software es RUP, ya que se caracteriza por ser iterativo e incremental, de esta forma, en cada iteración se puede llevar al cliente una versión del producto, con el fin de obtener mejoras para el software, alcanzando así la mejor calidad durante el ciclo de vida del proyecto; está centrado en la arquitectura, permitiendo tener una visión completa. del. mismo y guiado por casos de usos, lo cual constituye el hilo conductor de todo proceso. Incluye artefactos y roles que son diseñados durante las diferentes fases. Otra de las facilidades por lo cual se decide utilizar RUP es porque constituye la metodología estándar más utilizada para el análisis, implementación y documentación de sistemas orientado a objetos,. 6.
(17) permitiendo adaptarse a las necesidades de cualquier proyecto. Dicha metodología cuenta con una amplia documentación, lo que facilita que el producto contenga manuales para su correcto funcionamiento. 1.3 Lenguaje de modelado. En todas las disciplinas de la Ingeniería se hace evidente la importancia del modelado, no solamente sirve para los grandes sistemas, aún en aplicaciones de pequeño tamaño se obtienen beneficios de modelado. Sin embargo es un hecho que entre más grande y complejo es el sistema, más importante es el papel que juega. 1.3.1 Lenguaje unificado de modelado (UML).. UML es un lenguaje gráfico que permite visualizar, especificar, construir y documentar un sistema. Está consolidado como el lenguaje estándar en el análisis y diseño de sistemas de cómputo. El proceso unificado RUP utiliza UML como lenguaje de modelado, para preparar todos los esquemas de un sistema de software. A través de UML es posible establecer los requerimientos y estructuras necesarias para un sistema de software, antes del código. En la presente investigación se decidió utilizar UML como lenguaje de modelado ya que es la clave para generar. todo. la. documentación. necesaria, ayudando así a crear con facilidad los manuales de usuario. Además, permite que en futuras versiones del desarrollo de la aplicación los desarrolladores comprendan mejor todo el proceso.. 7.
(18) 1.4 Plataformas de desarrollo. 1.4.1 Herramienta CASE.. Las. herramientas. CASE. son. diversas. aplicaciones. destinadas. a. aumentar la productividad en el desarrollo del software, reduciendo el coste de las mismas en términos de tiempo y dinero. Evitan la aparición de errores permitiendo obtener una idea clara de que es lo que se va a hacer antes de comenzar a programar. Estas herramientas tienen vital importancia en múltiples aspectos del ciclo de vida del desarrollo del software, como son: Mejorar la productividad en el mantenimiento y desarrollo del software. Mejorar el tiempo, costo de desarrollo y mantenimiento de los sistemas informáticos. Implementación de parte del código con el diseño dado. Aumentar la calidad del software. Documentación o detección de errores. En el proceso de desarrollo de software cumplir con la planificación y ofrecer un producto de calidad, son dos retos para el equipo de desarrollo. La realización de un nuevo software requiere que las tareas sean organizadas y completadas en forma correcta y eficiente. Con el objetivo de apoyar el trabajo de los desarrolladores durante el ciclo de vida y desarrollo del proyecto se hace necesario seleccionar una herramienta CASE que brinde soluciones para resolver los problemas relacionados con el software. Estas herramientas fueron desarrolladas para automatizar los procesos y facilitar las tareas de coordinación de los eventos que necesitan ser mejorados.. 8.
(19) 1.4.1.1 Visual Paradigm.. Visual Paradigm es una herramienta CASE que facilita el modelado de artefactos en el proceso de desarrollo de software mediante el lenguaje de modelado UML, soportando el ciclo de vida completo del desarrollo del software. Ofrece la posibilidad de documentar todo el trabajo sin necesidad de emplear otras herramientas en varios formatos, como PDF u otras. Ayuda a la construcción de aplicaciones de calidad y a un excelente costo. Permite además diseñar los diferentes tipos de diagramas de clases y generar códigos a partir de dichos diagramas. Soporta ingeniería inversa, importa proyectos de Rational Rose, genera informes, edita detalles de casos de uso y genera bases de datos, permitiendo la transformación de diagramas de entidad-relación. Dicha herramienta soporta varios usuarios trabajando sobre el mismo proyecto y permite control de versiones, por estas razones se considera colaborativa. Es además, una herramienta multiplataforma. Teniendo en cuenta las múltiples características antes mencionadas, esta herramienta es seleccionada para el modelado de la aplicación. 1.4.2 Lenguaje de programación.. Un lenguaje de programación es un conjunto de símbolos, reglas sintácticas y semánticas que definen su estructura, así como el significado de sus elementos y expresiones. Es utilizado para controlar el comportamiento físico y lógico de una máquina. Actualmente existen lenguajes de programación de bajo, mediano y alto nivel. En el caso de los lenguajes de bajo nivel, las instrucciones son muy simples y cercanas al funcionamiento de la máquina, como lo son el código máquina y el. 9.
(20) ensamblador. Los de alto nivel están caracterizados por un alto nivel de abstracción y utilizan un lenguaje más cercano al natural, ejemplo de ellos son: C++, C#, java, python, entre otros. Los lenguajes de programación de nivel medio, como su nombre lo dice, se localizan en un punto medio entre los dos anteriores. Dentro de estos lenguajes podría estar C. 1.4.2.1 C#. La mayoría de los programadores, a1 oír hablar de C#, responden en primera instancia con esta interrogación o, incluso, utilizando un tono exclamativo sobre la misma frase. ¿Necesitamos realmente otro nuevo lenguaje? ¿No es suficiente con los que ya existen? ¿No sirven para los proyectos que tenemos que desarrollar actualmente? Estas, y otras muchas, son cuestiones que Microsoft se planteó en su momento y, tras las cuales, decidió embarcarse en un proyecto tan ambicioso. Es en este contexto en el que debemos situar la aparición de C#, un nuevo lenguaje propuesto por Microsoft precisamente para satisfacer las necesidades. actuales y de un futuro cercano. C# es, por tanto, una. herramienta, como todos los lenguajes de programación, pero adaptado a1 trabajo actual y sin compromisos de compatibilidad ascendente. C#, es un lenguaje de programación de alto nivel de última generación que se basa en el paradigma orientado a objetos, es. el primer lenguaje orientado a. componentes en la familia de lenguajes C y C++. Es un lenguaje de programación simple, moderno, y con un sistema de tipos seguro derivado de C y C++. C# combina la alta productividad de Microsoft Visual Basic y la eficacia bruta de C++.. 10.
(21) Arquitectura .NET. La idea que está detrás de Microsoft .NET es que .NET desplaza el foco de la informática desde un mundo en el que los dispositivos individuales y los sitios Web están simplemente conectados a través de Internet a uno en el que los dispositivos, recursos y ordenadores trabajan juntos para proporcionar soluciones más sustanciosas a los usuarios Microsoft .NET está formada por cuatro componentes centrales.. Componentes centrales de Microsoft .NET. .NET Building Block Services, o acceso por programa a ciertos servicios, como almacenamiento de archivos, calendario y Passport.NET (un servicio de comprobación de identidad). Software de dispositivo .NET, que se ejecutara en los nuevos dispositivos para Internet. La experiencia de usuario .Net, que incluye características como la interfaz natural, agentes de información y etiquetas inteligentes, una tecnología que automatiza los hipervínculos con la información relacionada con palabras y frases en documentos creados por el usuario. La infraestructura .NET, que comprende el Framework .NET, Microsoft Visual Studio.NET, .NET Enterprise Servers y Microsoft Windows.Net La infraestructura .NET, se refiere a todas las tecnologías que conforman el nuevo entorno para crear y ejecutar aplicaciones robustas, escalables y distribuidas. La parte de .NET que nos permite desarrollar estas aplicaciones es el Framework .NET. El Framework .NET consiste en el Common Lenguaje Runtime (CLR) y en las bibliotecas de clases del Framework .NET, a veces llamadas Biblioteca de Clases Base (BCL). Piense en el CLR como en la máquina virtual en la. 11.
(22) que funcionan las aplicaciones .NET. Todos los lenguajes .NET tienen las bibliotecas de clases del Framework .NET. a su disposición. Si está. familiarizado con Microsoft Foundation Classes (MFC) o con Borland's Object Windows Library (OWL), también está familiarizado con las bibliotecas de clases. Las bibliotecas de clases Framework .NET incluyen soporte para todo, desde entrada, salida a archivos y a base de datos hasta XML y SOAP. De hecho, las bibliotecas de clases Framework .NET son tan vastas que fácilmente ocuparía todo un libro el dar una visión general superficial a todas las clases soportadas. Cuando usamos el término «máquina virtual», no nos referimos a Java Virtual Machine (JVM). Realmente estamos utilizando la definición tradicional del término. Hace varias décadas, antes de que Java no fuera más que otra palabra para una bebida oscura y caliente, IBM fue el primero en actuar el término «máquina virtual». Una máquina virtual era una abstracción de sistema operativo de alto nivel sobre el que otros sistemas operativos podrían funcionar en un entorno completamente encapsulado. Cuando nos referimos al CLR como un tipo de maquina virtual, nos referimos al hecho de que el código que se ejecuta en el CLR se ejecuta en un entorno encapsulado y gestionado, separadamente de otros procesos de la máquina.. Bibliotecas de .NET Microsoft.NET representa el cambio hacia un modelo de programación en el que los dispositivos, servicios y ordenadores trabajan. juntos para. proporcionar soluciones a los usuarios. Importante en este cambio es el desarrollo del Framework .NET y del CLR, que se muestran en la Figura 2. El Framework .NET contiene las bibliotecas de clases compartidas por los. 12.
(23) lenguajes compilados para ejecutarse en el CLR. Como C# fue diseñado para el CLR, usted no puede llevar a cabo ni siquiera las tareas más simples en C# sin el CLR y las bibliotecas de clases de Framework.Net.. Ilustración 1El Framework .NET contiene bibliotecas diseñadas para facilitar la interoperabilidad entre servicios, dispositivos y ordenadores.. 1.4.3 Sistemas gestores de bases de datos.. Un. sistema. gestor. de. bases. de. datos. (SGBD) es. un. sistema. computarizado que permite almacenar información y ofrece la posibilidad a los usuarios de recuperar y actualizar los datos. Su objetivo es servir de interfaz entre la base de datos, el usuario y las aplicaciones. Permite definir los datos a distintos niveles de abstracción y manipularlos, garantizando la seguridad e integridad de los mismos. Un SGBD debe permitir:. 13.
(24) Definir una base de datos: especificar tipos, estructuras y restricciones de datos. Construir la base de datos: guardar los datos en algún medio controlado por el mismo SGBD. Manipular la base de datos: realizar consultas, actualizarla y generar informes. Algunos ejemplos de SGBD son Oracle, DB2, PostgreSQL, MySQL, MS SQL Server, etc. 1.4.3.1 PostgreSQL. PostgreSQL es un sistema de base de datos multiplataforma, potente, dirigido por una comunidad de desarrollo, es orientado a objetos, libre y está bajo la licencia BSD. Posee interfaces gráficas de usuarios y enlazadores para algunos lenguajes de programación. Permite además una alta concurrencia, debido fundamentalmente a que mientras un proceso escribe en una tabla, otros accedan a la misma tabla sin necesidad de bloqueos. Es capaz de ajustarse al número de CPU y a la cantidad de memoria que posee el sistema de forma óptima, lo cual permite aceptar muchas peticiones simultáneas al mismo tiempo. Una de las principales necesidades del sistema es la utilización de un gestor de base de datos potente, que permita el almacenamiento de gran cantidad de. información, siendo. esta una. de. las. razones por. la que fue. seleccionado PostgreSQL. Existen otros gestores con esta característica como es el caso de Oracle, pero fue seleccionado PostgreSQL por ser un software libre, aspecto fundamental.. 14.
(25) 1.5 Conclusiones parciales.. En este capítulo se reseñaron los elementos básicos relacionados con el contexto teórico que interviene en la solución que se le va a dar al problema planteado en la introducción de esta tesis. Se han referido términos y conceptos que son necesarios para el desarrollo del software, y los posibles recursos a utilizar. En el capítulo siguiente se plantea la propuesta de diseño del sistema de información para solucionar el problema identificado.. 15.
(26) Capítulo 2 Análisis del sistema. En este capítulo se abordan las fases de análisis y diseño del sistema de información. Para documentar las actividades realizadas en estas fases se utilizó el lenguaje unificado de modelación UML (acrónimo del inglés Unified Modeling Language), el que prescribe un conjunto de notaciones y diagramas estándar para modelar sistemas orientados a objetos, y describe la semántica esencial de lo que estos diagramas y símbolos significan. 2.1 Descripción de los requerimientos El proceso de captura de requisitos tiene gran importancia en el proceso de desarrollo del software, ya que a través de estos se identifica lo que el usuario desea y de esta forma se obtiene un producto de calidad. Los requisitos se pueden clasificar en: Funcionales: no son más que capacidades o condiciones que el sistema debe cumplir. Especifican comportamientos particulares de un sistema. No Funcionales: son propiedades o cualidades que el producto debe tener. Representan características del sistema que señalan restricciones haciendo el producto atractivo, rápido o confiable. Los requisitos funcionales del sistema son: 1. Autentificar usuarios: Define niveles de usuarios. 2. Insertar cadetes: Consiste en agregar cadetes al sistema a medida que estos ingresen en los distintos centros de estudios universitarios o los cadetes que hayan incorporados a sus estudios. 3. Verificar los datos: Consiste en rectificar la información de los cadetes en el sistema cada curso.. 16.
(27) 4. Almacenar la información en la base de datos: Requisito que permite tener almacenado toda la información de cada cadete. 5. Obtener información: Consiste en obtener la información deseada mediante reportes. 6. Actualizar el sistema: Permite tener actualizada la base de datos. Los requisitos no funcionales del sistema son: Requisitos de software. Se necesita la instalación del sistema operativo Linux Ubuntu v10.04 o superior o Windows XP/7. El servidor de base de datos PostgreSQL 8.3 o superior. Requisitos de hardware. Se necesita que el servidor de base de datos se encuentren en máquinas de un 1 GB o más de memoria RAM, con 10 GB de almacenamiento en el disco duro como mínimo y un procesador Intel Dual Core o superior. Requisitos en el diseño e implementación. El lenguaje de programación a utilizar es el C#. La herramienta de desarrollo a utilizar es el Microsoft Visual Studio. Requisitos de seguridad El servidor con el que cuenta la plataforma para su correcta ejecución debe estar en una máquina sin red. Integridad Deben realizarse salvas de seguridad a la base de datos para su recuperación en caso de fallos.. 17.
(28) Disponibilidad El sistema debe estar disponible en todo momento donde pueda presentarse alguna modificación. Confiabilidad Los reportes y los cambios realizados estarán con una calidad máxima mientras el sistema no presente fallos. Requisitos de rendimiento La aplicación requiere de un procesamiento rápido de la información, debido a la velocidad de búsqueda que presenta. El tiempo de respuesta del sistema está en dependencia de la cantidad de datos a buscar. Requisitos de soporte El sistema debe contar con una documentación (manual de usuario) en caso de fallos. Aspectos legales La aplicación y la documentación pertenecen al CES de Villa Clara.. Actividades del sistema. Se necesita un sistema que permita la gestión de datos que incluye la entrada, salida, así como la emisión de informes referentes al tránsito de los cadetes FAR insertados en la UCLV. Este software debe ser capaz de crear nuevos expedientes y almacenar todo lo referente a cada uno de ellos, así como calcular sus promedios académicos a partir de las notas que obtienen en su carrera universitaria. A continuación se muestran las diferentes actividades que puede realizar un sistema de información para el control de cadetes FAR insertados.. 18.
(29) Entradas: Datos generales del cadete: expediente, fotografía, nombre y apellidos, fecha de nacimiento, lugar de nacimiento, raza, sexo, color de ojos y pelo, estatura, peso, dirección y teléfono particular, egreso, motivo de egreso, nombre del padre y de la madre, ocupación, dirección, centro de trabajo y teléfono del trabajo del padre y la madre, alteración y situación de salud, militancia, cargo y fecha de ingreso a la UJC. Proceso: Insertar, modificar y eliminar cadetes, según la situación que tengan en el proceso docente-educativo. Cálculo del promedio general. Cálculo del promedio actual. Almacenamiento: Catálogo de cadetes. Salidas: Reportes: Sexo y raza, año y provincia, centro de estudios, becados, por cargos, situación de salud, egreso, situación escolar, disciplina, año y especialidad, centro de estudios y provincia, promedio general y actual. Consultas: Sexo y/o raza, año y/o provincia, centro de estudios, becados, por cargos, situación de salud, egreso, situación escolar, disciplina, año y/o especialidad, centro de estudios y/o provincia, promedio general y actual.. 19.
(30) 2.2 Diagrama de casos de uso Un caso de uso es un fragmento de funcionalidad del sistema que proporciona al usuario un resultado importante, los casos de usos representan los requisitos fundamentales. Los casos de uso permiten definir los límites y las relaciones entre el sistema y el entorno. Son descripciones de la funcionalidad de la aplicación independientes de la implementación, en comparación con respecto a los diagramas de flujo de datos del enfoque estructurado, ellos cubren la carencia existente en métodos previos en cuanto a la determinación de requisitos, dividen el conjunto de necesidades atendiendo a la categoría de usuarios que participan en el mismo y están basado en el lenguaje natural, es decir, es accesible por los usuarios. Para este sistema los casos de uso se ajustan a dos categorías de usuarios y una del sistema, donde están el administrador de la aplicación, el invitado que sólo tendrá permiso para ver los informes que brindará el sistema, y el sistema que se encargará de procesar todas las acciones ejecutadas por estos usuarios. A continuación se muestran los casos de usos para cada usuario del sistema. Un actor representa quién o qué inicia una acción dentro del sistema, en otras palabras, es simplemente un rol que es realizado por una persona o cosa. Un actor en un diagrama de casos de uso es representado por la figura en forma de persona.. 20.
(31) Ilustración 2Diagrama de casos de uso. A continuación se especifican los actores que interactúan con el sistema: Actores. Justificación. Admin. Actor encargado de gestionar el sistema.. Guest. Actor con acceso restringido.. A continuación se presentan las descripciones de los casos de uso del sistema: Registrar Caso de uso CU-1. Autentificarse al sistema.. Propósito. Derechos al sistema.. Actores. Solicitantes (inicia).. Resumen. Referencias. El caso de uso permite diferenciar los derechos administrativos para la gestión del sistema. 1. Precondiciones. El servidor debe estar funcionando.. 21.
(32) Consultar Caso de uso CU-1. Buscar información.. Propósito. Informar al cadete.. Actores. Caso de uso ¨Registrar¨ (inicia).. Resumen. Referencias. El caso de uso permite hacer búsqueda de información deseada para el usuario. 5. Precondiciones. El servidor debe estar funcionando.. Agregar Caso de uso CU-1. Adicionar nuevos ingresos.. Propósito. Actualizar el sistema.. Actores. Caso de uso ¨Registrar¨ (inicia).. Resumen. El caso de uso permite insertar nuevos cadetes a la base de datos. 2. Referencias Precondiciones. El sistema debe estar funcionando y existir nuevos estudiantes.. Modificar Caso de uso CU-1 Propósito. Variar información sobre cadetes. Hacer cambios en el sistema.. Actores. Caso de uso ¨Registrar¨ (inicia).. Resumen. El caso de uso permite cambiar información errónea.. 22. los.
(33) Referencias. 3. Precondiciones. El sistema debe estar funcionando.. Eliminar Caso de Uso CU-1. Excluir los cadetes egresados.. Propósito. Actualizar el sistema.. Actores. Caso de uso ¨Registrar¨ (inicia).. Resumen. El caso de uso permite eliminar cadetes de la base de datos. 6. Referencias Precondiciones. El sistema debe estar funcionando y existir estudiantes egresados.. 2.3 Diagrama de actividades. Un diagrama de actividades es una notación para un grafo de actividades donde se muestra el flujo de actividad a actividad y trata la vista dinámica de un sistema; es un caso especial de diagrama de estado en el cual todos o casi todos los estados son estados de acción y en el cual casi todas o todas las transiciones son disparadas por la terminación de las acciones en los estados origen.. 23.
(34) 2.3.1 Inserción de los cadetes.. Ilustración 3Diagrama de actividades para la inserción de cadetes.. 2.3.2 Insertar Cadetes.. En este paso el usuario debe introducir los datos personales, familiares y escolares del cadete. En este paso el usuario debe introducir todas las asignaturas que debe recibir el estudiante correspondiente a su especialidad.. En estos pasos se muestra en la siguiente figura donde el usuario debe llevar este proceso de control para que se mantenga actualizado.. 24.
(35) Ilustración 4Diagrama de transición de estados para cadete.. Ahora se muestra los diagramas de actividades para los demás casos de usos del sistema.. Ilustración 5Diagrama de actividades para la búsqueda de cadetes.. 25.
(36) Ilustración 6Diagrama de actividades para la eliminación de cadetes.. 26.
(37) Ilustración 7Diagrama de actividades para la modificación de los cadetes.. Ilustración 8Diagrama de actividades para la autentificación de los usuarios.. 27.
(38) 2.4 Diagrama de objetos. Es un modelo de objetos que describe cómo colaboran los trabajadores y las entidades del negocio dentro del flujo de trabajo del proceso de negocio. Trabajadores del negocio: Es una abstracción de una persona (o grupo de personas), una máquina o un sistema automatizado; que actúa en el negocio realizando una o varias actividades, interactuando con otros trabajadores del negocio y manipulando entidades del negocio. Representa un rol. Entidades del negocio: Representan a los objetos que los trabajadores del negocio toman, inspeccionan, manipulan, producen o utilizan durante la realización de los casos de uso de negocio. Comúnmente representan un documento o una parte esencial de un producto. Algunas veces representa cosas no tangibles como el conocimiento acerca de un mercado o cliente.. Ilustración 9Diagrama de objetos.. 28.
(39) 2.5 Conclusiones Parciales. Se. realizó. una descripción. de. los. actores. del sistema. y. sus. responsabilidades, se identificaron además los requisitos funcionales, siendo de gran importancia para el desarrollo del sistema ya que constituyen la funcionalidad del mismo. Se modeló el diagrama de casos de uso, el cual refleja un esquema de lo que se debe implementar. También se identificaron los requisitos no funcionales y se detallaron todos los casos de uso, siendo de gran valor para la construcción del sistema propuesto. Con la culminación de esta etapa se hace posible la entrada a la fase de diseño del sistema.. 29.
(40) Capítulo 3. Diseño, implementación y prueba del sistema. En este capítulo se exponen los diferentes elementos que documentan el diseño, la implementación y pruebas del sistema de información sobre el cadete FAR insertado. Se modelan los diagramas de clases del diseño los cuales permiten determinar con precisión lo que se desea programar. Se diseña la arquitectura a utilizar, así como los patrones empleados. El propósito de este capítulo es especificar una solución que pueda ser fácilmente convertida en código, construyendo así una arquitectura simple y fácilmente extensible. A partir de los requisitos definidos, se hace necesario realizar el diseño del sistema, en el que se formularán los modelos para preparar la entrada a las actividades de implementación. El diseño es el centro de atención al final de la fase de elaboración y el comienzo de las iteraciones de construcción, contribuye a una arquitectura estable y sólida, además de crear un plano del modelo de implementación. Un buen diseño del sistema permite que el mismo pueda ser implementado sin ambigüedades.. 30.
(41) 3.1 Arquitectura del sistema.. Ilustración 10 Arquitectura del sistema. La arquitectura se desarrolló sobre el patrón 4-Tier, en el cual se distribuyen físicamente los niveles, por cada nivel se encuentra un ordenador donde corre el código y los procesos. La arquitectura presentada tiene cuatro niveles, cada uno tiene una funcionalidad específica, del cual es responsable y están localizadas en diferentes servidores físicos. Sistema Cadetes FAR: aplicación externa encargada de gestionar los cadetes. Red FAR: dispositivo router en caso de que el servidor PostgreSQL este en una máquina de la misma red local. La comunicación con la aplicación Sistema Cadete FAR y el servidor PostgreSQL es mediante el uso del middleware ICE y utiliza el ORM SQLAlchemy para acceder a la base de datos. Este servidor debe permanecer en un ordenador donde su función sea única y no existan otras que alteren el rendimiento normal de la plataforma. Servidor PostgreSQL: gestor de la base de datos, donde no puede ejecutarse nada que afecte el rendimiento y ejecución del mismo.. 31.
(42) Base de Datos Cadetes: en este nivel se encuentran todos los datos de los cadetes para ser gestionados por la aplicación externa. Para representar la distribución lógica de los niveles, es decir, como está estructurado el código, se utilizó la arquitectura 4-Capas. El diseño de aplicaciones en capas es ideal para la creación de sistemas adaptables, donde cada componente puede ser utilizado y reutilizado en nuevas combinaciones para satisfacer los requisitos del negocio. 3.3.1 Características de la arquitectura de la plataforma.. La arquitectura de la plataforma funciona con un grupo de computadoras conectadas a la red, se comunican y coordinan sus acciones mediante el middleware ICE formando un esquema cliente-servidor. Dentro de las características principales están: Las aplicaciones pueden utilizar máquinas que se encuentran separadas a cierta distancia. El diseño de la plataforma se hace con la idea de posibilitar cambios futuros, que puedan escalar hacia sistemas más grandes. Se puede utilizar diversas métricas de desempeño. El tiempo de respuesta es una, pero también lo son el rendimiento, uso del sistema y cantidad consumida de la capacidad de la red. 3.2 Diagrama de despliegue.. Un modelo de despliegue, que define los nodos físicos (ordenadores) y la correspondencia de los componentes con esos nodos. La vista de despliegue representa la disposición de las instancias de componentes de ejecución en instancias de nodos conectados por enlaces de comunicación. Un nodo es un recurso de ejecución tal como un computador,. 32.
(43) un dispositivo o memoria. Los estereotipos permiten precisar la naturaleza del equipo: Dispositivos Procesadores Memoria Un nodo es un objeto físico en tiempo de ejecución que representa un recurso computacional, generalmente con memoria y capacidad de procesamiento. Pueden representarse instancias o tipos de nodos que se representa como un cubo 3D en los diagramas de implementación.. Ilustración 11Diagrama de despliegue.. 3.3 Diagrama lógico de la base de datos. 33.
(44) Ilustración 12 Diagrama lógico de la base de datos.. 3.4 Diagrama de componentes. Un diagrama de componentes es un diagrama UML que describe los elementos físicos del sistema y sus relaciones. Los componentes físicos incluyen archivos, librerías, módulos, ejecutables o código fuente. En este diagrama se muestra la organización y las dependencias entre un conjunto de componentes.. 34.
(45) Ilustración 13 Diagrama de componentes.. 3.5 Conclusiones parciales En este capítulo se explicaron, mostraron y documentaron los elementos relacionados con la implementación y el uso del sistema de información del cadete FAR en los centros universitarios de Villa Clara. Con este software se han incrementado las potencialidades de gestión del cadete FAR en los centros universitarios de Villa Clara, obteniéndose los informes que requiere el Estado Mayor de las FAR.. 35.
(46) Conclusiones Se diseñó una base de datos relacional que contempla todos los datos de interés para los órganos responsables de los cadetes en las FAR. Se obtuvo un sistema de bases de datos que permite gestionar los datos de los cadetes FAR y dar respuesta instantánea sobre diversos aspectos de interés, el cual: Es fácil de usar. Tiene capacidad de administración pudiendo identificar diversos niveles de usuarios. Trabaja en un ambiente cliente/servidor.. Fue programado en C# con la plataforma .NET con la base de datos en PostgreSQL.. 36.
(47) Referencias bibliográficas ANÓNIMO, [cited; Available from: http://www.monografias.com/trabajos67/diagramas-uml/diagramasuml2.shtml. ANÓNIMO Cardinalidad de las relaciones. [cited; Available from: http://es.wikipedia.org/wiki/Modelo_entidadrelaci%C3%B3n#Cardinalidad_de_las_relaciones. ANÓNIMO Diagrama de actividades. [cited; Available from: http://es.wikipedia.org/wiki/Diagrama_de_actividades. ANÓNIMO Diagrama de clases. [cited; Available from: http://es.wikipedia.org/wiki/Diagrama_de_clases. ANÓNIMO Diagrama de componentes. [cited; Available from: http://es.wikipedia.org/wiki/Diagrama_de_componentes. ANÓNIMO Diagrama de despliegue. [cited; Available from: http://es.wikipedia.org/wiki/Diagrama_de_despliegue. ANÓNIMO Diagrama de objetos. [cited; Available from: http://es.wikipedia.org/wiki/Diagrama_de_objetos. ANÓNIMO Lenguaje Unificado de Modelado [cited; Available from: http://es.wikipedia.org/wiki/Lenguaje_Unificado_de_Modelado#Cr.C3.ADti cas_a_UML. ANÓNIMO 2000. El Concepto de Datos [cited; Available from: http://www.monografias.com/trabajos14/datos/datos.shtml. ARCHER, T. A fondo C#. CHÁVEZ, C. A. G. Diseño lógico de Bases Datos. [cited; Available from: http://www.mailxmail.com/curso-diseno-base-datos-relacionales/disenologico-bases-datos DIEZ, C. H. 2002. Cardinalidad. [cited; Available from:. 37.
(48) http://www.infor.uva.es/~chernan/Bases/Teoria/TEMA3.pdf. DOBSON, R. 01 edición (01/11/2002). Programación de Microsoft SQL Server 2000 con Microsoft C# .NET. GLORIA PONJUAN, M. M. 2004. SISTEMAS DE INFORMACIÓN: PRINCIPIOS Y APLICACIONES JEAN-LUC DAVID, T. L., ERIK GUNVALDSON, CHRISTOPHER BOWEN, NOAH COAD Y DARREN JEFFORD 1 edición (01/2007). Visual Studio 2008 Team System. KENNETH C. LAUDON, J. P. L. Diciembre 2006. Management Information System. 1am. Edition. LARDENT., A. R. 2001. Sistemas de información para la gestión empresarial. LARMAN, C. ed. P. Hall. 1999. Introducción al análisis y diseño orientado a objetos RALPH M. STAIR , G. W. R. Principios de Sistemas de información. Enfoque administrativo. Cuarta Edición. SÁNCHEZ, G. C. 2001. SISTEMAS GESTORES DE BASES DE DATOS. SÁNCHEZ, J. 2004. Principios sobre Bases de Datos Relacionales. SILBERSCHATZ, A. F. K., HENRY Tercera Edición; Fundamentos de Bases de Datos.. 38.
(49) Bibliografía 1. Alter, S. “Information Systems”. Fourth Edition. Prentice Hall. Pearson Education, Inc.USA. 2002. 2. Ambler, S. “The Elements of UML 2.0 Style”. Cambridge University Press. United Kingdom. 2005. 3. Bagui, S. & Earp, R. “Database Design Using Entity-Relationship Diagrams”. Auerbach Publications. An Ebook Library. 2003. 4. Ben Nathan, R. “How to Secure and Audit Oracle 10g and 11g”. CRC Press. Auerbach Publications. USA. 2009. 5. Booch, G.; Jacobson, I. & Rumbaugh, J. “The Unified Modeling Language User Guide”. Second Edition. Addison- Wesley. Pearson Education, Inc. USA. 2005. 6. Buxton, S., et al. “Database Design.. Know It All”. Morgan. Kaufmann Publishers. USA.2009. 7. Carpenter, L. et al. “Oracle Data Guard 11g Handbook”. Oracle PressMcGraw-Hill. USA. 2009. 8. Chaudhri, A. “Java & Databases”. Hermes Penton Ltd. Great Britain. 2002. Connolly, T. M.; Begg, C. E. “Sistemas de bases de datos. Un enfoque práctico para diseño, implementación y gestión”. Addison Wesley. Cuarta edición. España. 2005. 9. Date, C.J. “An introduction to database systems”. Addison Wesley. Eighth Edition. USA. 2004. 10.Date, C.J. “SQL and Relational Theory”. O'Reilly Media, Inc. USA. 2009. 11.DuBois, P. “MySQL”. Addison-Wesley. Pearson Education, Inc. Fourth Edition. USA. 2009.. 39.
(50) 12.Elmasri, R. & Navathe, Sh. B. “Fundamentals of Database Systems. Addison Wesley. 5th Edition. USA. 2007. 13.Goodson, J. Achieving. “The Data Access Handbook.. & Steward, R.A. Optimal. Database. Application. Performance. and. Scalability”. Prentice Hall. Pearson Education, Inc. USA. 2009. 14.Groh, M., et al. “Access 2007 Bible”. Wiley Publishing, Inc. USA. 2007. 15.Hansen G.W., y Hansen J.V. “Diseño y Administración de Bases de Datos”. Prentice Hall. 2ª edición. España. 1997. 16.Harrington, J.L. “Relational database design and implementation”. Morgan Kaufmann Publishers. 3rd ed. USA. 2009. 17.Hotek, M. “Microsoft® SQL Server 2008 Step by Step”. Microsoft Press. USA. 2008. 18.Wordware Publishing, Inc. USA. 2008. 19.Lambert, S., et al. “Office Access 2007 Step by Step”. Microsoft Press. USA. 2007. McGraw-Hill. USA. 2009. 20.Mageeand, J. & Kramer, J. “Concurrency: State Models & Java Programs”. John Wiley & Sons. 2nd Edition. USA. 2006. 21.Matthew, N. & Stones, R. “Beginning Databases with PostgreSQL”. Apress. Second Edition. USA. 2005. 22.Muller, R. “Database Design for Smarties Using UML for Data Modeling”. ACADEMIC PRESS. USA. 1999. 23.Piattini, M. & Díaz, O. “Advanced Database Technology and Design”. Artech House. Great Britain. 2000. 24.Powell, G. “Beginning Database Design”. Wiley Publishing, Inc. USA. 2006.. 40.
(51) 25.Pressman, R. “Engenharia de Software”. Sexta Ediçäo. McGraw Hill. Brasil. 2006. 26.Ramakrishnan, R. & Gehrke, J. “Database Management Systems”. McGraw Hill. Second Edition. USA. 2007. 27.Revesz, P. “Introduction to Databases. From Biological to SpatioTemporal”. Springer-Verlag. Great Britain. 2010. 28.Rosenzweig, B. & Rakhimov, E. S. “Oracle PL/SQL by example“. Addison-Wesley. Pearson Education, Inc. Fourth Edition. USA. 2009. 29.Rowe, Jeff. “Creación de Servidores de Bases de Datos para Internet con CGI”. Prentice Hall. 1ª edición. México. 1996. 30.Siau, K. & Ericsson, J. “Advanced Principles for Improving Database Design, Systems Modeling, and Software Development”. Information Science Referente. USA. 2009. 31.Simsion, G.C. & UIT, G.C. “Data Modeling Essentials”. Morgan Kaufmann Publishers. Third Edition. USA. 2005. 32.Sommerville, Ian. “Software Engineering”. Eighth Edition. AddisonWesley. USA. 2007. 33.Sumathi, S. & Esakkirajan, S. “Fundamentals of Relational Database Management Systems”. Springer. USA. 2007. 34.Teorey, T. et al. “Database Modeling & Design: Logical Design”. Morgan Kaufmann Publishers. Fourth Edition. USA. 2006. 35.Van der Lans, R. F. “SQL for MySQL developers: a comprehensive tutorial and reference”. Addison-Wesley. Pearson Education, Inc. USA. 2007. 36.Zeis, Ch., et al. “Oracle 11g for Dummies”. Wiley Publishing, Inc. USA. 2009.. 41.
(52)
Figure
Documento similar
In medicinal products containing more than one manufactured item (e.g., contraceptive having different strengths and fixed dose combination as part of the same medicinal
Products Management Services (PMS) - Implementation of International Organization for Standardization (ISO) standards for the identification of medicinal products (IDMP) in
Products Management Services (PMS) - Implementation of International Organization for Standardization (ISO) standards for the identification of medicinal products (IDMP) in
This section provides guidance with examples on encoding medicinal product packaging information, together with the relationship between Pack Size, Package Item (container)
Package Item (Container) Type : Vial (100000073563) Quantity Operator: equal to (100000000049) Package Item (Container) Quantity : 1 Material : Glass type I (200000003204)
If certification of devices under the MDR has not been finalised before expiry of the Directive’s certificate, and where the device does not present an unacceptable risk to health
In addition to the requirements set out in Chapter VII MDR, also other MDR requirements should apply to ‘legacy devices’, provided that those requirements
The notified body that issued the AIMDD or MDD certificate may confirm in writing (after having reviewed manufacturer’s description of the (proposed) change) that the