Development of a software framework for data assimilation and its applications for streamflow forecasting in Japan