今天阅读了构建之法不小部分内容,由于是从前言开始读的,也发现了这本书和其他书的不同之处。其他书大概都是讲理论而构建之法则是通过人物来实现。学生们觉得软件工程特别乏味,很重要的原因就是教材知识干巴巴的讲述理论和原则,脱离了人,因此构建之法引入了四个人物,他们都是大学生研究生等。通过他们的商量和讨论来细化案例,进而更好理解。

      软件工程的学习一定要理论结合实践,切不能脱离实践学习理论,也不能脱离理论凭空实践,因为这样会在实践的时候把理论忘光了,而学习理论的时候因为没有实践而印象不深刻。软件工程的职业发展与瀑布流程相反,为维护阶段,稳定/发布阶段,是现阶段,设计阶段,需求分析。

      文中也举了很多例子说明理想的软件工程的师生关系是什么样的,其中有餐馆/食客,老板/雇员等,但是他们都很不贴切,直到教练学员的关系,要确定这个关系,首先要明确,是我们学生想提高自己的学习水平并且足够强烈,否则也不会花钱去锻炼,然后我们需要去付出努力和汗水,然后教练对我们进行批评和指导。教练的资源很多,有足够的理论知识,有学习和训练的完整方法,可以指出学员的进步和不足,教练给各个学员设计锻炼方式,回答疑问;再从学生(学员)方面来说,学生要去不断地写程序代码,不断地修bug,不断地做实验,看各种书籍,博客,定期汇报学习情况。仔细一想,用学员和教练的关系来比喻软件工程课程中师生关系再适合不过。

      我也仔细地看了给授课老师的建议,虽然和我关系不大,但是也能学习到一些内容。发现系主任的评分方式和书上一样,不可能全部及格,因为对优秀生很不公平。而采用负分制也是本书的建议之一。学习要循序渐进,学生没有写过真正的软件,也没有正经合作过,这是你让他们完成一个完整的项目是不可能的,因此急需要循序渐进,先自己练习个人项目,然后进行实践,不断地自我提高;然后进行两个人的项目,此时就需要初级的合作了,同时也锻炼交流能力。最后再进行团队项目来进行实战。同时我也很赞成书中的按贡献程度来给分,这样可以避免浑水摸鱼的情况,来让每个人都努力。而且我发现老师的方法是一个很好的扩展,不让非常好的同学一队,这样很公平。

      其中也多次提到了发表博客,我现在就特别有感受,发博客不是为了让别人看,而是为了记录自己的学习进度,自己忘了可以去查,虽然自己写的博客质量不是怎么好,但是还是用心去写,能得到博友们的评论更是激励我不断前行,坚持下去,不管怎么样。还有博友给我发消息请教问题,他们有的已经工作,有的还在上学,虽然自己能帮他们的微乎其微但还是非常高兴满足。