The SEI helps advance software engineering principles and practices and serves as a national resource in software engineering, computer security, and process improvement. The SEI works closely with defense and government organizations, industry, and academia to continually improve software-intensive systems. Its core purpose is to help organizations improve their software engineering capabilities and develop or acquire the right software, defect free, within budget and on time, every time.
"One of the challenges in product line deployment and maintenance is managing the variation and making sure you understand whether you have deployed the correct configuration to each individual instance. So, AADL can be the home of the performance parameters, the different configuration settings that are related to each of the different environmental instances. Oh, that is very cool. "
"The more nodes, the more hardware you have, the more software you have, the law of averages is going to dictate that things will fail. You have to handle this. The bigger your system, the more things will fail. So, failures become common. "
"Having all the different aspects of your system in a single location also brings you the ability to check inconsistencies between different aspects of your system. For example, if you have a late value, this is an error, but this error can be triggered by a bad behavior specification."
"That constant feedback between design and analysis, which now becomes a very tightly coupled loop in a very, very rapid process, is one of the key enablers to enable us to build complex safety-critical, life-critical, and mission-critical systems."
"I can check at any point whether that architectural representation matches the stuff that has been developed, the stuff that I want to develop. That gives you control over the whole round-trip, and that's what gives you predictability."
"The operating systems in safety-critical, embedded systems have very different characteristics than in standard computer systems. Of course, you can't accept that your operating system fails the same way that your home operating system could fail."
"When people do the system-safety analysis, they are focused on the physical parts failing, and they understand that part. But the consequence of that in software today is still not very well understood."
"If you make an architectural decision that promotes interoperability or modifiability, this can have a negative impact on other qualities such as availability, reliability, security, or performance. Making these trade-offs is one of the hardest parts of architecting and designing any system."
"Of course the other big question is, do we really need to go into a quantifiable aspect of debt, or is it good enough to just state in the metaphor realm? I tend to believe that if we can't measure it, we can't control it."