当前位置: 首页 > news >正文

建设厅官方网站企业库淘客网站建设收费吗

建设厅官方网站企业库,淘客网站建设收费吗,建设个人网站的心得体会,产品项目开发流程图文章目录一、软件工程的定义1、Fritz Bauer在NATO上给出的定义2、Barry Boehm3、IEEE在软件工程术语汇编中的定义二、软件工程的层次1、软件工程三个要素2、软件工程的层次——图解3、软件工程的层次——逐一分析三、软件过程的三个阶段1、定义阶段——“做什么”2、开发阶段—… 文章目录一、软件工程的定义1、Fritz Bauer在NATO上给出的定义2、Barry Boehm3、IEEE在软件工程术语汇编中的定义二、软件工程的层次1、软件工程三个要素2、软件工程的层次——图解3、软件工程的层次——逐一分析三、软件过程的三个阶段1、定义阶段——“做什么”2、开发阶段——“如何做”3、支持阶段——“变化”四、软件过程框架1、引例——煮蛋的启示2、软件工程的过程定义3、软件过程框架五、CMM1、基础知识2、CMM的级别六、软件过程模型1、软件过程模型概述2、软件过程模型分类3、传统的软件过程模型1线性顺序模型瀑布模型2V模型3原型实现模型4RAD模型5增量模型6螺旋模型7形式化方法模型4、敏捷视角下的过程模型1什么是敏捷2敏捷团队必须具备的特点3几种重要的敏捷过程模型①极限编程(XP)②自适应软件开发ASD③动态系统开发方法DSDM④Scrum(橄榄球模型)⑤Crystal⑥特征驱动开发FDD⑦敏捷建模(AM)写在最后一、软件工程的定义 1968年在NATO会议上首次提出“软件工程”这个术语。但软件工程一直以来都缺乏一个统一的定义有很多学者、组织机构都分别给出了自己认可的定义。以下给出三种常用的定义 1、Fritz Bauer在NATO上给出的定义 The establishment and use of sound engineering principles in order to obtain economically software that is reliable and works on real machines. 建立并使用完善的工程化原则以较经济的手段获得能在实际机器上有效运行的可靠软件的一系列方法。 2、Barry Boehm Software engineering is that form of engineering that applies the principles of computer science and mathematics to achieving cost-effective solutions to software problems. 软件工程就是应用计算机科学和数学的原理来为软件问题提供经济高效的解决方案。 通俗点来说①运用现代科学技术知识来设计并构造计算机程序②开发、运行和维护这些程序所必需的相关文件资料。 3、IEEE在软件工程术语汇编中的定义 The application of a systematic,disciplined,quantifiable approach to the development,operation,and maintenance of software. 将系统化的、严格约束的、可量化的方法应用于软件的开发、运行和维护即将工程化应用于软件。 二、软件工程的层次 软件工程是一种层次化的技术支持软件工程的根基就在于对质量的关注。 1、软件工程三个要素 过程、方法、工具 2、软件工程的层次——图解 3、软件工程的层次——逐一分析 1质量焦点a quality focus 软件工程的根基任何工程方法都必须以有组织的质量承诺为基础 2过程process 是软件工程的基础定义了一组关键过程区域框架包括*工程产品的产生*里程碑的建立等等 3方法methods 提供了建造软件在技术上需要“如何做”包括需求分析analysis、设计design、编码coding、测试testing和支持backing 4工具tools 对过程和方法提供了自动或半自动的支持 E.g. CASE工具计算机辅助软件工程集成硬件、软件和数据库而创建的软件工程环境类似于硬件的CAD计算机辅助设计/CAE计算机辅助工程 三、软件过程的三个阶段 1、定义阶段——“做什么” 1定义系统和软件的关键需求被标识 2应用场景①系统和信息工程②软件项目计划③需求分析 2、开发阶段——“如何做” 1定义定义数据结构、体系结构、过程细节、界面表示、算法和测试如何执行 2应用场景①软件设计②代码生成③软件测试 3、支持阶段——“变化” 1定义①纠正错误②随着软件环境的演化而要求的适应性修改③用户需求的变化而带来的增强型修改 2应用场景①纠错性维护校正式②适应性维护③完善性维护④预防性维护 下面用一张图了解软件过程的三个阶段 四、软件过程框架 1、引例——煮蛋的启示 很久以前中国人煮蛋方式与德国人煮蛋方式的不同。 中国人先找一个锅倒进水再把蛋放进去整个过程需要10~20min。 德国人先找一个锅倒进水再把蛋放进去在容器的下方焊接一个托盘再将锅放到托盘上去烧开如此仅用1min就把水烧开之后再用火继续煮了3min关火再用余热继续煮了3min煮熟后丢到冷水里面3min最后他用10min时间把蛋煮熟。 从以上分析来看德国人煮蛋更讲究过程不同的过程会导致不一样的结果。研究表明德国人煮蛋的方式有以下几点好处①更省水②更省热能③煮蛋所花时间更少④利用余热煮3min这个时候蛋的营养价值更高⑤用凉水泡了3min蛋壳更容易拨开。 2、软件工程的过程定义 1过程process一组有序的任务每个任务由一些步骤组成每个步骤涉及到活动、约束及产品。 2广义上软件开发的每一个阶段都可看成是一个过程。 3简言之过程就是一个步骤、一个路线图帮助创建高质量的软件。 3、软件过程框架 先用一张图简单了解软件过程框架 1通用过程框架活动 沟通策划建模构建部署 2普适性活动 软件项目跟踪和控制正式的技术评审软件质量保证软件配置管理文档的准备和产生可复用管理测度风险管理 五、CMM 1、基础知识 120世纪90年代CMU/SEI提出能力成熟度模型Capability Maturity ModelCMM 2CMM定义了当一个组织达到不同的过程成熟度时应该具有的软件工程能力 3CMM是一种衡量软件开发能力和成熟度的标准 4CMM模型提供了衡量一个公司软件工程实践的整体有效性的方法且建立了五级的过程成熟度级别 2、CMM的级别 1第一级初始级initial ①定义软件过程是定义的和偶然的有时甚至是混乱的。几乎没有过程定义成功完全取决于个人能力。 ②特点不可预测并且缺乏控制。 2第二级可重复级repeatable ①定义建立了基本的项目管理过程能够跟踪费用、进度和功能。有适当的必要的过程规范可以重复以前类似项目的成功。 ②特点可重复以前的主要经验。 ③关键过程区域需求管理软件项目计划软件项目跟踪和监督软件子合同管理软件质量保证软件配置管理。 3第三级定义级defined ①定义企业的软件过程已经文档化、标准化并与整个组织的软件过程相集成。所有项目都使用统一的、文档化的、组织过程认可的版本来开发和维护软件。包含第二级的所有特征。 ②特点过程被描述并得到良好理解。 ③关键过程区域组织过程定义组织过程焦点培训大纲集成软件管理软件质量保证软件配置管理。 4第四级管理级managed ①定义软件过程和产品质量的详细数据被收集通过这些度量数据软件过程和产品能够被定量地理解和控制。包含第三级的所有特征。 ②特点过程被测量并受控。 ③关键过程区域定量的过程管理软件质量管理。 5第五级优化级optimizing ①定义通过定量反馈进行不断的过程改进这些反馈来自于过程或通过试验新的想法和技术而得到。包含第四级所有特征。 ②特点关注过程改进。 ③关键过程区域缺陷预防技术变更管理过程变更管理。 六、软件过程模型 1、软件过程模型概述 软件过程模型是软件开发全部过程、活动和任务的结构框架。软件过程模型不是一种具体模型是一种开发策略包含过程、方法和工具三个层次以及一般性阶段常称为①软件开发模型②软件生存期模型③软件工程范型。 2、软件过程模型分类 1传统的软件过程模型7种 详细内容见以下第3点 2敏捷视角下的过程模型7种 详细内容见以下第4点 3、传统的软件过程模型 1线性顺序模型瀑布模型 ①图解 ②存在问题 实际项目很少按照该模型给出的顺序执行客户常常难以清楚地给出需求客户必须有耐心运行版要到开发晚期才能得到导致“阻塞状态”常发生在开始和结束时 2V模型 ①图解 ②特点——强调反馈不将问题留到下一步 Verification验证每个活动保证能正确运行。 Validation确认针对需求而言符合需求规格的定义。 3原型实现模型 ①定义 原型是一个可迭代的/可重复的循环过程在这个过程中一个问题的模型被细化/改进直到它被接受为止。 ②流程图 ③原型开发分类 根据原型与最终产品之间的关系原型开发分类分为以下三种 抛弃式 (throw away)验证和澄清系统的需求描述重新构造系统。 演化式 (evolutionary)逐步改进和细化原型将原型进化为最终系统。 增量式 (incremental)在建立软件总体设计基础上采用增量开发方法使原型成为最终系统。 此处篇幅较长点击进入原型实现模型的详解 ④适用情况 当客户有一个合理的需求但是对细节没有概念的时候最适合使用原型实现模型 ⑤特点 快速性、迭代性 ⑥优缺点 优点 用户能够感受到实际系统开发者能很快建造出一些东西 缺点 原型是粗糙的没考虑软件总体质量和长期的可维护性开发者常常要对实现内容折中以使得原型能尽快工作 ⑦不适合的领域 嵌入式系统实时控制系统科学数值系统 4RAD模型 ①定义 RADRapid Application Development,快速应用开发通过使用基于构件的建造方法赢得了快速开发。 ②分类 业务建模数据建模过程建模应用生成编程阶段 - 基于构件测试及反复 ③流程图 ④特点 强调极短的开发时间每一个主要功能在不到三个月的时间内完成强调复用 ⑤存在的问题 对于大型的的项目RAD需要足够的人力资源以建立足够的RAD组RAD要求开发者和客户承担在一个很短的时间框架下完成一个系统所必要的快速活动并非所有应用都适合RAD不适合技术风险很高的情况 5增量模型 ①定义增量模型融合了瀑布模型的基本成分和原型的迭代特性。 ②举个例子 例如使用增量模型开发一款字处理软件那么这款软件需要做什么呢 基本的文件管理、编辑和文档生成功能更完善的编辑和文档生成能力实现拼写和语法检查功能完成高级的页面布局功能。 ③流程图 ④特点 增量1往往是“核心产品”本质是迭代的但强调每一增量均发布一个可操作产品。 ⑤优点 面对不能改变的困难时限时是可考虑的选择早期可投入较少人员可有计划地管理技术风险。 ⑥思考问题 Q假设一个学校在四个月后要参加教学评估要求现在开发一个学校综合管理信息系统如果你是开发者你会选择哪一种过程模型来开发这个系统RAD还是增量式的过程模型为什么 A答案是选择RAD过程模型。为什么呢 原因在于RAD模型适用于模块化比较强的项目且必须在60-90天内完成不迭代没有一个动作在重复进行。 而增量模型则是可迭代的且增量1是核心产品每一增量均可操作。比较适用于市场竞争激烈的项目有利于抢占市场。 6螺旋模型 ①软件开发可能遇到的风险引例 产品交付给用户之后用户可能不满意到了预定的交付日期软件可能还未开发出来实际的开发成本可能超过预算产品完成前一些关键的开发人员可能“跳槽“了产品投入市场之前竞争对手发布了一个功能相近、价格更低的软件等…… ②螺旋模型的基本思想使用原型及其他方法来尽量降低风险。 ③流程图 理解这种模型的一个简便方法就是把它看作在每个阶段之前都增加了风险分析过程的快速原型模型如下图所示 ④螺旋模型任务区域4个象限各象限含义如下 客户交流——建立开发者和客户之间有效的通信所需的任务制定计划——确定软件目标选定实施方案弄清项目开发的限制条件风险分析——分析评估所选方案考虑如何识别和消除风险实施工程——实施软件开发和验证构造及发布——构造、测试、安装和提供用户支持如文档及培训所需的任务客户评估——评价开发工作提出修正建议制定下一步计划。 注四个象限包含制定计划风险分析实施工程客户评估 ​ 此处列出6点是为了更加细分螺旋模型的流程。 ⑤优缺点 优点 随着过程进展演化开发者和客户能够更好地理解和对待每一个级别上的风险使用原型实现作为降低风险的机制更真实地反映了现实世界如应用得当能在风险变成问题之前降低它。 缺点 模型的成功依赖于风险评估的专门技术是一个较新的模型功效的确定尚需若干年时间。 ⑥适用情况 主要适用于内部开发的大规模软件项目 7形式化方法模型 ①形式化方法使得软件工程师能够通过应用一个严格的、数学的符号体系来规约、开发和验证基于计算机的系统。净室软件工程师是这种方法的一个变种。 ②通过应用数学分析二义性、不完整性和不一致性能更容易发现和纠正。 ③形式化方法目前还很费时且很昂贵。 ④很少有软件开发者具有实用形式化方法所必要的指示尚需许多方面的培训。 ⑤难以与客户进行沟通。 4、敏捷视角下的过程模型 1什么是敏捷 普遍存在的变化是敏捷的基本动力 敏捷就是灵活,支持变化的观点 敏捷过程强调过程的可操作性和适应性 2敏捷团队必须具备的特点 基本能力共同目标精诚合作决策能力模糊问题的解决能力相互信任和尊重自我组织 3几种重要的敏捷过程模型 ①极限编程(XP) 包含了策划、设计、编码、测试四个框架活动的规则和实践具体流程如下 ②自适应软件开发ASD ASD的生命周期包含思考、协作和学习三个阶段 ③动态系统开发方法DSDM 定义三个不同的迭代循环前面还加了两个生命周期活动如下 可行性研究业务研究功能模型迭代设计和构建迭代实现迭代 ④Scrum(橄榄球模型) 强调使用一系列的软件过程模式每个过程模式定义一系列开发活动 待定项——能为用户提供业务价值的项目需求或特征的优先级列表冲刺——由工作单元组成是完成待定项中定义的需求所必需的能在预定时间段内完成的Scrum例会——15分钟演示——交付软件客户进行评估。 ⑤Crystal 提倡“机动性”的软件开发方法 包含具有共性的核心元素每一个都含有独特的角色、过程模式、工作产品和实践等。 ⑥特征驱动开发FDD 特征即可以在2周甚至更短时间内实现具有客户价值的功能。 定义五种协作框架 ⑦敏捷建模(AM) 有目的的建模使用多个模型前进灯内容重于表达形式理解模型及工具适应本地需要 写在最后 看完这篇文章不妨试问下自己以下问题 你认为介绍的软件过程模型哪一种最有效为什么 举出一个采用增量模型开发的软件项目并指出各个增量的功能。 当沿着螺旋模型的过程路径向外移动时你认为正在开发或维护的软件发生了什么变化呢 分别用图示说明瀑布模型、V模型、原型、RAD、增量模型及螺旋模型这六种模型的原理。 欢迎评论区留下答案٩(๑❛ᴗ❛๑)۶ PS 本文篇幅较长有错别字欢迎评论区纠正随时改进~ 如果这篇文章对你有帮助记得留下star哦~
http://wiki.neutronadmin.com/news/72001/

相关文章:

  • 网页设计茶叶网站建设wordpress 自媒体模版
  • 网站的风格主要包括wordpress 4.7 暴路径
  • 整页型网站软件开发者工具
  • 西安网站建设平台网站需要证件
  • 网站建设销售技巧和话术男女做暖网站是什么样子的
  • 学做预算有网站吗芜湖网站建设优化
  • 做网站聊城企业形象网站解决方案
  • 南通网站开发招聘网站建设 中企动力东莞后台管理
  • 泉州市做网站优化万网域名交易
  • 重庆科技网站设计模板智能营销型网站
  • 河北建设网站首页手表网站上没有价格
  • 北京建站开发asp.net构建门户网站
  • 怎样在谷歌做网站优化大师apk
  • 合肥做网站排名最简单网站建设
  • 网站三大标签手机介绍网站
  • 淘宝网站设计模板下载百度竞价推广怎么收费
  • 微信公众平台官方网站登录互动教学平台
  • 网站开发培训程序员网站算信息化建设
  • 太仓网站公司wordpress主题学习
  • 做网站老板不发工资我拿尾款十九冶成都建设网站
  • 怎么做好网站建设wordpress带投稿模板
  • 张家界城乡建设网站山东浩景建设有限公司网站
  • 经营网站 备案信息管理系统商城网站建设专业公司
  • 鲜花店网站页面-欧美模板1psd重庆市安全建设工程信息
  • 正规代做毕业设计的网站做电商网站都需要学什么软件
  • 兰州网站公司python用于网站开发
  • 南通建设工程造价信息网站德州网站制作
  • 改图网网站谁做的wordpress设置多域名多站点
  • 百度推广送企业网站吗网站设计制作公司大全
  • nodejs做企业网站seo收录查询