• 201771010131-王之泰 实验一 软件工程准备—<通读《现代软件工程—构建之法》后所思所想>周学习总结


    项目 内容
    课程班级博客链接 https://edu.cnblogs.com/campus/xbsf/nwnu2020SE
    作业要求链接 https://www.cnblogs.com/nwnu-daizh/p/12369881.html
    作业学习目标 学会如何高效提问,并拟定3个准备从课程学习中找到答案的问题,以写博客形式记录,博客用Markdown排版。
    本作业在哪些方面帮助我实现学习目标 知识领悟方面,专业知识方面,技能实践方面
    作业正文 1)学习博客园软件开发者学习社区使用技巧和经验;2)了解Github的基本操作
    作业参考文献 邹欣. 构建之法:现代软件工程[M]. 人民邮电出版社, 2014.

    在读完娄老师的如何提问这篇博客后,我渐渐对提问这件事有了很多的感触,一个人提出的问题不仅可以反映出这个人知识的深浅,更能够体现出这个人思维的深度。在我们平时学习生活中提问的同学很少,即使是问,也大多是些很容易就能找到答案的简单问题。不懂就要问的精神固然值得推崇,但不动脑筋的提问,一出现问题就问,就有些不合适了。而且作为当代大学生,所以我觉得除了具有独立思考的能力之外,还应该学会如何高效提问。

    因为专业是网络,所以平时学习的方向大多与之相关,在软件设计方面涉及较少,但读了《构建之法——现代软件工程》这本书之后,很大程度上开拓了我的视野。让我意识到,不管是网络,物联网还是软件工程都是息息相关的。

    读完邹欣老师所著的《构建之法——现代软件工程》这本书之后,引起了我的三个问题

    涉及书中内容较多,引用所占博客内容篇幅较长,给出问题出处索引,此处不再具体引用

    • 1、用户需求是无限制扩增的,但是程序乃至软件的功能不可能是无限的,该如何把握好这其中的度?
      • (书中第一章1.1节第三段,第八章8.3节)
    • 2、项目管理在软件工程中极其重要,那么项目管理的核心又是什么,在培养这个能力的时候该着重抓住哪几点提升?
      • (书中11章11.5-11.6节)
    • 3、团队合作的效率固然是非常高的,但是一个心不齐的团队的效率,是远远不如个人效率的,所谓“人心齐,泰山移”那么该如何让整个团队的目标一致,配合有序最终完成一个高效率的项目乃至软件开发呢?我想这也是我在本学期乃至以后的学习当中需要去探索的一个问题的答案。
      • (书中第五章5.1-5.3节,第9章,9.4节)

    就第一个问题

    这个问题是我在读到《构建之法——现代软件工程》这本书的第一章时,阿超给儿子的学校做了一个自动出题程序—>应用软件—>工程—>软件服务,在这里我个人的想法是用户的需求是无底线的,是完美的,有的时候甚至是“不可理喻的”,这就影响到了我们在软件开发过程中的需求分析,要知道需求分析的工程量是非常大的,其周期几乎占了软件开发生命周期的一半,而且开发人员的时间和能力也是非常有限的,该如何去把握其中的一个度,我觉得这应该是我在以后的学习乃至工作当中需要探索的答案

    就第二个问题

    我之前听过一位做网络的老师的讲座,他这样说道:

    项目管理应该变成你的血液和骨头,一种潜意识,在思考问题时,能天然的在项目的角度去思考问题,就像你天然的从程序的角度去思考问题;当你走进工作岗位时,你会发现,没有一个项目是因为技术而失败的,所有的项目都是项目管理的失败,技术可能会有难点突破不了,是可以通过项目管理去化解的,所有失败的项目都是项目管理的问题。

    -- 引用自《从安全思维谈到心思的修炼

    我就想能力这种东西是很虚幻又很实在的,而且一个人的思维方式也是很难变化的,因为他从小到大已经培养出了自己的一套思维方式,或好或坏。让其去培养或者转换或者兼并另一种思维这其实是一件很难的事情

    就第三个问题

    就我个人的理解,多个人组合起来为达到同一个目标而做同一件事或者不同的事,这几个人就能够被称之为一个团队。恰好本门课程是基于团队项目驱动的方式来进行的,我想在本学期的软件工程课学习中可以很好的探索这个问题的答案。

    综上

    我提出这三个问题的本质原因都是书中作者所著内容给了我很大的启发与感受,我觉得这三个问题的答案在未来的学习生活以及工作当中具有很高的探索意义。

    软件开发五性

    • 复杂性
    • 不可见性
    • 易变性
    • 服从性
    • 非连续性

    分析设计的方法

    • 以文字为主的文档,
      • Word、PowerPoint 文档。正如我们在需求分析和场景设计中看到的那样。
    • 用图形为主构造的模型,
      • Mind Map (思维导图),ERD, DFD, UML 的各种图,甚至包括Flow Chart 流程图
    • 用数学语言的描述,
      • Vienna Development Method
    • 用类自然语言+代码构造的描述,
      • Literate Programming
    • 源代码加注释也能够描述
  • 相关阅读:
    从killchain的角度检测APT攻击
    挖洞实战之信息泄露与前端加密
    浅析MySQL恶意服务器读取文件原理
    MySQL决胜秋招Section
    MySQL窗口函数
    MySQL集合运算
    Chrome 插件神仙网站推荐 !直接就能下,2022年最新!
    Clickhouse分桶聚合后填充零值问题
    深入理解C#笔记
    JavaCV音视频开发宝典:视频转码和转封装有什么区别?使用rtsp拉流转推到rtmp案例来讲一下转码和转封装实现的区别
  • 原文地址:https://www.cnblogs.com/hackerZT-7/p/12373142.html
Copyright © 2020-2023  润新知