关于计算机科学的一些边缘科学我想谈一谈软件工程技术,对于一个企业,推出软件是不是就是几个程序员坐在一起,你写一段程序,我写一段程序呢?显然不是。软件工程是典型的计算机科学和数学,管理科学,心理学,社会学等学科的综合。它使我们这些搞理论和技术的人进入了一个社会。你所要考虑的不仅仅是程序的优劣,更应该考虑程序与软件的区别,软件与软件产品的区别,软件软件产品的市场前景,如何去更好的与人交流。这方面我还在学习阶段,以后这方面再写文章吧,先推荐给大家几本书:畅销20年不衰的《人月神话》(清华大学中文版,中国电力出版社影印版),《软件工程-实践者研究的方法》(机械工业出版社译本),《人件》(据说每一位微软公司的部门经理都读过这本书,推荐老总们和想当老总的同学都看看,了解一下什么是软件企业中的人)以及微软公司的《软件开发的科学与艺术》和《软件企业的管理与文化》(研究软件企业的制胜之道当然要研究微软的成功经验了!)
看完上面的书,结合自己做的一些团队项目,我的一些比较深的体会有这么几点:
1.How important a plan is for a project development.
2.How to communicate with your team members in a more
effective way.
3.How to solve unexpected situations.
4.The importance of unification.
5.The importance of doing what you should do.
6.The importance of designing before programming.
7.The importance of management.
8.The importance of thinking what your teammates think.
在软件开发过程中我们应当具有以下能力:
1.Like it if you would like to do it.
We believe that your attitude toward your work will definitely
makes great effect on the project.
2.The spirit of group working.
Take myself as an example. I am just a part of the team, just
a little part. You must make it clear that you are just a
member of the team, but your effort will change your project a
lot.
3.Passion
With passion, you can do your job in a more effective way.
4.The ability of solving unexpected problems.
5.Learning New things in a very short time
It is the basic requirement for we computer major to learn new
technology.
6.Creativity
The tools are changing. As for us, what's more important is to
use these new tools and technology to enable people and
businesses throughout the world to realize their full
potential.
7.The ability to do your work independently.
Every member has his own business. In a team, your work cannot
be replaced by others' so you must do your business well in
order to assure the project development process.
团队开发当中的一些具体精神应当有:
<1> Success and Failure is not one person's effect.
Your team's success is not the contribution of a single
person. Success contributes to the whole team. If your project
failed, it also is not just because of one person's poor work.
It is also your failure.
<2> Learn from each other.
Every person has his own specialty. Even Bill Gates cannot
know all the things about software development. We often learn
from each other and gains a lot. The old saying goes like
this:
There must be one out of three who can be your teacher. In our
team we say: Every person is your teacher.
<3> Help those who have problems. Use the group working spirit
to overcome all the difficulties.
There is no need to explain it. As the old saying: Two heads
are better than one. We always find it difficult to solve all
the problems just by oneself.
<4> Praise them who have got some improvement.
In our team, I always praise the members when they have
finished something or just solved one problem, and they think
that it is interesting and gains a lot. Because they can see
their efforts.
<5> Say something if needed.
这个是一次软件大赛当中的体会,和大家也做个交流,不过不能再说了,软件工程学说起来写本2000页的书一点也不多,恕我才疏学浅,不再做过多论述了。