2.1. Software requirements