repl.it linkAdmin tP v1.0: Demo
main method and then run gradlew run....
public static void main(String[] args){
assert false : "dummy assertion set to fail";
...
}
Explain notations in the class diagram
Explain the meaning of various class diagram notations in the following class diagram:




PR object exist without any Commit objects attached to it?Commit object exist without a corresponding PR object?Student can belong to how many teams?
Team can have how many Student objects?Question adapted from past exam paper.

Draw a Class Diagram for the code (StokItem, Inventory, Review etc.)
Consider the code below:
public interface Billable {
void bill();
}
public abstract class Item
implements Billable {
public abstract void print();
}
public class StockItem extends Item {
private Review review;
private String name;
public StockItem(
String name, Rating rating){
this.name = name;
this.review = new Review(rating);
}
@Override
public void print() {
//...
}
@Override
public void bill() {
//...
}
}
public enum Rating {
GOOD, OK, POOR
}
public class Review {
private final Rating rating;
public Review(Rating rating) {
this.rating = rating;
}
}
import java.util.List;
public class Inventory {
private List<Item> items;
public int getItemCount(){
return items.size();
}
public void generateBill(Billable b){
// ...
}
public void add(Item s) {
items.add(s);
}
}
(a) Draw a class diagram to represent the code. Show all attributes, methods, associations, navigabilities, visibilities, known multiplicities, and association roles. Show associations as lines.
(b) Draw an object diagram to represent the situation where the inventory has one item with a name spanner and a review of POOR rating.