basics of software architecture - Search