结合系统架构设计的非功能性需求开发一套文化用品商城系统

本文主要是介绍结合系统架构设计的非功能性需求开发一套文化用品商城系统,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

案例

        阅读以下关于软件系统设计的叙述,在答题纸上回答问题 1 至问题 3。

【题目】

        某文化产业集团委托软件公司开发一套文化用品商城系统,业务涉及文化用品销售、定制、竞拍和点评等板块,以提升商城的信息化建设水平。该软件公司组织项目组完成了需求调研,现已进入到系统架构设计阶段。考虑到系统需求对架构设计决策的影响,项目组先列出了可能影响系统架构设计的部分需求如下:

        (a)用户界面支持用户的个性化定制;
        (b)系统需要支持当前主流的标准和服务,特别是通信协议和平台接口;
        (c)用户操作的响应时间应不大于 3 秒,竞拍板块不大于 1 秒;
        (d)系统具有故障诊断和快速恢复能力;
        (e)用户密码需要加密传输;
        (f)系统需要支持不低于 2G 的数据缓存;
        (g)用户操作停滞时间超过一定时限需要重新登录验证;
        (h)系统支持用户选择汉语、英语或法语三种语言之一进行操作。

        项目组提出了两种系统架构设计方案:瘦客户端 C/S 架构和胖客户端 C/S 架构,经过对上述需求逐条分析和讨论,最终决定采用瘦客户端 C/S 架构进行设计。

【问题 1】(8 分)

        在系统架构设计中,决定系统架构设计的非功能性需求主要有四类:操作性需求、性能需求、安全性需求和文化需求。请简要说明四类需求的含义。

【问题 2】(8 分)

        根据表 1-1 的分类,将题干所给出的系统需求(a)~(h)分别填入(1)~(4)。

表 1-1 需求分类
需求类别系统需求
操作性需求(1)
性能需求(2)
安全性需求(3)
文化需求(4)

【问题 3】(9 分)

        请说明瘦客户端 C/S 架构能够满足题干中给出的哪些系统需求(只需要回答出三个系统需
求)。

【答案】

【问题 1】解析

        操作性需求:与用户操作使用系统相关的一些需求。
        性能需求:指响应时间、吞吐量、准确性、有效性、资源利用率等与系统完成任务效率相关的指标。可靠性、可用性等指标可归为此类。
        安全性需求:系统向合法用户提供服务并阻止非授权用户使用服务方面的系统需求。
        文化需求:带有文化背景因素的系统需求。

【问题 2】解析

        (1):(a)、(b)
        (2):(c)、(d)、(f)
        (3):(e)、(g)
        (4):(h)

【问题 3】解析

        这似乎是个伪命题,如果要做,这些需求都应该能满足啊。那么退而求其次,只能理解为哪些需求使用瘦客户端比胖客户端更合适(因为题目是在胖与瘦之间做的选择)。此时,好像也很难做出准确的判断。

        (a)胖和瘦无明显差异,要做到用户界面的个性化应该都没有问题,而且难说哪种更强。毕竟瘦的只是把业务逻辑从客户端放到了服务器上。
        (b)胖和瘦无明显差异
        (c)胖客户端,在客户端的运算能力强一些。瘦客户端可以在服务端面用集群做支持。谁更强一点?
        (d)瘦客户端将业务逻辑迁移到应用服务器上,所以有故障只要修复服务器上的内容,而胖客户端要更新所有客户端,工作量大,所以此情况下瘦客户端有优势
        (e)胖客户端的后端是数据库,没有业务逻辑,此时要做加密传输没有基础,但瘦客户端可以做到
        (f )胖客户端做到 2G 数据缓存很容易,而瘦客户端不现实。
        (g)瘦客户端与胖客户端均可做到
        (h)瘦客户端与胖客户端均可做到

        以上满足条件的任选 3 个 就可以了。

相关推荐

2017年系统架构师案例分析试题一-CSDN博客文章浏览阅读1.1k次,点赞37次,收藏48次。确定软件功能需求、软件质量属性、架构风险、架构敏感点、架构权衡点等内容,并采用效用树这一工具对架构进行评估。架构敏感点、架构权衡点等内容,并采用效用树这一工具对架构进行评估。系统架构风险:架构设计中潜在的、存在问题的架构决策所带来的隐患。敏感点:为了实现某种特定的质量属性,一个或多个构件所具有的特性。权衡点:影响多个质量属性的特征,是多个质量属性的敏感点。https://shuaici.blog.csdn.net/article/details/1414254672016年系统架构师案例分析试题一-CSDN博客文章浏览阅读947次,点赞24次,收藏41次。2016年系统架构师案例分析试题一。不同的架构设计决策是架构师必须具有的基本能力:从交互方式方面看,管道-过滤器风格具有顺序结构或有限的循环结构;采用数据仓储风格时,工具之间无直接交互,通过数据仓储间接交互。从数据结构方面看,管道-过滤器风格具有数据驱动的特征,数据到来后就进行计算;数据仓储风格以文件或模型为主要数据结构。从控制结构方面看,管道-过滤器风格具有顺序结构或有限的循环结构;数据仓储风格则以业务功能驱动。https://shuaici.blog.csdn.net/article/details/1413268302015年系统架构师案例分析试题一-CSDN博客文章浏览阅读817次,点赞36次,收藏37次。系统架构风险:架构设计中潜在的、存在问题的架构决策所带来的隐患。敏感点:为了实现某种特定的质量属性,一个或多个构件所具有的特性。权衡点:影响多个质量属性的特征,是多个质量属性的敏感点。https://shuaici.blog.csdn.net/article/details/141053286

这篇关于结合系统架构设计的非功能性需求开发一套文化用品商城系统的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1121829

相关文章

在C#中获取端口号与系统信息的高效实践

《在C#中获取端口号与系统信息的高效实践》在现代软件开发中,尤其是系统管理、运维、监控和性能优化等场景中,了解计算机硬件和网络的状态至关重要,C#作为一种广泛应用的编程语言,提供了丰富的API来帮助开... 目录引言1. 获取端口号信息1.1 获取活动的 TCP 和 UDP 连接说明:应用场景:2. 获取硬

JAVA系统中Spring Boot应用程序的配置文件application.yml使用详解

《JAVA系统中SpringBoot应用程序的配置文件application.yml使用详解》:本文主要介绍JAVA系统中SpringBoot应用程序的配置文件application.yml的... 目录文件路径文件内容解释1. Server 配置2. Spring 配置3. Logging 配置4. Ma

2.1/5.1和7.1声道系统有什么区别? 音频声道的专业知识科普

《2.1/5.1和7.1声道系统有什么区别?音频声道的专业知识科普》当设置环绕声系统时,会遇到2.1、5.1、7.1、7.1.2、9.1等数字,当一遍又一遍地看到它们时,可能想知道它们是什... 想要把智能电视自带的音响升级成专业级的家庭影院系统吗?那么你将面临一个重要的选择——使用 2.1、5.1 还是

基于Python开发电脑定时关机工具

《基于Python开发电脑定时关机工具》这篇文章主要为大家详细介绍了如何基于Python开发一个电脑定时关机工具,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1. 简介2. 运行效果3. 相关源码1. 简介这个程序就像一个“忠实的管家”,帮你按时关掉电脑,而且全程不需要你多做

高效管理你的Linux系统: Debian操作系统常用命令指南

《高效管理你的Linux系统:Debian操作系统常用命令指南》在Debian操作系统中,了解和掌握常用命令对于提高工作效率和系统管理至关重要,本文将详细介绍Debian的常用命令,帮助读者更好地使... Debian是一个流行的linux发行版,它以其稳定性、强大的软件包管理和丰富的社区资源而闻名。在使用

Java中的Opencv简介与开发环境部署方法

《Java中的Opencv简介与开发环境部署方法》OpenCV是一个开源的计算机视觉和图像处理库,提供了丰富的图像处理算法和工具,它支持多种图像处理和计算机视觉算法,可以用于物体识别与跟踪、图像分割与... 目录1.Opencv简介Opencv的应用2.Java使用OpenCV进行图像操作opencv安装j

Ubuntu系统怎么安装Warp? 新一代AI 终端神器安装使用方法

《Ubuntu系统怎么安装Warp?新一代AI终端神器安装使用方法》Warp是一款使用Rust开发的现代化AI终端工具,该怎么再Ubuntu系统中安装使用呢?下面我们就来看看详细教程... Warp Terminal 是一款使用 Rust 开发的现代化「AI 终端」工具。最初它只支持 MACOS,但在 20

windows系统下shutdown重启关机命令超详细教程

《windows系统下shutdown重启关机命令超详细教程》shutdown命令是一个强大的工具,允许你通过命令行快速完成关机、重启或注销操作,本文将为你详细解析shutdown命令的使用方法,并提... 目录一、shutdown 命令简介二、shutdown 命令的基本用法三、远程关机与重启四、实际应用

Python结合requests和Cheerio处理网页内容的操作步骤

《Python结合requests和Cheerio处理网页内容的操作步骤》Python因其简洁明了的语法和强大的库支持,成为了编写爬虫程序的首选语言之一,requests库是Python中用于发送HT... 目录一、前言二、环境搭建三、requests库的基本使用四、Cheerio库的基本使用五、结合req

Debian如何查看系统版本? 7种轻松查看Debian版本信息的实用方法

《Debian如何查看系统版本?7种轻松查看Debian版本信息的实用方法》Debian是一个广泛使用的Linux发行版,用户有时需要查看其版本信息以进行系统管理、故障排除或兼容性检查,在Debia... 作为最受欢迎的 linux 发行版之一,Debian 的版本信息在日常使用和系统维护中起着至关重要的作