Array Codes form a class of Error Correcting Codes which are specifically designed to deal with natural types of errors in communication devices which appear in clusters as opposite to randomly scattered within the string of data. The so--called B-Codes provide a model of Array Codes which can be described as codes on graphs and have the feature of being Maximum Distance Separating (MDS) codes. The graphical description allows for a simple analysis of error correcting algorithms. The purpose of this work is to provide additional families of MDS Array Codes which are build in connection to the so--called Perfect One--Factorization Conjecture in Graph Theory. An additional contribution of this work is to present constructions of MDS Array Codes which allow for simultaneous row and column error correction. We give linear algorithms for error correction and erasure recovery for the constructed codes. A real implementation of the algorithms in MatLab has been fully developed.