Software Design Concepts, Design principles
System design and software architecture
Architectural design issues
Software Architecture, Architectural Structures & Styles-,
Architectural Patterns, Interactive systems with MVC architecture
Middleware and service-oriented architecture
Component based design and development
Model driven development
Object-Oriented Design with UML, Exploring inheritance and object composition
Data design, Persistent layer design
Functional Design
User interface design
Web applications design
Mobile application design