Skip to content

Latest commit

 

History

25 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CS351 – AI-Assisted Software Development

A software engineering portfolio documenting my learning and development throughout the CS351 course at Yuan Ze University.

The repository includes lecture notes, practical projects, Git workflows, testing, CI pipelines, and reflections on modern software engineering practices.

✨ Highlights

  • 📚 Complete semester portfolio
  • 🌱 Git & GitHub workflow
  • 🔀 Branching and Merge strategies
  • ✅ Unit testing
  • ⚙️ GitHub Actions (CI)
  • 🤖 AI-assisted software development
  • 📖 Weekly learning reflections

📖 Overview

This repository documents my progress throughout the CS351 – AI-Assisted Software Development course.

Beyond programming assignments, it covers modern software engineering practices including version control, collaborative workflows, testing, continuous integration, and AI-assisted development.

The goal of this repository is to record both technical implementations and the learning process behind them.

🎯 Learning Outcomes

During the semester I gained practical experience with:

  • Git and GitHub workflows
  • Branching strategies
  • Scrum and Agile development
  • Jira task management
  • Unit testing
  • Continuous Integration using GitHub Actions
  • AI-assisted software development
  • Software documentation

🛠️ Technologies

Development

  • C++
  • Python

Version Control

  • Git
  • GitHub

DevOps

  • GitHub Actions

Project Management

  • Jira

Documentation

  • Markdown

📈 Semester Timeline

Week Focus
1 Git & GitHub
2 Scrum & Jira
3 Branching
4 AI-assisted Development
5 Project 0
6 Testing & CI
7 Project B
8 Final Presentation

📂 Repository Structure

11402_CS351
│
├── lecture_notes/
├── handwritten_notes/
├── projects/
│   ├── Project0_TwoSum/
│   └── ProjectB_CSV_Database/
│
├── reflections/
├── resources/
└── timeline.md

📚 Course Topics

  • Git & GitHub
  • Scrum
  • Jira
  • Software Development Process
  • AI-assisted Development
  • Unit Testing
  • GitHub Actions
  • Software Documentation

📅 Weekly Progress

Week Topic Status
1 Git & GitHub
2 Scrum & Jira
3 Branch & Merge
4 AI and Software Engineering
5 Project 0 – Two Sum
6 Testing & GitHub Actions
7 Project B – CSV Database
8 Final Presentation

🚀 Projects

Project 0 — Two Sum

Implemented the classic Two Sum problem in C++ while practicing software engineering workflows.

Topics covered:

  • Brute-force and hash-table solutions
  • Unit testing
  • GitHub Actions
  • Continuous Integration

Location: projects/Project0_TwoSum


Project B — CSV Database

Developed a lightweight CSV-based query engine supporting simple SQL-like operations.

Features:

  • CSV parsing
  • SELECT
  • WHERE
  • Interactive console interface

Location: projects/ProjectB_CSV_Database


📝 Handwritten Notes

Every lecture includes handwritten notes taken during class.

Examples:

  • Git & GitHub
  • Scrum & Jira
  • AI and Engineers
  • Project B
  • Testing Plan

💡 Reflection

Software engineering is not only about writing code. Throughout this course I learned the importance of:

  • Planning
  • Collaboration
  • Testing
  • Documentation
  • Version Control
  • Continuous Integration

📌 Skills Practiced

  • Software Engineering
  • Git
  • GitHub
  • Continuous Integration
  • Unit Testing
  • Agile Development
  • AI-assisted Development
  • Software Documentation

📌 Repository Purpose

This repository serves as a personal software engineering portfolio for the CS351 course. It documents both completed projects and the engineering practices developed throughout the semester, including version control, testing, continuous integration, documentation, and AI-assisted development.

👤 Author

To Minh Ly

GitHub: https://github.com/WaterMinh

About

CS351 coursework repository for AI-assisted software development projects

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors