程序由哪三部分组成