Welcome to COIT20258! This week we'll explore professional software development practices and various software process models.
Course Overview
Detailed overview of course objectives, grading policy, and expectations.
View Syllabus
Lecture Slides
Introduction to software development and process models.
Download Slides
In-Class Exercise 1
Software process analysis and comparison.
View Assignment
This week we'll dive into Agile methodologies and the fundamentals of requirements engineering.
Agile Methodologies
Scrum, Kanban, and other Agile frameworks.
View Content
Tutorial Session
Functional and non-functional requirements gathering.
View Content
Practice Exercise
Requirements gathering workshop.
View Exercise
Explore advanced requirements engineering techniques and system modeling approaches.
System Modeling
UML diagrams and system architecture modeling.
View Content
Practice
Identifying and managing project stakeholders.
View Content
Example
Introduction to UML modeling tools.
View Tools
Learn about software architecture patterns and object-oriented design principles.
Architectural Patterns
MVC, MVVM, and other architectural patterns.
View Content
Object-Oriented Design
SOLID principles and OOP best practices.
View Content
Design Patterns
Common design patterns and their applications.
View Patterns
Focus on practical design implementation and coding best practices.
Design Implementation
Converting designs into working code.
View Content
Version Control
Git and collaborative development practices.
View Content
Debugging Techniques
Effective debugging and problem-solving strategies.
View Techniques
Enjoy your vacation week! No formal classes or assignments during this period.
Vacation Resources
Optional reading materials for continued learning.
View Resources
Learn about various software testing methodologies and quality assurance practices.
Lecture Slides
Unit, integration, and system testing approaches.
View Content
Exercise
Test automation frameworks and tools.
View Content
Testing Assignment
Practical testing implementation project.
View Assignment
Explore software quality management and assurance processes.
Quality Assurance
QA processes and quality metrics.
View Content
Quality Metrics
Measuring and tracking software quality.
View Content
Quality Standards
Industry standards and best practices.
View Standards
Understanding how software evolves over time and maintenance strategies.
Software Maintenance
Types of maintenance and evolution strategies.
View Content
Assessment 2 Guideline
Guideline for Assessment 2
View Content
THS Diagram 1
Diagram UML - Class Diagram
View Strategies
THS Diagram 2
Diagram UML - Sequence Diagram
View Strategies
THS Diagram 3
Diagram UML - Use Case Diagram
View Strategies
THS Diagram 4
Diagram UML - MVC Diagram
View Strategies
Learn about configuration management and deployment strategies.
Configuration Tools
Docker, Kubernetes, and containerization.
View Content
Deployment Strategies
CI/CD pipelines and deployment automation.
View Content
Environment Management
Managing development, staging, and production environments.
View Content
Explore techniques for building reliable and fault-tolerant software systems.
Slide
Building systems that can handle failures gracefully.
View Content
Assessment 3 Guideline
Reliability engineering and monitoring strategies.
View Content
Learn about software reuse strategies and component-based development approaches.
Slide content
Libraries, frameworks, and reusable components.
View Content
Component-Based Development
Building systems from reusable components.
View Content
Assessment 3 Template
Get an ideas of the report writing
View Content
Explore service-oriented architecture and microservices development.
Service-Oriented Architecture
SOA principles and implementation strategies.
View Content
Microservices
Designing and implementing microservices.
View Content
API Design
RESTful APIs and service communication.
View Content