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

【软考】子系统划分

目录

          • 1. 子系统划分的原则
            • 1.1 子系统要具有相对独立性
            • 1.2 子系统之间数据的依赖性尽量小
            • 1.3 子系统划分的结果应使数据几余较小
            • 1.4 子系统的设置应考虑今后管理发展的需要
            • 1.5 子系统的划分应便于系统分阶段实现
            • 1.6 子系统的划分应考虑到各类资源的充分利用
          • 2. 子系统结构设计
          • 3. 例题
            • 3.1 例题1

1. 子系统划分的原则
1.1 子系统要具有相对独立性
  • 1.子系统的划分,必须使得子系统的内部功能、信息等各方面的凝聚性较好
  • 2.子系统独立可以减少子系统间的相互影响,有利于多人分工开发不同的模块,从而提高软件产品的生产率,保证软件产品的质量,同时也增强了系统的可维护性和适应性。
1.2 子系统之间数据的依赖性尽量小
  • 1.子系统之间的联系要尽量减少,接口要简单明确。
  • 2.一个内部联系强的子系统对外部的联系必然很少,所以在划分的时候,应将联系较多者列入子系统内部,而剩余的一些分散、跨度比较大的联系,就成为这些子系统间的联系和接口。
  • 3.这样划分的子系统,将来调试、维护和运行都是非常方便的。
1.3 子系统划分的结果应使数据几余较小
  • 1.如果把相关的功能数据分布到各个不同的子系统中,则会有大量的原始数据需要调用,大量的中间结果需要保存和传递,大量的计算工作将要重复进行,从而使得程序结构紊乱,数据几余,不仅给编码带来很大的困难,而且系统的工作效率也大大降低。
1.4 子系统的设置应考虑今后管理发展的需要
  • 1.子系统的设置仅依靠上述系统分析的结构是不够的,因为现存的系统由于各种原因,很可能没有考虑到一些高层次管理决策的要求。
1.5 子系统的划分应便于系统分阶段实现
  • 1.信息系统的开发是一项较大的工程,它的实现.般要分批进行,所以子系统的划分应能适应这种分期分批的实施。
  • 2.另外,子系统的划分还必须兼顾组织结构的要求。
1.6 子系统的划分应考虑到各类资源的充分利用
  • 1.一个适当的子系统划分应该既考虑有利于各种设备资源在开发过程中的搭配使用,又考虑到各类信息资源的合理分布和充分使用,以减少系统对网络资源的过分依赖,减少输入、输出和通信等设备压力。
2. 子系统结构设计
  • 1.子系统结构设计的任务是确定划分后的子系统模块结构,并画出模块结构图。
  • 2.必须考虑以下几个问题:
    (1)每个子系统如何划分成多个模块。
    (2)如何确定子系统之间、模块之间传送的数据及其调用关系。
    (3)如何评价并改进模块结构的质量。
    (4)如何从数据流图导出模块结构图
3. 例题
3.1 例题1
  • 1.题目
在进行子系统结构设计时,需要确定划分后的子系统模块结构,并画出模块结构图。该过程不需要考虑(B)。
A.每个子系统如何划分成多个模块
B.每个子系统采用何种数据结构和核心算法
C.如何确定子系统之间、模块之间传送的数据及其调用关系
D.如何评价并改进模块结构的质量
  • 2.解析
1.系统模块结构设计的任务是确定划分后的子系统的模块结构,并画出模块结构图,这个过程中必须考虑这样
几个问题:
2.每个子系统如何划分成若干个模块;
3.如何确定子系统之间、模块之间传送的数据及其调用关系;
4.如何评价并改进模块结构的质量;
5.如何从数据流图导出模块结构图。

相关文章:

【软考】子系统划分

目录 1. 子系统划分的原则1.1 子系统要具有相对独立性1.2 子系统之间数据的依赖性尽量小1.3 子系统划分的结果应使数据几余较小1.4 子系统的设置应考虑今后管理发展的需要1.5 子系统的划分应便于系统分阶段实现1.6 子系统的划分应考虑到各类资源的充分利用 2. 子系统结构设计3.…...

【Python】selenium获取鼠标在网页上的位置,并定位到网页位置模拟点击的方法

在使用Selenium写自动化爬虫时,遇到验证码是常事了。我在写爬取测试的时候,遇到了点击型的验证码,例如下图这种: 这种看似很简单,但是它居然卡爬虫?用简单的点触验证码的方法来做也没法实现 平常的点触的方…...

【C++ 真题】B2078 含 k 个 3 的数

含 k 个 3 的数 题目描述 输入两个正整数 m m m 和 k k k&#xff0c;其中 1 < m ≤ 1 0 15 1 \lt m \leq 10^{15} 1<m≤1015&#xff0c; 1 < k ≤ 15 1 \lt k \leq 15 1<k≤15 &#xff0c;判断 m m m 是否恰好含有 k k k 个 3 3 3&#xff0c;如果满足条…...

蓝桥杯省赛真题——冶炼金属

问题描述 小蓝有一个神奇的炉子用于将普通金属 O 冶炼成为一种特殊金属 X。这个炉子有一个称作转换率的属性 V&#xff0c;V 是一个正整数&#xff0c;这意味着消耗 V 个普通金属 O 恰好可以冶炼出一个特殊金属 X&#xff0c;当普通金属 O 的数目不足 V 时&#xff0c;无法继续…...

【Mac苹果电脑安装】DBeaverEE for Mac 数据库管理工具软件教程【保姆级教程】

Mac分享吧 文章目录 DBeaverEE 数据库管理工具 软件安装完成&#xff0c;打开效果图片Mac电脑 DBeaverEE 数据库管理工具 软件安装——v24.21️⃣&#xff1a;下载软件2️⃣&#xff1a;安装JDK&#xff0c;根据下图操作步骤提示完成安装3️⃣&#xff1a;安装DBeaverEE&#…...

数据仓库中的维度建模:深入理解与案例分析

数据仓库中的维度建模&#xff1a;深入理解与案例分析 维度建模是数据仓库设计中最常用的一种方法&#xff0c;旨在简化数据访问、提高查询效率&#xff0c;特别适用于需要对数据进行多维分析的场景。本文将深入探讨维度建模的核心概念、设计步骤以及如何将其应用于实际案例中…...

前端打印功能(vue +springboot)

后端 后端依赖生成pdf的方法pdf转图片使用(用的打印模版是带参数的 ,参数是aaa)总结 前端页面 效果 后端 依赖 依赖 一个是用模版生成对应的pdf,一个是用来将pdf转成图片需要的 <!--打印的--><dependency><groupId>net.sf.jasperreports</groupId>&l…...

中间件有哪些分类?

中间件的分类 中间件是位于操作系统和应用程序之间的软件&#xff0c;它提供了一系列服务来简化分布式系统中的应用程序开发和集成。中间件可以根据其功能和用途被分为不同的类别。以下是中间件的一些主要分类&#xff1a; 1. 通信处理&#xff08;消息&#xff09;中间件&am…...

开始新征程__10.13

好久没有更新 csdn 了&#xff0c;身边的人都说 csdn 水&#xff0c;但是在我看来&#xff0c;它在我大一这一年里对我的帮助很大&#xff0c;最近上账号看看&#xff0c;看见了网友评论&#xff0c;哈哈&#xff0c;决定以后还是继续更新&#xff0c;分享自己的学习心得。...

SAP 联合创始人谈Home Office

软件公司 SAP 的家庭办公室规定继续引发激烈争论&#xff0c;其联合创始人哈索-普拉特纳&#xff08;Hasso Plattner&#xff09;对此也有明确看法。 沃尔多夫--年初&#xff0c;SAP 首席执行官克里斯蒂安-克莱因&#xff08;Christian Klein&#xff09;向员工宣誓 "努力…...

基于Jenkins+K8S构建DevOps自动化运维管理平台

目录 1.k8s助力DevOps在企业落地实践 1.1 传统方式部署项目为什么发布慢&#xff0c;效率低&#xff1f; 1.2 上线一个功能&#xff0c;有多少时间被浪费了&#xff1f; 1.3 如何解决发布慢&#xff0c;效率低的问题呢&#xff1f; 1.5 什么是DevOps&#xff1f; 1.5.1 敏…...

【OpenCV】(一)—— 安装opencv环境

【OpenCV】&#xff08;一&#xff09;—— 安装opencv环境 OpenCV&#xff08;Open Source Computer Vision Library&#xff09;是一个开源的计算机视觉和机器学习软件库。OpenCV 是用 C 编写的&#xff0c;但它也有 Python、Java 和 MATLAB 接口&#xff0c;并支持 Windows…...

MybatisPlus操作符和运算值

好久没有更新了&#xff0c;这次更新一个当前端需要对运算符和运算值都需要前端传递给后端&#xff0c;动态拼接运算条件时的处理方法。 1、踩雷 查询年龄 >20&#xff0c;其中>前端下拉框选择&#xff0c;20值前端下拉框选择 1&#xff09;用户表&#xff1a; CREAT…...

Index-1.9B模型部署教程

一、介绍 Index-1.9B 系列是 Index 系列型号的轻量级版本&#xff0c;包含以下型号&#xff1a; Index-1.9B 基础&#xff1a;具有 19 亿个非嵌入参数的基础模型&#xff0c;在 2.8T 主要为中文和英文的语料上进行预训练&#xff0c;在多个评测基准上与同级别模型相比领先。I…...

C语言 | Leetcode C语言题解之第468题验证IP地址

题目&#xff1a; 题解&#xff1a; char * validIPAddress(char * queryIP) {int len strlen(queryIP);if (strchr(queryIP, .)) {// IPv4int last -1;for (int i 0; i < 4; i) {int cur -1;if (i 3) {cur len;} else {char * p strchr(queryIP last 1, .);if (p…...

Qt自定义一个圆角对话框

如何得到一个圆角对话框&#xff1f; 步骤&#xff1a; 1、继承自QDiaglog 2、去掉系统自带的边框 3、设置背景透明,不设置4个角会有多余的部分出现颜色 4、对话框内部添加1个QWidget&#xff0c;给这个widget设置圆角&#xff0c;并添加到布局中让他充满对话框 5、后续对…...

C++ 中的自旋锁应用:SpinLockManual、SpinLockGuard 和 SpinLockTryGuard

在多线程编程中,同步机制是确保线程安全的关键。自旋锁(Spin Lock)是一种常见的同步机制,它通过忙等待(busy-waiting)的方式来实现线程间的互斥访问。在 C++ 中,我们可以使用 std::atomic_flag 来实现自旋锁。本文将介绍如何使用 SpinLockManual、SpinLockGuard 和 Spin…...

计算机网络 tcp和udp

目录 一、TCP 建立连接-TCP 三次握手 1&#xff09; 什么是半连接队列和全连接队列&#xff1f; 2&#xff09; 为什么要三次握手? 3&#xff09; 三次握手过程中可以携带数据吗&#xff1f; 断开连接-TCP 四次挥手 1&#xff09; 为什么要四次挥手&#xff1f; 2&…...

React(一) 认识React、熟悉类组件、JSX书写规范、嵌入变量表达式、绑定属性

文章目录 一、初始React1. React的基本认识2. Hello案例2.1 三个依赖2.2 渲染页面2.3 hello案例完整代码 二、类组件1. 封装类组件2. 组件里的数据3. 组件里的函数 (重点)4. 案例练习(1) 展示电影列表 三、JSX语法1. 认识JSX2. JSX书写规范及注释3. JSX嵌入变量作为子元素4. JS…...

计算机网络 2024 11 10

计算机网络 - 知乎计算机网络&#xff08;四&#xff09;—— 网络层&#xff08;1、2&#xff09;&#xff1a;网络层概述、网络层提供的两种服务_以下属于网络层范畴的是a透明传输比特流b媒体接入控制c ip地址d-CSDN博客 湖科大教书匠的个人空间-湖科大教书匠个人主页-哔哩哔…...

第19节 Node.js Express 框架

Express 是一个为Node.js设计的web开发框架&#xff0c;它基于nodejs平台。 Express 简介 Express是一个简洁而灵活的node.js Web应用框架, 提供了一系列强大特性帮助你创建各种Web应用&#xff0c;和丰富的HTTP工具。 使用Express可以快速地搭建一个完整功能的网站。 Expre…...

CTF show Web 红包题第六弹

提示 1.不是SQL注入 2.需要找关键源码 思路 进入页面发现是一个登录框&#xff0c;很难让人不联想到SQL注入&#xff0c;但提示都说了不是SQL注入&#xff0c;所以就不往这方面想了 ​ 先查看一下网页源码&#xff0c;发现一段JavaScript代码&#xff0c;有一个关键类ctfs…...

解决Ubuntu22.04 VMware失败的问题 ubuntu入门之二十八

现象1 打开VMware失败 Ubuntu升级之后打开VMware上报需要安装vmmon和vmnet&#xff0c;点击确认后如下提示 最终上报fail 解决方法 内核升级导致&#xff0c;需要在新内核下重新下载编译安装 查看版本 $ vmware -v VMware Workstation 17.5.1 build-23298084$ lsb_release…...

P3 QT项目----记事本(3.8)

3.8 记事本项目总结 项目源码 1.main.cpp #include "widget.h" #include <QApplication> int main(int argc, char *argv[]) {QApplication a(argc, argv);Widget w;w.show();return a.exec(); } 2.widget.cpp #include "widget.h" #include &q…...

Robots.txt 文件

什么是robots.txt&#xff1f; robots.txt 是一个位于网站根目录下的文本文件&#xff08;如&#xff1a;https://example.com/robots.txt&#xff09;&#xff0c;它用于指导网络爬虫&#xff08;如搜索引擎的蜘蛛程序&#xff09;如何抓取该网站的内容。这个文件遵循 Robots…...

MySQL 8.0 OCP 英文题库解析(十三)

Oracle 为庆祝 MySQL 30 周年&#xff0c;截止到 2025.07.31 之前。所有人均可以免费考取原价245美元的MySQL OCP 认证。 从今天开始&#xff0c;将英文题库免费公布出来&#xff0c;并进行解析&#xff0c;帮助大家在一个月之内轻松通过OCP认证。 本期公布试题111~120 试题1…...

基于Java Swing的电子通讯录设计与实现:附系统托盘功能代码详解

JAVASQL电子通讯录带系统托盘 一、系统概述 本电子通讯录系统采用Java Swing开发桌面应用&#xff0c;结合SQLite数据库实现联系人管理功能&#xff0c;并集成系统托盘功能提升用户体验。系统支持联系人的增删改查、分组管理、搜索过滤等功能&#xff0c;同时可以最小化到系统…...

Vue ③-生命周期 || 脚手架

生命周期 思考&#xff1a;什么时候可以发送初始化渲染请求&#xff1f;&#xff08;越早越好&#xff09; 什么时候可以开始操作dom&#xff1f;&#xff08;至少dom得渲染出来&#xff09; Vue生命周期&#xff1a; 一个Vue实例从 创建 到 销毁 的整个过程。 生命周期四个…...

DeepSeek源码深度解析 × 华为仓颉语言编程精粹——从MoE架构到全场景开发生态

前言 在人工智能技术飞速发展的今天&#xff0c;深度学习与大模型技术已成为推动行业变革的核心驱动力&#xff0c;而高效、灵活的开发工具与编程语言则为技术创新提供了重要支撑。本书以两大前沿技术领域为核心&#xff0c;系统性地呈现了两部深度技术著作的精华&#xff1a;…...

用递归算法解锁「子集」问题 —— LeetCode 78题解析

文章目录 一、题目介绍二、递归思路详解&#xff1a;从决策树开始理解三、解法一&#xff1a;二叉决策树 DFS四、解法二&#xff1a;组合式回溯写法&#xff08;推荐&#xff09;五、解法对比 递归算法是编程中一种非常强大且常见的思想&#xff0c;它能够优雅地解决很多复杂的…...