I&C SCI X494.85

Agile Software Design and Programming

Learn the principles, practices and patterns that result in optimal software design and development. Utilize the best practices from object-oriented design and Agile techniques/frameworks to create design processes and culture that result in highly effective, clean software to improve organizational efficiency and create a competitive advantage for your company. You will review a variety of case studies–from simple to complex–in multiple programming languages, illustrating the fundamentals of Agile development and Agile design. Topics include: release and iteration planning, test-driven development, refactoring, Agile design (including “design smells”, “code rot”), Single-Responsibility Principle (SRP), Open-Closed Principle (OCP), Liskov Substitution Principle (LSP), object and state diagrams, big software design issues, design patterns, class design, complexity management and package design, and the use of OOD and C++ in an Agile environment. Prerequisites: I&C SCI X494.80 Agile Project Management (now titled: Fundamentals of Agile Methods.) Some Programming experience in any Object Oriented Language (e.g. C++, Java, C#, etc.)

Icon
Course
Approximate Cost TBD
Format Online
Duration TBD
Total Credits 2.5