Skip to content
@csc-3100

CSC 3100

Undergraduate Software Engineering

CSC 3100 course banner

Fundamentals of Software Engineering

Java examples, educational tools, applications, and games supporting CSC 3100: Fundamentals of Software Engineering.

These repositories illustrate how software evolves from requirements and UML models to implementation, testing, and maintenance. Topics include object-oriented design, design patterns, architecture, dependency management, user interfaces, and communication.

Repositories are grouped by purpose: edu- for teaching examples, app- for applications and projects, game- for games, and cloud- for networking and service examples.

Design and Development Tools

  • edu-plantuml — Create and render UML diagrams with PlantUML.
  • edu-patterns — Study common object-oriented design patterns.
  • edu-maven — Explore Maven and Java dependency management.
  • edu-logging — Practice application logging with SLF4J and Logback.
  • edu-plotter — Compare classic, modern, and legacy Java plotting examples using Observer and Decorator.

User Interfaces and Applications

  • edu-swing — Explore Java Swing components, event handling, and graphical interfaces.
  • app-paint — Explore modular design and interaction in a drawing application.
  • app-planIt-poker — Starter application for Java UI design.
  • app-codeviz-template — Starter template for visualizing code and software structure.

Communication and Cloud

Games and Architecture Examples

  • game-pong — Explore Java sockets and client–server communication.
  • game-mqttworld — Explore an MQTT-connected Java game world.
  • game-pacman — Practice timers, threads, and keyboard events.
  • game-tictactoe — Practice modular design and object-oriented principles.
  • game-battleship — Explore a draft Battleship implementation.
  • game-hanoitowers — Explore a graphical Tower of Hanoi implementation.

Additional course applications and exercises are available to organization members in private repositories.

These projects are intended for educational exploration, experimentation, and extension. See each repository's README for setup instructions and its license for usage terms.

Popular repositories Loading

  1. app-mcp-paint app-mcp-paint Public

    🧶 A Java Swing classroom demo for learning the Model Context Protocol (MCP). Draw with the mouse or ask Claude Desktop to draw on the same canvas.

    Java 1

  2. calpoly calpoly Public

    Java

  3. edu-plotter edu-plotter Public

    ⚙️ Swing application demonstrating Decorator, Observer, and Singleton patterns

    Java 1

  4. game-pacman game-pacman Public

    👾 Examples of multithreading concepts through a Pacman game example.

    Java

  5. game-tower-hanoi game-tower-hanoi Public

    👾 GUI for Tower of Hanoi Game

    Java 1

  6. .github .github Public

    📦 Organization profile and resources

Repositories

Showing 10 of 25 repositories

People

This organization has no public members. You must be a member to see who’s a part of this organization.

Top languages

Loading…

Most used topics

Loading…