In recent years there has been a growing attention towards use of solar energy. Advantages of photovoltaic (PV) systems employed for harnessing solar energy are reduction of greenhouse gas emission, low maintenance costs, fewer limitations with regard to site of installation and absence of mechanical noise arising from moving parts. However, PV systems suffer from relatively low conversion efficiency. Therefore, maximum power point tracking (MPPT) for the solar array is essential in a PV system. The nonlinear behaviour of PV systems as well as variations of the maximum power point with solar irradiance level and temperature complicates the tracking of the maximum power point. This paper reviews various MPPT methods based on three categories: offline, online and hybrid methods. Design of a PV system in a encoding environment has also been reviewed here. Furthermore, different MPPT methods are discussed in terms of the dynamic response of the PV system to variations in temperature and irradiance, attainable efficiency, and implementation considerations.