This course is an introduction to the development of modern software systems from the desktop to the cloud. The course examines best practices for software development, introduces database design and object-oriented principles, and covers security issues and best practices related to developing web and cloud applications. The class addresses organizational concerns around web applications, exploitation of technology in today’s market, and retention of data integrity. This should be the first course taken in: Software Design and Programming and Web Design and Development. Prerequisite: Recommended ICT 4007 (if student has no prior programming experience).