Software Engineering 101: Plan and Execute Better Software

Software Engineering 101: Plan and Execute Better Software
Software Engineering 101: Plan and Execute Better Software
English | MP4 | AVC 1280×720 | AAC 48KHz 2ch | 7 Hours | 2.22 GB

Software Engineering 101: Use Software Engineering to Plan and Build Amazing Software.

Master the Techniques of Software Engineering!

If you are looking to learn the invaluable ideas behind software engineering, you have come to the right place. This course is perfect for anyone who is currently in, or looking to get into the highly profitable programming field.

No Previous Experience Necessary!

This course was designed to be a standalone course. This means it can be taken with or without knowledge of computer programming. It is both a great course to get started with, and a great course for that next step in your career.

Why is the Software Engineering Important?

Computer programming is more than just knowing how to code. It is also an engineering process. Large scale systems must be planned out long before coding actually begins. Due to this, most companies are looking for programmers with knowledge in software engineering.

In this course we will learn the core techniques and ideas behind software engineering. Knowing this will help set you apart in the field.

Enroll Now and You’ll Learn:

  • Software Development Life-cycle
  • Requirements
  • Specifications
  • WRSPM Model
  • Architecture
  • Design
  • Client-server Pattern
  • Master-Slave Pattern
  • Modularity
  • Coupling & Cohesion
  • Buy vs Build
  • Testing
  • Verification and Validation
  • Software Models
  • Agile
  • Scrum
  • Kanban

What you’ll learn

  • Software Engineering Principles
  • Requirements Definitions
  • Software Architecture Planning
  • Modularity
  • Computer Science Models
  • Agile Methodology
Table of Contents

Introduction
1 Welcome to the Course

Software Lifecycle
2 Why Learn Software EngineeringDevelopment
3 Typical Software Development Lifecycle
4 Software Development Lifecycle Example
5 Software Development Lifecycle Notes

Requirements and Specifications
6 Requirements Definition
7 Requirements vs Specifications
8 Functional vs Non-Functional Requirements
9 Requirements Notes
10 WRSPM Model Introduction
11 WRSPM Model Deep Dive
12 WRSPM Model
13 Requirements Example

Design Architecture
14 Where We Are in The Course
15 Software Architecture Introduction
16 Software Architecture Overview
17 Software Architecture Example
18 Pipe and Filter
19 Client-Server
20 Master-Slave
21 Layered Pattern
22 Software Architecture Notes
23 Software Architecture Process

Design Modularity
24 Software Design Process
25 Stages of Design
26 Modularity
27 Information Hiding and Data Encapsulation
28 Design and Modularity Notes
29 Coupling Introduction
30 Tight Coupling
31 Medium Coupling
32 Loose Coupling
33 Coupling Conclusion
34 Coupling Notes
35 Cohesion Introduction
36 Weak Cohesion
37 Medium Cohesion
38 Strong Cohesion
39 Cohesion Notes
40 Importance of Design

Implementation and Deployment
41 Implementation Basics
42 Buy vs Build
43 Implementation Notes
44 Deployment Overview
45 Deployment Planning
46 Deployment Rollback
47 Deployment Notes

Testing
48 Testing Overview
49 Testing Bugs
50 Verification and Validation
51 Testing Introduction Notes
52 Unit Testing
53 Integration Testing
54 Incremental Testing
55 Back to Back Testing
56 Who Should Test
57 Automatic Vs Manual Testing
58 Blackbox and Whitebox Testing
59 The Problem with Testing
60 Types of Testing Notes

Software Development Models
61 Software Development Introduction
62 Waterfall Model
63 V-Model
64 Sashimi Model
65 Iterative Model
66 Incremental Model
67 Unified Process Framework
68 Spiral Model
69 Models Notes

Agile
70 Agile Introduction
71 Agile Manifesto
72 Scrum
73 Kanban
74 Lean Startup
75 Agile Notes

Conclusion
76 Thanks for joining me
77 Bonus Lecture