Categories: All - software - metodología - desarrollo - estructurada

by nicolas david gonzalez carrascal 1 year ago

89

Conociendo el contexto del software

El desarrollo de software se aborda mediante diversas metodologías que permiten una producción sistemática y organizada. Una de estas es la metodología orientada a objetos, que se centra en el uso de componentes reutilizables, facilitando el mantenimiento y la implementación de cambios.

Conociendo el contexto del software

Conociendo el contexto del software

Proceso de desarrollo de un sistema informático

Ingeniería de software
El software se puede definir como el conjunto de componentes lógicos (procedimientos, reglas, datos, etc.) que hacen funcionar y realizar tareas específicas a una computadora, pueden ir desde lo que es el sistema operativo hasta aplicaciones específicas como editores de texto, videojuegos, editores de imágenes y más.
Sistema
Un sistema se define como un conjunto de elementos relacionados entre sí de alguna u otra manera para llegar a un fin común. Enfocándonos al área de sistemas informáticos, dichos elementos son el hardware, el software y los usuarios

Metodología de desarrollo

Herramientas CASE
CASE (Computer Aided Software Engineering -Ingeniería de Software Asistida por Computadora) son un conjunto de utilidades, métodos y técnicas empleadas por los profesionales del desarrollo de software para facilitar y agilizar el ciclo de vida en un sistema, ya sea completamente o solo enfocándose en alguna de las etapas que lo componen.

Algunas de las características y ventajas de las herramientas CASE sobre el desarrollo del software son:

Facilitan el uso de las distintas metodologías propias de la Ingeniería del software.

Incrementan la biblioteca de conocimiento informático de una organización ayudando a la búsqueda de soluciones para los futuros desarrollos.

Ayudan a tener una mejor planificación de un proyecto.

Reducen el tiempo y el costo de desarrollo mediante la generación de código, documentación, automatización de pruebas, etc.

Aumentan la calidad del producto.

Mejoran la productividad en el desarrollo y mantenimiento.

Tienen soporte de reusabilidad.

Permiten la comprobación de errores en etapas tempranas del desarrollo

Ciclos de vida orientados a objetos
Los objetos tienen como característica que están basados en componentes, permitiendo tanto un alto grado de modularidad como la segmentación en proyectos que pueden llegar a trabajarse como independientes.

Modelo fuente El modelo fuente es la forma más utilizada del ciclo de vida orientado a objetos, una de las características principales es que permite que cada clase se encuentre en diferente etapa

Ciclo de vida en espiral
El modelo en espiral consta de una serie de ciclos que se repiten dando como resultado un producto con mejoras respecto del anterior.

planificacion de las siguientes fases

desarrollo implemenacion y pruebas

analisis de riesgo

determinar objetivos

Modelo DRA
El Desarrollo Rápido de Aplicaciones (DRA) es un modelo de proceso del desarrollo del software lineal secuencial que enfatiza un ciclo de desarrollo extremadamente corto

Cuando se utiliza principalmente para aplicaciones de sistemas de información, el enfoque DRA comprende las siguientes fases:

Pruebas de entrega Como el proceso DRA enfatiza la reutilización ya se han comprobado muchos de los componentes de los programas, esto reduce tiempo de pruebas

Generación de aplicaciones El DRA asume la utilización de técnicas de cuarta generación. En lugar de crear software con lenguajes de programación de tercera generación,

Modelado de datos El flujo de información definido como parte de la fase de modelado de gestión se refina como un conjunto de objetos de datos necesarios para apoyar la empresa.

Modelado de gestión El flujo de información entre las funciones de gestión se modela de forma que responda a las siguientes preguntas: ¿Qué información conduce el proceso de gestión?

Ciclo de vida por prototipos
Forma parte de los modelos de desarrollo evolutivo y es de gran ayuda cuando los requerimientos no están claramente establecidos, cuando no se sabe cómo implementar la interfaz de usuario o en algún otro caso que implique una gran cantidad de modificaciones y/o interacción con el usuario.
Ciclo de vida en V
Está basado en el modelo en cascada y consta de las mismas fases, con la ventaja de que una fase también nos sirve para verificar o validar otras etapas.
Ciclo de vida en cascada
También se le conoce como modelo lineal secuencial. Es una técnica que se derivó de otras ramas de la ingeniería, tenía como objetivo el mejorar la calidad del software y reducir sus costos.
Ciclo de vida del software
El ciclo de vida del software se utiliza para estructurar las actividades que se llevarán a cabo en el desarrollo de un producto.

Independientemente del modelo que se trate, hay etapas en común:

Mantenimiento. Correcciones y/o modificaciones al sistema.

Pruebas. Verificación del correcto funcionamiento del producto

Codificación. Propiamente la elaboración del sistema como tal.

Diseño. Abstracción del sistema y elaboración de la interfaz de usuario

Análisis. Estudio de los requerimientos para determinar su viabilidad.

Técnicas de implementación de sistemas

conjunto de procedimientos necesarios para llegar a un objetivo. Enfocándonos en la parte de desarrollo de sistemas, la metodología es un modo sistemático de producir software,
son

Metodología UML

metodología adecuada para modelar el funcionamiento actual de la em- presa, pues permite detectar posibles errores de concepto y mejoras eventuales de los procesos, y también para diseñar los procesos nuevos

os modelos de UML que se encuentran son los siguientes

Diagrama de Estados: Muestra una máquina de estados, que consta de estados, transiciones, eventos y actividades, cubren la vista dinámica de un sistema, resaltan el comportamiento dirigido por eventos de un objeto.

Diagrama de Colaboración: Es un diagrama de interacción que resalta la organización estructural de los objetos que envían y reciben mensaje

Diagrama de Secuencia: Es un diagrama de interacción que resalta la ordenación temporal de los mensajes.

Diagrama de Casos de Uso: Muestra un conjunto de casos de uso, actores y relaciones, cubren la vista de casos de uso estática de un sistema.

Diagrama de Despliegue: Muestra la configuración de nodos de procesamiento en tiempo de ejecución y los componentes que residen en ellos, cubren la vista de despliegue estática de una arquitectura.

Diagrama de Componentes: Muestra la organización y las dependencias entre un conjunto de componentes, cubren la vista estática de un sistema

Diagrama de Actividades: Es un tipo especial de diagrama de estados que muestra el flujo de actividades dentro de un sistema, cubren la vista dinámica de un sistema. Son especialmente importantes al modelar el funcionamiento de un sistema y resaltan el flujo de control de objetos.

Diagramas de Objetos: Muestra un conjunto de objetos y sus relaciones, representan instancias de los elementos encontrados en los diagramas de clases, representado cubren las vistas de diseño estático de un sistema desde la perspectiva de casos reales.

Diagramas de clases: Muestra un conjunto de clases, interfaces y colaboraciones, así como sus relaciones, son los más comunes en el modelo orientado a objetos y cubren las vistas de diseño estático de un sistema.

Metodología OMT

La metodología OMT (Object Modeling Technique - Técnica de Modelado de Objetos) es una práctica que nos sirve para el diseño y modelado de un sistema de software.

La etapa de diseño se descompone en:

Modelo funcional. Hace referencia a los métodos del sistema desde el punto de vista de flujo de datos.

Modelo dinámico. Constituye las interacciones entre los componentes ya mencionados, estas interacciones son eventos, estados y transiciones

Modelo de objeto. Representa los artefactos del sistema, es decir las clases y asociaciones con atributos y operaciones.

Metodología orientada a objetos

Esta es una nueva forma de enfocarse en usar Los componentes tienen la ventaja de la reutilización de código y Facilidad de mantenimiento gracias a la ubicación óptima de cambios.

Algunos de los rasgos más característicos de la orientación a objetos son:

Encapsulamiento: se le llama así a la propiedad de los objetos que hace que aquellas características no necesarias para interactuar con otros no sean visibles

Polimorfismo: es la capacidad de nombrar a un método (que puede hacer cosas diferentes) de la misma forma para objetos de diferente clase.

Herencia: como si se tratase de una familia, las clases también pueden heredar métodos y atributos de una clase padre.

Metodología estructurada

La metodología estructurada busca crear modelos de forma descendente, es decir, descompone el sistema de forma que se puedan tener partes lo más pequeñas posibles

Existen varias herramientas que se utilizan en la metodología orientada a procesos, entre las que encontramos:

Diagramas Entidad - Relación (DER): nos ayuda al modelado de datos mostrando las entidades principales, sus propiedades y la interrelación que hay entre ellas

Diagrama de Transición de Estados (DTE): son herramientas que modelan procesos que dependen del tiempo, se basan en el estado que tiene el sistema y en los cambios de estado

Diccionario de datos: es el conjunto de datos que incluye las características lógicas (si es una cadena, entero, decimal, la longitud, rango de valores, si debe o no ser tener un valor, etc.)

Especificaciones de procesos: es una herramienta que nos define las acciones que lleva a cabo una función en el sistema

Diagramas de Flujo de Datos (DFD): representan la forma en la que los datos se mueven y se transforman e incluye

almaenamientos de datos

flujo de datos

procesos