Software Engineering: Introduction
About this Course
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.Created by: University of British Columbia
Level: Advanced

Related Online Courses
In this course, you will learn and explore about 5G networking and discover how 5G has evolved from its predecessors 4G and 3G. You will learn about new 5G radio, 5G spectrum sharing and end-to-end... more
This Data Structures & Algorithms course completes the 4-course sequence of the program with graph algorithms, dynamic programming and pattern matching solutions. A short Java review is... more
Today more than ever, the optimal use of resources has become a very important issue. Many decision problems (logistics, production, space, etc.) aiming at an optimal use of resources can be... more
The Python programming language is extremely powerful and commonly used to automate time-intensive activities/tasks for users. This makes Python a good skill to have for any job that requires... more
A basic understanding of the assembly language with RISC-V is vital for hardware-related programming. Tasks like debugging and identifying performance-critical program sections are easier to... more