• 个人作业——软件工程实践总结&个人技术博客


    这个作业属于哪个课程 https://edu.cnblogs.com/campus/fzu/2020SpringW/
    这个作业要求在哪里 https://edu.cnblogs.com/campus/fzu/2020SpringW/homework/10836
    这个作业的目标 个人总结+技术博客
    作业正文 https://www.cnblogs.com/Zhifeng-Shen/p/13123519.html
    其他参考文献 《构建之法》

    一、回望

    (1)对比开篇博客你对课程目标和期待,“希望通过实践锻炼,增强软件工程专业的能力和就业竞争力”,对比目前的所学所练所得,在哪些方面达到了你的期待和目标,哪些方面还存在哪些不足,为什么?

    ​ 主要达成的目标有:

    • 团队协作能力

    • 熟悉基于Spring Boot项目开发

    • 软件工程项开发流程

    • 文档设计和编写

    • 软件测试

      不足之处:

    • 对于Spring Cloud了解较少。由于学习时间有限,且Spring Cloud内容较多,因此掌握的不是好。基本处于入门状态。

    • 对于软件项目管理能力还有待提升。由于第一次开展软件工程活动,许多方面经验欠缺。

    (2)你在第一次作业的个人简历中制定的这门课程结束后,你预期你将增长的能力、技术、技能;和你针对你的目标绘制的学习路线图。对比当前你的所学所得,你达到了当时的预期值吗?

    ​ 对比之前的路线:

    现在掌握其实远远没有达到预期,学习到的更多是关于Web API开发方面的内容,目前学习(掌握程度不是很高)到技术、软件、理论、或者框架有:Spring MVCMybatisMavenSpring BootStruts 2RedisdockerSpring SecuritySpring cloud gatwayEurekaRESTSpring Session

    (3)请总结这门课程的实践总结和给你带来的提升,包括以下内容:

    二、团队总结

    软件工程实践是大学里少有的认真的团队协作经验。《构建之法》上说团队的发展有几个阶段,你的团队都经历过么,最后到达了“创造”阶段了么?(参考《构建执法》第17章 人、绩效和职业道德)
    你在团队中担任了什么角色?你是否完成了该角色的任务?现在你觉得你适合该角色吗?

    1、 如果你是组长,你觉得你有哪些地方做的不够好的?有哪些地方做的好的?你觉得该怎么改进?(详细描述)

    ​ 主要是在团队的任务配过程积极性较差,需要人员被动分配任务才能使得团队工作起来。总体上来讲,团队对于任务交付能力是可以的。要提高积极性需要每个人重视起来,或者依靠一些奖励制度。

    2、 如果你是组员,你觉得你的组长分工安排是否合理?你对组长的选举有什么建议?

    ​ 组长分配的任务相对合理,根据队员的能力进行分配。对于组长的选举主要得靠个人的主观能动性,对于被动选举出来的组长可能积极性会受到一定影响。

    3、 你这学期经历过换组吗?你对换组有哪些看法?谈谈你在这个过程中的感受。

    	没有经历过换组。其实我觉换组其实可以通过团队历次累计贡献度最低者决定被换出的人,一方面可以提高每个人的积极性,另一方面也接近于现实情况。
    

    4、 分析一下自己所处的团队。软件工程实践是大学里少有的认真的团队协作经验。《构建之法》上说团队的发展有几个阶段,你的团队都经历过么,最后到达了“创造”阶段了么?(参考《构建之法》第17章 人、绩效和职业道德)

    ​ 我们团队应该现在处于磨合阶段。总体情况,大部分人都都能按部就班的完成任务,但是完成任务体现出的积极性各有不同,同时团队时常需要有人推动才能使得任务开始。

    三、人月神话

    1、怎样证明你学会了软件工程?以下要求你们的团队达到了哪几个?请在随笔中用数据证明上述内容或侧重选择之一。

        (1)研发出符合用户需求的软件
    
        必须公开发布,有实际的用户,一定的用户量和持续使用量 (3 天后能保持10 - 100个用户);而不是: 做没有用户使用的软件
        
        (2)通过一系列工具,流程,团队合作,能够在预计的时间内发布 “足够好” 的软件
        
        有项目规划/需求/设计/实现/发布/维护,有定时的进度发布 ; 而不是: 通过临时熬夜,胡乱拼凑,大牛一人代劳,延迟交付等方式糊弄
        
        (3)并且通过数据展现软件是可以维护和继续发展的。
        
        而不是 找不到源代码,代码无文档,代码不能编译,没有task/bug 等项目的发展资料
    
    • 通过一系列工具,流程,团队合作,能够在预计的时间内发布 “足够好” 的软件。

      无论是alpha阶段还是beta阶段,使用leangoo进行项目任务管理,通过燃尽图可以监控项目进展。



    同时每个成员有具体的任务分配以及时间规定:

    代码开发成员积极参与,代码提交量有保障(第一张图为alpha阶段和beta前端与后端,第二张图为beta后端):

    • 软件是可以维护和继续发展的。

      ​ 软件项目模块明确,同时各模块结构具有相同的规范。

    代码注释完善,同时在代码规范插件的检查下。

    具有相应的设计文档说明以及相关开发流程视频:




    2、写下属于你自己的人月神话——个人或结对或团队项目实践中的经验总结+实例/例证结合的分析,文字部分字数要求在100字以上,可以使用你自己喜欢的方式表达(如图文结合、视频)..

    • 每项任务主体必须明确,没有二义性,且有相应的交付结果定义。实施者不应该对某个任务不应该产生疑惑,同时所做工作应该围绕任务主题进行。结果定义必须明确,而不是让任务实施者“天马行空”,或者应没有因为某些不明确的细节导致进度拖延。 这次开发过程出现一个功能模块的某一部分开发和原型展示逻辑差异很大,或者说是原型没有的东西,可能当时成员没有按原型所展示的业务逻辑进行设计,而凭自己想法进行自行设计和实现,由于后端并没有提供相应的接口(非文档的规定接口),因此在设计和实现这个意外的功能,不仅难度加大同时带不必要的麻烦。
    • 在一个冲刺过程中,变化最好能服从于约定。在紧锣密鼓开发活动,变化应该尽量少出现,若出现了尽量服从约定。这次开发过程,前端与后端交互媒介在于接口,因此对接口修改往往是要两边付出一定的代价,因此因尽量按照相关接口文档设计进行协调。

    四、建议

    对下一届同学的建议,或者对于开学初的你,对于大一的你,对于开学初的我,你有什么想建议和告知的呢?请写下你对后来人的期许。

    ​ 在软工实践寒假之前最好进行一些开发知识和项目积累。凡是预则立,不大没有准备的仗。可以预先预览往届的实践过程,进行一定的预先准备。团队合作中应该让每人行动起来,不能坐以待毙。项目设计应循序渐进,不要把步子迈的太大,同时也需要预先准备。项目管理应该要规范化,拒绝口头的任务分配,每个任务应该有相应记录跟踪。

    对于软工实践课程,你有哪些建议?

    ​ 可以考虑增设一个培训环节,通过老师、助教或者同学帮助一些基础不好或者开发经验不足的同学,学习一些基础的知识和锻炼相关能力。

    对于助教工作,你有哪些建议?

    ​ 可以建立一个助教、老师、团队组长的交流,便于集中解决个团队的问题,同时组长传达问题到自己团队中。

    对于自己今后,你有哪些建言?

    ​ 早睡早起。

    五、个人技术总结

    Spring Cloud微服务调用Feign初探

    概述:Spring Cloud Feign是声明式、模块化的Http客户端,可以快捷优雅的调用HTTP接口。由于用到了需要调用其他的微服务,因此需要通过HTTP方式进行调用。之前试过了RestTemplate,感觉用起来不太方便,因此选择了Fegin。这次技术难点主要涉及到接口如何声明、以及在调用过程如何传递Cookies,设置Header。

  • 相关阅读:
    第一次冲刺6
    人机交互课下作业
    第一次冲刺5
    第一次冲刺4
    第一次冲刺3
    第一次冲刺2
    第一次冲刺
    典型用户分析
    掌握 需求过程阅读笔记02
    掌握 需求过程阅读笔记01
  • 原文地址:https://www.cnblogs.com/Zhifeng-Shen/p/13123519.html
Copyright © 2020-2023  润新知