Introduction to Software Engineering

Overview

This microcredential offers an accessible introduction to the world of software development. The syllabus covers basic programming concepts, including algorithms, data structures, and an overview of the software development lifecycle. Hands on projects encourage you to build simple applications, providing a practical foundation for further study in software engineering.

Core Components

1. Introduction to Software Engineering

Definition and importance of software engineering
Software development lifecycle (SDLC) overview
Role of a software engineer

2. Software Development Methodologies

Waterfall, Agile, Scrum, and DevOps
Choosing the right development approach
Collaboration and teamwork in software development

3. Fundamentals of Programming

Basics of programming languages (Python, Java, C++)
Writing, compiling, and debugging code
Introduction to algorithms and data structures

4. Software Requirements and Analysis

Gathering and documenting software requirements
Functional vs. non-functional requirements
Use case modeling and requirement validation

5. Software Design Principles

Object-oriented programming (OOP) concepts
Design patterns and best practices
Architectural design and system modeling

6. Software Development and Implementation

Writing clean and maintainable code
Version control systems (Git, GitHub)
Software development tools and environments

7. Testing and Quality Assurance

Importance of software testing
Types of testing (unit, integration, system, acceptance)
Test-driven development (TDD) and automation

8. Software Deployment and Maintenance

Continuous integration and deployment (CI/CD)
Monitoring and maintaining software post-deployment
Handling software updates and bug fixes

9. Cybersecurity and Software Security

Common software vulnerabilities
Secure coding practices
Data protection and encryption techniques

10. Ethics and Professionalism in Software Engineering

Ethical considerations in software development
Intellectual property and open-source licensing
Collaboration and professional responsibilities

Artificial intelligence (AI) and machine learning in software
Cloud computing and microservices
Internet of Things (IoT) and blockchain applications

12. Final Assessment and Practical Application

Developing a mini software project
Code review and peer evaluation
Self-reflection and future learning path

Programme Modules & Fee

  • Purchase 1-3 modules: 3% discount on each module.
  • Purchase 3-5 modules: 5% discount on each module.
  • Purchase more than 5 modules: 12% discount on each module.