Let U be a submodule of M, and let V be a submodule of U. Remember that M is V cross W for some W. Let T = U ∩ W. Let S satisfy U*S = M. We know that S and U are linearly independent, and U wholly contains V and T, hence both V and T are independent of S. Since V and W are independent, V and T are independent of each other. Thus V T and S are linearly independent submodules inside M.
If x is an element of M, It can be written as a+b, where a is in U and b is in S. Next write a as c+d, for some c in V and d in W. Then write d as e+f, for some e in U and f in S. In other words, a = c+e+f. Yet there is only one way to write a as components from U and S, namely a+0, hence f = 0, and d = e. Now d belongs to both U and W, so d belongs to T. Our arbitrary element x is equal to c+d+b, from V, T, and S respectively. Therefore M is the direct product of V T and S.
If x is an element of U, write it as c+d+b, as above. Since U and S are independent, b = 0, and x = c+d, from V and T respectively. Since U is spanned by independent modules V and T, it is equal to V*T. Thus V is a summand of U. Since V was arbitrary, U is a semisimple module. Since U is arbitrary, every submodule of M is semisimple.
The quotient of a semisimple module is semisimple. Let V be a submodule of the quotient and let U be the preimage of V. Since U is semisimple, write U as K*S, where K is the kernel of the homomorphism. Then let T be the summand of U, whence M = K*S*T. Let W be the image of T*K. Now the cosets of K are uniquely represented as sums of elements from S and T. Yet the cosets of K are precisely the elements of the quotient module, and the coset representatives in S and T correspond to the elements in V and W respectively. Thus the quotient is V*W, and is semisimple.
The converse is not true, even for commutative rings. Let M = Zp2, with kernel Zp and quotient Zp. Both kernel and quotient are simple, but M is not semisimple.