connected software systems