手记

大数据之软件开发模型(详细讲解)

软件工程中,常用的开了模型有四种:瀑布模型、原型模型、增量模型和螺旋模型。

⒈瀑布模型包括计划,需求分析、设计、编码、测试、运行维护六个阶段,阶段自上而下,相互衔接,次序固定。瀑布模型具有很强的顺序性和依赖性,即:下一阶段必须以上一阶段的完成为前提。测试工作是在处于开发后期的测试阶段集中进行的,测试中可能发现大量的错误,因此必须返回需求分析、设计或编著码中定位问题,而以前认为已完成的各阶段必须修改,从而代价昂贵。

如果你准备入坑大数据开发,可以关注ID:IT资讯科技    会有最前沿的学习资讯

⒉原型模型的主要思想是先通过需求分析并建立一个软件系统的概貌原型,通过用户与开发者的评价和判断,不断的对原型进行反复的扩充、改进和求精,最终建立符合用户需求的目标系统。开发过程中可能会多次生成更完善的原型,测试人员要对每个原型进行测试,并且在每个原型中投入的工作量及测试目标也将有所不同。

⒊增量模型是软件企业在面对紧迫的市场限期时常用的开发模型。其思路是:既然不可能一下推出一个功能完善的软件,那就先推出一个具有最迫切需要功能的版本,然后渐进地增加功能开发逐步完善的软件版本。

⒋螺旋型开发模型结合了瀑布模型和原型模型的特点,并且加入了二者所忽略的风险分析。

螺旋模型的每个周期都包含制定计划,风险分析、实施工程和评审四个阶段。开发过程每迭代一次,螺旋线就增加一周,软件开发前进一个层次,系统生成一个新版本,软件开发时间与成本又有新投入,最后得到 一个用户满意的软件版本。

“一个有效的企业架构(Enterprise Architecture,EA)对企业的生存和发展具有决定性的作用,是企业通过IT获得竞争优势的不可缺少的途径。“以技术领域划分又涉及:

高并发原则(无状态,服务化,拆分,队列机制,并发),

高可用原则(降级,限流,回滚,灾备恢复),

业务设计(幂等设计,防重设计,流程可定义,状态与状态机,文档与注释,后台系统自动化与审批化),

高可用设计(负载均衡与反向代理,隔离(线程隔离,进程隔离,集群隔离,机房隔离,读写分离,动静分离,爬虫、热点隔离,资源隔离)),

限流设计(限流算法,分布式限流,接入层限流,应用限流),

降级设计(自动降级,手动降级,读写降级,多级降级,熔断降级),

超时去重设计(代理层超时,web容器超时,中间件超时,持久层超时,业务端超时,前端通讯超时),

回滚机制(事务回滚,代码回滚,部署回滚,数据版本回滚,静态资源回滚)

压测及预案(线上压测,线下压测,应急预案,灾备预案),

缓存设计(堆缓存,磁盘缓存,分布式缓存,多级缓存,应用缓存,缓存服务化),

连接池(数据库连接池,爬虫连接池,线程池),

异步并发(异步callbackk,异步future,异步web),

扩容设计(单体垂直和水平扩容,应用拆分,服务拆分,数据库拆分,前端拆分)

队列设计(缓冲队列,任务队列,消息队列,请求队列,总线队列,混合队列)等。但是显然基于个人擅长点所组织的架构不是好的选择,因此在此简介业务评测比较好的TOGAF(开放组织架构体系,百度百科),其中华为,甲骨文,IBM等企业已经使用该模型。

开放组体系结构框架(TOGAF)是一个行业标准的体系架构框架,它能被任何希望开发一个信 息系统体系架构在组织内部使用的组织自由使用。TOGAF 企业版v8 是为开发企业架构 的一个详细的方法和相关支持资源的集合。

开放群组企业架构框架,有4 种被接受为企业架构的子集的架构,TOGAF 都支持:

业务架构

定义了商业策略,管理,组织和关键业务流程。

应用架构

这种结构为待配置的个人应用系统提供一个蓝图,从他们的交互,他们的关系到该组织核心的业务流程。

数据架构

这个描述一个组织逻辑的和物理的数据资产和数据管理资源的结构。

技术架构

它描述了支持核心部署和关键任务应用的软件基础设施。这种软件有时也叫做中间件。

推荐阅读:大数据学习线路:https://www.imooc.com/article/259721

               大数据hadoop的13个开源工具:https://www.imooc.com/article/264971




2人推荐
随时随地看视频
慕课网APP