layered architecture

참조