After this chapter the student should have acquired the following knowledge and skills: Software design methods, design paradigms, typical design trade-offs, introduction to software architecture, architecture vs design, architect’s responsibilities, architecture business cycle.