¿Cuál es la evolución de la arquitectura del sistema?

¿Se pregunta cómo evolucionó el arte y la ciencia de la arquitectura de sistemas o cómo evoluciona una arquitectura de sistema dada? Suponiendo lo último:

– Identifique quiénes son las partes interesadas reales: los propietarios del sistema, los usuarios, los encargados del mantenimiento, las personas que pagarán, etc. Hay muchas partes interesadas y debe tener en cuenta todas sus necesidades.
– Averigüe lo que esos interesados ​​realmente necesitan que haga el sistema, no necesariamente lo que dicen que debe hacer. Muy pocas partes interesadas miran más allá de su campo de visión inmediato. El arquitecto debe poder ver las necesidades y los deseos de todos los puntos de vista de los usuarios.
– Comprender las limitaciones reales: calendario, presupuesto, política, expectativas del mercado, lo que realmente se puede construir.
– Defina un caso de uso clave razonablemente pequeño (menos de una docena): estas son historias de cómo las partes interesadas usan el sistema para satisfacer sus necesidades.
– Defina los principales bloques funcionales en el sistema y las interfaces entre estos bloques y entre ellos, los sistemas adyacentes y los usuarios.
– Escale y reequilibre el sistema y los bloques e interfaces hasta que obtenga el mejor conjunto de capacidades que pueda construirse y mantenerse de manera realista dentro de las limitaciones.
– Repase los casos de uso con los interesados ​​y escuche realmente lo que le dicen sobre sus impresiones.
– Itere y evolucione este proceso a medida que se construye el sistema, haciendo cambios cuando sea necesario para adaptar e incorporar las lecciones aprendidas en el camino.
– En cada etapa, involucre a las partes interesadas e impulse el sistema para satisfacer sus necesidades: el éxito se define como satisfacer sus necesidades dentro de las limitaciones.

Los sistemas intensivos en software a menudo sufren graves problemas de integración y funcionamiento / comportamiento debido a la falta de coherencia entre el sistema y las arquitecturas de software al abordar los atributos de calidad del sistema. Estos problemas a menudo resultan en la reorganización y rediseño de esfuerzos y fallas operativas, que afectan significativamente el costo del sistema, el cronograma y la efectividad de la misión. Estos problemas se exacerban aún más en un contexto de sistema de sistemas (SoS).

En conjunto con el Taller de Hilos de Misión (MTW), el Método de Evaluación de Arquitectura SoS proporciona una identificación inicial de los riesgos arquitectónicos SoS y las inconsistencias de los atributos de calidad en los sistemas constituyentes. Una evaluación de arquitectura SoS

utiliza los resultados de las MTW, incluidos los hilos de misión aumentados y los desafíos de arquitectura de SoS
incorpora la experiencia de un equipo de evaluación capacitado y partes interesadas de SoS, incluidos SoS y arquitectos de sistemas
sondea la arquitectura en las áreas donde los sistemas interactúan para identificar riesgos
organiza los riesgos individuales en temas de riesgo que pueden ser comprendidos (y mitigados más adelante) por la administración del programa
evalúa la suficiencia de la documentación de arquitectura
identifica sistemas potencialmente problemáticos para evaluaciones de seguimiento enfocadas utilizando los hilos específicos de la misión aumentada.

More Interesting

Cómo determinar la cantidad de FLOP que mi computadora es capaz de

¿Qué ventajas tiene el análisis de regresión múltiple sobre métodos de aprendizaje automático más sofisticados?

¿Cuál es la mejor computadora para un desarrollador de PHP?

¿Qué debo hacer durante el verano antes de mi segundo año como estudiante de informática?

¿Cómo hacen los softwares OBD-ll?

¿Qué piensa la comunidad informática actual de Alan Kay?

¿Es demasiado tarde para entrar en el aprendizaje automático?

¿Cuál es la mayor influencia que ha tenido la neurociencia en la visión por computadora y viceversa?

¿Cómo explicarías la inteligencia artificial a un novato?

¿Asistir a un campamento de entrenamiento (lHackReactor, DevMountain, etc.) es una buena manera de encontrar un trabajo relacionado con CS cuando viene de un país extranjero (es decir, Filipinas)?

La pantalla de mi computadora portátil Asus no funciona, pero otros periféricos funcionan perfectamente. ¿Qué tengo que hacer?

¿Qué es el spooling en la computadora?

Sé que las máquinas solo pueden entender 1s y 0s. ¿Alguien puede ayudar a comprender cómo se almacenan y recuperan las imágenes, los videos y todo lo demás en fracciones de segundos cuando una máquina puede entender solo 1s y 0s?

¿Será mejor si tenemos solo un número limitado de distribuciones de Linux?

Estoy muy interesado en buscar la interacción hombre-computadora. ¿Cuál sería un título universitario ideal para llegar allí?