Using Types to Enforce Architectural Structure | IEEE Conference Publication | IEEE Xplore