COMP 310 
		  
		Fall 2017
		 | 
		
		Lec04: UML Diagrams
		 | 
	
	
		
		
		  
		
		  
		
		   
		
		  
		
		  
		
		  | 
	
	- Boxes
		- Classes
			- Name, fields and methods
				- Concrete (regular type) vs abstract (italic type)
 
				- Chevrons sometimes used to denote interfaces.
 
				- Sometimes the "role" in which the class plays in the design 
				will be also be noted.
 
			
			 
			- Accessibility:  public (+), private (-), package (nothing)
 
		
		 
		- Comments/Notes  (dog-eared)
 
	
	 
	- Lines:
		- Solid arrowheads -- generalization
			- solid line: inheritance
 
			- dotted line:implementation
 
		
		 
		- Open arrowheads
			- solid line:  association ("has-a")  -- composition (with 
			solid diamond end)  or aggregation (with open diamond end) or unspecified (no diamond 
			end).   Java is always aggregation.
 
			- dotted line:   dependency ("instantiates", "uses", 
			etc)
 
		
		 
	
	 
Use UML Lab to help you concentrate on the design of your system, 
its structure and behaviors, rather than on the Java syntax.
 
We will be discussing issues concerning composite shapes in class and 
continuing on to the next lecture.
 
 
© 2017 by Stephen Wong