REPÚBLICA BOLIVARIANA DE VENEZUELA
MINISTERIO DEL PODER POPULAR PARA LA EDUCACION SUPERIOR INSTITUTO UNIVERSIDAD POLITÉCNICO “SANTIAGO MARIÑO” EXTENSIÓN MÉRIDA
Autor:
Br: Frank Quintero C.I. N° 29.565.001 Escuela: 47 Ing. de Sistema
Mérida, Diciembre de 2022
Metodología para el desarrollo del sistema
Una Metodología para el Desarrollo de Sistemas de Información es un conjunto de actividades llevadas a cabo para desarrollar y poner en marcha un Sistema de Información. Los Objetivos de las Metodologías de Desarrollo de Sistemas de Información son:
• Definir actividades a llevarse a cabo en un Proyecto de S.I.
• Unificar criterios en la organización para el desarrollo de S.I.
• Proporcionar puntos de control y revisión • Asegurar la uniformidad y calidad tanto del desarrollo como del sistema en sí
• Satisfacer las necesidades de los usuarios del sistema
• Conseguir un mayor nivel de rendimiento y eficiencia del personal asignado al desarrollo
• Ajustarse a los plazos y costos previstos en la planificación
• Generar de forma adecuada la documentación asociada a los sistemas
• Facilitar el mantenimiento posterior de los sistemas Tipos o Enfoques de Metodologías de Desarrollo de Sistemas Los Tipos de Metodologías de Desarrollo de Sistemas son: Estructurada Se maneja como proyecto Gran volumen de datos y transacciones Abarca varias áreas organizativas de la empresa Tiempo de desarrollo largo Requiere que se cumplan todas las etapas, para poder cumplir las siguientes (progresión lineal y secuencial de una fase a la otra)
¿Cuáles son las metodologías para el desarrollo de sistemas?
• Metodologías estructuradas. Los métodos estructurados comenzaron a desarrollarse a fines de la década de 1970 con la programación estructurada. ...
• Metodologías orientadas a objetos. ...
• Metodologías tradicionales (no ágiles) ...
• Metodologías ágiles
Análisis y Diseño Estructurado y Orientado a Objetos.
Análisis Estructurado
Permite al analista conocer un sistema o proceso (actividad) en una forma lógica y manejable, el objetivo que persigue el análisis estructurado es organizar las tareas asociadas con la determinación de requerimientos para obtener la comprensión completa y exacta de una situación dada.
Diseño Estructurado
Diseño estructurado es el proceso de decidir que componentes, y la interconexión entre los mismos, para solucionar un problema bien especificado".
El diseño es una actividad que comienza cuando el analista de sistemas ha producido un conjunto de requerimientos funcionales lógicos para un sistema, y finaliza cuando el diseñador ha especificado los componentes del sistema y las relaciones entre los mismos. Elementos del Diseño Estructurado:
✓ Técnicas de documentación
✓ Criterios de evaluación del Diseño
✓ Heurísticas del diseño
✓ Estrategias del Diseño
Técnicas de Documentación:
Incluyen herramientas gráficas y de texto
Herramientas:
✓ Flujos de datos
✓ Diagramas Hipo
✓ Diagrama de estructura
✓ Especificaciones de módulo y D.D.
Criterios de evaluación de diseño:
✓ Tiene como objetivo evaluar los defectos del diseño conforme a la documentación del diagrama Hipo y el diagrama estructural Criterios
✓ Acoplamiento
✓ Cohesión
Heurísticas del diseño:
Siguen reglas prácticas que generalmente son útiles aunque no funcionan en todos los casos. Se refieren al tamaño del módulo y al control del módulo. Las cuales son:
✓ Tamaño del módulo
✓ Fan in Fan out (abanico)
✓ Alcance efecto y alcance de control
Estrategias de diseño:
Las estrategias requieren un buen nivel de experiencia, sentido común y decisión
Existe una basada en el flujo de datos y otra basada en la estructura de datos:
✓ Análisis transformacional
✓ Análisis transaccional
✓ Programación estructurada
Análisis y Diseño orientado a objetos:
Se define a un objeto como una entidad tangible que muestra alguna conducta bien definida. Un objeto es cualquier cosa, real o abstracta, acerca de la cual almacenamos datos y los métodos que controlan dichos datos.
El Diseño Orientado a Objetos se define como un diseño de sistemas que utiliza Objetos auto-contenidos y clases de objetos.
Características principales del Diseño Orientado a Objetos:
✓ Los objetos son abstracciones del mundo real o entidades del sistema que se administran entre ellas mismas.
✓ Los objetos son independientes y encapsulan el estado y la representación de información
✓ La funcionalidad del sistema se expresa en términos de servicios de los objetos
✓ Las áreas de datos compartidas son eliminadas. Los objetos se comunican mediante paso de parámetros. Los objetos pueden estar distribuidos y pueden ejecutarse en forma secuencial o en paralelo.
Ventajas del Diseño Orientado a Objetos:
✓ Fácil de mantener, los objetos representan entidades auto-contenidas
✓ Los objetos son componentes reutilizables
✓ Para algunos sistemas, puede haber un mapeo obvio entre las entidades del mundo real y los objetos del sistema
Recolección de datos
La recolección de datos es un método por el cual las empresas recopilan y miden información de diversas fuentes, a fin de obtener un panorama completo, responder preguntas importantes, evaluar sus resultados y anticipar futuras tendencias.
Metodologías para el desarrollo de los sistemas
Información de las Metodologías Relevantes Detalladas METODOLOGÍA TIPO ETAPAS / FASES KENDALL E. KENDALL SDLC TRADICIONAL
1. Identificación de los problemas, oportunidades y objetivos: Identificar problemas junto con miembros de la organización, detectar las situaciones a mejorar al usar el SI u oportunidades y determinar si la aplicación del SI ayuda a lograr los objetivos de la empresa.
2. Determinación de los requerimientos de información del factor humano: Aplicación de herramientas de recolección de información para conocer las necesidades de los usuarios, procedimientos y mejorarlos.
3. Análisis de las necesidades del sistema: Aplicación de diagramas de flujo de datos, de actividad y diccionario de datos. Se prepara una propuesta en la que sintetiza las necesidades observadas. Incluye análisis de costo-beneficio de las alternativas y recomendaciones.
4. Diseño del sistema recomendado: Se utiliza la información recolectada para el diseño lógico del SI ideando una HCI efectiva. Diseño de BD, salidas en pantalla o impresas. Diseño de controles y procedimientos de respaldo. Inclusión de árboles, tablas de decisión, UML o diagramas de flujo de datos.
5. Desarrollo y documentación del software: Desarrollo del software por parte de los programadores. Desarrollo de una documentación efectiva; manuales de procedimientos, ayuda en línea, sitios Web con FAQ y archivos Read Me.
6. Prueba y mantenimiento del sistema: Pruebas con datos de muestra y reales. Documentación del mantenimiento; actualizaciones.
7. Implementación y evaluación del sistema: Capacitación de los usuarios que operarán el sistema y conversión de archivos de viejos a nuevos formatos.
SENN: CICLO DE VIDA DE DESARROLLO DE UN SISTEMA TRADICIONAL
1. Investigación preliminar: Se inicia la solicitud y se aclara el horario. Se realiza un estudio de factibilidad; a) Económico: En función al personal y equipos. b) Técnica: Verificación del software y hardware y personal técnico. c) Operacional: Comprobar la capacitación para operar con el nuevo sistema.
2. Determinación de los requerimientos del sistema: Examinar la magnitud del sistema, procesos. Estudio del sistema actual y determinación de nuevos requerimientos mediante herramientas de recolección de datos.
3. Diseño del sistema: Automatización de los requerimientos, se definen formas de cálculo y cómo los datos se transformarán en información. Este modelo se realiza en una base lógica: modelos E-R, BD, diagramas de flujo de datos y una física: material tangible; papeles, gráficos.
4. Desarrollo del software: Construcción y programación del sistema.
5. Prueba del sistema: Detectar posibles fallas del sistema (programación, análisis, diseño). Se simulan entradas de datos y los usuarios interactúan con el sistema. Se realiza una aprobación escrita de los aspectos del sistema.
6. Implantación y evaluación: Entrenar a los usuarios, instalar la aplicación, tiene tres enfoques: a) Piloto: Se selecciona solo un área de la empresa para utilizar el sistema. b) Paralelo Se utiliza el sistema viejo y el nuevo al mismo tiempo, para comparar. c) Sustitución: Se sustituye todo el sistema. Se evalúa el desempeño del sistema.
SOMMERVILLE CASCADA
1. Análisis y definición de requerimientos: Se establecen los servicios, restricciones y metas del sistema y se definen con detalle como especificaciones del sistema.
2. Diseño del sistema y del software: Asignar requerimientos. Identificar y describir las abstracciones del sistema de software y sus relaciones.
3. Implementación y prueba de unidad: El diseño de software se realiza como un conjunto de programas o unidades del programa. La prueba de unidad consiste en verificar que cada unidad cumpla con sus especificaciones.
4. Integración y prueba de sistema: Las unidades del programa se integran y prueban como un sistema completo para asegurarse de que cumplan los requerimientos de software. Después de la prueba, el software se libera al cliente.
5. Operación y mantenimiento: El sistema se instala y se pone en práctica. Se corrigen errores no detectados en etapas anteriores. Se incrementan los servicios del sistema conforme se presentan nuevos requerimientos.
PRESSMAN TRADICIONAL
1. Análisis de los requisitos del software: Se refina en detalle el ámbito del software, se crean modelos de los requisitos de datos, flujo de información y control. Indicar interfaz del software y establecer restricciones que debe cumplir el software. Se divide en: a) Reconocimiento del problema: Elementos básicos del problema como lo perciben los usuarios finales. b) Evaluación y síntesis: Definir los objetos de datos observables externamente, evaluar el flujo y contenido de la información, definir y elaborar todas las funciones del software y entender su comportamiento. c) Modelado: Crear modelos del sistema con el fin de entender el flujo de datos y control, comportamiento operativo y contenido de la información. d) Especificación: Especificación formal del software. e) Revisión: Chequeo de todo el proceso.
2. Diseño: Establecimiento de las estructuras de datos, arquitectura general del software, representaciones de interfaz y algoritmos. Se producen tres etapas de diseño: a) Diseño de datos: Transformar el modelo de dominio de la información creado durante el análisis. b) Diseño arquitectónico: Definición de relaciones entre los principales elementos estructurales del programa. c) Diseño de interfaz: Comunicación del software consigo mismo, con los sistemas que operan con él y con los operadores.
3. Generación de código: Traducir el diseño en forma legible por la máquina. Se genera el código en algún lenguaje de programación.
4. Pruebas: Se centra en la prueba de los procesos lógicos internos del software en busca de errores. Se debe probar en la parte funcional del software y en la parte aplicativa.
5. Mantenimiento: Modificaciones o implementación de nuevas especificaciones con la finalidad de adaptarse a las necesidades de la organización.
KENDALL E. KENDALL: PROCESO DE DESARROLLO PARA UN PROYECTO ÁGIL ÁGIL
1. Exploración: Se evalúan las habilidades de los miembros, examinar activamente las tecnologías potenciales necesarias para crear el sistema. Estimación del tiempo necesarios para realizar varias tareas. Los clientes experimentan escribiendo historias de los usuarios.
2. Planeación: Desarrolladores y clientes estipulan una fecha de entrega de soluciones y priorizan los problemas de mayor relevancia.
3. Iteraciones para la liberación de la primera versión: Ciclos de prueba, retroalimentación y modificación. Se bosquejará toda la arquitectura del sistema. Se realización pruebas funcionales y se determina si es necesario alterar el itinerario de trabajo.
4. Puesta en producción: El producto de libera durante esta fase, pero se puede mejorar si se le agregan otras características.
5. Mantenimiento: Implementación de nuevas características, consideración de sugerencias de los clientes y rotación de miembros del equipo.
MONTILVA MEDSI /TRADICIONAL
1. Definición del proyecto: Determinar la factibilidad de desarrollar un nuevo SI y estimar los costos, tiempos y recursos requeridos para decidir si se he de emprender o no el proyecto. Se encuentran los pasos:
a) Estudio preliminar del proyecto: Muestra de manera general si se justifica o no desarrollar un SI para satisfacer las necesidades de las unidades interesadas.
b) Elaborar el informe preliminar: Resumir los resultados de las actividades anteriores. Se concluye si existen o no las necesidades y problemas actuales que justifiquen emprender el desarrollo de un nuevo sistema.
c) Discusión del informe preliminar: Decidir si se emprende el proyecto o no, o si es necesario un mayor estudio.
d) Planificar el estudio de factibilidad: Se debe iniciar un estudio de factibilidad del proyecto, se debe: determinar las actividades y tareas necesarias, determinar los recursos requeridos y programar los tiempos de las actividades y tareas.
e) Estudio de factibilidad: Estudiar la factibilidad técnica, económica y psicosocial. Se debe: Evaluar el sistema actual.
• Establecer nuevos requerimientos. d) Elaboración del informe de factibilidad. e) Planificación delproyecto: Estimación de costos, tiempos y recursos para llevarlo a cabo.
2. Análisis de contexto: Se ubicará el nuevo SI y se determinan las deficiencias y problemas del actual SI. Dentro de esta fase se encuentran los pasos: a) Análisis documental: Disposición de una biblioteca organizada de documentos relativos al proyecto. b) Análisis del contexto: Estudio formal de todo el sistema con nivel de detalle profundo. Permite conocer el sistema actual y su contexto para modelarlo e identificar situaciones problemáticas. Se identifican los objetivos, estructuras y procesos del sistema actual. c) Construir el modelo del sistema actual de información: Se utiliza la técnica de análisis estructurado de sistemas que permite elaborar modelos físicos y lógicos del SI. Las tareas a realizar:
• Diagramas de flujo de datos del modelo físico y lógico.
• Diccionario de datos.
• Descripción de cada proceso del modelo lógico hasta un nivel adecuado. d) Identificar situaciones problemáticas. e) Elaborar el informe del sistema actual: Resume los resultados de las actividades anteriores, mediante una descripción del ambiente y del mismo sistema. 3. Definición de requerimientos: Definir requerimientos de los usuarios y establecer funciones, restricciones y atributos que el nuevo SI debe satisfacer. 4. Diseño preliminar: Elaboración de un diseño preliminar del SI que satisfaga los requerimientos, restricciones y atributos establecidos en la fase III. Consta de un prototipo o modelo físico que delinea la HIC y describe en forma general sus procesos automatizados. 5. Diseñado detallado: Elaboración de un diseño detallado del SI que muestre como se construirán los subsistemas de datos y el subsistema programado. a) Diseñar los reportes. b) Diseño de datos:
• Diseño lógico de la BD: representación de entidades, susatributosy las relaciones existentes entre esas entidades.
• Diseño físico de la BD: Se traduce el modelo de datos a un esquema, describir las estructuras lógicas de los datos y sus correspondientes estructuras de almacenamiento, e indicar los métodos de acceso que se utilizarán. c) Diseño de cada módulo de la estructura: Consiste en establecer la lógica general de cada módulo. d) Diseñar la documentación y los procedimientos manuales: Diseño de formatos, formularios, instructivos, planillas y demás procedimientos manuales. e) Elaboración del plan de pruebas: Determinación de las actividades que se requieren para probar el SI. f) Plan de pruebas.
6. Construcción del sistema.
7. Control de programas.
8. Prueba de aceptación: Prueba final con finalidad de demostrar que el SI de desarrollado satisface el criterio mínimo de aceptación establecido. Involucra: • Conversión del sistema: Se inicia la operación del nuevo sistema y se abandona el viejo. • Conversión de archivos: Actualización complementaria de la BD del SI.
SOMMERVILE ORIENTADA A LA REUTILIZACIÓN
1. Análisis de componentes: Dada la especificación de requerimientos, se realiza la búsqueda de componentes para implementar dicha especificación. Por lo general no hay coincidencia exacta y los componentes se usan parcialmente.
2. Modificación de requerimientos: Se analizan los requerimientos usando información de los componentes descubiertos. Luego se modifican para reflejar los componentes disponibles.
3. Diseño de sistema con reutilización: Diseño del marco conceptual del sistema o se reutiliza uno existente. Se diseña software nuevo si no está disponible en los componentes reutilizables.
4. Desarrollo e integración: Se diseña el software que no puede procurarse de manera externa y se integran los componentes y los sistemas COTS.