Software Development

Specializations and courses in software development address the process of creating software, including development tools and methodologies (such as Agile development), programming languages (including Python, C, Java, and Scala), and software architecture and testing.

...

Earn Your Degree

Most Popular Certificates in Software Development

Apply by June 15th to earn your MS in Population and Health Sciences online.

Explore Penn’s online Master of Computer and Information Technology degree.

Most Popular Software Development Courses

Recently Launched Guided Projects

Trending Software Development Courses

Top Rated Software Development Courses

Program Anything in Python

Programming for Robotics

Programming Foundations in C and C++

    Frequently Asked Questions about Software Development

  • Software is the set of instructions that tells a computer what to do. Software development encompasses all of the activities required for software design, deployment, maintenance, and support. Every video game, mobile app, and work-related computer program you’ve ever used goes through this process.

    Software development starts by working with users and other stakeholders to determine what the software needs to do. Then, a software architecture is chosen to structure the program’s operation, as well as a software design to determine how it will solve for user requirements. Only then does the actual coding process begin, which also includes extensive team review and testing for quality assurance. Once the program is ready for deployment, software developers continue to be responsible for keeping the software updated, fixing bugs, and providing user support.