Universidad Católica de Cuenca
Tecnologías De La Información y la
Comunicación
Escuela de Ingeniería de Software
ENSAYO: DISEÑO DE SOFTWARE
Autor:
Cristina Pesantez Alvarado
Periodo:
Febrero – octubre 2021
Introducción
La arquitectura es la base principal al hablar de un sistema de software,
es así como en base a esto se enumeran ciertas especificaciones que se utilizan
al momento de realizar la ingeniería en software, las mismas para una mejor
comprensión también pueden ser graficas y de esta manera el usuario tenga un
diseño con normativas y una base para comenzar su diseño.
En esta etapa se diseña la planificación de una resolución de un software como
tal, y es una de las etapas mas importantes al momento del desarrollo para
reducir riesgos de fracasos en el mismo.
Procesos de desarrollo de software
Para la elaboración de un desarrollo de software se divide en varias fases
mejorando de esta manera el diseño, la gestión de proyecto y de producto esto
garantiza mayor eficiencia al momento del desarrollo y culminación de un
programa con respecto a lo que el usuario solicita.
En esta etapa se garantiza que las regalas del desarrollo de software sean
cumplidas y de igual manera los métodos.
Con esto se previene errores al momento de la entrega del software y así
evitamos varios costos al momento de la corrección de los mimos, los cuales son
excesivamente costosos ya que no solo afecta en la herramienta sino en el
tiempo de los programadores, es por ellos que se deben fijar metas de tiempos
y etapas.
Proceso del diseño
Las etapas a tener en consideración son:
Planificación
En esta etapa se define cuales son los objetivos y se planifica el proyecto en si
para lograr el objetivo principal y analizar el alcance del mismo.
Análisis
Se establece los requerimientos de software tanto para el usuario como para
el cliente, de esta anera se obtiene una comprensión en general.
Diseño
Se estudia posibles opciones de implementación para el software que hay que
construir, así como decidir la estructura general del mismo. El diseño es una
etapa compleja y su proceso debe realizarse de manera iterativa.
Es posible que la solución desde un principio no sea la más adecuada, por lo
que en tal caso hay que corregirla.
Implementación
Se eligen las herramientas y leguaje de programación a utilizar para el
desarrollo de software, con esto facilitará el trabajo, para esto se deberá tener
en cuenta que diseño implementamos y cual es nuestra mejor opción al
momento de elegir.
Pruebas
Se busca detectar los fallos cometidos en las etapas anteriores para
corregirlos, esto se deberá realizar antes de que el usuario final se los
encuentre.
Principios conceptos
El principio de software en el que se basa principalmente el patrón de diseño.
Es importante saber que estos principios son herramientas para la correcta
refactorización de código con síntomas indeseables, no herramientas para el
uso de patrones, porque en la gran mayoría de los casos en los que se utilizan
estas buenas prácticas, no es necesario utilizar ningún patrón. El diseño de
software combina una serie de principios, conceptos y prácticas que conducen
al desarrollo de sistemas o productos de alta calidad, cuyo propósito es
producir modelos o representaciones con fuerza, función y belleza. El modelo
de diseño proporciona información detallada sobre la arquitectura del software,
la estructura de datos, las interfaces y los componentes necesarios para
implementar el sistema, y el diseño permite modelar el sistema o producto final,
el diseño es donde se establece la calidad del software.
Diseño y modelado
La creación se hace en base a patrones de diseño, tácticas de diseño y
elecciones tecnológicas, el diseño debe satisfacer los requerimientos que
influencian a la arquitectura.
El diseño de software es un proceso iterativo mediante el cual los requisitos se
transforman en el plano para crear software, el plano ilustra la vista general del
software. El diseño se expresa con un alto nivel de abstracción, en el que se
realiza un seguimiento directo de los objetivos específicos del sistema y los
requisitos más detallados de datos, operaciones y comportamientos. A medida
que avanza la iteración del diseño, las mejoras posteriores darán como
resultado una reducción en el nivel de abstracción.
Conclusiones
Podemos observar que el diseño de software es importante al momento de
decidir como realizar el proyecto. Se debe tener conocimientos de las
herramientas y lenguajes para una mayor facilidad a la hora de realizar el análisis
y diseño, se debe procurar realizar un cronograma y cada etapa ir solventando
dudas del momento para que al final el software se encuentre correcto y no nos
de errores con usuario y sea una perdida de tiempo tanto económica como de
recurso humano en su tiempo.
Bibliografía
http://academicos.azc.uam.mx/jfg/diapositivas/adsi/Unidad_10.pdf
https://cgrw01.cgr.go.cr/rup/RUP.es/SmallProjects/core.base_rup/guidances/concepts/
softw are_architecture_4269A354.html
https://cimat.repositorioinstitucional.mx/jspui/bitstream/1008/89/2/TE%20197.pdf
L. Bass, P. Clements, R. Kazman, Software Architecture in Practice, 2nd Edition,
Addison
Wesley, 2003