97 Things Every Software Architect Should Know. Edited by Richard Monson-Haefel