企业执行流程

在作者能触及的编程开发行业,一般正规公司会包含软件开发流程管理和软件架构管理和员工管理。涉及范围如领导力和组织、RASCI工具、组织的设定、领导人具备的能力、员工管理和建设、构建可扩展的项目架构、故障问题的管理、危机管理和特殊情况解决、架构原则设立设定、生产环境的变更管理、敏捷架构设计、基准测试,性能测试,压测协助、服务降级和障碍回滚、可扩展和可分割架构原则设立、同步异步扩展设计、数据中心和云计算设立、全局性和周期性的划分与独立。那么接下来简单的对其中的一些热点问题做简单的概述和分析。

而软件开发一般包含采样、收集汇总数据、确认产品,立项评估,立项书与审核,详细设计文档和概要,软件开发,测试环节,提交工单上线等,根据ADMEMS(Architecture Design Method has been Extended to Method System)的架构体系设计包含如下:逻辑架构、物理架构、运行架构、开发架构、数据架构。软件设计思路和方法的一般过程,包括设计软件的功能和实现的算法和方法、软件的总体结构设计和模块设计、编程和调试、程序联调和测试以及编写、提交程序。

软件开发模型

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

打开网易新闻 查看精彩图片

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

分享之前我还是要推荐下我自己创建的大数据学习资料分享群 232840209,这是全国最大的大数据学习交流的地方,2000人聚集,不管你是小白还是大牛,小编我都挺欢迎,今天的源码已经上传到群文件,不定期分享干货,包括我自己整理的一份最新的适合2017年学习的前端资料和零基础入门教程,欢迎初学和进阶中的小伙伴。

打开网易新闻 查看精彩图片

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

打开网易新闻 查看精彩图片

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

打开网易新闻 查看精彩图片

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

打开网易新闻 查看精彩图片

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

业务架构

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

应用架构

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

数据架构

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

技术架构

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

官方解读:

TOGAF is a framework - a detailed method and a set of supporting tools - for developing an enterprise architecture. It may be used freely by any organization wishing to develop an enterprise architecture for use within that organization (see 4.5.1 Conditions of Use).

TOGAF is developed and maintained by members of The Open Group, working within the Architecture Forum (refer to www.opengroup.org/architecture). The original development of TOGAF Version 1 in 1995 was based on the Technical Architecture Framework for Information Management (TAFIM), developed by the US Department of Defense (DoD). The DoD gave The Open Group explicit permission and encouragement to create TOGAF by building on the TAFIM, which itself was the result of many years of development effort and many millions of dollars of US Government investment.

Starting from this sound foundation, the members of The Open Group Architecture Forum have developed successive versions of TOGAF and published each one on The Open Group public web site.

If you are new to the field of enterprise architecture and/or TOGAF, you are recommended to read the Executive Overview (refer to 1.2 Executive Overview), where you will find answers to questions such as:

What is an enterprise?

Why do I need an enterprise architecture?

Why do I need TOGAF as a framework for enterprise architecture?

截取其中一段:

TOGAF defines "enterprise" as any collection of organizations that has a common set of goals. For example, an enterprise could be a government agency, a whole corporation, a division of a corporation, a single department, or a chain of geographically distant organizations linked together by common ownership.

The term "enterprise" in the context of "enterprise architecture" can be used to denote both an entire enterprise - encompassing all of its information and technology services, processes, and infrastructure - and a specific domain within the enterprise. In both cases, the architecture crosses multiple systems, and multiple functional groups within the enterprise.

Confusion often arises from the evolving nature of the term "enterprise". An extended enterprise nowadays frequently includes partners, suppliers, and customers. If the goal is to integrate an extended enterprise, then the enterprise comprises the partners, suppliers, and customers, as well as internal business units.

The business operating model concept is useful to determine the nature and scope of the enterprise architecture within an organization. Large corporations and government agencies may comprise multiple enterprises, and may develop and maintain a number of independent enterprise architectures to address each one. However, there is often much in common about the information systems in each enterprise, and there is usually great potential for gain in the use of a common architecture framework. For example, a common framework can provide a basis for the development of an Architecture Repository for the integration and re-use of models, designs, and baseline data.