Beruflich Dokumente
Kultur Dokumente
I Semestre, 2011
Contenido
Introduccin ........................................................................................................................................ 2 Ciclo de vida de los Sistemas Informticos ......................................................................................... 2 Fases del ciclo de vida ..................................................................................................................... 3 Requerimientos ........................................................................................................................... 3 Anlisis......................................................................................................................................... 3 Diseo.......................................................................................................................................... 4 Desarrollo .................................................................................................................................... 5 Pruebas........................................................................................................................................ 5 Implementacin .......................................................................................................................... 5 Mantenimiento y Post-mortem .................................................................................................. 6 Modelos de ciclo de vida ..................................................................................................................... 6 Modelo en cascada ......................................................................................................................... 7 Modelo en espiral ........................................................................................................................... 7 Modelo en prototipos ..................................................................................................................... 9 Modelo iterativo o incremental .................................................................................................... 10
Introduccin
Las aplicaciones informticas son activos fundamentales dentro de las organizaciones modernas. Estas aplicaciones estn formadas por un montn de componentes que estn relacionados entre s los cuales interactan con el fin de cumplir con un objetivo especfico dentro de la organizacin. Algunos de estos componentes son por ejemplo los datos, las interfaces grficas con el usuario, los dispositivos de hardware y debido a la estrecha relacin entre estos elementos, es que las aplicaciones se pueden considerar como un sistema, desde una perspectiva moderna de lo que un sistema representa. Estos sistemas informticos como cualquier otro sistema tienen un ciclo de vida donde se considera que el mismo nace, crece, posteriormente se reproduce (genera nuevos productos) y finalmente se muere o bien se abandona o deja de ser utilizado. A continuacin se brinda una descripcin detallada de las fases que comprende este ciclo de vida de los sistemas de informacin y se presentan varios modelos por medio de los cuales pueden visualizarse estas fases.
Requerimientos La fase de requerimientos consiste en levantar los trminos de referencia del sistema. Estos trminos de referencia no son nada ms que la lista de requerimientos o especificacin del funcionamiento esperado del software una vez que el mismo sea puesto en funcionamiento. Esta lista de requerimientos debe ser lo ms completa y exhaustiva posible y debe tomar en cuenta todos los casos y escenarios del problema que quieren ser atendidos. Este documento es realizado usualmente por los usuarios propios del sistema y algunas veces se puede pedir el consejo de profesionales informticos para que ayuden con los requerimientos tcnicos del software o de la plataforma con que cuenta una organizacin. Existen estndares que pueden ayudar a crear mejores especificaciones de requerimientos como lo son el MoReq y el DoD 5015.2. Esta etapa es quizs la ms importante de todo el ciclo de vida ya que muchas veces llega a convertirse en el contrato de desarrollo y el producto final de todo el sistema depende completamente de la lista de requerimientos. Adems cualquier error en que se incurra en cualquier fase, va a afectar todas las fases siguientes y por eso, al ser esta la primera, debe quedar lo mejor posible. El entregable de esta fase consiste en un Documento de Especificacin de Requerimientos que de hecho puede verse como un contrato en caso de contrataciones o como una especificacin tcnica.
Anlisis La etapa de anlisis consiste en tomar la lista de especificacin de requerimientos generada en la fase anterior y validar cada requerimiento con la realidad de la organizacin.
Aplicaciones Informticas en la Organizacin HA-2085 Aplicaciones Informticas para Archivo Pgina 3 I Semestre, 2011
Usualmente se realiza un Anlisis FODA o bien se estudian los Factores Crticos de xito del proyecto y as se podra determina la factibilidad del mismo. Esta factibilidad debe considerar el presupuesto con que cuenta la organizacin y el tiempo esperado en que se pueda llevar a cabo el sistema. Las Normas Tcnicas de Gestin y Control de las Tecnologas de la Informacin de la Contralora General de la Repblica de Costa Rica, incluyen un apartado que obliga a las instituciones del Estado a contar con los estudios de factibilidad que corresponda para cualquier proyecto que incluya tecnologas de informacin, debido a que hay muchos casos de proyectos que por carecer de estos anlisis, terminan siendo un fracaso en trminos financieros o por una mala estimacin de tiempos. Estos anlisis son una tarea que realiza el personal tcnico y mandos medios aunque tambin se puede hablar de un comit interdisciplinario colegiado que est formado por varios profesionales y que incluya a los usuarios promotores del sistema. El entregable de esta fase sera un Estudio de Factibilidad y el mismo debe incluir la aprobacin del proyecto en general por parte de los jerarcas de la organizacin.
Diseo La etapa de diseo consiste en que despus de determinar la factibilidad del proyecto, se pueda planear la manera en que el mismo va a ser desarrollado. Durante el diseo se trata de modelar la realidad del proyecto y del futuro sistema utilizando modelos de abstraccin que puedan ser traducidos al lenguaje de las computadoras (lenguaje de programacin). De esta manera el diseo se vale de varios diagramas y esquemas que son generados para luego ser utilizados durante el proceso de desarrollo. Parte de estos diagramas son: Diagramas de bases de datos Diagramas de flujos Diagramas de clases Casos de uso
Esta fase es llevada a cabo por profesionales en el rea de informtica, sin embargo, el insumo de los usuarios es sumamente importante para asegurar el xito del proyecto por lo que la participacin de los mismos se hace fundamental.
Es conveniente que los usuarios conozcan la terminologa de estos diagramas y estn familiarizados con los mismos de manera que puedan opinar al respecto. Adems es una de las etapas con ms entregables ya que cada uno de los diagramas o modelos generados se puede considerar un entregable por s solo.
Desarrollo La etapa de desarrollo consiste en utilizar todos los diagramas generados en la fase de diseo y basndose en ellos, hacer el cdigo, las aplicaciones, ventanas, interfaces y dems artefactos que conforman el sistema final. Esta es una etapa de ingeniera que es llevada a cabo por el personal de informtica correspondiente y al finalizar la misma, se genera un sistema que puede ser ejecutado en la plataforma de la organizacin. El entregable de esta etapa consiste en lo que se conoce como una versin beta del sistema a la cual es necesario realizarle las pruebas correspondientes para validar que cumple con los requerimientos del usuario.
Pruebas Una vez que se ha desarrollado el software sigue una etapa de pruebas donde se validan los requerimientos iniciales con el producto final generado por el proceso de desarrollo. Se hacen pruebas bsicas de funcionamiento as como tambin pruebas de integracin con otros sistemas (cuando corresponda) y finalmente se realizan unas pruebas de aceptacin que son las que determinan cundo el software est completamente finalizado y listo para ser implementado. Estas pruebas se realizan en una labor conjunta del personal tcnico y los usuarios del sistema. El entregable de esta etapa es el sistema final y completo el cual es necesario implementar en toda la organizacin y de hecho en el caso de sistemas hechos por contrato, en esta etapa se firma una carta de aceptacin que indica que el sistema cumple con todos los requisitos y que el usuario est satisfecho con el resultado final.
Implementacin Finalmente, una vez que el usuario ha aceptado el software, sigue una etapa de implementacin o implantacin que es cuando el sistema es instalado y comienza a ser utilizado en la organizacin.
Aplicaciones Informticas en la Organizacin HA-2085 Aplicaciones Informticas para Archivo Pgina 5 I Semestre, 2011
Durante este proceso se pueden definir varias estrategias para abordar el proceso de implantacin del sistema y una de las ms utilizadas es la de hacer un paralelo que consiste en poner el nuevo sistema a correr simultneamente con el sistema anterior (que podra ser un sistema manual) y se da un periodo prudencial hasta que luego se elimina el sistema anterior y luego se sigue utilizando el sistema nuevo de manera exclusiva. Dentro de la implementacin tambin se encuentra la etapa de capacitacin a los usuarios finales del sistema. Esta capacitacin a veces no se lleva a cabo en muchas organizaciones a pesar de ser en muchas oportunidades, un factor crtico de xito ya que un usuario sin un conocimiento a fondo del sistema, podra no utilizar todo el potencial del mismo o cometer errores a la hora de utilizarlo. El entregable en esta etapa final es el sistema en produccin que es bsicamente el sistema puesto en funcionamiento y siendo utilizado por la mayora de las personas.
Mantenimiento y Post-mortem Finalmente, algunas personas consideran que los sistemas nunca mueren por lo que hay una etapa final que nunca acaba la cual consiste en darle mantenimiento al sistema y a su vez se analiza peridicamente si el mismo mantiene pertinencia, es decir si est cumpliendo con las expectativas con las que fue creado de la organizacin. Realmente algunos sistemas si llegan a morir porque se convierten en sistemas obsoletos y por lo tanto debe existir una etapa donde se realicen los anlisis post-mortem correspondientes. En este momento es donde debe considerarse la implementacin de un nuevo sistema y por lo tanto debe arrancar un nuevo ciclo de vida o bien un proceso de mejora continua del sistema actual para lo cual es necesario repasar nuevamente todas y cada una las fases.
Modelo en cascada
El modelo en cascada es un enfoque metodolgico que ordena rigurosamente las fases del ciclo de vida de los sistemas de informacin, de forma tal que el inicio de cada etapa debe esperar a la finalizacin de la fase inmediatamente anterior. De esta manera, cualquier error de diseo detectado en la etapa de prueba conduce necesariamente al rediseo y nueva programacin del cdigo afectado, aumentando los costos del desarrollo. La palabra cascada sugiere, mediante la metfora de la fuerza de la gravedad, el esfuerzo necesario para introducir un cambio en las fases ms avanzadas de un proyecto. Si bien ha sido ampliamente criticado desde el mbito acadmico y la industria, sigue siendo el paradigma ms seguido al da de hoy y particularmente en Costa Rica, es el modelo ms utilizado por las Instituciones del Estado y grandes organizaciones.
Modelo en espiral
Adicionalmente, existen otros modelos ms complejos y realistas dentro de las que tenemos el desarrollo en Espiral que consiste en pasar por cada una de las fases varias veces y en cada iteracin se va generando un sistema mejorado y ms complejo segn se muestra en la siguiente figura.
Aplicaciones Informticas en la Organizacin HA-2085 Aplicaciones Informticas para Archivo Pgina 7 I Semestre, 2011
Requerimientos
Anlisis
Implementacin
Diseo
Pruebas
Desarrollo
Figura 2. Modelo en espiral Este modelo puede verse como un ciclo de varios modelos en cascada interconectados entre s donde cada ciclo va mejorando el sistema original. Este modelo en espiral presupone un mecanismo de mejoras ya que una vez que el sistema es implementado, eventualmente existir un proceso de retroalimentacin que crear el mismo sistema pero de manera ms robusta. No se trata de generar sistemas paralelos sino de ir mejorando la base del sistema actual para que el mismo vaya adaptndose a los nuevos requerimientos que van apareciendo en la organizacin. En trminos generales, los sistemas grandes, como por ejemplo un sistema de contabilidad hecho a la medida de una organizacin, va a responder a una metodologa similar a esta debido a que una vez implementado, las mejoras son inevitables debido a que las reglas fiscales cambian
Aplicaciones Informticas en la Organizacin HA-2085 Aplicaciones Informticas para Archivo Pgina 8 I Semestre, 2011
constantemente y por lo tanto hay que estar haciendo reajustes que no vienen tanto a responder a necesidades de la organizacin como tal sino ms bien a requisitos legales o fiscales.
Modelo en prototipos
El modelo de prototipos o tambin llamado, modelo de desarrollo evolutivo, se inicia con la definicin de los objetivos globales para el software, luego se identifican los requisitos conocidos y las reas del esquema en donde es necesaria ms definicin. Entonces se plantea con una iteracin de construccin de prototipos y se presenta diseo resumido. Este diseo se centra en una representacin de aquellos aspectos del software que sern visibles para el usuario final (por ejemplo, la configuracin de la interfaz con el usuario y el formato de las pantallas de reportes). El diseo minimalista de este enfoque conduce a la construccin de un prototipo base, el cual es evaluado por el usuario promotor con el fin que pueda brindar una retroalimentacin. Esta retroalimentacin permitira refinar los requisitos del software a desarrollar. La iteracin ocurre cuando el prototipo se ajusta para satisfacer las necesidades del usuario promotor. Esto permite que al mismo tiempo el desarrollador entienda mejor lo que se debe hacer y as se vaya viendo un resultado a corto plazo. De esta manera, el diseo se enfoca en partes pequeas que tengan una finalidad dentro de un sistema, por ejemplo, se hace el diseo de pantalla de inicio de sesin y validacin y procede a desarrollarse. Una vez que esta interface (pantalla) es desarrollada, la misma se valida con el usuario promotor y de cumplir con sus expectativas, la misma es integrada en el sistema y se procede a disear el siguiente elemento, por ejemplo, los mens o navegacin del sistema. Nuevamente, una vez que los mens estn creados, se procede a integrarlos con el mdulo de validacin y se va creando una metodologa de trabajo por pasos, con la ventaja que los tiempos e interacciones entre el usuario y el equipo de desarrollo se disminuyen. La siguiente figura muestra un desarrollo en prototipos basado en las necesidades reales de un cliente hacia un sistema de informacin.