11

Click here to load reader

Metodologias Para El Desarrollo de Sistemas de Informacion

Embed Size (px)

Citation preview

Page 1: Metodologias Para El Desarrollo de Sistemas de Informacion

METODOLOGIAS PARA EL DESARROLLO DE SISTEMAS DE INFORMACIONKENDALL Y KENDALL JAMES SENN METODOLOGIA UML

Es un ciclo de desarrollo de los sistemas, y se desarrolla en siete etapas las cuales son:1. Identificación de problemas, oportunidades y objetivos: Esta fase es crucial para el éxito del resto del proyecto requiere que se observe de forma objetiva lo que ocurre en una organización, luego en conjunto con otros miembros de la organización hacer notar los problemas. Las oportunidades son aquellas situaciones que se considera que pueden mejorarse, perfeccionarse mediante el uso de los sistemas de información. También es un componente importante de la primera fase, en esta etapa se deberá descubrir lo que la organización intenta realizar, luego determinar si el uso de los sistemas de información apoyaría a la organización para alcanzar sus metas.2. Determinación de los requerimientos de información: Esto se hace a partir de los usuarios particularmente involucrados, para determinar los requerimientos de información dentro de una organización pueden utilizarse diversos instrumentos, los cuales incluyen: muestreo, el estudio de los datos y formas usadas para la organización, la entrevista, los cuestionarios; la observación de la conducta de quien tomo la decisiones, así como de su ambiente. Se hace todo lo posible por

Antes de comenzar con el desarrollo de cualquier proyecto se lleva a cabo un estudio de sistemas para determinar todos los aspectos de la situación actual de la empresa. La información resultante del estudio sirve de base para la formulación de distintas estrategias de diseño. Según James Senn, existen tres estrategias para el desarrollo de sistemas. Cada una de estas estrategias tiene un uso amplio en cada una de los diversos tipos de empresas que existen, y resultan efectivas si son aplicadas de manera adecuada.1. Método Clásico del Ciclo de Vida de Desarrollo del Sistema: Es el conjunto de actividades que los analistas, diseñadores y usuarios realizan para desarrollar e implantar un sistema de información. Este incluye las fases o actividades de investigación preliminar. En la determinación de los requerimientos, el analista debe estudiar el negocio, así como todos aquellos elementos que formaran parte en el desarrollo del proyecto desde el punto de vista de los usuarios y del negocio. En el diseño del sistema se basa en diseñar el sistema de información que cumpla con todos los requerimientos encontrados en la fase anterior. En esta fase, los analistas definen las entradas, las salidas, los cálculos y los procedimientos que se deben seguir. Por otra parte, los analistas también definen

EL LENGUAJE UNIFICADO DE MODELADO (UML)En todas las disciplinas de la Ingeniería se hace evidente la importancia de los modelos ya que describen el aspecto y la conducta de "algo". Ese "algo" puede existir, estar en un estado de desarrollo o estar, todavía, en un estado de planeación. Es en este momento cuando los diseñadores del modelo deben investigar los requerimientos del producto terminado y dichos requerimientos pueden incluir áreas tales como funcionalidad, performance y confiabilidad. Además, a menudo, el modelo es dividido en un número de vistas, cada una de las cuales describe un aspecto específico del producto o sistema en construcción. El modelado sirve no solamente para los grandes sistemas, aun en aplicaciones de pequeño tamaño se obtienen beneficios de modelado, sin embargo es un hecho que entre más grande y más complejo es el sistema, más importante es el papel de que juega el modelado por una simple razón: "El hombre hace modelos de sistemas complejos porque no puede entenderlos en su totalidad". UML es una técnica para la especificación sistemas en todas sus fases. Nació en 1994 cubriendo los aspectos principales de todos los métodos de diseño antecesores y, precisamente, los padres de UML son Grady

Page 2: Metodologias Para El Desarrollo de Sistemas de Informacion

identificar qué información requiere el usuario para desempeñar sus tareas.3. Análisis de las necesidades del sistema: Se analizan las necesidades propias del sistema, para ello existen herramientas y técnicas diseñadas para tal fin, estas incluyen entre otras el uso de los diagramas de flujo de datos que cuentan con una técnica estructurada para representar en forma gráfica la entrada de datos a la organización, los procesosy la salida de información. También se analizan las decisiones estructuradas por realizar, que son decisiones donde las condiciones, condiciones alternativas, acciones y reglas de acción podrán determinarse.4. Diseño del sistema recomendado: Se usa la información recolectada con anterioridad y se elabora el diseño lógico de sistemas de información, se diseña también procedimiento es precisos de captura de datos, con la finalidad de que los datos que se introducen en el sistema de información, sean los correctos. Esta etapa también incluye el diseño de los archivos o la base de datos que almacenará aquellos datos requeridos por quien toma las decisiones en la organización.5. Desarrollo y documentación del software: Dentro de las técnicas estructuradas para el diseño y documentación del software se tienen: el método HIPO, los diagramas de flujo, los diagramas Nassi.Schneiderman, los

las estructuras de datos y los flujos de información necesarios para alcanzar el sistema de información deseado, mediante diagramas, tablas y símbolos. En la fase de desarrollo de software, los responsables deciden la forma de implementar el sistema de información. Es posible que la empresa decida modificar el sistema de información actual, desarrollar un nuevo sistema de información, comprar y/o modificar un producto desarrollado por otra empresa, o subcontratar el desarrollo del software. Esta decisión dependerá de varios factores, como son el tamaño y la importancia del proyecto y los recursos disponibles. La fase de pruebas de sistemas permite a los analistas descubrir errores antes de su implantación. Es muy frecuente que las pruebas las realicen personas no vinculadas al desarrollo del sistema, de manera que los resultados de esta fase sean lo mas completas e imparciales posibles. La fase de implantación consiste en implantar el nuevo sistema de información en la empresa, así como impartir la formación necesaria que deben recibir los usuarios para poder aprovechar todas las ventajas que ofrece el nuevo sistema. La parte de evaluación consiste en analizar las fortalezas y las debilidades del nuevo sistema una vez el sistema esta funcionando. Con este objetivo Senn propone estudiar el aspecto operacional del sistema, el impacto organizacional, la opinión de los

Booch, autor del método Booch; James Rumbaugh, autor del método OMT e Ivar Jacobson, autor de los métodos OOSE y Objectory. La versión 1.0 de UML fue liberada en Enero de 1997 y ha sido utilizado con éxito en sistemas construidos para toda clase de industrias alrededor del mundo: hospitales, bancos, comunicaciones, aeronáutica, finanzas, etc. Los principales beneficios de UML son: Mejores tiempos totales de desarrollo (de 50 % o más). Modelar sistemas (y no sólo de software) utilizando conceptos orientados a objetos. Establecer conceptos y artefactos ejecutables. Encaminar el desarrollo del escalamiento en sistemas complejos de misión crítica. Crear un lenguaje de modelado utilizado tanto por humanos como por máquinas. Mejor soporte a la planeación y al control de proyectos. Alta reutilización y minimización de costos. UML, ¿Método o Lenguaje de Modelado?UML es un lenguaje para hacer modelos y es independiente de los métodos de análisis y diseño. Existen diferencias importantes entre un método y un lenguaje de modelado. Un método es una manera explícita de estructurar el pensamiento y las acciones de

Page 3: Metodologias Para El Desarrollo de Sistemas de Informacion

diagramas Warnier-Orr y el pseudocódigo es aquí donde se transmite al programador los requerimientos de programación.6. Pruebas y mantenimiento del sistema: Todo sistema de información debe probarse antes de ser utilizado, ya que el costo es menor si se detectan los problemas antes de que entre en funcionamiento. En un principio, se hace una serie de pruebas, con datos tipo, para identificar las posibles fallas del sistema, más adelante, se utilizarán los datos del sistema real.7. Implantación y evaluación del sistema: Esta es la última etapa del desarrollo del sistema, esto incluye el adiestramiento que el usuario requerirá. Aunque la evaluación del sistema se plantea como parte integrante de la última etapa del ciclo de desarrollo de los sistemas; realmente la evaluación toma parte de cada una de las etapas. Uno de los criterios fundamentales que debe satisfacerse, es que el futuro usuario utilice el sistema desarrollado.

administradores y el desempeño del desarrollo.2. Método por Análisis Estructurado: Se enfoca en el que un sistema o aplicación se realiza sin importar la forma en que se llevan a cabo las funciones, abordando los aspectos lógicos y no los físicos. En este método se emplean símbolos gráficos para representar el procesamiento de datos. Los componentes importantes incluyen los diagramas de flujo de datos, que señalan el flujo de datos en el sistema y entre los procesos y dispositivos de almacenamiento de datos, y el diccionario de datos, que incluye todas las definiciones datos, procesos y demás información pertinente. Este método incluye la formulación las especificaciones, de forma funcional, para cada unos de los módulos del software.3. Método de Construcción del Prototipo de Sistemas: La construcción de prototipos representa una estrategia de desarrollo, cuando no es posible determinar todos los requerimientos del usuario. Es por ello que incluye el desarrollo interactivo o en continua evolución, donde el usuario participa de forma directa en el proceso. Así mismo este método resulta útil para probar la facilidad del sistema e identificar los requerimientos del usuario, evaluar el diseño de un sistema o examinar el uso de una aplicación.

cada individuo. Además, el método le dice al usuario qué hacer, cómo hacerlo, cuándo hacerlo y por qué hacerlo; mientras que el lenguaje de modelado carece de estas instrucciones. Los métodos contienen modelos y esos modelos son utilizados para describir algo y comunicar los resultados del uso del método. Un modelo es expresado en un lenguaje de modelado. Un lenguaje de modelado consiste de vistas, diagramas, elementos de modelo ¾ los símbolos utilizados en los modelos ¾ y un conjunto de mecanismos generales o reglas que indican cómo utilizar los elementos. Las reglas son sintácticas, semánticas y pragmáticasVistas: Las vistas muestran diferentes aspectos del sistema modelado. Una vista no es una gráfica, pero sí una abstracción que consiste en un número de diagramas y todos esos diagramas juntos muestran una "fotografía" completa del sistema. Las vistas también ligan el lenguaje de modelado a los métodos o procesos elegidos para el desarrollo. Las diferentes vistas que UML tiene son: Vista Use-Case: Una vista que muestra la funcionalidad del sistema como la perciben los actores externos. Vista Lógica: Muestra cómo se diseña la funcionalidad dentro del sistema, en términos de la estructura estática y la conducta dinámica del sistema. Vista de Componentes: Muestra la

Page 4: Metodologias Para El Desarrollo de Sistemas de Informacion

organización de los componentes de código. Vista Concurrente: Muestra la concurrencia en el sistema, direccionando los problemas con la comunicación y sincronización que están presentes en un sistema concurrente. Vista de Distribución: muestra la distribución del sistema en la arquitectura física con computadoras y dispositivos llamados nodos. Diagramas: Los diagramas son las gráficas que describen el contenido de una vista. UML tiene nueve tipos de diagramas que son utilizados en combinación para proveer todas las vistas de un sistema: diagramas de caso de uso, de clases, de objetos, de estados, de secuencia, de colaboración, de actividad, de componentes y de distribución. Símbolos o Elementos de modelo: Los conceptos utilizados en los diagramas son los elementos de modelo que representan conceptos comunes orientados a objetos, tales como clases, objetos y mensajes, y las relaciones entre estos conceptos incluyendo la asociación, dependencia y generalización. Un elemento de modelo es utilizado en varios diagramas diferentes, pero siempre tiene el mismo significado y simbología. Reglas o Mecanismos generales: Proveen comentarios extras, información o semántica acerca del elemento de modelo; además proveen mecanismos de extensión para adaptar o extender UML a un método o proceso específico, organización o usuario.

Page 5: Metodologias Para El Desarrollo de Sistemas de Informacion

FASES DEL DESARROLLO DE UN SISTEMALas fases del desarrollo de sistemas que soporta UML son: Análisis de requerimientos, Análisis, Diseño, Programación y Pruebas. Análisis de RequerimientosUML tiene casos de uso (use-cases) para capturar los requerimientos del cliente. A través del modelado de casos de uso, los actores externos que tienen interés en el sistema son modelados con la funcionalidad que ellos requieren del sistema (los casos de uso). Los actores y los casos de uso son modelados con relaciones y tienen asociaciones entre ellos o éstas son divididas en jerarquías. Los actores y casos de uso son descritos en un diagrama use-case. Cada use-case es descrito en texto y especifica los requerimientos del cliente: lo que él (o ella) espera del sistema sin considerar la funcionalidad que se implementará. Un análisis de requerimientos puede ser realizado también para procesos de negocios, no solamente para sistemas de software. AnálisisLa fase de análisis abarca las abstracciones primarias (clases y objetos) y mecanismos que están presentes en el dominio del problema. Las clases que se modelan son identificadas, con sus relaciones y descritas en un diagrama de clases. Las colaboraciones entre las clases para ejecutar

Page 6: Metodologias Para El Desarrollo de Sistemas de Informacion

los casos de uso también se consideran en esta fase a través de los modelos dinámicos en UML. Es importante notar que sólo se consideran clases que están en el dominio del problema (conceptos del mundo real) y todavía no se consideran clases que definen detalles y soluciones en el sistema de software, tales como clases para interfaces de usuario, bases de datos, comunicaciones, concurrencia, etc. DiseñoEn la fase de diseño, el resultado del análisis es expandido a una solución técnica. Se agregan nuevas clases que proveen de la infraestructura técnica: interfaces de usuario, manejo de bases de datos para almacenar objetos en una base de datos, comunicaciones con otros sistemas, etc. Las clases de dominio del problema del análisis son agregadas en esta fase. El diseño resulta en especificaciones detalladas para la fase de programación. ProgramaciónEn esta fase las clases del diseño son convertidas a código en un lenguaje de programación orientado a objetos. Cuando se crean los modelos de análisis y diseño en UML, lo más aconsejable es trasladar mentalmente esos modelos a código. PruebasNormalmente, un sistema es tratado en pruebas de unidades, pruebas de integración, pruebas de sistema, pruebas de aceptación, etc. Las pruebas de unidades se realizan a

Page 7: Metodologias Para El Desarrollo de Sistemas de Informacion

clases individuales o a un grupo de clases y son típicamente ejecutadas por el programador. Las pruebas de integración integran componentes y clases en orden para verificar que se ejecutan como se especificó. Las pruebas de sistema ven al sistema como una "caja negra" y validan que el sistema tenga la funcionalidad final que le usuario final espera. Las pruebas de aceptación conducidas por el cliente verifican que el sistema satisface los requerimientos y son similares a las pruebas de sistema.