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

Skillshare

Software Engineering 101: Learn the Software Development Cycle for Better Programming

via Skillshare

This course may be unavailable.

Overview

Building good software takes hard work. It takes planning, design, adjustments, and flexibility to be done properly. Poor decisions during the planning phase can cost hundreds or thousands later on in development. 

In this course, we will be going over the software development life-cycle. We will cover the models, techniques, and planning required to create sustainable code. 

In this course we will be covering:

  • Requirements
  • Specifications
  • Modularity
  • Design
  • Coupling
  • Cohesion
  • Lifecycle Models
  • Architecture Patterns
  • World Machine Model
  • Testing
  • Testing Perspectives
  • Black and Whitebox Testing

Syllabus

  • Introduction Video
  • 1-1 Why Use Models
  • 1-2 Software Development Cycle
  • 1-3 Software Cycle Example
  • 2-1 Requirements Definition
  • 2-2 Requirements vs Specifications
  • 2-3 Functional vs Nonfunctional
  • 2-4 WRSPM Model Introduction
  • 2-5 WRSPM Deep Dive
  • 2-6 Requirements Example
  • 3-1 Architecture Introduction
  • 3-2 Architecture Overview and Example
  • 3-3 Pipe and Filter Pattern
  • 3-4 Client-Server Pattern
  • 3-5 Master-Slave Pattern
  • 3-6 Layered Pattern
  • 3-7 Software Engineering Pattern
  • 4-1 Software Design Process
  • 4-2 Stages of Design
  • 4-3 Modularity
  • 4-4 Information Hiding and Data Encapsulation
  • 4-5 Coupling Introduction
  • 4-6 Tight Coupling
  • 4-7 Medium Coupling
  • 4-8 Loose Coupling
  • 4-9 Coupling Conclusion
  • 4-10 Cohesion Introduction
  • 4-11 Weak Cohesion
  • 4-12 Medium Cohesion
  • 4-13 Strong Cohesion
  • 4-14 Importance of Design
  • 5-1 Implementation Basics
  • 5-2 Buy Vs Build
  • 5-3 Deployment Overview
  • 5-4 Deployment Planning
  • 5-5 Deployment Rollback
  • 6-1 Testing Overview
  • 6-2 Testing Bugs
  • 6-3 Verification and Validation
  • 6-4 Unit Testing
  • 6-5 Integration Testing
  • 6-6 Incremental Testing
  • 6-7 Back to Back Testing
  • 6-8 Who Should Test
  • 6-9 Automatic vs Manual Testing
  • 6-10 Black and White Box Testing
  • 6-11 The problem with testing
  • Project Overview

Taught by

Kurt Anderson

Reviews

Start your review of Software Engineering 101: Learn the Software Development Cycle for Better Programming

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.