软考架构师例文-论非功能性需求对企业应用架构设计的影响

本文主要是介绍软考架构师例文-论非功能性需求对企业应用架构设计的影响,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

        在准备架构师考试过程中发现可供参考的论文范围非常少且内容陈旧给学习带来很大烦恼,通过考试后把我准备的论文共享出来水平有限但内容格式迎合考试,希望给大家一个参考。范围以2014年试题二“论非功能性需求对企业应用架构设计的影响”为例书写,第一部分为论题要求,第二部分为论文导图(用于书写前整理思路),第三部分为范围内容。

第一部分

        企业应用架构(Enterprise Application Architecture)描述了企业IT系统的功能和技术实现内容,它在企业信息化建设中起到了统一规划、承上启下的作用,向上承接了企业战略发展方向和业务模式,向下规划和指导企业各IT系统的定位和功能。企业应用架构包括了企业的应用架构蓝图、架构标准、系统的边界和定义、系统间的关联关系等。其中非功能性需求是进行企业应用架构设计时需要重点考虑的因素,不同类型的非功能性需求从不同侧面影响应用系统的架构设计。

请围绕“非功能性需求对企业应用架构设计的影响”论题,依次从以下三个方面进行论述。

1.概要叙述你参与分析和开发的企业应用系统项目以及你所担任的主要工作。
2.分析在企业应用架构设计中应该考虑哪些非功能性需求,详细阐述这些非功能性需求是如何影响架构设计的。
3.详细说明你所参与的企业应用系统项目中,在进行系统架构设计时,考虑了哪些非功能性需求,如何通过架构设计满足了系统的这些非功能性需求。

第二部分

 

第三部分                       

                        论非功能性需求对企业应用架构设计的影响

【摘要】

        2017年5月,我参加了某省质量技术监督局“生产制造一体化监管平台”项目(以下简称一体化平台),担任系统架构师职务,负责整体架构设计与中间件选型。该系统以监管企业生产制造为主线,旨在帮助各级监督部门解决监管企业生产、报审、送检、勘验、巡检和执法等问题。本文以一体化平台为例,论述了非功能需求对系统架构设计的影响。并详细说明在项目实施过程中如何通过架构设计来满足非功能需求。

实践证明在架构设计中通过对非功能性需求的满足,保证了系统在质量属性和约束条件上与客户要求保持一致,使开发工作取得了成功。一体化平台于2018年10月验收上线,目前已稳定运行1年时间,得到了各级监管部门和企业一致认可和好评。

【背景】

        质量技术监督在生产领域、市场流通领域等方面都起到至关重要的作用,关乎到企业生产和人民日常生活。某省质量技术监督局在信息化方面起步较早,先后建设了数套专项系统,但缺乏对业务的统一监管,为贯彻落实国家市场监督总局《关于加快推进质量体系监管信息化建设要求》,一体化平台的建设工作受到各级领导的关注。项目建设目标覆盖省、市、县区三级质量监管部门及全省三十多万家企业,为工业生产、报审、送检、勘验、巡检和执法工作提供支持。我所在公司长期从事相关行业的软件开发,对质量监督领域有着丰富经验,因此顺利中标承建了该项目,初期投入15名技术人员由我担任架构师职务,负责软件架构设计和中间件选型。

        项目启动后通过对业务的梳理,初步将一体化平台划分为四大模块,其中政务服务模块针对的是通过互联网访问系统的企业用户,在功能上主要包括报审、送检、公示和政策法规宣传等功能;而其它三个模块针对的是通过电子政务外网访问系统的监管部门和事业单位用户,其中运行管理模块主要功能包括审批、勘验、颁证、建档;企业监管模块主要功能包括巡检、执法;电子监察模块主要功能包括实时监控、预警纠错和效能评估。

【回应论点二】

        在架构设计开始阶段我意识到非功能性需求对架构设计的重要性。虽然在需求分析时功能性需求是客户普遍关注焦点,但作为架构师绝不能忽视对非功能性需求的分析,它与系统的总体特性相关,从质量属性和条件约束两个方面同时对架构设计产生影响。在架构设计中普遍关注的质量属性包含性能、可用性、安全性、可修改性、可靠性、易用性、可测试性等,其中前4项是质量属性效应树的重要组成部分,通过质量属性效应树又可进一步分析出架构设计中的敏感点、权衡点和问题决策带来的风险隐患。而条件约束主要来源于用户的限制包括了预算、机构政策和其它软硬件交互的外部因素,例如遵守什么样的行业标准、使用哪个厂商的产品、采用哪种开发技术等。下面从实施性能、可用性、安全性、可修改性四个质量属性和过程中受到的条件约束两方面,详细说明如何通过架构设计来满足非功能需求。

【回应论点三】

 一、性能设计,性能是指系统响应能力,包括速度、吞吐量和持续高速性三方面的要求。针对性能方客户提出第一,系统应具有快速的响应能力,在网络负载正常情况下打开界面的平均响应时间小于1.5秒,在线查询和提交操作的处理时间小于2秒;第二,系统应能承受每年11月底全省企业集中年审带来的负载压力。对于性能需求在架构设计中可选的方案有优先级队列、增加计算资源、减少计算开销、引入并发机制、采用资源调度等。本次架构设计上我采用了优先级队列和增加计算资源两个方案,首先采用RabbitMQ消息组件使系统以消息为中心进行交互,可保证请求的处理顺序,特别是在高并发情况下可解决流量削峰问题。然后在数据层使用了读写分离技术,采用Memcache作为查询数据库,分担主库负载提高查询速度。但在接下来的主库设计上受到了用户方来自政策的约束,由于近年来政府部门推行国产化,新建系统必须使用国产数据库,经过对比分析最后选择了在政府部门应用较广的达梦数据库作为主库使用。

二、可用性设计,可用性是指系统能正常运行的时间比。针对这个方面客户提出第一,必须保证系统7*24小时持续提高服务的能力;第二,在网络失效或主机断电的情况下,系统必须保证在3分钟内启用备用设备恢复正常服务。对可用性需求在架构设计中可选的方案有心跳、Ping/Echo、冗余、进程监视器。本次架构设计上我采用了心跳技术和冗余技术,使用keepalived组件构件双机热备环境,用户通过虚拟IP访问,当Master宕机自动切换到Backup继续运行,防止因为单点故障导致系统瘫痪。但接下来在与信息中心沟通时受到了硬件资源上的约束,因服务器资源紧张部署策略不得不由双机热备后改为双机互备,在性能和可用性上求得了平衡。

三、安全性设计,安全性是指软件系统可向合法用户提供服务,以及阻止非授权使用服务的能力。针对这个方面用户提出必须保证企业用户通过互联网访问系统的安全防止欺诈和篡改。对安全性需求在架构设计中可选的方案有用户认证,用户授权,追踪审计,限制访问。本次架构设计上我采用了用户认证技术,使用SSL证书+Ukey双向认证方式,只须插入Ukey即可登录系统,每个Ukey在服务端均与用户身份进行了绑定。但在方案评审时受到了用户方预算上的约束,由于因CA每年会向单个Ukey设备收取200元左右的年费,全省企业将是一笔巨款,因此经过折中确定为仅向大型国有企业发放Ukey,并且费用自理,以节省资金预算。对于普通中小型企业采用了服务端SSL证书+客户端动态验证方式。

四、可修改性设计,可修改性是指能快速地并以较高性价比对系统进行变更的能力。针对这个方面用户提出近年来国家在不断推进政府改革工作,系统应该能够适应不断变化的业务环境,可快速的实现业务的新增、修改。对可修改性需求在架构设计中可选的方案有抽象、信息隐藏、限制通信路径、运行时注册。本次架构设计上我采用Java语言作为主开发语言,保证程序的抽象和信息隐藏,同时使用Spring框架管理JavaBean运行时注册,最后在架构上采用了服务化设计,将系统拆分成若干独立服务相互间通过消息进行通信,降低系统耦合度。但在设计与异构系统通信时,受到了来自用户现行技术标准上的约束,由于已投入使用的部分旧系统仅支持webervice技术,因此一体化平台在只能采用相同的方式与这些系统进行交互。

【结尾】

        实践证明在架构设计中通过对非功能性需求的满足,保证了系统在质量属性和约束条件上与客户要求保持一致,使开发工作取得了成功。但项目过程中也遇到过问题,因客户单位部分用户派驻到办事大厅工作,窗口办公需要配合高拍仪、读卡器等硬件设备,而浏览器出于安全考虑隔离了web程序调取本地资源仅提供有限支持,给系统推广带来了困难。对此我采用了富客户端技术,使用Electron框架封装了一个客户端程序,专门负责调取硬件资源及时解决了该问题,没有对项目造成实质影响。

        通过项目组全体成员的共同努力,一体化平台于2018年10月完成验收工作正式上线,截至目前系统运行稳定运维工作量可控,得到了监管部门和企业用户的一致认可和好评。通过这个项目本人更进一步了解到系统架构设计的重要性,同时积累了很多宝贵的经验。在今后的工作中我将不断总结和提升专业技术能力,争取为我国信息化事业贡献一份力量。

这篇关于软考架构师例文-论非功能性需求对企业应用架构设计的影响的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


原文地址:https://blog.csdn.net/hamster204/article/details/103596456
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.chinasem.cn/article/388475

相关文章

SpringBoot中的404错误:原因、影响及解决策略

《SpringBoot中的404错误:原因、影响及解决策略》本文详细介绍了SpringBoot中404错误的出现原因、影响以及处理策略,404错误常见于URL路径错误、控制器配置问题、静态资源配置错误... 目录Spring Boot中的404错误:原因、影响及处理策略404错误的出现原因1. URL路径错

Java架构师知识体认识

源码分析 常用设计模式 Proxy代理模式Factory工厂模式Singleton单例模式Delegate委派模式Strategy策略模式Prototype原型模式Template模板模式 Spring5 beans 接口实例化代理Bean操作 Context Ioc容器设计原理及高级特性Aop设计原理Factorybean与Beanfactory Transaction 声明式事物

软考系统规划与管理师考试证书含金量高吗?

2024年软考系统规划与管理师考试报名时间节点: 报名时间:2024年上半年软考将于3月中旬陆续开始报名 考试时间:上半年5月25日到28日,下半年11月9日到12日 分数线:所有科目成绩均须达到45分以上(包括45分)方可通过考试 成绩查询:可在“中国计算机技术职业资格网”上查询软考成绩 出成绩时间:预计在11月左右 证书领取时间:一般在考试成绩公布后3~4个月,各地领取时间有所不同

系统架构师考试学习笔记第三篇——架构设计高级知识(20)通信系统架构设计理论与实践

本章知识考点:         第20课时主要学习通信系统架构设计的理论和工作中的实践。根据新版考试大纲,本课时知识点会涉及案例分析题(25分),而在历年考试中,案例题对该部分内容的考查并不多,虽在综合知识选择题目中经常考查,但分值也不高。本课时内容侧重于对知识点的记忆和理解,按照以往的出题规律,通信系统架构设计基础知识点多来源于教材内的基础网络设备、网络架构和教材外最新时事热点技术。本课时知识

SWAP作物生长模型安装教程、数据制备、敏感性分析、气候变化影响、R模型敏感性分析与贝叶斯优化、Fortran源代码分析、气候数据降尺度与变化影响分析

查看原文>>>全流程SWAP农业模型数据制备、敏感性分析及气候变化影响实践技术应用 SWAP模型是由荷兰瓦赫宁根大学开发的先进农作物模型,它综合考虑了土壤-水分-大气以及植被间的相互作用;是一种描述作物生长过程的一种机理性作物生长模型。它不但运用Richard方程,使其能够精确的模拟土壤中水分的运动,而且耦合了WOFOST作物模型使作物的生长描述更为科学。 本文让更多的科研人员和农业工作者

两个月冲刺软考——访问位与修改位的题型(淘汰哪一页);内聚的类型;关于码制的知识点;地址映射的相关内容

1.访问位与修改位的题型(淘汰哪一页) 访问位:为1时表示在内存期间被访问过,为0时表示未被访问;修改位:为1时表示该页面自从被装入内存后被修改过,为0时表示未修改过。 置换页面时,最先置换访问位和修改位为00的,其次是01(没被访问但被修改过)的,之后是10(被访问了但没被修改过),最后是11。 2.内聚的类型 功能内聚:完成一个单一功能,各个部分协同工作,缺一不可。 顺序内聚:

【软考】希尔排序算法分析

目录 1. c代码2. 运行截图3. 运行解析 1. c代码 #include <stdio.h>#include <stdlib.h> void shellSort(int data[], int n){// 划分的数组,例如8个数则为[4, 2, 1]int *delta;int k;// i控制delta的轮次int i;// 临时变量,换值int temp;in

系统架构师-ERP+集成

ERP   集成平台end:就懒得画新的页

Qt中window frame的影响

window frame 在创建图形化界面的时候,会创建窗口主体,上面会多出一条,周围多次一圈细边,这就叫window frame窗口框架,这是操作系统自带的。 这个对geometry的一些属性有一定影响,主要体现在Qt坐标系体系: 窗口当中包含一个按钮,这个按钮的坐标系是以父元素为参考,那么这个参考是widget本体作为参考,还是window frame作为参考,这两种参考体系都存在

[Linux Kernel Block Layer第一篇] block layer架构设计

目录 1. single queue架构 2. multi-queue架构(blk-mq)  3. 问题 随着SSD快速存储设备的发展,内核社区越发发现,存储的性能瓶颈从硬件存储设备转移到了内核block layer,主要因为当时的内核block layer是single hw queue的架构,导致cpu锁竞争问题严重,本文先提纲挈领的介绍内核block layer的架构演进,然