Design of Multithreaded Software: The Entity-Life Modeling Approach - Sandén (IEEE, 2011)