软件工程个人总结
一、学习和使用的新软件
Git
Git是一款免费的、开源的分布式版本控制系统,用于敏捷高效的处理任何或大或小的项目。Git是Linux Torvalds为了帮助管理Linux内核开发而开发的一个开源码的版本控制软件。Git 是用于 Linux内核开发的版本控制工具。与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的方式,不必服务器端软件支持(wingeddevil注:这得分是用什么样的服务端,使用hhtp协议或者git协议等不太一样。并且在push和pull的时候和服务器端还是有交互的。),使源代码的发布和交流极其方便。 Git 的速度很快,这对于诸如 Linux kernel 这样的大项目来说自然很重要。 Git 最为出色的是它的合并跟踪(merge tracing)能力。
二、学习和使用的新工具
Enterprise Architect
Enterprise Architect是一个完全的UML分析和设计工具,它能完成从需求收集经步骤分析、模型设计到测试和维护的整个软件开发过程。它基于多用户Windows平台的图形工具可以帮助您设计健全可维护的软件。除此,它还包含特性灵活的高品质文档输出。用户指南可以在线获取。我们用这个软件主要就是用来画用例图,流程图,以及画类图。
三、学习和掌握的新语言、新平台
SQL Server 2005
ASP
ASP是微软公司开发的代替CGI脚本程序的一种应用,它可以与数据库和其它程序进行交互,是一种简单方便的编程工具。ASP是一种服务器端脚本编写环境,可以用来创建和运行动态 页或web应用程序,ASP 页可以包含HTML标记、普通文本、脚本命令一COM组件等,利用ASP可以向 页添加交互式内容,也可以创建使用HTML 页作为用户界面的web应用程序。
四、统计一下,你在这软件工程实践中,完成了多少行的代码
由于此次的项目比较简单,所以完成的代码大概有七、八百行。
五、学习和掌握的新方法
通过一学期的软件工程的课程的学习,再加上做的项目,让我对一个软件的开发过程有了比较直观的了解,明白了开发一个项目的基本步骤是什么,一个项目应该如何开发等等。
总结与展望
一、记录在软件工程课程上的经验总结
通过上软件工程课,知道了做一个项目应该必须经过一定的步骤,少了每一步,可能都会给后面的进展带来很大的阻挠。
二、对于下一届的学弟学妹你有什么建议和告知呢/span>
现在的我深刻的感受到,我们这个专业的课程学习看起来并没有什么联系,但实际上,这些课程中的专业知识都是环环相扣的,所以以后的学弟学妹,一定要打好自己的专业知识基础,以免将来像我们一样,什么都学过,但什么都不精通,到时候又苦了自己啊!
三、分析一下自己所处的团队。软件工程实践是大学里少有的认真的团队协作经验。《构建之法》团队合作的阶段,你们团队经历过么后到达了哪一阶段/span>
我们团队的成员是一个宿舍里的,因为当时想的是大家总是在一起,这样讨论什么问题也会比较方便,不用像别的团队一样,总是找不齐人,可是,后来我们发现,在宿舍根本没办法讨论问题,因为影响的因素太多了,后来,我们就决定去自习室一起讨论项目,那样之后,我们的效率明显很高。对比了书上的团队合作的几个阶段,我们团队经过了萌芽阶段、磨合阶段,最后我觉得我们团队达到了规范阶段。
四、个性发挥,包括图文、照片和创意等
说实话,这门课程是我们这学期最忙的一个课程,作业也多,任务也多,可是这门课也正是让我们收获最多的一门课程。我相信,在这门课上学到的东西,以后会很有用处的!
对“软件工程第一次作业”的五个问题的重新回答
问题:
答:在经过一学期的软件工程课程的学习,和看了《构建之法》这本书之后,我自认为代码量和工程师的水平是线性的,因为一个好的软件工程师,他之所以被称为工程师,就说明他在软件编写方面已经有了一定的成就,而一个软件工程师基本都是从程序员发展而来的,程序员都是会有大量的代码基础的,并且邹欣老师也说了“当代码是在2,000行以下,程序员可以用 ‘写了再改’ 的蛮干方法,并且靠记忆力搞定一个程序,但是, 如果你的代码规模达到20,000行,你要用结构化编程(类,模块,API,细节隐藏,面向对象的其它方法,等)来保证程序不变成一团乱麻。”所以只有当自己的代码量达到了一定的高度,自然而然就会写出更好的程序,所以自己的水平就高了!
(2)我在看第十章《典型用户和场景》时,第二小节讲到了USE CASE 用例图,书中说了很多概念性的定义,但却没有具体的USE CASE用例图的画法,所以我想知道USE CASE用例图具体的定义形势以及画法到底是什么样的/span>
答:USE CASE 用例图虽然在课本中没有详细的说明,但老师上课的时候给我们讲的很详细,还讲了类图和顺序图,到现在也基本掌握了这几类图的画法了。
(3)书中第五章为我们软件团队的模式和开发流程,但我不明白团队模式和团队的开发流程有什么关系一种团队模式就有一种开发流程吗
答:
软件团队的模式包括以下几种:
(1)主治医师模式:一人为主,其他人为此人服务。
(2)明星模式:主治医师模式到达极致,一人的光芒掩盖所有人。
(3) 区模式:每个人参与自己感兴趣的项目,贡献力量,大部分人不拿 酬。
(4)业余剧团模式:在不同项目中每个人扮演着不同的角色,可能随着项目的改变,自己的角色也会发生变化。
(5)秘密团队模式:一些软件项目在秘密状态下进行,别人不知道他们具体在做什么。
(6)特工团队模式:有一些有特殊技能的专业人士组成的团队。
(7)交响乐团模式:人员工具齐全,准备充足的团队。
(8)爵士乐模式:相对自由,有风险,人少且不靠谱。
(9)功能团队模式:具备不同能力的同事们平等协作,共同完成一个功能。
(10)官僚模式:层层领导的团队模式。
团队的开发流程有:
(1)写了再改模式:和一窝蜂团队模式比较像。
(2)瀑布模型及其各种变形。
(3)RUP统一流程。
(4)老板驱动的流程。
(5)渐进交付的流程。
(6)TSP的原则。
至于团队模式和团队的开发模式的关系,我个人的理解是一群人在一起做软件开发,总是要一些方式方法。而这里团队模式就是这一群人的定性,团队的开发模式则是这群人使用的方法的定性。有了团队中人的定性,那么这些人所使用的方法不就是更好定义了吗且有了团队模式,有了开发流程,那么这个团队的工作效率也会很明显的提高的!
(4)在《用户体验》这一章中,说要情感设计,那么在设计一个程序的过程中,应该带入什么样的情感/span>
答:在我看来,程序设计是一个必须要带感情的过程,因为只有用心做出来的产品才会让顾客喜欢,当你在设计一个产品的某个功能时你应该先想想如果是自己使用,那么你会满意自己的设计吗会不会想“如果这个功能是那样的就好了”,当你这样想的时候你就是把自己放到使用者的位置上了,而不是一个设计者,那么这样你设计出来的产品才会被别人所接受和喜爱,所以我觉得软件工程是在设计一个车须的时候应该带入的就是“设身处地”的感情。
(5)在第十三章《软件测试》中,我看到说“有错不改“,为什么明明知道一个程序有Bug但却不改/span>
答:一个软件等到完全完善,里面至少得有好几百个bug,其中有些bug会在软件上市之前就改正好,而又的暂时未被发现的就会延续到下一个版本中再改正,但有些bug明明编程人员早已经发现了并且也有能力修复好它,但是在修复好这个bug之后后面可能会引发更多的bug,而修复这些bug的工作量是无法估计的,所以程序设计人员在这个bug没有什么大碍的情况下就不会去修复这个bug了。
文章知识点与官方知识档案匹配,可进一步学习相关知识Git技能树首页概览2989 人正在系统学习中 相关资源:Scrum敏捷软件开发_敏捷开发-专业指导文档类资源-CSDN文库
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!