This paper proposes archface, a pointcut-based interface mechanism for bridging a gap between architectural design and its implementation. Archface, which encapsulates the essence of architectural design, is not only an architecture description language (ADL) but also a programming-level interface. Archface is based on the component-and-connector architecture, one of the most popular architectural styles. Archface is effective for software evolution because the trace-ability between design and its implementation can be realized by enforcing architectural constraints specified in arch-face on the program implementation. This traceability is bidirectional. In the modern software development, not only object orientation (OO) but also aspect orientation (AO) plays an important role in the architectural design because dealing with crosscutting concerns becomes crucial for designing reliable and maintainable software. In archface, AO can be easily introduced into architecture descriptions only with the component-and-connector mechanism. We do not have to distinguish AO from traditional OO-based design modeling approaches. Archface integrates not only design modeling with its implementation but also AO with OO.