NOCIONES DE INGENIERÍA DE SOFTWARE
Enviado por williams_94 • 14 de Enero de 2023 • Ensayo • 2.623 Palabras (11 Páginas) • 63 Visitas
[pic 1]
ALUMNO:
WILLIAMS CRUZ HERNANDEZ
MATERIA:
NOCIONES DE INGENIERÍA DE SOFTWARE
ACTIVIDAD:
NÚM. 1. INVESTIGACIÓN DE CONCEPTOS
VILLAHERMOSA TABASCO A 09/10/2022
CICLO DE VIDA DEL SOFTWARE
En el proceso de desarrollo de software normalmente se involucra lo que se conoce como ciclo de vida de desarrollo de software, donde se agotan una serie de fases o etapas, con sus respectivas ventajas y desventajas según el paradigma adoptado. Hay diversos modelos y algunos de ellos tienen un enfoque de desarrollo de software seguro. En este capítulo se estudian varios modelos y se realiza un análisis comparativo para resaltar sus principales características, que a la vez pueden ser considerados para los fines de la investigación. (Hernández Bejarno, 2020).
MODELO DEL SOFTWARE
Un modelo de desarrollo de software es una representación abstracta del proceso de Desarrollo de software, y determina el orden en el que se llevan a cabo las actividades del proceso de desarrollo de software. El Modelo de desarrollo es el procedimiento que se sigue durante el proceso de desarrollo de un sistema de software y a éste también se le llama paradigma del proceso. El modelo indica el orden de las etapas involucradas en el desarrollo del software y nos proporciona un criterio para comenzar, para continuar a la siguiente etapa y para finalizar. (María del Carmen Gómez Fuentes, 2019)
[pic 2]
Imagen 1. Clasificación de modelos tradicionales de desarrollo de software. (María del Carmen Gómez Fuentes, 2019)
[pic 3]
Imagen 2. Clasificación de los modelos ágiles de desarrollo de software. (María del Carmen Gómez Fuentes, 2019)
REQUERIMIENTO DE SOFTWARE
Los requerimientos especifican qué es lo que un sistema de software debe hacer (sus funciones) y sus propiedades esenciales y deseables. Un requerimiento expresa el propósito del sistema sin considerar cómo se va a implantar. En otras palabras, los requerimientos identifican qué hace el sistema, mientras que el diseño establece el cómo lo hace el sistema. (María del Carmen Gómez Fuentes, 2019)
Los requerimientos pueden servir a tres propósitos:
(1) Primero, permiten que los desarrolladores expliquen cómo han entendido lo que el cliente espera del sistema. (2) Segundo, indican a los desarrolladores qué funcionalidad y qué características debe tener el sistema resultante. (3) Tercero, indican qué demostraciones se deben llevar a cabo para convencer al cliente de que el sistema que se le entrega es de hecho lo que había ordenado. (María del Carmen Gómez Fuentes, 2019)
Características de los requerimientos
(1) Deben ser correctos. - Tanto el cliente como el desarrollador deben revisarlos para asegurar que no contengan errores. (2) Deben ser consistentes. - Dos requerimientos son inconsistentes cuando es imposible satisfacerlos simultáneamente. (3) Deben ser realistas. - Todos los requerimientos deben ser revisados para asegurar que sea posible implementarlos en un tiempo razonable. (4) Deben ser verificables. - Se deben poder preparar pruebas que demuestren que se han cumplido los requerimientos. (María del Carmen Gómez Fuentes, 2019)
Lenguaje Unificado de Modelado
El Lenguaje Unificado de Modelado (UML) desempeña un rol importante no solo en el desarrollo de software, sino también en los sistemas que no tienen software en muchas industrias, ya que es una forma de mostrar visualmente el comportamiento y la estructura de un sistema o proceso.
El UML se implementó por primera vez en la década de los 90 gracias a tres ingenieros de software: Grady Booch, Ivar Jacobson y James Rumbaugh. Ellos querían desarrollar una forma menos caótica de representar el cada vez más complejo desarrollo de software, a la vez que separaban la metodología del proceso. (Microsoft 365 Team, 2019)
¿Cuáles son las ventajas del UML?
(1) Simplifica las complejidades. (2) Mantiene abiertas las líneas de comunicación. (3) Automatiza la producción de software y los procesos. (4) Ayuda a resolver los problemas arquitectónicos constantes. (5) Aumenta la calidad del trabajo (6) Reduce los costos y el tiempo de comercialización. (Microsoft 365 Team, 2019)
¿Cuáles son las ventajas del UML?
(1) Simplifica las complejidades, (2) Mantiene abiertas las líneas de comunicación, (3)Automatiza la producción de software y los procesos, (4) Ayuda a resolver los problemas arquitectónicos constantes, (5) Aumenta la calidad del trabajo, (6)Reduce los costos y el tiempo de comercialización. (Microsoft 365 Team, 2019)
Tipos de diagramas UML
Existen dos tipos principales de diagramas UML: diagramas de estructura y diagramas de comportamiento (y dentro de esas categorías se encuentran varios otros). Estas variaciones existen para representar los numerosos tipos de escenarios y diagramas que usan los diferentes tipos de personas. (Microsoft 365 Team, 2019)
Diagramas estructurales, Los diagramas estructurales representan la estructura estática de un software o sistema, y también muestran diferentes niveles de abstracción e implementación. Estos se usan para ayudarlo a visualizar las diversas estructuras que componen un sistema, como una base de datos o aplicación. Muestran la jerarquía de componentes o módulos y cómo se conectan e interactúan entre sí. Estas herramientas ofrecen orientación y garantizan que todas las partes de un sistema funcionen según lo previsto en relación con todas las demás partes. Diagrama de comportamiento, El enfoque aquí está en los aspectos dinámicos del sistema de software o proceso. En estos diagramas se muestra la funcionalidad de un sistema y se enfatiza lo que debe ocurrir en el sistema que se está modelando. (Microsoft 365 Team, 2019)
Implementación de software
En TI, implementación significa la distribución o provisión de software. La implementación se realiza a través de procesos automatizados, que se utilizan para instalar y configurar las soluciones de software.
La implementación de software se refiere a los procesos en su mayoría semiautomáticos o completamente automáticos de distribución de software, especialmente en las empresas. El despliegue incluye aspectos como la instalación, configuración, actualización y mantenimiento de sistemas operativos y sistemas de aplicación en PC o servidores. Las actualizaciones y parches, así como su provisión, también forman parte de la implementación. (Stuber, 2021)
...