程序设计阶段的主要任务是什么?