Various courses undertaken to gain the understanding of variuos software systems