Software engineers shall commit themselves to making the analysis, specification, design, development, testing and maintenance of software a beneficial and respected profession. In accordance with their commitment to the health, safety and welfare of the public, software engineers shall adhere to the following Eight Principles:
译文:软件工程师应当承诺做出分析,规范,设计、开发、测试和维护,是一个有益的和受人尊敬的职业。按照他们承诺的健康,安全和福利,软件工程师应当遵守下列八个原则
1. PUBLIC - Software engineers shall act consistently with the public interest.
译文:公众—软件工程师应当维护公众的利益。
2. CLIENT AND EMPLOYER - Software engineers shall act in a manner that is in the best interests of their client and employer consistent with the public interest.
译文:客户和雇主—软件工程师应当与客户和雇主的利益最大化的方向行动
3. PRODUCT - Software engineers shall ensure that their products and related modifications meet the highest professional standards possible.、
译文:产品——软件工程师应按照最高的专业标准制作产品和修改
4. JUDGMENT - Software engineers shall maintain integrity and independence in their professional judgment.
译文: 判断—软件工程师应当具备完整而又独立的判断。
5. MANAGEMENT - Software engineering managers and leaders shall subscribe to and promote an ethical approach to the management of software development and maintenance.
译文:管理—软件工程项目的工程管理者和领导者应当提倡和促进关于道德的软件开发和维护。
6. PROFESSION - Software engineers shall advance the integrity and reputation of the profession consistent with the public interest.
译文:职业—软件工程师应讲诚信和声誉符合公众。
7. COLLEAGUES - Software engineers shall be fair to and supportive of their colleagues.
译文:同事—软件工程师应平等和支持他们自己的同事。
8. SELF - Software engineers shall participate in lifelong learning regarding the practice of their profession and shall promote an ethical approach to the practice of the profession.
译文:自我—软件工程师应当终身学习关于职业的知识,在工作中遵循道德准则。
二、个人总结
经历了这个一个学期,软件工程真的是一门实践性很强的学科,单纯从课堂和书本上学习是远远不够的,必须在实践中学会应用软件工程。
从一开始的个人编程(小学生四则运算、单词统计程序),结对编程(黄金点游戏),到最后的团队编程(俄罗斯方块团队项目)。让一个人从独立→结对→团队的过程经历,让我的学会到更多。以前总是喜欢自己一个人思考,自己一个人编程,总是不喜欢有人在旁边盯着看,或者指指点点的。到了结队编程之后,每次都要和队员面对同一台电脑,使用同一个键盘,慢慢的自己改掉了这个习惯,结对编程的过程也是一个互相督促的过程,每个人的一举一动都在别人的视线之内,所有的想法都要受到对方的评价,也让自己认真的去完成项目,也和队员经常的交流,也改正了代码的不规范行为。结队编程过后没多久,又来到了团队项目,团队都有一个共同的特点,那就是团队有一致的集体目标,团队要一起完成这目标。团队成员有各自的分工,互相依赖合作,共同完成任务。这促使了团队里面每个成员都有了一致的目标,使每个成员都能很好的融入这个团队,为这个团队做出贡献。
课堂上的理论知识是远远不够的,还需要自己去动手,去实践。
软件开发团队中,技术不是万能的,但没有技术是万万不能的!在技术型团队中,技术与人品同等重要。在软件项目团队中,技术水平是受人重视和尊重的重要砝码。无论你是做管理、系统分析、设计、编码,还是产品管理、测试、文档、实施、维护,多少你都要有技术基础。心态有多开放,视野就有多开阔。不要抱着自己的技术和成果,等到它们都已经过时变成垃圾了,才拿出来丢人现眼。请及时发布自己的研究成果:开发的产品、有创意的设计或代码,公布出来让大家交流或者使用,你的成果才有进化和升华的机会。还有要养成总结与反思的习惯,并有意识地提炼日常工作成果,形成自己的个人源码库、解决某类问题的通用系统体系结构、甚至进化为框架。众所周知,对软件开发人员而言,有、无经验的一个显著区别是:无经验者完成任何任务时都从头开始,而有经验者往往通过重组自己的可复用模块、类库来解决问题(其实这个结论不应该被局限在软件开发领域、可以延伸到很多方面)。这并不是说,所有可复用的东西都必须自己实现,别人成熟的通过测试的成果也可以收集、整理、集成到自己的知识库中。但是,最好还是自己实现,这样没有知识产权、版权等问题,关键是自己实现后能真正掌握这个知识点,拥有这个技能。
在学习软件工程这个学期里,自己的付出也得到回报。在学期末,得到了老师嘉奖的黄T恤。这学期的软件工程课,特别感谢周筠老师、刘乾助教、郑蕊助教对我们的帮助,还时刻关注着我们的学习进度与状态
三、课程建议
1.课堂上讲解理论知识总是让人提不起劲的,或许可以适当的播放一些视频了解软件开发的流水线。
2.每一次的作业可以不一样,提供出比较多的项目让学生自己去选择自己能完成的项目。这样或许会更好的让学生积极的去完成,而不是去抄袭别的同学的成果。
3.每次作业结束之后,挑选一些做得比较好的同学,在课堂上讲解他们是怎么样完成这个项目的,还有遇到的问题。
4.师生互动,一同学习,一起进步。课堂上应该多一些互动,拉近距离。