Skip to content

Ngandana/software-engineering-assignment

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

62 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Rock Paper Scissors Game

Project Description

This is a simple Rock Paper Scissors game developed in Python for the Software Engineering assignment.

The game allows the player to play against the computer using terminal input.

Features

  • User input handling
  • Random computer choices
  • Win/Lose/Tie logic
  • Command-line gameplay

Requirements

  • Python 3 installed

How to Run

Run the following command:

python3 game.py

Example

Player chooses:

  • rock
  • paper
  • scissors

The computer randomly selects a choice and displays the result.

Screenshot

Project Screenshot

Author

Akhona Hlongwa

Assignment 8: Object State Modeling and Activity Workflow Modeling

State Transition Diagrams

Completed State Diagrams

  • Book State Diagram
  • User Account State Diagram
  • Loan State Diagram
  • Reservation State Diagram
  • Fine Payment State Diagram
  • Membership State Diagram
  • Notification State Diagram
  • Librarian Session State Diagram

Location:

diagrams/state-diagrams/

Activity Workflow Diagrams

Completed Activity Diagrams

  • Checkout Book Workflow
  • User Registration Workflow
  • Return Book Workflow
  • Reserve Book Workflow
  • Pay Fine Workflow
  • Renew Membership Workflow
  • Login Process Workflow
  • Generate Report Workflow
  • Cancel Reservation Workflow

Location:

diagrams/activity-diagrams/

Reflection

Reflection document located at:

docs/library_reflection.md

Technologies Used

  • GitHub
  • Mermaid UML Diagrams
  • Markdown Documentation
  • Git Version Control

Repository Structure

project/
│
├── diagrams/
│   ├── state-diagrams/
│   └── activity-diagrams/
│
├── docs/
│   └── library_reflection.md
│
└── README.md

Assignment 9: Domain Modeling and Class Diagram Development

Domain Model Documentation

The domain model identifies the core entities, attributes, methods, relationships, and business rules of the Library Management System.

Location:

assignment9/domain-model/domain-model.md

Mermaid.js Class Diagram

The class diagram models:

  • Classes
  • Attributes
  • Methods
  • Associations
  • Multiplicity relationships

Location:

assignment9/class-diagram/library-class-diagram.md

Reflection

The reflection discusses:

  • Challenges faced
  • Alignment with previous assignments
  • Trade-offs in object-oriented design
  • Lessons learned

Location:

assignment9/reflection/assignment9-reflection.md

Technologies Used

  • Mermaid.js
  • Markdown
  • GitHub
  • Git Version Control
  • UML Modeling

Assignment 9 Repository Structure

assignment9/
│
├── domain-model/
│   └── domain-model.md
│
├── class-diagram/
│   └── library-class-diagram.md
│
└── reflection/
    └── assignment9-reflection.md

About

Rock Paper Scissors game in Python for Software Engineering assignment

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Makefile 90.1%
  • Rust 9.1%
  • Other 0.8%