In this paper we discuss an approach for designing middleware that is based on hardware motherboards. This approach defines middleware with two distinct views: the middleware designer view (MD-view) and the middleware user view (MU-view). Whereas the MD-view is concerned with all complex details of middleware structure, the MU-view is only concerned with an abstract set of open architectural elements that can be used to customize the middleware. This separation of concerns is intended to reduce the complexity for understanding and configuring middleware from the userpsilas point of view.