Skip to main content

Software design and testingLaajuus (5 cr)

Course unit code: TB00CU80

General information


Credits
5 cr
Teaching language
English

Objective

The "Software Design and Testing" course provides an essential foundation in designing robust, efficient, and maintainable software systems, as well as in rigorously testing these systems to ensure quality and reliability.

Content

Key Topics:
• Introduction to Software Design: Fundamental concepts of software design, including design principles, patterns, and methodologies.
• Software Development Life Cycle (SDLC): Understanding the phases of SDLC, from requirements gathering to maintenance.
• Object-Oriented Design (OOD): Principles of object-oriented design, including classes, objects, inheritance, polymorphism, and encapsulation.
• Design Patterns: Introduction to common design patterns and their applications in solving recurring design problems.
• Unified Modeling Language (UML): Using UML for visualizing, specifying, constructing, and documenting the artifacts of a software system.
• Software Testing Fundamentals: Basic concepts of software testing, including test planning, test case design, and test execution.
• Types of Testing: Overview of different testing types, such as unit testing, integration testing, system testing, and acceptance testing.
• Automated Testing: Introduction to automated testing tools and techniques, and their importance in continuous integration and delivery.
• Quality Assurance (QA): Principles and practices of QA in software development, including code reviews, static analysis, and defect tracking.

Go back to top of page