D
ISEÑO DE UN SISTEMA INFORMÁTICO PARA LA
ADMINISTRACIÓN DE COMPRAS DE ALMACÉN
INITE, S.C. no es responsable del contenido, de la veracidad de los datos, opiniones y
acontecimientos vertidos en el presente proyecto. La finalidad del presente es el desarrollo de
Metodología de aprendizaje basado en proyectos
¿Qué es un proyecto?
Un proyecto es un conjunto de
acciones planificadas que ayudan a resolver problemas,
necesidades o inquietudes
. Un proyecto está constituido por fases y productos.
Fases de un proyecto
Una fase es un conjunto de actividades relacionadas con un objetivo en el desarrollo del
proyecto. Se construye agrupando tareas (actividades elementales) que pueden compartir un
tramo determinado del tiempo de vida de un proyecto. La agrupación temporal de tareas
impone requisitos del mismo tipo correspondientes a la asignación de recursos (humanos,
financieros o materiales).
Cuanto más grande y complejo sea un proyecto, mayor detalle se necesitará en la definición
de las fases para que el contenido de cada una siga siendo manejable. De esta forma, cada
fase de un proyecto puede considerarse un “microproyecto” en sí mismo, compuesto por un
conjunto de microfases.
Entregables o productos
Son los productos intermedios que generan las fases. Pueden ser materiales (componentes,
equipos) o inmateriales (documentos, software). Los entregables permiten evaluar la marcha
del proyecto mediante comprobaciones de su adecuación o no a los requisitos funcionales y
de condiciones de realización previamente establecidos. Cada una de estas evaluaciones
puede servir, además, para la toma de decisiones a lo largo del desarrollo del proyecto.
Diseño de un sistema informático para la administración de compras de almacén 3
Proyecto. Diseño de un sistema informático para la administración de compras de
almacén
Desarrollo del proyecto
Introducción
En todas las empresas, la toma de decisiones es una labor bastante complicada si no se cuenta con la información suficiente y con las herramientas para poder concentrar los datos que provienen de diversos departamentos.
Tal es el caso de las compras de papelería e insumos de oficina que realizan los diversos departamentos de una empresa; estas compras dependen de muchos factores, entre ellos la cantidad de presupuesto disponible, la disponibilidad de los enseres en almacén, o si éstos no están en el almacén, entonces deben pedirse a una serie de proveedores. En este entorno, el gerente de compras debe aprobar o rechazar las solicitudes que los empleados le hagan, tomando en cuenta la urgencia con la que se necesita cada insumo y la cantidad de los materiales que deberán adquirirse.
Para facilitar la administración del departamento de compras, se diseñan sistemas informáticos que permiten que el gerente tenga, en un solo lugar, la información necesaria para aprobar o rechazar las solicitudes que hagan los empleados, generar notificaciones y fechas de entrega, generar órdenes de compras para los diversos proveedores y mantener un historial de solicitudes para organizar su calendario de compras futuras y administrar su presupuesto. El diseño de estos sistemas debe ser amigable, intuitivo y muy fácil de utilizar por personal que no tenga conocimientos profundos de sistemas computacionales.
Debido a que los tiempos de desarrollo tienen que ser cortos y además el sistema debe ser desarrollado a la medida del cliente, se requiere del uso de una metodología de trabajo que permita el seguimiento de todo el proyecto.
Con la finalidad de que adquieras y demuestres las habilidades para implementar un sistema informático bajo el escenario descrito y cumpliendo con las necesidades del cliente, desarrollarás un sistema informático haciendo uso de estrategias de administración de proyectos y de lenguajes de cuarta generación para realizar la ingeniería de software asistida por computadora (CASE por sus siglas en inglés: Computer Aided Software Engineering).
Lineamientos para el desarrollo del proyecto
Justificación
El objetivo de este proyecto es llevarte al ambiente real donde se presenta la necesidad de desarrollo de sistemas informáticos a la medida del cliente. La meta principal consiste en que desarrolles un sistema que cubra con los requerimientos del cliente, pasando por todos los problemas, etapas y metodología que esto implica, de modo que, de la mano del docente, puedas ir sorteando las situaciones problemáticas que se te presentarán en el camino.
Los objetivos particulares serán que:
1. Adquieras habilidad para la gestión, desarrollo y planeación estratégica de proyectos de desarrollo de software.
2. Desarrolles habilidades de comunicación interpersonal, de modo que puedas interactuar con el cliente para definir los requisitos de desarrollo de aplicaciones de software a través de la entrevista, lluvia de ideas, mapas mentales y formatos de registro estándar.
3. Utilices diagramas y modelos de entidad-relación, que aseguren el correcto funcionamiento del sistema a desarrollar.
4. Utilices la tecnología existente en los lenguajes de cuarta generación, mediante el aprendizaje y uso de herramientas CASE.
Con el desarrollo de este proyecto evidenciarás la adquisición de las competencias de la materia, las cuales implican que seas capaz de:
1. Explicar el ciclo de vida del software utilizando, como una etapa previa, diferentes modelos para el desarrollo de sistemas informáticos basados en necesidades y requerimientos del cliente o proyecto. 2. Determinar los requerimientos del cliente, basándose en una metodología de planeación estratégica de
proyectos para desarrollar el ciclo de vida del software, así como sus metas, objetivos, etapas y productos intermedios.
3. Elaborar diagramas de flujo de modelado de sistemas de software, con base en modelos estándar determinados por normas internacionales, esto como una fase previa para la programación del sistema informático a desarrollar.
4. Realizar el análisis y desarrollo de sistemas de software, mediante el uso de plataformas que soporten herramientas CASE, utilizando diagramas estructurados y siguiendo los lineamientos estándar que marcan las normas ISO/IEC, todo ello para desarrollar herramientas informáticas de uso particular (ERP, CRM y LMS).
5. Desarrollar la implementación de un sistema de información mediante la construcción de un prototipo en un entorno CASE independiente (EasyCase o CASE estudio) o en un entorno integrado (Oracle, Access, SAP o AS400).
Bajo la metodología de aprendizaje basada en proyectos, el objetivo final será que desarrolles un sistema informático hecho a la medida de un cliente particular. El proyecto será desarrollado bajo condiciones de tiempo y recursos limitados. Debido a esto tendrás la necesidad de trabajar en equipo y planear con sumo cuidado las etapas a desarrollar durante el cuatrimestre, con lo cual se garantizará el desarrollo de las competencias definidas en la tabla de planeación de esta materia.
Diseño de un sistema informático para la administración de compras de almacén 5
Plan de trabajo
El desarrollo de este proyecto se efectuará mediante las siguientes etapas de desarrollo de software:
Cada fase debe estar encuadrada en una metodología estándar para la gestión de proyectos e ingeniería de software (ISO9001:2000, IEEE).
Fase 1
Análisis de requisitos y planeación del ciclo de vida
del sistema informático
Fase 2 Modelado del sistema
Fase 3
Programación y desarrollo de la base de datos en un
lenguaje de cuarta generación que permita el uso de herramientas CASE
Fase 4
Depuración, mantenimiento y entrega final
Para las etapas de desarrollo del proyecto se sugiere que realices lo siguiente: Formar equipos de trabajo de cuatro a seis alumnos.
Realizar una serie de reuniones de planeación; en ellas se determinarán las tareas y estrategias a realizar por cada miembro del equipo de modo que se avance en el desarrollo del proyecto.
Utilizar protocolos de asignación de tareas y protocolo de reuniones, que serán integrados al portafolio de evaluación del proyecto. En la sección de rúbricas se puede ver el formato propuesto para los protocolos mencionados.
Establecer la asociación de las tareas a desarrollar con entregables físicos, dichos entregables serán la evidencia del trabajo que ejecuten los integrantes del equipo. La periodicidad de cada entrega será definida por el tipo de tarea.
Entrega de reportes individuales por tarea y entregables que le sean asignados a cada integrante del equipo, de modo que vaya formando su portafolio de evaluación individual, que será integrado con el de los demás miembros para formar el portafolio de evaluación del proyecto.
Las tareas importantes a desarrollar durante este proyecto deberán ser documentadas de manera que establezcan con claridad todas las fases de su planeación estratégica y el ciclo de vida del software a desarrollar durante el cuatrimestre. Este proyecto deberá presentarse desde la primera sesión del curso, con el fin de ir formando los equipos de trabajo y conseguir el software y bibliografía necesaria para desarrollar cada fase. Al interior de cada equipo se definirán roles para cada integrante, dependiendo de sus características personales y del conocimiento que tengan sobre bases de datos, administración de proyectos y disponibilidad de tiempo, por lo cual, la primera acción a realizar será la formación de equipos y la definición de roles.
Una vez formados los equipos se ejecutarán las siguientes fases:
Planeación
Fase 1: Análisis de requisitos y planeación de ciclo de vida del sistema informático
En esta fase se deberá realizar:
• Una entrevista con el cliente cuyo objetivo es extraer la información suficiente que permita establecer los requerimientos que debe cumplir el sistema informático solicitado. En esta etapa desarrollarás competencias para la negociación, manejo de la entrevista, lluvia de ideas, mapas conceptuales y diseño del ciclo de vida del software del sistema a desarrollar durante el cuatrimestre.
• Formar equipos de trabajo. Uno de los integrantes asumirá el rol de administrador, su función será la de llevar control de las fechas de reunión, convocar a los integrantes del equipo y llevar los documentos que serán integrados al portafolio de proyecto.
• Hacer la lectura de las estrategias de administración de proyectos que se encuentran en el e-book y comenzar con las reuniones con el cliente con el fin de conocer los requisitos y necesidades del sistema a desarrollar.
• Firmar el protocolo de proyecto para obtener la autorización del cliente y dar validez al proyecto. También se utilizarán los protocolos de reunión y los de asignación de tareas.
Diseño de un sistema informático para la administración de compras de almacén 7 Para esta fase del proyecto los entregables requeridos antes de continuar con la siguiente fase son:
• Protocolo de proyecto (lista de requisitos).
La entrega del protocolo de proyecto consiste en llenar un formato con los requerimientos del sistema de acuerdo con las especificaciones del cliente. En dicho formato quedarán establecidos los alcances y formas de evaluación del proyecto. Firmarán el cliente y el coordinador del proyecto, estableciendo así el contrato que encuadra al proyecto.
• Prototipo no funcional.
Consta de un diseño de pantallas, en donde el equipo de desarrollo bosqueja la forma en que el cliente podrá interactuar con el sistema. Se le da el nombre de prototipo no funcional, debido a que no realiza ninguna función como tal; más bien es una especie de maqueta que se presenta al cliente para que pueda darse una idea del tipo de trabajo que se le realizará.
• Ciclo de vida del software.
El ciclo de vida del software es un bosquejo de cómo se va a ejecutar el desarrollo del proyecto. Se proponen algunos procesos estándar (planeación, implementación, pruebas, entrega) y se bosquejan algunas subfases que ya desde el inicio del proyecto es posible visualizar.
Las contingencias que se presentarán en esta parte están relacionadas con la madurez de las relaciones interpersonales que se den al interior de los equipos, ya que aquí los integrantes están en una fase de autoconocimiento que podría interferir con el trabajo que se espera deban realizar para extraer el máximo de información del cliente.
Propuesta o prototipo
El proyecto que entregues contendrá tres paneles que deberán ser amigables para los usuarios, éstos deben constar de:
1. Panel de empleado. Contiene un campo para escribir el tipo de producto que se solicita, un campo para la cantidad de artículos solicitados, la fecha en que se solicita, el nombre de quien solicita el producto y la urgencia con la que se necesitan los artículos. Además, contará con dos botones, uno para crear una nueva solicitud y otro para cancelar una solicitud existente.
2. Panel de proveedor. Este panel debe contener el nombre de la compañía, el nombre del contacto, teléfono y correo electrónico, el tipo de artículos que puede proveer y la cantidad que tiene en existencia. 3. El panel de gerente. Debe contener las solicitudes hechas por sus empleados, los inventarios de los proveedores y dos botones donde podrá aprobar o rechazar las solicitudes hechas por los empleados. También tendrá la posibilidad de colocar la fecha de entrega y actualizar la base de datos del empleado, para saber si su solicitud fue autorizada y en cuánto tiempo recibirá sus artículos.
El proyecto deberá programarse en algún sistema que soporte herramientas CASE, se recomienda Microsoft
Access.
La interfaz debe ser amigable y fácil de manejar, tomando en cuenta que los usuarios no tienen conocimientos profundos en sistemas informáticos.
Implementación
Fase 2: Modelado del sistema
En esta fase los equipos consolidarán las funciones individuales que le corresponde a cada integrante en lo particular y junto con el administrador del proyecto definirán estrategias de trabajo con el fin de ir creando el modelo del sistema informático solicitado por el cliente. En esta etapa se afianzarán los conceptos de administración de proyectos, siguiendo las normas que recomienda el PMBoK. Del mismo modo deberá realizarse el estudio de otras normas como la ISO9001:2000 y los estándares establecidos por la IEEE.
Para esta fase del proyecto los entregables requeridos antes de continuar con la siguiente fase son:
• Diagramas UML.
Los diagramas UML pertenecen a un tipo de lenguaje gráfico que se utiliza para capturar la esencia del modelo de software a desarrollar. El diagrama debe contener el modelo del sistema dividido en módulos, deberá mostrar las relaciones entre las entidades de cada módulo y las variables que comparten según sea el caso.
• Definiciones para entradas, salidas y repositorios.
Consiste en una lista de las entradas y salidas, que son las variables por donde se ingresan y egresan datos del sistema. En caso de ser requerido hay que especificar los repositorios, que son bloques de memoria internos que se utilizan en procedimientos de recuperación de datos, su función es mantener la integridad de éstos cuando existen usuarios concurrentes. Asimismo, proporcionan mecanismos de importación/exportación sencillos que hacen posibles las cargas o transferencias de información de forma masiva.
• Formatos aprobados por el cliente.
Son documentos que se deben firmar para que el cliente y el coordinador del proyecto tengan sustento y dirección sobre los objetivos y metas del proyecto.
• Calendario de actividades a desarrollar durante el cuatrimestre.
Consiste en un calendario que se utiliza para la ejecución de proyectos tiene la forma de un diagrama de Gannt.
Es conveniente hacer uso de Microsoft Visio u otra herramienta que permita realizar los diagramas UML;
Microsoft Groove, Tortoise SVN u otra herramienta que permita la gestión de calendario y diagramas de Gannt,
gestión de versiones y actualizaciones de archivos. Del mismo modo, conviene presentar al cliente un prototipo no funcional, es decir, una pantalla que muestre la interfaz que habrá entre el sistema y los usuarios que lo utilicen, de modo que el cliente pueda constatar que lo que estaba pidiendo en un inicio corresponde al prototipo.
Fase 3: Programación y desarrollo de la base de datos en un lenguaje de cuarta generación que permita el uso de herramientas CASE
Durante esta fase del proyecto se deberán trasladar los modelos abstractos hechos en UML, a estructuras propias del sistema de desarrollo CASE elegido.
Diseño de un sistema informático para la administración de compras de almacén 9 Para esta fase del proyecto los entregables requeridos antes de continuar con la siguiente fase son:
• Tablas de datos.
Al momento de diseñar una base de datos, éstos deben almacenarse en forma de hojas tabulares, con celdas, columnas y renglones que contendrán los valores de cada objeto que se almacena en la citada base. El entregable consiste en reportar la estructura de las tablas que contendrá el proyecto.
• Formularios.
Son estructuras que hacen interfaz con el usuario y la estructura de tablas que se haya definido. El entregable consiste en reportar la estructura de formularios que contendrá el proyecto.
• Diagramas de entidad-relación.
El entregable consiste en reportar los diagramas de entidad-relación, los cuales deben estar implementados en la plataforma de desarrollo elegida (Access, Oracle, SAP).
• Interfaz gráfica con el usuario (GUI) en el entorno 4GL elegido (Access, Oracle, SAP).
El entregable consiste en entregar la interfaz gráfica de la base de datos, pero ahora ésta debe ser funcional y estar implementada la plataforma de desarrollo elegida.
Una de las contingencias en este punto es el hecho de que se comience a perder el ritmo de trabajo al interior del equipo y se deje de administrar el proyecto, lo que lleva a un avance en forma poco coordinada. Otra contingencia serán los problemas del manejo del entorno CASE elegido, es decir que se puede presentar la falta de habilidad suficiente en los integrantes del equipo para trasladar los modelos abstractos a una base de datos funcional.
Evaluación o mantenimiento
Fase 4: Depuración, mantenimiento y entrega final
La herramienta de evaluación en este punto será el protocolo de proyecto, donde se definieron al inicio los requisitos del cliente que él mismo aprobó.
En esta penúltima fase se realizan los ajustes necesarios para lograr que el sistema se ajuste totalmente a los requisitos establecidos por el cliente. Se realizan pruebas y se depuran aquellos errores que pudieran aparecer. Se presenta la documentación donde se especifican los errores y problemas del sistema de modo que el proyecto sea retroalimentado por el docente.
Para esta fase del proyecto los entregables requeridos antes de continuar con la siguiente fase son:
• El sistema funcionando.
No importa que aún tenga uno o dos errores, aunque lo deseable es que no los tenga (a estas versiones se les llama beta). El entregable consiste en la entrega del sistema de base de datos ya terminado, al cual se le ejecutarán pruebas de funcionamiento bajo distintas condiciones establecidas por el profesor, de acuerdo con las especificaciones asentadas en la hoja de protocolo de proyecto.
• Un manual de usuario.
Consiste en un documento donde se resumen las características del sistema final, mostrando también cómo se utiliza y los posibles problemas que puede presentar el sistema al interactuar con él.
• Un listado de programa.
El entregable consiste en la presentación del reporte impreso de tablas, formularios, consultas y diagramas de relación que la mayoría de las plataformas CASE arrojan de forma automática al desarrollar un sistema.
• Presentación del producto final
Se hace la presentación final con el usuario y las reflexiones acerca de los alcances logrados, los puntos por mejorar y el cierre del proyecto. El entregable consiste en una reunión con el cliente, al cual se le hará la presentación del sistema terminado, junto con toda la documentación asociada al mismo.
La principal contingencia que se puede presentar es que, debido a una mala administración y un mal control de las fases, el proyecto no haya llegado a su fin o el producto diste mucho de los requisitos iniciales.