Modify program architecture