Trade-offs a designer

Discuss various trade-offs a designer may need to make with respect to nonfunctional requirements. Discuss why the system maintenance phase is often the most expensive phase of the software development life cycle.