第一章 概论

1、什么是程序?

答:在学习软件工程导论前,我们已经学习了一些计算机语言和数据结构这样的课程,并深刻的知道“程序=数据结构+算法”,但在学习中还是会产生如书中1.1讲所提到的那些疑问,二叉树的遍历算法有什么实际用处?大多数的算法都已经实现,我们只要调用即可,那学习数据结构有什么用呢?一个程序需要后台维护,那团队中新加入的成员就要读懂过去的程序并进行改进,程序到底是什么?仔细阅读过第一章的内容之后,我明白了这样两个推论,“软件=程序+软件工程”、“软件企业=软件+商业模式”。即,程序是基本功,但在算法和数据结构之上,软件工程决定了软件的质量;商业模式决定了一个软件企业的成败。程序是为实现特定目标或解决特定问题而用计算机语言编写的命令序列的集合,是为实现预期目的而进行操作的一系列语句和指令。如果要让这个程序货起来,就要进入到软件工程的阶段,解决各个时期的各种问题。

2、什么是软件工程?

答:软件可以说是人类创造的最复杂的系统类型,软件工程师能看到源代码,但是源代码不是软件本身,软件看上去很容易修改,软件不能独立存在,他总是要运行在硬件上面,人们比较容易理解连续的系统:增加输入,就能看到相应输出的增加。有许多不同的程序设计语言、软件工具和软件开发平台,存在许多不同的软件开发流程。。。那么软件工程到底是什么?1.2中有提到,软件工程是把系统的、有序的、可量化的方法应用到软件的开发、运营和维护的过程中。查阅资料后了解到,它涉及程序设计语言、数据库、软件开发工具、系统平台、标准、设计模式等方面。在现代社会中,软件应用于多个方面。典型的软件有电子邮箱、嵌入式系统、人机界面、操作系统、编辑器、数据库、游戏等。同时,各个行业几乎都有计算机软件的应用,如工业、农业、银行、航空、政府部门等。这些应用促进了经济和社会的发展,也提高了工作效率和生活效率 。

3、软件工程与计算机科学有什么样的关系?

答:书中的概括,如表格

计算机科学 软件工程
发现和研究长期的、客观的真理 短期的实际效果(具体的软件会过时)
理想化 对各种因素的折衷
确定性、完美、通用性 对不确定性和风险的管理,足够好,具体的应用
各个学科独立深入研究,做出成果 关注和应用各个相关学科的知识,解决问题
理论的统一 百花齐放的实践方法
形式化,追求简明的公式 在实践中建立起来的灵感和直觉
正确性 可靠性
计算机科学与技术和工程涉及的领域不同,计算机科学与技术是计算机的全面知识,包括计算机原理、硬件、及发展趋势。工程主要是计算机的开发,程序的编写。
计算机科学与技术是计算机综合性知识的专业,主要培养具有良好的科学素养,系统地、较好地掌握有关计算机科学与技术的理论和技术,包括计算机硬件、与计算机应用的基本理
论、基本知识和基本技能与方法,能在科研部门、教育单位、、事业、技术和行政管理部门等单位从事计算机教学、科学研究和应用的计算机科学与技术学科的高级科学技术人才。
工程专业以计算机科学与技术学科为基础,强调开发的工程性,使学生在掌握计算机科学与技术方面知识和技能的基础上熟练掌握从事需求分析、设计、测试、维护和项目管理等工作
所必需的基础知识、基本方法和基本技能,突出对学生专业知识和专业技能的培养,培养能够从事开发、测试、维护和项目管理的高级专门人才。
第二章 个人技术和流程
1、什么是单元测试?
答:单元测试(unit testing),是指对软件中的最小可测试单元进行检查和验证。对于单元测试中单元的含义,一般来说,要根据实际情况去判定其具体含义,如C语言中单元指
一个函数,Java里单元指一个类,图形化的软件中可以指一个窗口或一个菜单等。总的来说,单元就是人为规定的最小的被测功能模块。单元测试是在软件开发过程中要进行的最低级
别的测试活动,软件的独立单元将在与程序的其他部分相隔离的情况下进行测试。经常与单元测试联系起来的另外一些开发活动包括代码走读(Code review),静态分析和动态分析。
静态分析就是对软件的源代码进行研读,查找错误或收集一些度量数据,并不需要对代码进行编译和执行。动态分析就是通过观察软件运行时的动作,来提供执行跟踪,时间分析,以
测试覆盖度方面的信息。
2、什么是PSP?
答:个人软件过程(Personal Software Process,PSP)是一种可用于控制、管理和改进个人工作方式的自我持续改进过程,是一个包括软件开发表格、指南和规程的结构化框架。
PSP与具体的技术(程序设计语言、工具或者设计方法)相对独立,其原则能够应用到几乎任何的软件工程任务之中。PSP能够说明个体软件过程的原则; 帮助软件工程师作出准确的
计划;确定软件工程师为改善产品质量要采取的步骤;建立度量个体软件过程改善的基准;确定过程的改变对软件工程师能力的影响。
第十六章
1、软件工程的技术和实践如何帮助创新?
答:在创建一个系统时,开发人员可以边编程边测试。 在软件工程中,介绍了很多用图形表示问题的技术,包括系统流程图、数据流图、层次图、结构图等,如何画这些图、如何利用
这些图清晰的表达出解决问题所在,这些图更适用于表示什么样的问题,相近图的相同点和不同点,各适用于什么场合,这样的创新就是用精炼的语言表达最丰富的内容。
2、影响产品竞争的因素都有什么?
答:产品行业的因素,公司和市场因素,团队执行因素,产品的价值因素,邹欣老师在书中的解释很详细,非常感谢。

 

Week-2-作业1的更多相关文章

  1. python10作业思路及源码:类Fabric主机管理程序开发(仅供参考)

    类Fabric主机管理程序开发 一,作业要求 1, 运行程序列出主机组或者主机列表(已完成) 2,选择指定主机或主机组(已完成) 3,选择主机或主机组传送文件(上传/下载)(已完成) 4,充分使用多线 ...

  2. SQLServer2005创建定时作业任务

    SQLServer定时作业任务:即数据库自动按照定时执行的作业任务,具有周期性不需要人工干预的特点 创建步骤:(使用最高权限的账户登录--sa) 一.启动SQL Server代理(SQL Server ...

  3. 使用T-SQL找出执行时间过长的作业

        有些时候,有些作业遇到问题执行时间过长,因此我写了一个脚本可以根据历史记录,找出执行时间过长的作业,在监控中就可以及时发现这些作业并尽早解决,代码如下:   SELECT sj.name , ...

  4. T-SQL检查停止的复制作业代理,并启动

        有时候搭建的复制在作业比较多的时候,会因为某些情况导致代理停止或出错,如果分发代理时间停止稍微过长可能导致复制延期,从而需要从新初始化复制,带来问题.因此我写了一个脚本定期检查处于停止状态的分 ...

  5. Python09作业思路及源码:高级FTP服务器开发(仅供参考)

    高级FTP服务器开发 一,作业要求 高级FTP服务器开发 用户加密认证(完成) 多用户同时登陆(完成) 每个用户有不同家目录且只能访问自己的家目录(完成) 对用户进行磁盘配额,不同用户配额可不同(完成 ...

  6. 个人作业week3——代码复审

    1.     软件工程师的成长 感想 看了这么多博客,收获颇丰.一方面是对大牛们的计算机之路有了一定的了解,另一方面还是态度最重要,或者说用不用功最重要.这些博客里好些都是九几年或者零几年就开始学习编 ...

  7. 个人作业-week2:关于微软必应词典的案例分析

    第一部分 调研,评测 评测基于微软必应词典Android5.2.2客户端,手机型号为MI NOTE LTE,Android版本为6.0.1. 软件bug:关于这方面,其实有一些疑问.因为相对于市面上其 ...

  8. 软件工程第二次作业——git的使用

    1. 参照 http://www.cnblogs.com/xinz/p/3803109.html 的第一题,每人建立一个GitHub账号,组长建立一个Project,将本组成员纳入此Porject中的 ...

  9. hadoop作业调度策略

    一个Mapreduce作业是通过JobClient向master的JobTasker提交的(JobTasker一直在等待JobClient通过RPC协议提交作业),JobTasker接到JobClie ...

  10. SQL SERVER 2008复制数据库时发生执行SQL Server代理作业错误

    1. 情况说明 在利用SQL SERVER数据库复制向导,能够很方便的将一个数据库从一台服务器复制到另一台服务器上,具体操作步骤也十分简单. 不过在实际操作过程常发生“执行SQL SERVER代理作业 ...

随机推荐

  1. mysql 导出表,导出数据 命令

    mysql mysqldump 只导出表结构 不导出数据 复制代码代码如下: mysqldump --opt -d 数据库名 -u root -p > xxx.sql  备份数据库  复制代码代 ...

  2. vba 语法

    VBA语言基础 第一节 标识符 一.定义 标识符是一种标识变量.常量.过程.函数.类等语言构成单位的符号,利用它可以完成对变量.常量.过程.函数.类等的引用. 二.命名规则 1) 字母打头,由字母.数 ...

  3. WPF-学习笔记 动态修改控件Margin的值

    原文:WPF-学习笔记 动态修改控件Margin的值 举例说明:动态添加一个TextBox到Grid中,并设置它的Margin: TextBox text = new TextBox(); t_gri ...

  4. mfc 异常机制

    异常 抛出异常 捕获异常 一.异常 迄今为止,我们处理程序中的错误一般都是用if语句测试某个表达式,然后处理错误的特定义代码. C++异常机制使用了三个新的关键字 (SEH(结构化异常处理)) try ...

  5. IVF link error错误不显示的问题

      遇到一个奇怪的问题,IVF编译链接时显示error LINK: 后面没有具体的错误信息(见后图,我的窗口后面是空的)环境:windows 10 64位系统,VS2017 commutity 版本, ...

  6. Altium软件中Unknowpin的详细解决办法

    1.Altium软件中Unknowpin第一种原因:PCB封装缺失遗漏,直接加入对应的封装即可.点击箭头指示处的Add,接着点击OK之后,再点击图中所示处Browse...选择封装库的封装即可. 2. ...

  7. Docker创建数据卷

    当程序在容器中运行时,需要与其他容器中的程序或者容器外部的程序进行文件读写操作时,就需要进行数据的交换:容器内部的文件系统,是一个临时层,当容器停止运行并被删除时,这个临时层就会被一同丢弃:为了达到从 ...

  8. [C++]linux下实现ls()函数遍历目录

    转载请注明原创:http://www.cnblogs.com/StartoverX/p/4600794.html 需求:在linux下遍历目录,输出目录中各文件名. 在linux下遍历目录的相关函数有 ...

  9. 快手hr面

    快手hr面 20180918 自我介绍 hr部门介绍 效率工程 主要问题 问我对部门是否有感兴趣? 我要求地点在北京,然后就畅聊口音.老家,学校等 学校的成绩?(研究生.本科) 自己属于哪类学生?(属 ...

  10. java事物详解

    一.什么是Java事务 通常的观念认为,事务仅与数据库相关. 事务必须服从ISO/IEC所制定的ACID原则.ACID是原子性(atomicity).一致性(consistency).隔离性 (iso ...