RowReduce
produces the reduced row echelon form, which means pivots will be 1; this happens by dividing whatever had been in a pivot position by itself. Also it zeroes entries above pivots.
I cannot say what the textbook might be doing. You can get something similar using LUDecomposition
.
In[3]:= matA = {{1, 1, 1, 1}, {2, -1, 2, 1}, {1, 2, 1, a}};
In[14]:= Quiet[lu = LUDecomposition[matA][[1]]]
Out[14]= {{1, 1, 1, 1}, {2, -3, 0, -1}, {1, -(1/3), 0, -(4/3) + a}}
In[15]:= u = lu*Normal[SparseArray[{i_, j_} /; j >= i -> 1, {3, 4}]]
Out[15]= {{1, 1, 1, 1}, {0, -3, 0, -1}, {0, 0, 0, -(4/3) + a}}
To repeat myself, put needed code in the question. Only attach a notebook if the code is too large.