Abstract. Architecture-based reliability estimation is challenging: modern software is complex with numerous factors affecting a system's reliability. In this article, we address three core challenges for architecture-based estimation of a system's reliability: (1) defining an appropriate failure model based on characteristics of the system being analyzed, (2) dealing with uncertainties of the reliability-related parameters, due to the lack of system implementation, and (3) overcoming the barriers of complexity and scale inherent in modern software. For each challenge, we identify the essential elements of the problem space, outline promising solutions, and illustrate the problems and solutions using a robotics case study. First, we show how a failure model can be derived from the system requirements and architecture. Second, we suggest how information sources available during architectural design can be combined to mitigate model parameter uncertainties. Third, we foresee hierarchical techniques as a promising way of improving the computational tractability of reliability models.