Expanded Explanation
Software development combines problem analysis, design, coding, testing, deployment and maintenance. It spans web, mobile, embedded and backend systems, and is typically organised around version control, code review and continuous integration.