About the content
This course, part of the Software Development MicroMasters Program, introduces how teams design, build, and test multi-version software systems.
You will learn software engineering principles that are applicable to the breadth of large-scale software systems. The course explores topics such as agile development, REST and Async programming, software specification, design, refactoring, information security, and more.
By the end of this course, learners will work in teams, applying an agile software development process to specify, design, and test multiple versions of complex software systems.
Learners who enroll in the Verified track will receive staff grading and increased interaction with the instructor and staff.
- How to build a non-trivial software system using an agile approach in a pair or team
- Techniques for specifying the functional and non-functional aspects of a software system
- Techniques for designing and testing a software system
- The role of refactoring in building a quality system
Associate Professor, Computer Science
University of British Columbia
Harvard University, the Massachusetts Institute of Technology, and the University of California, Berkeley, are just some of the schools that you have at your fingertips with EdX. Through massive open online courses (MOOCs) from the world's best universities, you can develop your knowledge in literature, math, history, food and nutrition, and more. These online classes are taught by highly-regarded experts in the field. If you take a class on computer science through Harvard, you may be taught by David J. Malan, a senior lecturer on computer science at Harvard University for the School of Engineering and Applied Sciences. But there's not just one professor - you have access to the entire teaching staff, allowing you to receive feedback on assignments straight from the experts. Pursue a Verified Certificate to document your achievements and use your coursework for job and school applications, promotions, and more. EdX also works with top universities to conduct research, allowing them to learn more about learning. Using their findings, edX is able to provide students with the best and most effective courses, constantly enhancing the student experience.