这个作业属于哪个课程 | https://edu.cnblogs.com/campus/zswxy/software-engineering-2017-1 |
---|---|
这个作业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/software-engineering-2017-1/homework/106184 |
这个作业的目标 | 第一章到第七章问题清单 |
作业正文 | 如下 |
其他参考文献 | https://www.baidu.com |
· 第一章、初始软件工程
Q①:软件怎样才能达到客户所需要的目的?
A①:具有较低的成本,可以按时交付软件,实现客户的要求,拥有良好的性能,软件的维护费用低等等。
Q②:工程的特征是什么?
A②:大规模的设计与建造,复杂问题与目标的分解,团队协作与过程控制。
Q③:软件工程的基本策略是什么?
A③:软件复用、分而治之、逐步演进、优化折中。
· 第二章、编写高质量代码
Q①:Python是否相比C与java更加便捷?
1、Python简单易懂
Python的说明文档极其简单,因此初学者极其容易上手。不过,不仅对于新手和初学者来说Python非常容易学习和使用,同时它也是最容易理解的编程语言之一,阅读一个良好的Python程序就感觉像是在读英语一样。另一方面,用Python编写程序的时候,不需要考虑底层细节,因为它是一门高层语言。
2、Python拥有丰富的库
Python标准库确实很庞大。它可以帮助处理各种工作,包括正则表达式、文档生成、单元测试、线e69da5e6ba90e79fa5e9819331333363393132程、数据库、网页浏览器、CGI、FTP、电子邮件、XML、XML-RPC、HTML、WAV文件、密码系统、GUI(图形用户界面)、Tk和其他与系统有关的操作。除了标准类库之外,其他语言编写封装后,也能成为Python可调用的扩展类库,这也是Python被称为“胶水语言”的原因。
3、Python高效便捷
Python的底层是用C语言编写的,很多标准库和第三方库也都是用C语言编写的,因此运行速度非常快。几乎在所有的环境中使用和部署Python应用程序都可以,并且产生的性能损失非常小。同时,Python可以进行Web开发、桌面应用程序、移动应用程序、硬件等等多种领域的开发,实现了跨平台、跨领域。
4、Python拥有大数据
与Java长盛不衰的原因相似,Python扶摇直上也离不开大数据和云计算方案的逐渐广泛应用。作为被用于机器学习和人工智能系统以及各种现代技术的一门语言,Python能够十分容易地应用于分析和组成可用的数据,这也使它成为数据科学中最流行的语言之一。
Q②:现阶段是否Python更加热门?
A②:在某些方面Python比其他语言更加方便,主要还是看自身的理解。
Q③:缺陷检查过程中多人合作是否更好?
A③:多人合作可以发现对方的遗漏点和缺点,起到相互合作相互监督的作用。
Q④:每个代码都需要优化吗?
A④:每个代码在第一次完成之后只是实现了功能,对于后面的代码性能增强和代码简化还有更多的功夫。
Q⑤:结对编程的好处。
A⑤:可以弥补对方的不足,强化自身的优点。
· 第三章、单元测试
A①:其他语言有没有单元测试软件?
Q①:每门语言都有专门的单元测试工具,像C语言的Visual Studio和Java的IDEA都含有单元测试部件。
A②:单元测试应该是程序稳定性的重要因素吧?
Q②:是的。
Q③:单元测试的目的。
A③:保证代码的质量,保证代码的可维护性,保证代码的可扩展。
· 第四章、软件开发过程
Q①:软件开发的过程是什么?
A①:问题定义→需求开发→软件设计→软件构造→软件测试
Q②:瀑布模型适用于哪些应用?
A②:文档。以预测性为原则的,以文档驱动的开发过程,以过程控制为原型的。
Q③:迭代式开发适用于哪些应用?
A③:发布产品快,创新好,关注用户行为的软件。
A④:是否每个项目都应注意Scrum开发?
Q④:并不是,Scrum开发适用于偏重项目管理的项目。
Q⑤:敏捷开发的实用性。
A⑤:敏捷开发关注协作,关注质量,关注可工作的产品,关注全能化的专才,基于实践。
Q⑥:敏捷开发的价值观。
A⑥:自组织团队与客户紧密协作,通过高度迭代式,增量式的软件开发过程响应变化。
· 第五章、团队开发管理
Q①:团队项目多人合作是否效率更高?
A①:在某些特别的方面或许会比个人的效率慢,但整体各方面方面提升了太多。
Q②:最好的沟通方式是什么?
A②:口头沟通。
Q③:项目启动会议是否会包含可能遇到的困难?
A③:不包含。
· 第六章、敏捷开发与配置管理
Q①:Scrum方法是什么方法?
A①:一个1—4周的迭代、长度一旦确定将保持不变、产出是完成的,可用的,潜在可发布的产品增量。
Q②:Scrum主管的作用。
A②:直接管理项目。
Q③:用户故事有些什么特点?
A③:独立性、可协商、有价值、短小的、可测试、可估算。
· 第七章、需求获取
Q①:需求管理是怎样个过程?
A①:学习-获取、剪枝-优选、文档化-需求规格说明书。
Q②:需求获取有哪些方式?
A②:面谈、问卷调查、群体诱导技术、参与调查法。
Q③:需求工程有哪些?
A③:需求抽取、需求分析、需求规约、需求管理、需求验证。
☆持续更新...