Software Engineering for Beginners

(SOFT-ENG-BEG.AE2)/ISBN:978-1-64459-309-7

This course includes
Lessons
TestPrep
Lab
AI Tutor (Add-on)

Lessons

15+ Lessons | 98+ Quizzes |

TestPrep

45+ Pre Assessment Questions | 45+ Post Assessment Questions |

Here's what you will learn

Download Course Outline

Lessons 1: Introduction

  • What Is Software Engineering?
  • Why Is Software Engineering Important?
  • Who Should Read This Course?
  • Approach
  • What This Course Covers (And What It Doesn't)?
  • What Tools Do You Need?
  • Conventions

Lessons 2: Software Engineering From 20,000 Feet

  • Requirements Gathering
  • High-Level Design
  • Low-Level Design
  • Development
  • Testing
  • Deployment
  • Maintenance
  • Wrap-Up
  • Everything All At Once
  • Summary
  • Exercises
  • What You Learned In This Lesson

Lessons 3: Before The Beginning

  • Document Management
  • Historical Documents
  • E-Mail
  • Code
  • Code Documentation
  • Application Documentation
  • Summary
  • Exercises
  • What You Learned In This Lesson

Lessons 4: Project Management

  • Executive Support
  • Project Management
  • Summary
  • Exercises
  • What You Learned In This Lesson

Lessons 5: Requirement Gathering

  • Requirements Defined
  • Requirement Categories
  • Gathering Requirements
  • Refining Requirements
  • Recording Requirements
  • Validation and Verification
  • Changing Requirements
  • Summary
  • Exercises
  • What You Learned In This Lesson

Lessons 6: High-Level Design

  • The Big Picture
  • What To Specify
  • UML
  • Summary
  • Exercises
  • What You Learned In This Lesson

Lessons 7: Low-Level Design

  • OO Design
  • Database Design
  • Summary
  • Exercises
  • What You Learned In This Lesson

Lessons 8: Development

  • Use the Right Tools
  • Selecting Algorithms
  • Top-Down Design
  • Programming Tips and Tricks
  • Summary
  • Exercises
  • What You Learned In This Lesson

Lessons 9: Testing

  • Testing Goals
  • Reasons Bugs Never Die
  • Levels of Testing
  • Testing Techniques
  • Testing Habits
  • How to fix a Bug
  • Estimating number of Bugs
  • Summary
  • Exercises
  • What You Learned In This Lesson

Lessons 10: Deployment

  • Scope
  • The Plan
  • Cutover
  • Deployment Tasks
  • Deployment Mistakes
  • Summary
  • Exercises
  • What You Learned In This Lesson

Lessons 11: Metrics

  • Wrap Party
  • Defect Analysis
  • Software Metrics
  • Summary
  • Exercises
  • What You Learned In This Lesson

Lessons 12: Maintenance

  • Maintenance Costs
  • Task Categories
  • Task Execution
  • Summary
  • Exercises
  • What You Learned In This Lesson

Lessons 13: Predictive Models

  • Model Approaches
  • Prerequisites
  • Predictive and Adaptive
  • Waterfall
  • Waterfall with Feedback
  • SASHIMI
  • Incremental Waterfall
  • V-MODEL
  • Systems Development Life Cycle
  • Summary
  • Exercises
  • What You Learned In This Lesson

Lessons 14: Iterative Models

  • Iterative versus Predictive
  • Iterative versus Incremental
  • Prototypes
  • Spiral
  • Unified Process
  • Cleanroom
  • Summary
  • Exercises
  • What You Learned In This Lesson

Lessons 15: RAD

  • RAD Principles
  • James Martin RAD
  • Agile
  • XP
  • Scrum
  • Lean
  • Crystal
  • Feature-Driven Development
  • Agile Unified Process
  • Disciplined Agile Delivery
  • Dynamic Systems Development Method
  • Kanban
  • Summary
  • Exercises
  • What You Learned In This Lesson

Hands-on LAB Activities (Performance Labs)

Software Engineering From 20,000 Feet

  • Understanding Software Development Project Phases
  • Understanding the Steps of Software Development

Before The Beginning

  • Understanding E-mail Subject Tags
  • Learning Good Document Management System

Project Management

  • Understanding Duties of Executive Champion and Project Manager
  • Understanding Project Management and Executive Support

Requirement Gathering

  • Understanding Methods for Recording Requirements
  • Learning the FURPS Categories

High-Level Design

  • Understanding the Types of Architecture
  • Understanding the Class Diagram Visibility Symbols

Low-Level Design

  • Understanding Normalization Forms
  • Understanding Object-Oriented and Database Design

Development

  • Understanding Algorithm Characteristics and Programming Tips
  • Understanding the Types of Development Tools

Testing

  • Understanding the Levels of Testing
  • Working with the Testing Techniques

Deployment

  • Learning Deployment Tasks
  • Understanding Cutover, Deployment Tasks, and Deployment Mistakes

Metrics

  • Understanding Defect Analysis and Software Metrics
  • Understanding Function Point Metrics

Maintenance

  • Understanding Categories of Task Maintenance
  • Understanding the Types of Maintenance Tasks

Predictive Models

  • Understanding Types of Predictive Models
  • Learning the Features of a Predictive Model
  • Understanding Success and Failure Indicators

Iterative Models

  • Understanding the Unified Process and Prototypes
  • Learning the Spiral Model

RAD

  • Understanding Kanban, Disciplined Agile Delivery, and the Agile Unified Process
  • Learning Features of the RAD Model
  • Understanding Crystal Methods
  • Understanding the Phases of FDD