Software Architecture Overview - Andre Adrian (CoRR, 2005)