El diseño de software del es un proceso de la solucion de problemas y del planeamiento para una solución del software . Después de que el propósito y las especificaciones del software sea resueltos, los analistas de programas informáticos el diseño o emplear a los diseñadores para desarrollar un plan para una solución. Incluye ediciones bajas de la puesta en práctica del componente y del algoritmo así como la visión arquitectónica.

El paso del análisis de requisitos del software (SRA) de un proceso de desarrollo del software rinde las especificaciones que se utilizan en la ingeniería de programas informáticos . Si el software es " semiautomated" o el usuario centró, diseño de software puede implicar el diseño de la experiencia del usuario que rendía un tablero de historia para ayudar a determinar esas especificaciones. Si el software es totalmente automatizado (no significando ningún usuario o el interfaz utilizador ), un diseño de software puede ser tan simple como un organigrama o texto que describe una secuencia de evento prevista. Hay también métodos semi-estándar como el unificado modelando la lengua y el fundamental que modela los conceptos . En cualquier caso una cierta documentación del plan es generalmente el producto del diseño.

Un diseño de software puede ser la plataforma-independiente o el platform-specific, dependiendo de la disponibilidad de la tecnología pedida por el diseño.

Consideraciones del diseño

Hay muchos aspectos a considerar en el diseño de un pedazo de software. La importancia de cada uno debe reflejar las metas que el software está intentando alcanzar. Algunos de estos aspectos son:
Extensibilidad del

- las nuevas capacidades se pueden agregar al software sin cambios importantes a la arquitectura subyacente.
Robustez - el software puede funcionar bajo tensión o tolerar la entrada imprevisible o inválida. Por ejemplo, puede ser diseñado con una resistencia a las condiciones de la memoria baja.
Confiabilidad - el software puede realizar una función required bajo condiciones indicadas por un periodo de tiempo especificado.
Avería-tolerancia - el software puede resistente a y recuperarse de falta componente.
Seguridad - el software puede soportar actos e influencias hostiles.
Capacidad de mantenimiento - el software se puede restaurar a una condición especificada dentro de un periodo de tiempo especificado. Por ejemplo, el software del antivirus puede incluir la capacidad de recibir periódico actualizaciones de la definición del virus para mantener la eficacia del software.
Compatibilidad - el software puede funcionar con otros productos que se diseñen para la interoperabilidad con otro producto. Por ejemplo, un pedazo de software puede ser backward-compatible con una más vieja versión de sí mismo.
Modularidad - el software resultante abarca componentes bien definidos, independientes. Eso lleva para mejorar capacidad de mantenimiento. Los componentes se podían después ejecutar y probar en el aislamiento antes de ser integrada para formar un sistema informático deseado. Esto permite la división de trabajo en un proyecto de desarrollo del software.
Reutilización - los componentes modulares diseñados deben capturar la esencia de la funcionalidad esperada fuera de ellos y no más o menos. Este propósito único hace los componentes reutilizables dondequiera que haya necesidades similares en otros diseños.

Patrones del diseño

Un diseñador o un arquitecto del software puede identificar un problema del diseño que ha sido solucionado por otros antes. Una plantilla o un patrón que describe una solución a un problema común se conoce como patrón del diseño. La reutilización de tales patrones puede acelerar el proceso de desarrollo del software, siendo probado y probado en el pasado.

Metodologías de diseño

Puntería de las metodologías de diseño para proporcionar un proceso de la plantilla o un marco para el diseño real de un sistema. Apuntan a simplificar el proceso real de diseñar un sistema y una puntería para hacer cumplir algunos principios de diseño estándar que mejoren la calidad de un diseño. Una de las metodologías de diseño anteriores es el diseño conducido responsabilidad (RDD) iniciado por Rebecca Wirth y otros. Forma la base URDAD, del caso del uso, del método Responsabilidad-Conducido del análisis y de diseño que apunta generar un diseño neutral de la tecnología que entonces se trace sobre su opción de la arquitectura y de las tecnologías de la puesta en práctica.

Uso

La documentación del diseño del software se puede repasar o presentar para permitir apremios, especificaciones e incluso requisitos de ser ajustado antes que programa . El reajuste puede ocurrir después de la revisión de una simulación programada o del prototipo . Es posible diseñar software en curso de programación, sin un plan o un análisis de requisito, pero para proyectos más complejos esto no sería considerada un acercamiento profesional. Un diseño separado antes de la programación permite los diseñadores multidisciplinarios y los expertos (SMEs) del tema colaborar con los programadores highly-skilled para el software que es útil y técnico sano.

Ver también

Desarrollo de programas
Modelo del software
Arquitectura de los programas
La búsqueda basó la ingeniería de programas informáticos
Experiencia del usuario
Diseño de la experiencia
arquitectura Modelo-conducida
Descripción de diseño de software (IEEE 1016)
Patrón del diseño (de informática)

.

  • Zenithic
  • New Haven Harbor
    Random links:Demostrar esta noche la venda | Xeon (emulador) | Vuelo 540 de Lufthansa | Newcastle Eagles

  • © 2007-2008 enciclopediaespana.com; article text available under the terms of GFDL, from en.wikipedia.org
    ="http://pagead2.googlesyndication.com/pagead/show_ads.js">