El diseño de software es el proceso de creación de un proyecto de software (software), así como la disciplina que estudia los métodos de diseño . El diseño de software es un caso especial de diseño de productos y procesos .
El diseño de software incluye las siguientes actividades principales [1] :
Inicialmente, el programa se trata como una caja negra. El curso del proceso de diseño y sus resultados dependen no solo de la composición de los requisitos, sino también del modelo de proceso elegido, la experiencia del diseñador.
El modelo de dominio impone restricciones en la lógica empresarial y las estructuras de datos .
Dependiendo de la clase de software que se cree, el proceso de diseño puede proporcionarse tanto por diseño "manual" como por varios medios de su automatización. En el proceso de diseño de software, se utilizan varias notaciones para expresar sus características: diagramas de flujo , diagramas ER , diagramas UML , diagramas DFD y diseños.
El diseño suele estar sujeto a:
En la práctica rusa, el diseño se lleva a cabo en etapas de acuerdo con las etapas reguladas por GOST 2.103-68 [2] :
En cada etapa, se forma un conjunto de documentos, llamado proyecto ( documentación del proyecto ).
En la práctica extranjera, los documentos reglamentarios, por ejemplo, son Documento de arquitectura de software, Documento de diseño de software.
Desarrollo de software | |
---|---|
Proceso | |
Conceptos de alto nivel | |
Direcciones |
|
Metodologías de desarrollo | |
Modelos |
|
Figuras notables |
|