Jackson系统开发方法
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
5 印出空格总数目; ○ 10totalsum:=totalsum+sum ○ /*处理字符串结束*/ 11读入字符串; ○ /*I(1) 结束*/
3 关闭文件; ○ 1 停止 ○
注:
三. JSP—Jackson结构程序设计方法
1.避免出现分配操作时, 在循环和选择特性的处理框中加入操 作,如
A
n
三. JSP—Jackson结构程序设计方法
Step1:输入输出结构
A1 正文文件 输出表格 B1
A2
字符串*
表格体
B2
总空格数
B3
A3
字符*
输出行*
B4
空格 A4
非空格 A5
字符串 B5
空格数
B6
三. JSP—Jackson结构程序设计方法
Step2 输入输出对应关系 Step3 导出结构图
A1—B1 统计表格
三. JSP—Jackson结构程序设计方法
1)步骤: Step1确定输入/输出的数据结构,并用Jackson 图表示。 Step2分析确定输入/输出数据结构的数据元素 之间的对应关系 Step3利用三条基本规则从数据结构的Jackson 图导出程序结构的Jackson图。
三. JSP—Jackson结构程序设计方法 a)为每对有对应关系的数据单元,按照它们在数 据结构图中的层次在程序结构图的相对应层次 画一个程序框(注意:如果这对数据单元在输 入和输出数据结构中所处的层次不同,则和它 们对应的处理框在程序结构图中所处的层次与 它们之中在数据结构中层次低的那个对应) b)根据输入数据结构中剩余的每个数据单元所处 的层次,在程序结构图的相应层次分别为它们 画上对应的处理框 c) 根据输出数据结构中剩余的每个数据单元所 处的层次,在程序结构图的相应层次分别为它 们画上对应的处理框。
发货单 产品号 名称 数量
三. JSP—Jackson结构程序设计方法
事务文件
单据*
发货单
订货单
零件号*
订货行*
零件号
名称
数量
数量
名称
零件号
1。 用 Jackson 方法设计一个打印表格程序, 表格形式如下
姓名 年龄 类别 状态
这里类别“学生”和“教师” ,状态: “年级”和“工龄” 2。用状态变量法修改下面非结构化程序
B*
m
C
D
2.如某一操作无法分配, 则必须对结构作修改才能分配, 主要 是数据结构分析不合理。 3.数据出错检查及合法性检查
三. JSP—Jackson结构程序设计方法
4 顺序(结构)冲突,由内部存放形式(输入与输出数据的 顺序冲突)
数据字典 电影
类型*
按人物排列*
例: 用 Jackson 方法设计一个打印表格程序。 仓库中事务文件 包括:单据(订货单/发货单) ,单据均多行组成,每行包括: 零件号,零件名称,数量。
10
11
读入字符串
空 5
4 印字符串 空 处理空格
sum:= sum+1
处理非空格
pointer:=pointer+1
Pointer:=pointer+1
8
13
13
三. JSP—Jackson结构程序设计方法
Step5 写出伪码
/*统计空格*/ { 2 打开文件; ○ 11读入字符串; ○ 9 totalsum:=0; ○ while not 文件结束 I(1) /*处理字符串*/ { 4 印字符串; ○ 7 sum:=0; ○ 1 2pointer:=1; ○ /*分析字符串*/ while not I(2) 字符串结束 { if I(3) 字符是空格 { } } 8; ○ 13; ○ } else /*处理非空格*/ 1 3; ○ /*分析字符串结束*/
第五章 Jackson系统 开发方法 (JSD=Jackson System Development )
——面向数据结构的分 析与设计方法
面向数据结构的开发方法: Jackson方法:M.J. Jackson,1972~1974 Warnier方法:J.Warnier,1976(方正排版) Jackson程序设计方法(JSP) JSD 1 JSP:适用于小系统的开发,或详细设计阶 段,用输入/输出的数据结构进行软件设计, 用数据结构映射软件结构。 2 JSD:以事件(活动)为中心,一连串依顺 序组合的活动构成进程,把系统模型抽象为 一组以通信方式互相联系的进程(进程模 型)。
三. JSP—Jackson结构程序设计方法
注:由于Jackson图中顺序结构中不能有重复或选择, 因此可能需要增加中间层次的处理框 Step4列出所有操作和条件(分支,循环等)并且分配 到程序结构图的适当位置。 Step5用伪码表示程序。 2)例子:正文文件:若干记录构成,每个记录为字符 串,字符串为数字/字母/行结束符。 1要求统计每个记录中空格符个数,以及文件中空格符 的总数 2要求输出格式是:每复制一行字符串后,在行末输出 该行字符串中空格总数。 3最后输出整个文件中字符串总空格数。
统计表格
读入字符串 2 打开文件 11 9 Totalsum=0 输出表格 印总空格数 3 关闭文件 1 停止
I(1)文件结束 处理字符串*
Sum=0 显示字符串
Totalsum:=totalsum+sum
7
12
Pointer=1
分析字符串 I(2)字符串结束 分析字符* I(3)字符是空格
显示空格数
如果这对数据单元在输入和输出数据结构中所处的层次不同则和它们对应的处理框在程序结构图中所处的层次与它们之中在数据结构中层次低的那个对应b根据输入数据结构中剩余的每个数据单元所处的层次在程序结构图的相应层次分别为它们画上对应的处理框根据输出数据结构中剩余的每个数据单元所处的层次在程序结构图的相应层次分别为它们画上对应的处理框
B
*
A
end
改进
A
A
S(i)
If __ then I 分支序号
I(n)
n—重复次数
B
B*
二. JSD方法的步骤 (6个)
(3)定义初始进程模型: a一组进程集合及其联系方式,构成进程 模型; b给出系统的说明书(伪码PDL),图 (结构图) (4)功能描述:把定义动作与功能对应 (5)判定系统时间特性:加入时间因素 (6)实现:设计组成系统的硬件和软件(JSP)
作 业
T P d D B
开始 1 A d F
C
P d
dc
E
P
F
2
G 3 T 0 结束
P
P
H
dc
一. Jackson方法的发展
二. JSD方法的步骤 (6个)
(1)实体动作分析:找出软件中可能出现的实 体及作用于实体的动作(事件);(确定软 件的范围) (2)实体结构分析:按时间顺序,把作用于实 体的动作或由实体执行的动作排序构成进程, 并用Jackson结构图表示。 Jackson图(数据结构,实体结构,控制结构 等)
输出表格
B2
B3
பைடு நூலகம்
显示(打印)总空格数
输出(处理)字符串
A2—B4*
处理(分析)字符串 空
A3*
B5 显示字符串
B6
显示空格数
空格
A4
A5
处理非空格
三. JSP—Jackson结构程序设计方法
Step4列出所有操作与条件: 操作:1停止,2打开文件,3关闭文件,4印字符 串,5印空格数,6印空格总数,7 sum=0,8 sum:=sum+1,9 totalsum=0,10 totalsum=totalsum+sum,11读入字符 串,12pointer=1,13 pointer:=pointer+1 条件:I(1):文件结束,I(2):字符串结束, I(3):字符是空格
1 顺序结构 ○
A
A
Seq(Sequence) Do B; Do C; A end A=[B+C]
B
C
2 选择结构 ○
A
A
Select
B
C
Cond1; Do B; Cond2; Do C; A end
A=[B|C]
3 重复结构 ○
A
A
iter while/until Do B; A={B};