Developer Refinement of Runtime Architectural Structure
Runtime architecture is important because it helps reason about quality attributes such as performance and security. The authors conducted an on-site field study to help them understand how developers understand object relationships, and what tool features a developer might need to convey their mental model of object relationships. The subject of their study was an experienced, professional programmer. They asked the developer questions to check if he understood which tiers objects belonged to, and whether certain objects were conceptually part of other objects. They also took an initial runtime architecture and refined it to convey his intent. The developer's mental model seemed to agree with the one supported by the current, batch-oriented approach for extracting architectures.