103
社区成员
这个作业属于哪个课程 | 软件工程2022-F班 |
---|---|
这个作业要求在哪里 | 软件工程总结&个人技术博客 |
这个作业的目标 | 课程回顾与总结 |
其他参考文献 | 无 |
1.不同软件种类的比较
对于不同种类软件比较,个人认为并没有较为标准固定化的判别法则。可以根据不同的侧重或自己需求进行比较,比如常见的网页,APP比较,不同框架开发比较,服务内容比较,功能比较等。由此在往外延伸,细化。这样进行不同种类软件的比较会更合理。
2.自动化测试工具
对于这个问题,以前的回答是了解到了自动化测试框架可以用于自动克隆项目,编译项目,执行项目,评分,性能测试,生成CSV格式报表,查重等功能。但是这个学期有专门的一门课程学习,在这门课程中认识到了不同的测试工具,对于测试的了解也不止是之前的流程,其中细节也明确不少,如单元测试集成测试等。自动化测试工具的使用,不仅能检验软件功能,还能极大提升软件质量
3.商业价值与开源精神是否矛盾
并不相矛盾,正如以前说的有的软件是开源的有的并不是。但是两者都有着自己的商业考虑,都能产生商业价值。从开源方面来说,开源对于个人,企业来说帮助极大,成本很低,甚至没有,确能带来极大的效益。本身开源也可能是对于未来产品或者市场的布局,开源并不是直接等于免费,商业价值也不是直接以收费来衡量
4.对于一名工程师而言,究竟应该是更”专“一点好,还是更”广“一点好呢?
这个问题的回答我持以前的立场,个人认为还是专一点好。结合这个学期学习,为了实现某个功能,或者方便开发,都有专的身影。
5.项目/任务的大小应当由什么指标来决定?
对于这个问题在实践项目中深有体会,应该有其实现技术,功能量以及最后的实现功能来决定
需求阶段
最大收获肯定是运用NABCD模型进行分析。
设计阶段
是学会了利用APxure来进行原型设计,展示基本功能
实现阶段
有结对作业里面的VUE框架,UI界面的设计,比如世界地图的实现,以及ECHarts的使用。团队实践里面有新技术和开发软件Unity。
测试阶段
自动化工具的使用,基本功能之间不冲突实现
发布阶段
利用云服务器进行发布
个人项目阶段
第一次使用Git来管理自己的项目,对于项目代码等以前都是直接存在本地,随便存,现在利用Git来管理确实很方便,有利于交流。但是自己还是喜欢在本地自己折腾,错了或者试试效果可以开个模板慢慢来。但是这个习惯后面就很不好了。
结对项目阶段
两个人之间一起分析结对作业需求,与人交流能力提升不少。最大收获是原型与实现相分离。原型和实现两个部分的任务量分配,两个人很好了解到对方擅长的,自己挑选。对环境配置的要求问题也第一次出现,就比如自己是windows的,伙伴是Mac,两者之间会冲突。如何处理这样的冲突,收获不小。
团队项目阶段
首先是学习到新的技术和开发软件。Unity以及对功能实现的脚本编辑。也正如上面提到利用Git管理的好处也体现出来了,不断更新修改,大项目在一部分一部分本地来实现确实麻烦。团队成员之间的交流,任务分配,个人能力等每个方面影响在团结项目开发不断放大。对此受益匪浅。
目标1: 理解软件工程师的职业道德规范和实践要求,了解国情社情民情,理解软件产品对社会、健康文化等影响,树立积极向上的软件开发理念。 | 90 遵守代码规范,坚持了积极的开发理念 |
目标2: 掌握需求分析的全过程,能辨别客户表述的多样化要求,熟练使用需求表达工具,能够规范、准确地表达客户的需求,构建需求分析模型。 | 80 能基本使用原型工具,NABCD模型 |
目标3: 掌握软件开发的全过程,遵循体系结构设计方法和基本设计原则,通过正式的技术评审,完成从体系结构设计模型、数据设计模型和构件级设计模型,形成面向高效可靠的服务组件设计方案或软件系统设计方案。 | 80 基本遵循了规范 |
目标4: 能够执行从组件到软件系统的技术评测,具备设计模型的评判能力,具有创新设计意识,能够优选设计方案。 | 70 创新意识确实有欠缺 |
目标5: 遵循软件开发各阶段文档标准,采用规范的表达,掌握需求规格说明书、系统设计说明书、系统测试报告等文档撰写方法,具备与业界同行交流能力。 | 75 各阶段文档标准基本遵守,但是表达和撰写可能不太好 |
目标6: 具有良好的团队意识和合作技能,能够与其他成员开展有效的沟通和协作;能够组织、协调或指挥团队开展工作。 | 80 能和团队成员很好沟通交流协调,配合团队活动 |