Dear Seasong,
this is indeed not what you would expect at first. When you execute:
t1 =.; t2 =.;
acceleration =
Piecewise[{{t, 0 <= t < t1}, {0.5 t, t1 < t <= t1 + t2}}]
velocity = Integrate[acceleration, t]
you get

You see that the integral was evaluated for the three conditions individually. If you calculate
D[velocity, t]
you get the correct function of the acceleration, so that is ok. At the discontinuities there is obviously a problem with the derivative. Now if you run
t1 = 1; t2 = 3; Plot[NIntegrate[acceleration, {t, 0., tu}], {tu, 0, 4}]
you get

I guess that the problem is that when you execute the Integrate you have t1 and t2 not set to fixed values. If you run:
t1 = 1; t2 = 3;
acceleration =
Piecewise[{{t, 0 <= t < t1}, {0.5 t, t1 < t <= t1 + t2}}]
velocity = Integrate[acceleration, t]
you get

which gives the correct continuous plot.
Cheers,
Marco