zoukankan      html  css  js  c++  java
  • 软件工程-构建之法 学期总结

    一、翻译
    1、软件工程师是领导项目团队做软件需求分析,软件说明书,软件设计,开发,测试和软件运行与维护的高薪并收人尊重的职业。根据对健康的承诺,安全和公众利益,软件工程师应该遵守的一些职业道德:
    (1)公开---软件工程师应该与公共利益相一致。
    (2)客户和雇主---软件工程师应该为自己客户利益最大化,并且保证雇主符合公众利益。
    (3)产品---软件工程师应该尽可能的确保他们的产品和相关的修改符合最高专业标准。
    (4)判断---软件工程师应保持其完整性和独立性在专业判断方面。
    (5)管理---软件工程管理者和领导者应该制定和提出一个道德的方法,以管理软件开发和维护。
    (6)专业---软件工程师应该提前保持行业的完整性和声誉在公众利益方面。
    (7)同事---软件工程师应该是公平和支持他们的同事。
    (8)自学---软件工程师应该参与终身学习,并对其专业实践,并促进职业道德。


    二、目前的学习状况提出一些问题

    现在结束软件工程课程了,大家是不是可以回答这些问题了,请在本次作业中一一回答。

    我的第一篇对软件工程的认识:http://www.cnblogs.com/chengxs/p/5248956.html

    针对认识和疑问:
    1、的确在软件工程课上你不是一个人战斗,是一个团队在战斗。
    2、之前一直在用ADT,够来想换成AS,电脑上尝试换了2次还是进去了,输出Helloworld,就提示错误,在网上找了别人技术博客还是没有能解决,所以自己还是在使用ADT来编Android。
    3、我们对一个即将自己开发的软件,其前台和后端的开发与维护,我觉得如果是我们自己每一个人自己搭建和维护。这个前台的实现还是容易实现,在本地测试可以通过和运行,在服务器上跑就出现了问题,现在在学习如何搭建服务器环境,以及把自己写的东西放到服务器,以及日常维护。自己搭建的那个虚拟服务器,数据库部分提示错误,自己在找原因,在学习。


    三、个人总结
          首先谢谢让我们尝试到软件工程的课程改革,我之前一直以为软件工程会像之前学习的现代企业管理一样,课程主要先由老师把基础的概念知识点讲一遍,然后老师就开始讲案例,然后就结束了课程,最后自己就觉得现代企业管理在自己的脑海里留下的只是耳熟能详的管理模式。
          但是在软件工程这门课程中,我知道这是一门管理软件整个开发过程。听以前的学长说,他们学习软件工程这门课程时,老师在上面从需求分析,然后是软件设计,编码实现,软件测试,软件交付,软件维护。。。,然后在课程之后有考试,考试之前老师给我们化一下范围,然后学生回去复习重点知识,考试还是比较容易过得,但是考完试之后,还是对软件工程中的各项具体怎么去实施还是只是停留在说,而不会去做,怎么做,做什么。
          我们上课的第一天时候老师就说今年我们学校软件工程这门课程改革,自己还是想一门考试课能怎么改,还不是要以最后的考试成绩来决定自己的最终成绩,但是知道了整个改革蓝图就知道这个软件工程成为了学生才是课程的主题,然后开始了自己要写博客,自己觉得这个自己在大学里一个很好的习惯,写技术博客,写技术分享,觉得非常的赞,不限制你完成需求的使用的语言,使用你自己熟悉的语言完成项目,同时可以在自己的熟悉语言上更上一层楼。总结一下自己这一个学期对软件工程--构建之法的感想:

    一、软件工程这课其实很有趣
          个人在大学里上课总是这样的规律,一门新的课程,第一次上课感觉兴趣不错,告诉自己要好好学习,然后在一次次课程中自己慢慢就不想听老师讲课,然后快到复习的时候,自己就会变身超人一样,自己看课本,自己总结复习资料,自己从基本概念到计算分析理解,出题只要在以往的正常范围内感觉自己一般能考的不错。如果题目风格变了,可能就会比较差了。每一次的作业,每一次的项目,自己总会想去思考使用什么语言编写,怎么实现逻辑功能,然后自己在编写中发现自己出bug的地方自己还会查阅图书馆的相关编程代码,有一次自己在发现自己代码写的有的冗余时候,自己发现可以考虑更优的数据结构,代码量就下来了。而且时间复杂度也小了很多,自己在这个过程自己的慢慢的学会了自己编程欠缺的地方,自己不断学习新的知识,不断总结自己学习东西写成博客,最后把软件写出来了发现软件开发其实很有趣。

    二、软件工程不是一门只要敲代码的课程
         软件工程,一个工程并不是靠一个人能独立完成,而是一个团队相互协作和相互搭配,完成软件开发与维护。软件工程是把软件开发整个流程中的过程管理,不仅仅是把代码写完了实现,个人觉得更重要是软件设计阶段,软件设计阶段是把需求具体化,怎么实现,采用什么的开发模式,团队采用什么模式,测试时候采用什么的测试案例,软件编程语言选用,完成软件设计文档,画好E-R图,画好流程图,设计好数据库部分。在接下来的代码实现部分,同时不是把代码写完了就ok,还有写开发文档,遇到的错误,错误的解决办法,同时有工程模块跟进速度,工程完成比例,每日代码量。接下来的软件测试,需要我们在确定代码实现部分的语法,词法,语义错误。软件测试想好测试案例,以及测试的方式,采用黑盒测试和白盒测试。

    三、软件工程锻炼团队协作能力
          之前自己一直是个人项目小作业,自己总是可以一个人决定采用什么语言,采用什么方式进行开发,但是最后一个项目作业就会出现各种问题,比如需求分析阶段,团队成员有时想的需求合理,但是他没有考虑到怎么进行逻辑实现,比如可以把游戏平台开发成一个即时通信平台,以及加上网页搜索功能,加上定位功能。。。。。。然后好好的一个项目经过大家这么一说,感觉这个到底是一个项目,需求变得越来越复杂,不清晰,不明确。单是作为一个团队队长就需要把不相关的部分否认掉,而且要把握住项目的核心,不要偏离具体的项目太多。同时你要把项目分工确定,谁擅长什么,就让他干相应的工作部分,而不是一个部分大家一起做,这样会造成这个部分还是某几个做,其他人在休息,没有充分利用人员特点,会造成一个项目拖得很久,分工重要,一旦你负责的出问题,就可以揪其根源,找到错误地方,并且能很快想办法解决错误。这样不至于一出现问题,大家是一起做这个部分,大家都相互推诿,说我只是写了一小段代码,我也不知道其他人写了那部分,找错误就会花费很长时间,然后感觉整个项目一旦出点问题,内部矛盾会变大,而且没有落实到具体到人,容易误解别人,错怪别人。

  • 相关阅读:
    Struts2SpringHibernate整合示例,一个HelloWorld版的在线书店(项目源码+详尽注释+单元测试)
    Java实现蓝桥杯勇者斗恶龙
    Java实现 LeetCode 226 翻转二叉树
    Java实现 LeetCode 226 翻转二叉树
    Java实现 LeetCode 226 翻转二叉树
    Java实现 LeetCode 225 用队列实现栈
    Java实现 LeetCode 225 用队列实现栈
    Java实现 LeetCode 225 用队列实现栈
    Java实现 LeetCode 224 基本计算器
    Java实现 LeetCode 224 基本计算器
  • 原文地址:https://www.cnblogs.com/chengxs/p/5558222.html
Copyright © 2011-2022 走看看