The Software Engineering for Beginners course unlocks your potential to develop cutting-edge software solutions. With comprehensive design, coding, testing, and project management coverage, this course equips you with the essential skills needed to excel in the industry. You’ll learn from real examples that lead to real results. It contains interactive lessons with knowledge checks and quizzes, and hands-on labs to build and iterate on your code like a software developer.
Lessons
22+ Lessons | 131+ Exercises | 60+ Quizzes | 522+ Flashcards | 522+ Glossary of terms
TestPrep
45+ Pre Assessment Questions | 45+ Post Assessment Questions |
Hand on lab
27+ LiveLab | 12+ Video tutorials | 18+ Minutes
Lessons 1: Introduction
- WHAT IS SOFTWARE ENGINEERING?
- WHY IS SOFTWARE ENGINEERING IMPORTANT?
- WHO SHOULD READ THIS COURSE?
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
- WHAT YOU LEARNED IN THIS LESSON
Lessons 3: Before the Beginning
- DOCUMENT MANAGEMENT
- HISTORICAL DOCUMENTS
- CODE
- CODE DOCUMENTATION
- APPLICATION DOCUMENTATION
- SUMMARY
- WHAT YOU LEARNED IN THIS LESSON
Lessons 4: The Team
- TEAM FEATURES
- TEAM ROLES
- TEAM CULTURE
- INTERVIEWS
- PHYSICAL ENVIRONMENT
- COLLABORATION SOFTWARE
- OUTSOURCING
- SUMMARY
- WHAT YOU LEARNED IN THIS LESSON
Lessons 5: Project Management
- EXECUTIVE SUPPORT
- PROJECT MANAGEMENT
- SUMMARY
- WHAT YOU LEARNED IN THIS LESSON
Lessons 6: Requirements Gathering
- REQUIREMENTS DEFINED
- REQUIREMENT CATEGORIES
- GATHERING REQUIREMENTS
- REFINING REQUIREMENTS
- RECORDING REQUIREMENTS
- VALIDATION AND VERIFICATION
- CHANGING REQUIREMENTS
- DIGITAL TRANSFORMATION
- SUMMARY
- WHAT YOU LEARNED IN THIS LESSON
Lessons 7: High-Level Design
- THE BIG PICTURE
- WHAT TO SPECIFY
- UML
- SUMMARY
- WHAT YOU LEARNED IN THIS LESSON
Lessons 8: Low-Level Design
- DESIGN APPROACHES
- OO DESIGN
- DATABASE DESIGN
- WHEN TO OPTIMIZE
- SUMMARY
- WHAT YOU LEARNED IN THIS LESSON
Lessons 9: Security Design
- SECURITY GOALS
- SECURITY TYPES
- CYBERSECURITY
- SHIFT-LEFT SECURITY
- MALWARE MENAGERIE
- PHISHING AND SPOOFING
- SOCIAL ENGINEERING ATTACKS
- CRAPWARE
- PASSWORD ATTACKS
- USER ACCESS
- COUNTERMEASURES
- CYBER INSURANCE
- SUMMARY
- WHAT YOU LEARNED IN THIS LESSON
Lessons 10: User Experience Design
- DESIGN MINDSET
- DESIGN GUIDELINES
- FORM DESIGN
- SUMMARY
- WHAT YOU LEARNED IN THIS LESSON
Lessons 11: Programming
- TOOLS
- ALGORITHMS
- TOP-DOWN DESIGN
- PROGRAMMING TIPS AND TRICKS
- SUMMARY
- WHAT YOU LEARNED IN THIS LESSON
Lessons 12: Algorithms
- ALGORITHM STUDY
- ALGORITHMIC APPROACHES
- ALGORITHM CHARACTERISTICS
- SUMMARY
- WHAT YOU LEARNED IN THIS LESSON
Lessons 13: Programming Languages
- THE MYTH OF PICKING A LANGUAGE
- LANGUAGE GENERATIONS
- LANGUAGE FAMILIES
- THE BEST LANGUAGE
- SUMMARY
- WHAT YOU LEARNED IN THIS LESSON
Lessons 14: Testing
- TESTING GOALS
- REASONS BUGS NEVER DIE
- LEVELS OF TESTING
- TESTING TECHNIQUES
- TESTING HABITS
- HOW TO FIX A BUG
- ESTIMATING NUMBER OF BUGS
- SUMMARY
- WHAT YOU LEARNED IN THIS LESSON
Lessons 15: Deployment
- SCOPE
- THE PLAN
- CUTOVER
- DEPLOYMENT TASKS
- DEPLOYMENT MISTAKES
- SUMMARY
- WHAT YOU LEARNED IN THIS LESSON
Lessons 16: Metrics
- WRAP PARTY
- DEFECT ANALYSIS
- SOFTWARE METRICS
- SUMMARY
- WHAT YOU LEARNED IN THIS LESSON
Lessons 17: Maintenance
- MAINTENANCE COSTS
- TASK CATEGORIES
- TASK EXECUTION
- SUMMARY
- WHAT YOU LEARNED IN THIS LESSON
Lessons 18: Predictive Models
- MODEL APPROACHES
- PREREQUISITES
- PREDICTIVE AND ADAPTIVE
- WATERFALL
- WATERFALL WITH FEEDBACK
- SASHIMI
- INCREMENTAL WATERFALL
- V-MODEL
- SOFTWARE DEVELOPMENT LIFE CYCLE
- SUMMARY
- WHAT YOU LEARNED IN THIS LESSON
Lessons 19: Iterative Models
- ITERATIVE VS. PREDICTIVE
- ITERATIVE VS. INCREMENTAL
- PROTOTYPES
- SPIRAL
- UNIFIED PROCESS
- CLEANROOM
- COWBOY CODING
- SUMMARY
- WHAT YOU LEARNED IN THIS LESSON
Lessons 20: RAD
- RAD PRINCIPLES
- JAMES MARTIN RAD
- AGILE
- XP
- SCRUM
- LEAN
- CRYSTAL
- FEATURE-DRIVEN DEVELOPMENT
- DISCIPLINED AGILE DELIVERY
- Primary Roles
- Secondary Roles
- DYNAMIC SYSTEMS DEVELOPMENT METHOD
- KANBAN
- SUMMARY
- WHAT YOU LEARNED IN THIS LESSON
Lessons 21: Software Ethics
- ETHICAL BEHAVIOR
- RESPONSIBILITY
- THOUGHT EXPERIMENTS
- SUMMARY
- WHAT YOU LEARNED IN THIS LESSON
Lessons 22: Future Trends
- SECURITY
- UX/UI
- CODE PACKAGING
- CLOUD TECHNOLOGY
- SOFTWARE DEVELOPMENT
- ALGORITHMS
- TECH TOYS
- SUMMARY
- WHAT YOU LEARNED IN THIS LESSON
Hands-on LAB Activities
Software Engineering from 20,000 Feet
- Understanding Software Development Project Phases
Before the Beginning
- Sending an Email Using Confidential Mode
- Documenting and Commenting on the HTML5 Code
The Team
- Analyzing Team-Building Features
Project Management
- Creating a PERT Chart
- Creating a Gantt Chart
Requirements Gathering
- Understanding the FURPS+ Categories
- Understanding Requirements Techniques and Methods
High-Level Design
- Understanding the Class Diagram Visibility Symbols
Low-Level Design
- Normalizing Unnormalized Data to 1NF
- Normalizing Data from 1NF to 2NF
- Normalizing Data from 2NF to 3NF
User Experience Design
- Customizing the Word’s Ribbon Interface
- Understanding Printer Configuration
- Designing a Form
Programming
- Using the Sorting Algorithm
- Implementing Software Programming Using Factorial
Algorithms
- Understanding Recursion
- Implementing Caching Using ARP
Programming Languages
- Using a Fourth-Generation Language to Retrieve Specific Data
- Using an Object-Oriented Language to Create a Class
Testing
- Understanding the Testing Techniques
Metrics
- Creating an Ishikawa Diagram
Maintenance
- Understanding the Types of Maintenance Tasks
Predictive Models
- Understanding the Waterfall Model
Iterative Models
- Understanding the Spiral Model
RAD
- Understanding the RAD Model
Reviews
There are no reviews yet.