一,今日学习内容
1.软件的概念:计算机程序及其他相关文档是交付给客户的一整套解决方案 2.常用文档:功能需求文档,软件设计文档,项目计划文档,项目报告,用户手册 3.文档语言的意义:通过文档人们能够更清楚的了解软件的功能结构,系统的思想,软件的操作方法,让人们能够更方便的使用和维护 4.软件分类: 1.应用程序:为了解决用户需求 2.操作系统:管理软件和硬件的一整套操作系统 3.驱动程序:连接操作系统和硬件之间的桥梁 4.其他程序:a.编译程序:也叫编译器,把用高级程序语言书写的源程序翻译成用程序 b.数据库:按照数据结构来组织和管理的结构,用户可以增删改查操作 5.程序设计语言:用于书写计算机程序所使用的语言 6.分类:1.低级语言:a.机器语言b.汇编语言 2.高级语言 7.解释性语言:JavaScript 8.编译性语言(更快):java,c 9.机器语言:0和1 10.编码是解决某一个问题将人脑的思路方法用程序语言编写成代码的过程 11.软件开发:版本计划->需求分析->软件设计->编码->调试 12.软件研发:原始需求->需求澄清->版本计划->需求分析->软件设计->UI设计->测试计划->测试设计->编码->调试->执行测试->最终交付 13.需求概念:由BA或者产品经理来描述 14.SRS是软件需求规格说明书 15.原始需求和需求澄清是为了学习需求确定系统的运行环境,鉴定逻辑模型,还要确定系统的功能和性能需求 16.功能:扫码 17.性能:返回时间 18.需求对齐:所有人没有分歧 19.概要设计:建立系统总体结构,划分功能模块,定义各个功能模块接口 20.详细设计:涉及各个模块的具体实现算法,确定各个模块之间的详细内容 21.环境:程序运行所依赖的网络数据库 22.部署:安装,然后放在硬件上 23.接口:一系列已经经过编译的可以被调用的函数库 接口分为:软件接口:内部:验证是否是VIP 外部:支付方式 硬件接口:USB,HDMI,type-c 24.软件的生命周期:需求,设计,编码,测试,上线,维护,升级,废弃 25.软件公司人员架构:项目经理(PM),BA(需求分析师)或产品经理,架构师,UI设计师(UE,UX,UCD),开发(DEV)前端(页面)后端(业务逻辑算法),测试(QC/QA),实施工程师,运维 26.一般来说,一个项目10个模块,每个模块15个接口 27.开发测试的比例:2:1~5:1 1000行代码10~20个bug,好的工程师5个,正常一天100~200行代码 28.软件研发模型:瀑布模型是线性的顺序的软件开发模型 29.瀑布模型的优点:有利于开发方法和工具的使用,提高了软件开发的质量和效率,缺点是时间长,项目的初始阶段需要指出全部的需求,用户和负责人需要很长时间才能拿到需求和版本,改需求损失比较大 30.新的软件模型:敏捷模型是一种迭代循序渐进的思想,在敏捷开发中,软件项目的开发被切割为多个阶段,各个阶段都具备独立运行和独立交付的运行特征,scrum敏捷模型的常性管理实现 31.迭代是在进行较大规模的项目任务时,将研发的过程分为若干个轮次,每个轮次称为一个迭代,每一个迭代都要经历项目的计划分析设计实现 32.站立会:早晨15分钟左右 33.看板:开发内容,准备做正在做已完成 34.用户故事:用户需求点 35.燃尽图:任务进度图 二.今日问题 无 三。解决方案 无
|