• A fault tree framework is provided which overcomes limitations in conventional analysis methods. • Component failure events can have any distribution of failure or repair times. • Component dependencies can be accommodated. • Complex maintenance processes for components and sub-systems can be incorporated. • The algorithm identifies independent sub-problems which are solved accurately and efficiently. Fault tree analysis remains the most commonly employed method, particularly in the safety critical industries, to predict the probability or frequency of system failures. Whilst it has its origins back in the 1960s, the assumptions employed in the majority of commercial fault tree analysis codes have not changed significantly since this time and restrict the ability of the method to represent features of the design, operation and maintenance of modern industrial systems. The inability to include general dependencies between the basic events, the requirement for invariant failure and repair rates, and the inability to account for complex maintenance strategies are major limitations. This paper proposes a new fault tree analysis framework which can overcome these restrictions. Whilst retaining the fault tree structure to express the causality of the system failure, the internal calculation method is updated by exploiting features of the Binary Decision Diagram, Stochastic Petri Net and Markov methods. The key elements of the D 2 T 2 algorithm are described in detail and the framework demonstrated through application to a case study example of a pressure vessel cooling system.