We consider the distributed computing framework of MapReduce, which consists\nof three phases, the Map phase, the Shuffle phase and the Reduce phase. For\nthis framework, we propose the use of binary matrices (with $0,1$ entries)\ncalled \\textit{computing matrices} to describe the map phase and the shuffle\nphase. Similar binary matrices were recently proposed for the coded caching\nframework. The structure of ones and zeroes in the binary computing matrix\ncaptures the map phase of the MapReduce framework. We present a new simple\ncoded data shuffling scheme for this binary matrix model, based on a\n\\textit{identity submatrix cover} of the computing matrix. This new coded\nshuffling scheme has in general a larger communication load than existing\nschemes, but has the advantage of less complexity overhead than the well-known\nearlier schemes in literature in terms of the file-splitting and associated\nindexing and coordination required. We also show that there exists a binary\nmatrix based distributed computing scheme with our new data-shuffling scheme\nwhich has strictly less than twice than the communication load of the known\noptimal scheme in literature. The structure of this new scheme enables it to be\napplied to the framework of MapReduce with stragglers also, in a\nstraightforward manner, borrowing its advantages and disadvantages from the\nno-straggler situation. Finally, using binary matrices derived from\ncombinatorial designs, we show specific classes of computing schemes with very\nlow \\textit{file complexity} (number of subfiles in the file), with marginally\nhigher communication load compared to the optimal scheme for equivalent\nparameters.\n