EdX

Software Engineering: Introduction (edX)

Software Engineering: Introduction (edX)

Learn how to apply engineering principles, such as Agile, to build a full-stack software system. 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.

Class Deals by MOOC List - Click here and see EdX's Active Discounts, Deals, and Promo Codes.

This course, part of the Software Development MicroMasters Program, introduces how teams design, build, and test multi-version software systems.
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.

What you'll learn

  • 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

Prerequisites:
How to Code: Simple Data
How to Code: Complex Data
Software Construction: Data Abstraction
Software Construction: Object-Oriented Design

Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

The Engineering of Structures Around Us (edX) EdX
DartmouthX,Dartmouth College

The Engineering of Structures Around Us (edX)

Explore how engineers design bridges and buildings in our communities and iconic structures around the world. In this introductory course, you’ll learn some engineering principles that can be applied to structural systems everywhere: in nature, in furniture, in mechanical and aerospace systems, and in any solid object that resists a load. Together we’ll explore how structures work, why they were designed the way they were designed, how they support loads, and where forces flow through them.

Self Paced
Self-Paced
Global Software Development (edX) EdX
Delft University of Technology,DelftX

Global Software Development (edX)

Develop the technical and organizational skills you need to practice software engineering in a globally distributed environment. Software engineering operates ever more frequently in globally distributed settings, in a practice that is known as Globally Distributed Software Engineering (GDSE). In this course, you will obtain a practical overview of the organization and operation of software engineering of this practice. As such, it is aimed at professionals in distributed software development teams, and executives setting up and leading such teams who would like to develop the required technical and organizational skills.

Self Paced
Self-Paced
Dynamics and Control (edX) EdX
Universitat Politècnica de València,UPValenciaX

Dynamics and Control (edX)

This is an interactive course about the basic concepts of Systems, Control and their impact in all the human activities. First, the basic concepts of systems, dynamics, structure and control are introduced. Then, looking at many examples in Nature and human made devices, we will realize that the dynamic behavior of most systems can be modified by adding a control system. Later we will see how knowing how to evaluate the dynamic behavior of a system and measure its performance will provide the tools to design new controlled systems fulfilling some requirements.

Self Paced
Self-Paced
Unix Tools: Data, Software and Production Engineering (edX) EdX
Delft University of Technology,DelftX

Unix Tools: Data, Software and Production Engineering (edX)

Grow from being a Unix novice to Unix wizard status! Process big data, analyze software code, run DevOps tasks and excel in your everyday job through the amazing power of the Unix shell and command-line tools. Processing information is the hallmark of all modern organizations, which are increasingly digital: absorbing, processing and generating information is a key element of their business.

Self Paced
Self-Paced
Solar Energy: Photovoltaic (PV) Technologies (edX) EdX
Delft University of Technology,DelftX

Solar Energy: Photovoltaic (PV) Technologies (edX)

Explore the main PV technologies in the current market. Get in-depth knowledge on the design and processing methods of solar cells. The technologies used to produce solar cells and photovoltaic modules are advancing to deliver highly efficient and flexible solar panels. In this course you will explore the main PV technologies in the current market.

Self Paced
5-12 Weeks
Modeling and Simulation of Multibody Systems - Part II (edX) EdX
LouvainX,Université Catholique de Louvain - UCL

Modeling and Simulation of Multibody Systems - Part II (edX)

90% of daily life multibody systems contain loops of bodies, e.g. vehicle or bike suspensions, parallel manipulators or robots, and musculoskeletal systems. They can also include joint constraints. In this second course about multibody systems, learn how to model them and how to deal with more advanced numerical analyses.

Self Paced
Self-Paced
Sprint Planning for Faster Agile Team Delivery (edX) EdX
University of Maryland, College Park,University System of Maryland - USM,USMx,UMD

Sprint Planning for Faster Agile Team Delivery (edX)

Drive speed into any project with prioritized backlogs, limiting work-in-process, and engaging the entire agile team in effective sprint planning. In this course, you'll learn how to drive speed into any project by selecting and limiting work-in-progress through agile planning and task management. There are two principle roles involved, the scrum master and the product owner. However, the entire scrum team needs to understand the principles behind backlog refinement, sprint planning, and execution throughout the sprint cycle.

Self Paced
Self-Paced
Software Construction: Data Abstraction (edX) EdX
The University of British Columbia,UBCx

Software Construction: Data Abstraction (edX)

Learn powerful data abstraction and decomposition techniques to build large, complex programs. The course begins with the topic of data abstraction - from specification to implementation. Particular attention is given to how to write robust tests using JUnit. Then the course expands on these ideas to explore how type hierarchies and polymorphism can be used to decrease redundancy in your code. The course wraps up with a discussion of how to design robust classes.

Self Paced
Self-Paced
CS50's Introduction to Computer Science (edX) EdX
HarvardX,Harvard University

CS50's Introduction to Computer Science (edX)

An introduction to the intellectual enterprises of computer science and the art of programming. This is CS50, Harvard University's introduction to the intellectual enterprises of computer science and the art of programming for majors and non-majors alike, with or without prior programming experience. An entry-level course taught by David J. Malan, CS50 teaches students how to think algorithmically and solve problems efficiently.

Self Paced
Self-Paced
Introducción a la Ingeniería del Software (edX) EdX
Universidad Autonoma de Madrid,UAMx

Introducción a la Ingeniería del Software (edX)

Conoce las distintas fases de desarrollo por las que pasa un proyecto informático, así como las actividades de gestión necesarias para lograr finalizar el proyecto con éxito. ¿Alguna vez te has preguntado qué es y para qué sirve la Ingeniería de Software? ¿Quieres saber por qué es tan necesaria esta disciplina y por qué se utiliza tanto en entornos tecnológicos? ¿O cuál es el motivo de que muchos proyectos informáticos no finalizan en tiempo y coste o con la calidad deseada?

Self Paced
Self-Paced
Agile Leadership Principles and Practices (edX) EdX
University of Maryland, College Park,University System of Maryland - USM,USMx,UMD

Agile Leadership Principles and Practices (edX)

Accelerate and improve team decisions by learning Agile’s facilitating leadership principles to unleash team productivity, motivation, and problem solving. Agile can often challenge project managers in the realm of leadership. Old styles of command-control are now a thing of the past, except for the most conservative organizations. While good leaders employ a variety of leadership skills and leadership styles to motivate team members, even this is not enough.

Self Paced
Self-Paced
Data Science and Agile Systems for Product Management (edX) EdX
University of Maryland, College Park,University System of Maryland - USM,USMx,UMD

Data Science and Agile Systems for Product Management (edX)

Deliver faster, higher quality, and fault-tolerant products regardless of industry using the latest in Agile, DevOps, and Data Science. Modern systems today must be designed for agility in order to outpace the competition. Concepts like Agile, DevOps, and Data Science were once considered only for the technology-based companies. Today that means every company. Because there is no greater currency than timely information for optimizing operations and meeting the needs of customers.

Self Paced
Self-Paced