Add software design

based on CRC cards session with David S and Camille.