Software Development from A to Z - In Layman's Terms

This course is for you if you are interested in software development! All you need to know explained in layman's terms.
4.7 (23 ratings)
Instead of using a simple lifetime average, Udemy calculates a
course's star rating by considering a number of different factors
such as the number of ratings, the age of ratings, and the
likelihood of fraudulent ratings.
348 students enrolled
50% off
Coupon valid until Mar 1, 2017 7:59 AM UTC
Take This Course
  • Lectures 22
  • Length 1 hour
  • Skill Level All Levels
  • Languages English, captions
  • Includes Lifetime access
    30 day money back guarantee!
    Available on iOS and Android
    Certificate of Completion
Wishlisted Wishlist

How taking a course works


Find online courses made by experts from around the world.


Take your courses with you and learn anywhere, anytime.


Learn and practice real-world skills and achieve your goals.

About This Course

Published 10/2016 English Closed captions available

Course Description

Learn the fundamentals of how software applications are created and maintained. This easy to follow video course explores the principles and techniques of software development. You will acquire professional and technical skills together with an understanding of what software development is all about.

Upon completing this course, you will be able to understand the principles and theory of software development.

Student quotes:

"Easy to follow and logical, perfectly suitable for absolute beginners to grasp the very basics of software development."

"Thank you for creating this course, seriously. There are so many pointers that you have highlighted within the dev world that i was simply unaware of. A+ for bringing them to light."

"Great to Go Course! Masterpiece in info for the Software Development industry."

"This course gives me the very quick introduction to software development. It is neccessary to know before the job interview."

What are the requirements?

  • You don't need to have prior programming experience

What am I going to get from this course?

  • Explain the principles and theory behind software development
  • Understand the fundamentals of Object-Oriented Programming, UML, Agile, Waterfall, Kanban, SCRUM and so much more
  • Get closer to your goal of becoming a professional software developer

Who is the target audience?

  • If you plan to start a programmer career then take this course
  • If you want to acquire technical skills required for job interviews then take this course
  • If you want to refresh your knowledge about modern software development concepts then take this course

What you get with this course?

Not for you? No problem.
30 day money back guarantee.

Forever yours.
Lifetime access.

Learn on the go.
Desktop, iOS and Android.

Get rewarded.
Certificate of completion.


Section 1: Introduction

Welcome to the course!

If you are reading this, you are most likely considering a change in career; perhaps you just want to learn more about software development. Whichever the case may be, you are in the right place.

In this clip, I am going to quickly introduce myself, and provide an overview of what's covered in this course about software development.

Section 2: Software Development Basics

Let's discuss some of the most widespread misconceptions about becoming/being a software developer.


In this clip, I am going to reveal some of the most widespread misconceptions around software development.

1 question

What are the activities involved in software development?


In this episode, I’d like to introduce the most frequent activities involved in the course of developing software.

1 question

Wha are the most common tasks related to software development?

Section 3: Software Development Methodologies

In this clip, I am going to talk about software development methodologies: what they are, and why are they so important.

1 question

Why do we need software development methodologies


The Waterfall model was first described by Winston Royce back in 1970. Let's see what this sequential model is all about.

1 question

Tests your Waterfall Model knowledge


Let's see what are the benefits and drawbacks of the Waterfall model.

1 question

Biggest drawback of the Waterfall Model


In this clip, I am going to introduce the Agile model. This methodology is praised for providing fast response to changes, continuous improvement and early delivery of working software.

1 question

Test your knowledge about Agile


The Agile development methodology has become very popular. Yet, it does not come without issues. In this episode, we are going to analyze both its pros and cons.

1 question

What can go wrong with Agile?

3 questions

Agile vs. Waterfall - which one is "better"?


In this clip, I am going to introduce Scrum, which is a way to organize team work around Agile principles.

3 questions

Test your knowledge about SCRUM


Scrum organizes work in short, sustainable bursts of activity called sprints.
In this episode, we are going to analyze how work is managed within a sprint.

3 questions

Test your knowledge on SCRUM


A burndown chart is an essential tool for tracking the progress during a sprint. This clip explains how this can be done in an efficient, yet simple way.

1 question

What are SCRUM burn-down charts for?


In this clip, I am going to explain how the so-called task boards can be used to visualize the state of the various tasks the team should handle.


The Kanban system was first used by Toyota to improve the efficiency of mass-producing  cars. As it turned out, it can be applied also to creating software products - I'll explain how in this episode.

Section 4: Object Oriented Programming

In this episode, I am going to introduce the basics of Object-Oriented Programming. We are going to clarify OOP-concepts like classes, instances, inheritance, polymorphism, abstraction, data hiding and more.

2 questions

Test your knowledge about classes and objects


This chapter explains the fundamentals of OOP: abstraction, encapsulation and data hiding.

2 questions

Test your knowledge about abstraction, encapsulation and data hiding


In this clip, I am going to explain further OOP-concepts: Inheritance and polymorphism.

1 question

Test your knowledge about inheritance and polymorphism.

Section 5: The Unified Programming Language

The Unified Modeling Language is a graphical way to describe a software system. It provides the means to describe the structure and also the functionality of the system.


This clip introduces the Class Diagram, which is a popular UML structure diagram type. It describes the static relationships between the objects that are forming the software system.


In this episode, I am going to explain the UML relationships: generalization, association, aggregation, composition, realization and dependency.


Sequence Diagrams can describe the flow of logic within your system. In this episode, I am going to describe this powerful UML diagram type.

6 questions

Test your UML knowledge.

Section 6: Next Steps & Bonus Content

So, you want to make a career switch to software development? You might be wondering, what’s next? Well, in this section I am going to provide some additional guidance and useful hints that will help you in accomplishing your goal.

Students Who Viewed This Course Also Viewed

  • Loading
  • Loading
  • Loading

Instructor Biography

Karoly Nyisztor, IT Professional, iOS / Mac Developer, Teacher

I am a veteran mobile developer having built several successful iOS apps and games, most of which were featured by Apple.

I am the founder at LEAKKA, a software development and tech consulting company. I have worked with companies such as Apple, Siemens, SAP, Zen Studios, and many more.

I spend most of my days now as a professional software engineer and IT architect. As an instructor, my aim is to share my 20+ years of software development expertise, and change the lives of students throughout the world.

My passion is helping people reveal hidden talents and guide them into the world of startups and programming. I currently am teaching object-oriented software design, iOS, Swift, Objective-C and UML.

Ready to start learning?
Take This Course