软件详细设计的工具啥?简述几种常见的详细设计工具
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了软件详细设计的工具啥?简述几种常见的详细设计工具相关的知识,希望对你有一定的参考价值。
软件详细设计的工具常见的有Pixso、Figma、Sketch、Adobe XD等。Pixso:全平台覆盖、精细化矢量设计、智能化布局、团队组件样式共享、社区和资源库、多人实时协作、高保真原型交互动画、成果一键交付、用户问题实时反馈、中文语言环境、本土设计系统、数据私有化。
Figma:全平台覆盖、精细化矢量设计、智能化布局、团队组件样式共享、社区和资源库仅社区、多人实时协作、高保真原型交互动画、成果一键交付。
Sketch:平台覆盖Mac OS、传统钢笔工具、多人实时协作、交互动画简单的点击式原型、成果借助第三方工具交付。
Adobe XD:平台覆盖Mac OS、Windows、传统钢笔工具、多人实时协作、成果需借助第三方工具交付。
相对比其他产品pixso的功能更加全面,操作便捷,拥有更多矢量网格、布尔运算、样式创建、智能排版等高阶功能,组件级自动布局,增加或删除内容都无需手动调整,智能排版,且自适应不同屏幕尺寸。
想要了解更多关于软件详细设计的工具的相关信息,推荐选择Pixso协同设计。团队成员面对一个复杂的设计项目,不再需要等主视觉完成后再进行子页面设计。在 Pixso 完全可以多人云端协作设计,实时同步字号、边框、颜色等各种细节。并且可以创建一个组件,在任何地方重复使用它,当主组件样式更新,所有组件将自动同步发生改变。
参考技术A
计算机软件总体分为系统软件和应用软件两大类:
系统软件是各类操作系统,如windows、Linux、UNIX等,还包括操作系统的补丁程序及硬件驱动程序,都是系统软件类。
应用软件可以细分的种类就更多了,如工具软件、游戏软件、管理软件等都属于应用软件类。
系统软件:
系统软件是负责管理计算机系统中各种独立的硬件,使得它们可以协调工作。系统软件使得计算机使用者和其他软件将计算机当作一个整体而不需要顾及到底层每个硬件是如何工作的。
一般来讲,系统软件包括操作系统和一系列基本的工具(比如编译器,数据库管理,存储器格式化,文件系统管理,用户身份验证,驱动管理,网络连接等方面的工具)。
具体包括以下四类:
1.各种服务性程序,如诊断程序、排错程序、练习程序等;
2.语言程序,如汇编程序、编译程序、解释程序;
3.操作系统;
4.数据库管理系统。
应用软件
应用软件是为了某种特定的用途而被开发的软件。它可以是一个特定的程序,比如一个图像浏览器。也可以是一组功能联系紧密,可以互相协作的程序的集合,比如微软的Office软件。也可以是一个由众多独立程序组成的庞大的软件系统,比如数据库管理系统。
较常见的有:
文字处理软... 计算机软件总体分为系统软件和应用软件两大类:
系统软件是各类操作系统,如windows、Linux、UNIX等,还包括操作系统的补丁程序及硬件驱动程序,都是系统软件类。
应用软件可以细分的种类就更多了,如工具软件、游戏软件、管理软件等都属于应用软件类。
系统软件:
系统软件是负责管理计算机系统中各种独立的硬件,使得它们可以协调工作。系统软件使得计算机使用者和其他软件将计算机当作一个整体而不需要顾及到底层每个硬件是如何工作的。
一般来讲,系统软件包括操作系统和一系列基本的工具(比如编译器,数据库管理,存储器格式化,文件系统管理,用户身份验证,驱动管理,网络连接等方面的工具)。
具体包括以下四类:
1.各种服务性程序,如诊断程序、排错程序、练习程序等;
2.语言程序,如汇编程序、编译程序、解释程序;
3.操作系统;
(2)盒图。盒图是一种强制使用结构化构造的图示工具,也称为方框图。其具有以下特点:功能域明确、不可能任意转移控制、很容易确定局部和全局数据的作用域、很容易表示嵌套关系及模板的层次关系。
(3)PAD图。PAD是一种改进的图形描述方式,可以用来取代程序流程图,比程序流程图更直观,结构更清晰。最大的优点是能够反映和描述自顶向下的历史和过程。PAD提供了5种基本控制结构的图示,并允许递归使用。
PAD的特点有:使用PAD符号设计出的程序代码是结构化程序代码;PAD所描绘的程序结构十分清晰;用PAD图表现程序的逻辑易读、易懂和易记;容易将PAD图转换成高级语言源程序自动完成;即可以表示逻辑,也可用来描绘数据结构;支持自顶向下方法的使用。
(4)PDL。PDL也可称为伪码或结构化语言,它用于描述模块内部的具体算法,以便开发人员之间比较精确地进行交流。语法是开放式的,其外层语法是确定的,而内层语法则不确定。外层语法描述控制结构,它用类似于一般编程语言控制结构的关键字表示,所以是确定的。内层语法描述具体操作,考虑到不同软件系统的实际操作种类繁多,内层语法因而不确定,它可以按系统的具体情况和不同的设计层次灵活选用,实际上任意英语语句都可用来描述所需的具体操作。用它来描述详细设计,工作量比画图小,又比较容易转换为真正的代码。
PDL的优点:可以作为注释直接插在源程序中;可以使用普通的文本编辑工具或文字处理工具产生和管理;已经有自动处理程序存在,而且可以自动由PDL生成程序代码。
PDL的不足:不如图形工具形象直观,描述复杂的条件组合与动作间对应关系时,不如判定树清晰简单。 参考技术C 系统软件是负责管理计算机系统中各种独立的硬件,使得它们可以协调工作。系统软件使得计算机使用者和其他软件将计算机当作一个整体而不需要顾及到底层每个硬件是如何工作的。 一般来讲,系统软件包括操作系统和一系列基本的工具(比如编译器,数据库管理,存储器格式化,文件系统管理,用户身份验证,驱动管理,网络连接等方面的工具)。 具体包括以下四类: 1.各种服务性程序,如诊断程序、排错程序、练习程序等; 2.语言程序,如汇编程序、编译程序、解释程序; 3.操作系统; 4.数据库管理系统。 参考技术D 系统软件是负责管理计算机系统中各种独立的硬件,使得它们可以协调工作。系统软件使得计算机使用者和其他软件将计算机当作一个整体而不需要顾及到底层每个硬件是如何工作的。 一般来讲,系统软件包括操作系统和一系列基本的工具(比如编译器,数据库管理,存储器格式化,文件系统管理,用户身份验证,驱动管理,网络连接等方面的工具)。 具体包括以下四类: 1.各种服务性程序,如诊断程序、排错程序、练习程序等; 2.语言程序,如汇编程序、编译程序、解释程序; 3.操作系统; 4.数据库管理系统。
详细设计说明书
1 引言
1.1 编写目的
本系统,即高校调查问卷管理系统,其主要实现的是政府通过发布调查问卷的方式对高校整体情况的调查,调查问卷的设计具有多样性,由政府设计并发布问卷,通过高校的师生填写的调查问卷信息得到反馈,获取高校教师和学生以及学校教学、管理等方面的具体情况。本节描述软件产品需求规格说明书(SRS)的目的和作用是:
a) 定义软件总体要求,作为软件开发人员和用户之间交流的有效工具;
b) 提供整体框架的设计、性能需求、功能需求以及其它非功能需求的详细描述;
c) 该文档也是编写单元测试和系统测试的主要依据。
1.2 适用范围
1.3 参考资料
(1)GB/T 9385-2008,计算机软件需求规格说明规范[S].
(2)Leszek A. Maciaszek,Requirements Analysis and System Design,机械工业出版社,2009.
2 综合描述
2.1 系统目标
项目的最终目的是实现一个高校调查问卷管理系统。在该系统中,政府相关人员可以设计并发布问卷,并在高校师生填写调查问卷后,完成问卷的收集,并对问卷信息进行整理,将反馈信息提供给发布者查看,以便发布者获取高校教师和学生以及学校教学、管理等方面的具体情况,帮助政府相关人员了解各高校的教学与管理情况。其中对系统和系统相关人员的操作分析如下:
对于问卷发布者:
- 登录系统
- 保存所设计的问卷模板
- 导入模板问卷并进行编辑问题
- 设计并发布问卷
- 确定填写问卷者人员
- 规定问卷截止时间
对于问卷统计:
- 回收问卷,查看问卷整体填写情况
- 导出统计数据并分析数据
- 查看历史问卷
对于问卷填写者:
- 填写并提交问卷
- 需保证个人基本信息正确
- 在问卷截止时间内完成问卷填写
- 查看曾填写过的问卷
2.2 系统概述
该系统可用于高校师生用户去发布问卷调查,问卷分析,以及得到问卷分析反馈,
2.3 运行环境
(1)Web Application Servers
Web Application Server,即网页应用服务,理解起来相对简单一些。它们负责执行核心的业务逻辑,处理用户的请求,并返回HTML给用户浏览器。为了完成工作,它们通常需要访问多种后端服务,比如数据库、缓存、任务队列、搜索服务等。在Load Balancer中提到过了,Web Application Server通常有多个副本,它们从Load Balancer获取用户请求。Web Application Server需要使用特定的编程语言(Java, Node.js, Ruby, PHP, Scala, Java, C# .NET等) 和MVC框架(Node.js有Express, Ruby有Rails, Scala有Play, PHP有Laravel等)来实现。Fundebug后端语言用的是Node.js,框架用的是Express。
(2)Database
现代应用基本上都需要使用1个或者多个Dabase(数据库)来存储数据。利用数据库,我们可以方便地对数据进行各种处理,比如定义数据结构、插入数据、查找数据、更新数据、删除数据、对数据进行计算等。一般来说,Web Application Servers会直接访问数据库,Job Server也一样。另外,每一种后端服务都有可能会需要独立的数据库。
目前,业界最受欢迎的开源数据库技术有MySQL、MongoDB等。
(3)MySQL数据库
MySQL是一种关系型数据库管理系统,关系型数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。
特点:
· 开源
· 支持大型的数据库
· 使用标准的SQL数据库语言形式
· 可以运行于多个系统上,并且支持多种语言
· 对PHP有很好的支持
· 可以定制
(4)B/S机制与C/S机制介绍
B/S结构即浏览器和服务器结构。它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户工作界面是通过WWW浏览器来实现,极少部分事务逻辑在前端(Browser)实现,但主要事务逻辑在服务端(server)实现,形成所谓三层3-tier结构。
C/S又称Client/Server或客户/服务器模式。服务器通常采用高性能的PC、工作站或小型机,并采用大型数据库系统,如Oracle、Sybase、Informix或SQL server。客户端需要安装专用的客户端软件。
(5)HTTP简介
HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网(www:world wide web)服务器传输超文本到本地浏览器的传送协议。
HTTP是一个基于TCP/IP通信协议来传递数据(HTML文件,查询结果等)。
HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。目前www中使用的是HTTP/1.0的第六版,HTTP/1.1的规范化工作正在进行中,而且HTTP-NG(Next Generation of HTTP)的建议已经提出。
(6)Web中间件
中间件是一类连接软件组件和应用的计算机软件,它包括一组服务。以便运行在一台或多台服务器上的多个软件通过网络进行交互。该技术所提供的互操作性,推动了一致分布式体系架构的演进,该架构通常用于支持并简化那些复杂的分布式应用程序,它包括web服务器、事务监控器和消息队列软件。
中间件(middleware)是基础软件的一大类,属于可复用软件的范畴。顾名思义,中间件处于操作系统软件与用户的应用软件的中间。
2.4 程序结构说明
标题 |
内容 |
用例名称 |
注册 |
用例简要说明 |
用户注册 |
前置条件 |
用户未注册 |
事件流 |
|
后置条件 |
后台系统正确的收集到用户的信息并保存到数据库表中 |
扩展点 |
|
优先级 |
高 |
标题 |
内容 |
用例名称 |
登录 |
用例简要说明 |
用户登录 |
前置条件 |
账号已册 |
事件流 |
|
后置条件 |
后台系统正确的收集到用户的登录信息并保存到数据库表中 |
扩展点 |
1.账号密码不正确 2.登录失败,提示重新输入 |
优先级 |
高 |
标题 |
内容 |
用例名称 |
发布问卷 |
用例简要说明 |
问卷的发布 |
前置条件 |
用户已经登陆 |
事件流 |
|
|
|
后置条件 |
无 |
扩展点 |
预览问卷 |
优先级 |
高 |
标题 |
内容 |
用例名称 |
问卷结果分析 |
用例简要说明 |
对收集的问卷信息统计分析 |
前置条件 |
已发布问卷调查且收集到相关填写的问卷 |
事件流 |
1.点击“分析”按钮 2.查看统计结果 3.点击表格查看图形化结果 |
后置条件 |
访问历史问卷 |
扩展点 |
将收集的问卷信息保存到该用户个人信息账号上 |
优先级 |
高 |
标题 |
内容 |
用例名称 |
填写问卷 |
用例简要说明 |
高校师生填写问卷 |
前置条件 |
用户发布问卷调查 |
事件流 |
1.高校师生接受问卷调查 2.按照要求填写问卷 3.提交填写好的问卷 |
后置条件 |
填写个人基本信息正确 |
扩展点 |
提示问卷必要问题是否全部填写 |
优先级 |
高 |
3 系统详细设计
3.1 UI模块
3.1.1 模块职责与功能描述
职责:
1、向用户展示信息。
2、用于与系统的交互解释为指令。
功能描述:
UI其实是一个广义的概念
从字面上看由用户与界面两个部分组成,但实际上还包括用户与界面之间的交互关系。UI是指人与信息交互的媒介,它是信息产品的功能载体和典型特征。UI作为系统的可用形式而存在,比如以视觉为主体的界面,强调的是视觉元素的组织和呈现,UI是指信息的采集与反馈、输入与输出,这是基于界面而产生的人与产品之间的交互行为。在这一层面,用户交互,这是界面产生和存在的意义所在。人与非物质产品的交互更多依赖于程序的无形运作来实现,这种与界面匹配的内部运行机制,需要通过界面对功能的隐喻和引导来完成。UI的高级形态可以理解为User Invisible。对用户而言,在这一层面UI是“不可见的”,这并非是指视觉上的不可见,而是让用户在界面之下与系统自然地交互,沉浸在他们喜欢的内容和操作中,忘记了界面的存在(糟糕的设计则迫使用户注意界面,而非内容)
3.1.2 模块交互模型
模块交互模型图
3.1.3 模块设计类图
类名 |
User |
所属包 |
user |
|||||
继承 |
无 |
|||||||
实现 |
首界面的登录和注册功能的具体实现 |
|||||||
属性 |
||||||||
名称 |
类型 |
默认值 |
Pub/Prv/Pro |
|||||
number |
String |
0 |
Prv |
|||||
Password |
String |
0 |
Prv |
|||||
方法 |
||||||||
名称 |
参数 |
返回值 |
异常 |
描述 |
||||
账号验证 |
Number,password |
true/flase |
账号不存在/密码不正确 |
对用户输入的账号和密码进行验证,验证账号是否存在,若存在验证输入的密码是否正确。 |
||||
账号注册 |
无 |
true/flase |
账号已经存在/密码格式不正确 |
为新用户注册一个新的账号,用于登录系统。 |
||||
事件 |
||||||||
名称 |
条件 |
参数 |
目的 |
|||||
登陆 |
账号密码输入且正确 |
Number,password |
用户进入系统 |
|||||
注册 |
无账号 |
无 |
新用户注册账号 |
类名 |
System |
所属包 |
system |
|||||
继承 |
无 |
|||||||
实现 |
验证客户功能的具体实现 |
|||||||
属性 |
||||||||
名称 |
类型 |
默认值 |
Pub/Prv/Pro |
|||||
number |
String |
0 |
Prv |
|||||
Password |
String |
0 |
Prv |
|||||
方法 |
||||||||
名称 |
参数 |
返回值 |
异常 |
描述 |
||||
验证客户 |
Number,password |
true/flase |
账号不存在/密码不正确 |
对用户输入的账号和密码进行验证,验证账号是否存在,若存在验证输入的密码是否正确。 |
||||
事件 |
||||||||
名称 |
条件 |
参数 |
目的 |
|||||
发布问卷 |
账号是否登录 |
Number,password |
用户发布问卷 |
|||||
查看问卷 |
账号是否登录 |
无 |
用户查看问卷 |
类名 |
Database |
所属包 |
database |
|||||
继承 |
无 |
|||||||
实现 |
保存数据功能的具体实现 |
|||||||
属性 |
||||||||
名称 |
类型 |
默认值 |
Pub/Prv/Pro |
|||||
type |
String |
0 |
Prv |
|||||
option |
String |
0 |
Pub |
|||||
方法 |
||||||||
名称 |
参数 |
返回值 |
异常 |
描述 |
||||
保存数据 |
type option |
option |
问卷的填写格式不正确 |
对用户输入的选项和回答进行验证,验证选项存在,或者验证输入回答是否正确。 |
||||
事件 |
||||||||
名称 |
条件 |
参数 |
目的 |
|||||
数据存储 |
问卷的填写格式正确 |
option |
数据进行保存 |
类名 |
Teacher |
所属包 |
teacher |
|||||
继承 |
无 |
|||||||
实现 |
填写问卷具体实现 |
|||||||
属性 |
||||||||
名称 |
类型 |
默认值 |
Pub/Prv/Pro |
|||||
Id |
String |
0 |
Prv |
|||||
name |
String |
0 |
Prv |
|||||
方法 |
||||||||
名称 |
参数 |
返回值 |
异常 |
描述 |
||||
问卷完整度检验 |
无 |
true/flase |
问卷未填完整 |
提醒问卷填写者有选项未填写。 |
||||
事件 |
||||||||
名称 |
条件 |
参数 |
目的 |
|||||
问卷填写 |
填写完整了问卷信息 |
无 |
上传问卷信息 |
类名 |
Student |
所属包 |
student |
|||||
继承 |
无 |
|||||||
实现 |
填写问卷具体实现 |
|||||||
属性 |
||||||||
名称 |
类型 |
默认值 |
Pub/Prv/Pro |
|||||
id |
String |
0 |
Prv |
|||||
name |
String |
0 |
Prv |
|||||
方法 |
||||||||
名称 |
参数 |
返回值 |
异常 |
描述 |
||||
问卷完整度检验 |
无 |
true/flase |
问卷未填完整 |
提醒问卷填写者有选项未填写。 |
||||
事件 |
||||||||
名称 |
条件 |
参数 |
目的 |
|||||
问卷填写 |
填写完整了问卷信息 |
无 |
上传问卷信息 |
3.1.4 设计类说明
在对本系统数据库的具体设计过程中,所采用的是自底向上的设计方法,即自顶向下地进行需求分析,得到每一集体的应用需求,然后反过来根据每一子需求,采用自底向上法分步设计每一局部模型,综合各局部模型,逐层向上回到顶端,最终产生全局模型。
User主要是问卷的设计及发布者,以及能够得到问卷反馈的信息的人。
高校授课老师和学生是问卷的填写人员,在规定时间内完成问卷的填写并提交问卷。问卷系统是数据库的一个模型,主要区分问卷类型,问卷的发布者登录系统从而发布具体类型的问卷,而发布的问卷由师生填写完毕后反馈给User。
3.2 系统管理模块详细设计
3.2.1 系统管理模块职责与功能描述
职责:
1、负责数据处理
2、负责UI与数据库的交互
3、管理问卷调查系统的正常运行。
功能描述:
该模块是整个系统核心,它的关注点主要集中在业务规则的制定、业务流程的实现等与业务需求有关的系统设计
负责控制和协调外部计算机算机及其外部设备,保证计算机独立处理高校系统问卷,为了满足用户发布问卷的各种需求,帮助用户自己管理问卷系统并维护执行用户命令、数据分析等任务的资源。帮助用户提高工作质量和效率,可以帮助用户解决难题。从用户的角度看,它是用户与计算机硬件系统的接口;从资源管理的角度看,它是计算机系统资源的管理者。其主要作用及目的就是提高系统资源的利用率;提供友好的用户界面;创造良好的工作环境,从而使用户能够灵活、方便地使用计算机,使整个计算机系统能高效地运行。
3.2.2 模块交互模型
模块交互模型图
3.3 数据库模块
3.3.1 数据库模块职责与功能描述
职责:1、收集用户数据
2、处理高校问卷数据
3、为系统模块提供数据支持。
功能描述:
(1)数据库是一个实体,它是能够合理保管数据的“仓库”,用户在该“仓库”中存放要管理的事务数据,“数据”和“库”两个概念结合成为数据库。
(2)数据库是数据管理的新方法和技术,它能更合适的组织数据、更方便的维护数据、更严密的控制数据和更有效的利用数据。
数据库管理 系统(Database Management System)是一种操纵和管理数据库的大型软件,用于建立、使用和维护 数据库,简称 DBMS。它对 数据库进行统一的管理和 控制,以保证 数据库的安全性和完整性。用户通过 DBMS访问 数据库中的数据, 数据库管理员也通过 dbms进行数据库的维护工作。它可使多个 应用程序和用户用不同的方法在同时或不同时刻去建立,修改和询问 数据库。大部分 DBMS提供 数据定义语言DDL(Data Definition Language)和 数据操作语言 DML(Data Manipulation Language),供用户定义 数据库的模式结构与权限约束,实现对数据的追加、删除等操作。
数据库管理系统是数据库系统的核心,是管理数据库的软件。数据库管理系统就是实现把用户意义下抽象的逻辑数据处理,转换成为计算机中具体的物理数据处理的软件。有了数据库管理系统,用户就可以在抽象意义下处理数据,而不必顾及这些数据在计算机中的布局和物理位置。
3.3.2 数据库模块交互模型
数据库模块交互模型
更简单形象的理解,数据库和我们生活中存放杂物的储物间仓库性质一样,区别只是存放的东西不同,杂物间存放实体的物件,而数据库里存放的是数据。数据库是计算机应用系统中的一种专门管理数据资源的系统。数据有多种形式,如文字、数码、符号、图形、图像以及声音等。数据是所有计算机系统所要处理的对象。人们所熟知的一种处理办法是制作文件,即将处理过程编成程序文件,将所涉及的数据按程序要求组织成数据文件,用程序文件来调用。数据文件与程序文件保持着一定的对应关系。在计算机应用迅速发展的情况下,这种文件式方法便显出不足。比如,它使得数据通用性差,不便于移植,在不同文件中存储大量重复信息、浪费存储空间、更新不便等。数据库系统便能解决上述问题。数据库系统不从具体的应用程序出发,而是立足于数据本身的管理,它将所有数据保存在数据库中,进行科学的组织,并借助于数据库管理系统,以它为中介,与各种应用程序或应用系统接口,使之能方便地使用数据库中的数据。
这段说明介绍的确非常详细,不过你可能看得头晕眼花了,其实简单地说数据库就是一组经过计算机整理后的数据,存储在一个或多个文件中,而管理这个数据库的软件就称之为数据库管理系统。
以上是关于软件详细设计的工具啥?简述几种常见的详细设计工具的主要内容,如果未能解决你的问题,请参考以下文章