introduction to software architecture - Search