Architecture-first development techniques are increasingly becoming the mainstream approach for addressing cyber resiliency concerns in mission-critical and software-intensive systems. In such techniques, resiliency is built into the system from the ground up and starts with robust architecture design. The weaknesses in the architecture of a software system can have a greater impact on the system’s ability to anticipate, withstand, recover from, and adapt to adverse conditions, stresses, attacks, or compromises on cyber resources.
This project proposes the implementation of an Architecture-Centric Verification and Reasoning Approach for Resilient Systems. The approach is implemented as a plug-in for various modeling tools and languages such as OSATE and the AADL language. The plugin provides a proactive environment to support resilient architecture design and reasoning though detection of cyber resiliency related architectural weaknesses and anti-patterns, visualization of the critical architectural hotspots in a project, and preservation of quality in the architectural models through helping developers make better architectural choices.