第一章 概论
各个专业术语
1.1软件=程序+软件工程
软件结构(software architecture)
软件设计与实现(Software Design,Implementation and Debug)
源代码管理(Source Code Control)
配置管理(Software Configuration Management)
质量保障(Quality Assurance)
软件测试(Test)
需求分析(Requirement Analysis)
程序理解(Program Comprehension)
软件维护(Software Maintenance)
服务运营(Service Operation)
软件的生命周期(Software Life Cycle,SLC)
软件项目的管理(project management)
用户体验(user experience)
国际化和本地化(globalization & localization)
1.2 软件工程是什么
1.2.1软件的特殊性
复杂性(Complexity)
不可见性(Invisibility)
易变性(Changeability)
服从性(Conformity)
非连续性(Discontinuity
1.2.2软件工程与计算机科学的关系
微软学术搜索(Microsoft Academic Search)
计算机科学(Computer Science)
计算理论(Theoretical Computing)
信息和编码理论(Informaion and Coding Theory)
算法和数据结构(Algorithm and Data Structure)
形式化方法(Formal Methods)
程序设计语言(Programming Language)
计算机系统结构(Computer Architecture)
并行计算和分布式系统(Concurrent、Parallel and Distributed System)
实时系统和嵌入式系统(Real Time and Embedded System)
操作系统(Operating System)
计算机网络(Networking)
科学计算(Scientific Computing)
安全和密码学(Security and Cryptography)
人工智能(Artificial Intelligence)
模式识别(Pattern Recognition)
机器学习(Machine Learning)
数据挖掘(Data Mining)
信息提取(Information Retrieval)
计算机图形学(Computer Graphics)
计算机视觉(Computer Vision)
多媒体(Multimedia)
数据库和大规模数据处理(Database and Large Scale Data Processing)
万维网(World Wide Web) 自然语言处理和语音(Natural Language Processing and Speech)
人机交互(Human Computer Interaction)
软件工程(Software Engineering)
1.2.3软件工程的知识的领域
软件工程的知识领域和理论基础
生命周期:软件需求、软件设计、软件构建、软件测试、软件维护、
专门领域:软件配置管理、软件工程管理、软件工程过程、软件工程模型和方法、软件质量
理论基础:计算基础、数学基础、工程基础
1.2.4软件工程的目标-创造“足够好”的软件
用户满意度:用户在使用时发现了软件的很多问题、影响了用户使用软件的效率。
可靠性:某个软件经常会崩溃,某个操作系统会时不时死机、某个网站往往在最需要的时候登不上去。
软件流程的质量:软件团队和开发流程的问题太多,导致团队成员无法互相协作,按时交付软件。
可维护性:某个软件太难维护了,按下葫芦起了瓢,修复了一个问题,另一个问题又出来了。
P18-2
1.如果我面临一个任务,要求使用我从未接触的语言去写,即便我曾经使用过其他语言,而且很熟练,但是我能够在合适的时间内成功地完成这个任务吗?
2.对于一个软件工程师而言,什么才是最重要的呢?编码能力?团队合作能力?还是什么其他的?
3.如果日后我们要从事软件开发的工作,那作为一名合格的软件工程师,我们应该掌握多少门语言呢?或者说哪几门语言是我们必须要了解的呢?
4.真正的软件开发需要几个步骤?
5.软件工程具体未来的一个规划是什么样的?
P18-3
APP分类:
1.影音视听:爱奇艺 优酷 腾讯视频
2.购物消费:淘宝 手机天猫 菜鸟裹裹 饿了吗
3.聊天社交:微信 QQ
4.旅行交通:去哪儿网 滴滴出行
5.实用工具:云闪付 毒 百度贴吧
6.学习教育:百度翻译 沪江网校 考研帮
一、对于这些软件我更多是自己的需求才下载,他们有盈利目的,但我们用户也可以从中受益很多
二、有同学推荐,自己发现才下载的。基本贯穿初中到大学,总之对于各个软件都很满意,对自己帮助也很大。
三、APP内有相关Bug反馈,出现问题可以即时发送反馈或者联系相关客服在线解答,随后的版本就会反馈的Bug进行修复并且更新版本,在用户下一次点开软件时会有弹框提示更新。
四、产品的价值是由其所包含的商品或服务的价值所决定的,它们才是产品的核心竞争力。所以各个软件更重要的是提升自生的核心技术以及服务消费者的能力。