📄 数据流图(dfd)_可樂不加冰.htm
字号:
try{
var cmt=cmtForm.getElementsByTagName("textarea")[0]
cmt.value="";
cmt.focus();
}catch(e){}
*/
try{
var ed=editor.window.document.body;
ed.innerHTML="";
editor.window.focus();
}catch(e){
var cmt=cmtForm.getElementsByTagName("textarea")[0];
cmt.value="";
cmt.focus();
}
G("cancleReLink").style.display="none";
cmtForm.btn_ok.value="发表评论";
}
function gotoreply()
{//to checking whether reply cmt
if( window.location.hash.indexOf("&re=1")<0) return;
var cmtID=window.location.hash.split("&")[0].replace("#","");
var cmtlinks=document.getElementsByTagName("a");
for(var i=0,n=cmtlinks.length;i<n;i++)
{
if(cmtlinks[i].name==cmtID){ var rename=cmtlinks[i].getAttribute("rename"); repid=cmtlinks[i].getAttribute("repid"); break;}
}
if(typeof(rename)!="undefined"){
cmtreply(rename, repid);
}
}
//-->
</SCRIPT>
<SCRIPT type=text/javascript>
/*<![CDATA[*/
window.onerror=function(){return true;}
var RelatedDocData = null, GetAndEval = false;
(function(){
var xhr = BdAjax.getXHR();
if(xhr == null){
RelatedDocData = -1;
return;
}
xhr.open("GET", "/sys/search?type=8&word=%CA%FD%BE%DD%C1%F7%CD%BC%28DFD%29&item=fd562a82721926a70df4d273&t=" + new Date().getTime(), true);
xhr.onreadystatechange = function(){
if(xhr.readyState == 4){
if(xhr.status == 0 || xhr.status == 200){
if(GetAndEval){
eval(xhr.responseText);
}else{
RelatedDocData = xhr.responseText;
}
}
}
}
xhr.send(null);
})();
/*]]>*/
</SCRIPT>
<META content="MSHTML 6.00.2900.5512" name=GENERATOR></HEAD>
<BODY onload=formatonlinpic();>
<CENTER>
<SCRIPT type=text/javascript>/*<![CDATA[*/if(top.location != self.location){ top.location = self.location;}var myref = encodeURIComponent("http://hi.baidu.com/joyjoytan/blog/item/fd562a82721926a70df4d273%2Ehtml");/*]]>*/</SCRIPT>
<LINK href="数据流图(DFD)_可樂不加冰.files/mods.css" type=text/css rel=stylesheet><LINK
href="数据流图(DFD)_可樂不加冰.files/5fd17c24a5b29133c895591c.css" type=text/css
rel=stylesheet><LINK href="数据流图(DFD)_可樂不加冰.files/space.css" type=text/css
rel=stylesheet>
<STYLE type=text/css>#usrbar {
PADDING-RIGHT: 10px; PADDING-LEFT: 0px; FONT-SIZE: 12px; BACKGROUND: #ffffff; FILTER: alpha(opacity=65); PADDING-BOTTOM: 3px; WIDTH: 100%; COLOR: #000000; LINE-HEIGHT: 19px; PADDING-TOP: 4px; FONT-FAMILY: Arial; LETTER-SPACING: normal; HEIGHT: 19px; TEXT-ALIGN: right; moz-opacity: 0.5
}
#usrbar A {
COLOR: #0000cc; TEXT-DECORATION: underline
}
#usrbar A:link {
COLOR: #0000cc; TEXT-DECORATION: underline
}
#usrbar A:visited {
COLOR: #0000cc; TEXT-DECORATION: underline
}
#ft {
CLEAR: both; FONT-SIZE: 12px; COLOR: #666666; LINE-HEIGHT: 20px; FONT-FAMILY: Arial; HEIGHT: 20px; TEXT-ALIGN: center
}
#ft A {
COLOR: #7777cc; TEXT-DECORATION: underline
}
#ft A:link {
COLOR: #7777cc; TEXT-DECORATION: underline
}
#ft A:visited {
COLOR: #7777cc; TEXT-DECORATION: underline
}
#usrbar {
LETTER-SPACING: normal
}
#usrbar A {
LETTER-SPACING: normal
}
#usrbar A:link {
LETTER-SPACING: normal
}
#usrbar A:visited {
LETTER-SPACING: normal
}
#ft {
LETTER-SPACING: normal
}
#ft A {
LETTER-SPACING: normal
}
#ft A:link {
LETTER-SPACING: normal
}
#ft A:visited {
LETTER-SPACING: normal
}
</STYLE>
<DIV id=usrbar><NOBR><A id=hi_index href="http://hi.baidu.com/"
target=_blank>百度空间</A> | <A href="http://www.baidu.com/"
target=_blank>百度首页</A>
<SCRIPT type=text/javascript> document.write('| <a href="https://passport.baidu.com/?login&tpl=sp&tpl_reg=sp&u=http://hi.baidu.com' + encodeURIComponent('/joyjoytan/blog/item/fd562a82721926a70df4d273%2Ehtml') + '">登录</a>'); </SCRIPT>
</NOBR></DIV>
<DIV id=newUserTip
style="Z-INDEX: 30000; RIGHT: 0px; FLOAT: right; WIDTH: 225px; POSITION: absolute; TOP: 26px; HEIGHT: 130px; TEXT-ALIGN: right"><A
id=newUserTipShadow
style="DISPLAY: block; FONT-SIZE: 14px; Z-INDEX: 30001; RIGHT: 14px; BACKGROUND: none transparent scroll repeat 0% 0%; OVERFLOW: hidden; WIDTH: 55px; COLOR: #4242f9! important; POSITION: absolute; TOP: 108px; HEIGHT: 14px; TEXT-DECORATION: none! important"
onclick=newUserRegLog()
href="http://passport.baidu.com/?reg&tpl=sp&return_method=get&skip_ok=1&u=http://hi.baidu.com/sys/reg/"
target=_blank> </A>
<EMBED id=newUserTipSwf style="WIDTH: 225px; HEIGHT: 130px"
src=http://hi.baidu.com/ui/flash/userReg/guide.swf
type=application/x-shockwave-flash wmode="transparent"
allowScriptAcess="always"> </DIV>
<SCRIPT language=javascript> <!-- function newUserTipShow(f) { if(f=="0"){//close G("newUserTipSwf").style.width="40px"; G("newUserTip").style.width="40px"; G("newUserTipShadow").style.display="none"; }else{//show G("newUserTip").style.width="225px"; G("newUserTipSwf").style.width="225px"; G("newUserTipShadow").style.display="block"; } } function newUserRegLog(){ var now=new Date(); now.setTime(now.getTime()+5*60*1000); document.cookie="BDSP_REGFLAG=1;expires="+now.toGMTString()+";path=/"; new Image().src="http://hi.baidu.com/sys/statlog/1.gif?m=blog_newer_pro2_click&v=/joyjoytan&t="+Math.random(); } //--> </SCRIPT>
<SCRIPT type=text/javascript>function set_cookie_4_bdtip(index/* start from one */, value){ var bdtip = document.cookie.match(/(^| )BDTIP=([^;]*)(;|$)/); if(!bdtip){ bdtip=new Array(index); for(var i=0,n=bdtip.length;i<n;i++) { if(bdtip[i]=="" || bdtip[i]==null) bdtip[i]=0; if(i == index - 1){ bdtip[i] = value; } } }else{ bdtip = bdtip[2].split('-'); if(index > bdtip.length) bdtip.length= index; for(var i = 0, j = bdtip.length; i < j; i ++){ if(bdtip[i]=="" || bdtip[i]==null) bdtip[i]=0; if(i == index - 1){ bdtip[i] = value; } } } bdtip = bdtip.join('-'); document.cookie = "BDTIP=" + bdtip+ ";expires=Wed, 28-Nov-37 01:45:46 GMT;path=/;domain=.baidu.com";}</SCRIPT>
<DIV id=main align=left><!--[if IE]>
<SCRIPT>
var objmain = document.getElementById("main");
function updatesize(){ var bodyw = window.document.body.offsetWidth; if(bodyw <= 790) objmain.style.width="772px"; else if(bodyw >= 1016) objmain.style.width="996px"; else objmain.style.width="100%"; }
updatesize(); window.onresize = updatesize;
</SCRIPT>
<![endif]-->
<DIV id=header>
<DIV class=lc>
<DIV class=rc></DIV></DIV>
<DIV class=tit><A class=titlink
title="joyjoytan的空间 http://hi.baidu.com/joyjoytan"
href="http://hi.baidu.com/joyjoytan">可樂不加冰</A></DIV>
<DIV class=desc>joy,healthy and wealthy</DIV>
<DIV id=tabline></DIV>
<DIV id=tab><A href="http://hi.baidu.com/joyjoytan">主页</A><A class=on
href="http://hi.baidu.com/joyjoytan/blog">博客</A><A
href="http://hi.baidu.com/joyjoytan/album">相册</A><SPAN>|</SPAN><A
href="http://hi.baidu.com/joyjoytan/profile">个人档案</A> <SPAN>|</SPAN><A
href="http://hi.baidu.com/joyjoytan/friends">好友</A> </DIV></DIV>
<DIV class=stage>
<DIV class=stagepad>
<DIV style="WIDTH: 100%">
<TABLE class=modth cellSpacing=0 cellPadding=0 width="100%" border=0>
<TBODY>
<TR>
<TD class=modtl width=7> </TD>
<TD class=modtc noWrap>
<DIV class=modhead><SPAN class=modtit>查看文章</SPAN></DIV></TD>
<TD class=modtc noWrap align=right></TD>
<TD class=modtr width=7> </TD></TR></TBODY></TABLE>
<DIV class=modbox id=m_blog>
<DIV class=tit>数据流图(DFD)</DIV>
<DIV class=date>2008-07-12 09:31</DIV>
<TABLE style="TABLE-LAYOUT: fixed">
<TBODY>
<TR>
<TD>
<DIV class=cnt id=blog_text>
数据流图,简称DFD,是SA方法中用于表示系统逻辑模型的一种工具,它以图形的方式描绘数据在系统中流动和处理的过程,由于它只反映系统必须完成的逻辑功能,所以它是一种功能模型。<BR>下图是一个飞机机票预订系统的数据流图,它反映的功能是:旅行社把预订机票的旅客信息
(姓名、年龄、单位、身份证号码、旅行时间、目的地等)输入机票预订系统。系统为旅客安排航班,打印出取票通知单(附有应交的账款)。旅客在飞机起飞的前
一天凭取票通知单交款取票,系统检验无误,输出机票给旅客。<BR>
<DIV align=center forimg="1"><IMG class=blogimg
src="数据流图(DFD)_可樂不加冰.files/8b2f0408261b6a9d0a7b8230.gif" border=0
small="0"></DIV>
<DIV align=left forimg="1"><STRONG>3.3.1
基本图形符号<BR></STRONG>数据流图有四种基本图形符号:<BR><IMG style="CURSOR: pointer"
src="数据流图(DFD)_可樂不加冰.files/jt.gif" width=18 border=0>
:箭头,表示数据流;<BR> 〇:圆或椭圆,表示加工;<BR> =
:双杠,表示数据存储;<BR>
□:方框,表示数据的源点或终点。<BR> (1)
数据流。数据流是数据在系统内传播的路径,因此由一组成分固定的数据组成。如订票单由旅客姓名、年龄、单位、身份证号、日期、目的地等数据项组成。由于数
据流是流动中的数据,所以必须有流向,除了与数据存储之间的数据流不用命名外,数据流应该用名词或名词短语命名。<BR>
(2)加工(又称为数据处理)。对数据流进行某些操作或变换。每个加工也要有名字,通常是动词短语,简明地描述完成什么加工。在分层的数据流图中,加工还应编号。<BR>
(3)数据存储(又称为文件),指暂时保存的数据,它可以是数据库文件或任何形式的数据组织。<BR>
(4)数据源点或终点,是本软件系统外部环境中的实体(包括人员、组织或其他软件系统),统称外部实体。一般只出现在数据流图的顶层图。<BR><STRONG>3.3.2画数据流图的步骤<BR></STRONG>
(1)首先画系统的输入输出,即先画顶层数据流图。顶层流图只包含一个加工,用以表示被开发的系统,然后考虑该系统有哪些输入数据、输出数据流。顶层图的作用在于表明被开发系统的范围以及它和周围环境的数据交换关系。下图为飞机机票预订系统的顶层图。</DIV>
<DIV align=center forimg="1"><IMG class=blogimg
src="数据流图(DFD)_可樂不加冰.files/9b16d350e1dda26a85352432.gif" border=0
small="0"></DIV>
<DIV align=left forimg="1">(2)
画系统内部,即画下层数据流图。不再分解的加工称为基本加工。一般将层号从0开始编号,采用自顶向下,由外向内的原则。画0层数据流图时,分解顶层流图的
系统为若干子系统,决定每个子系统间的数据接口和活动关系。例如,在上面的机票预订系统按功能可分成两部分,一部分为旅行社预订机票,另一部分为旅客取
票,两部分通过机票文件的数据存储联系起来,0层数据流图如图3-4。<BR>
(3)注意事项。<BR>
①命名。不论数据流、数据存储还是加工,合适的命名使人们易于理解其含义。<BR>
②画数据流而不是控制流。数据流反映系统“做什么”,不反映“如何做”,因此箭头上的数据流名称只能是名词或名词短语,整个图中不反映加工的执行顺序。<BR>
③一般不画物质流。数据流反映能用计算机处理的数据,并不是实物,因此对目标系统的数据流图一般不要画物质流。<BR>
④每个加工至少有一个输入数据流和一个输出数据流,反映出此加工数据的来源与加工的结果。<BR>
⑤编号。如果一张数据流图中的某个加工分解成另一张数据流图时,则上层图为父图,直接下层图为子图。子图及其所有的加工都应编号。</DIV>
<DIV align=center forimg="1"><IMG class=blogimg
src="数据流图(DFD)_可樂不加冰.files/12606d1f74eba6c0a786693c.gif" border=0
small="0"></DIV>
<DIV align=left
forimg="1">⑥父图与子图的平衡。子图的输入输出数据流同父图相应加工的输入输出数据流必须一致,此即父图与子图的平衡。<BR>
⑦局部数据存储。当某层数据流图中的数据存储不是父图中相应加工的外部接口,而只是本图中某些加工之间的数据接口,则称这些数据存储为局部数据存储。<BR>
⑧提高数据流图的易懂性。注意合理分解,要把一个加工分解成几个功能相对独立的子加工,这样可以减少加工之间输入、输出数据流的数目,增加数据流图的可理解性。<BR>图3-6给出了采用这套符号画出的等价于图3-2的DFD。</DIV>
<DIV align=center forimg="1"><IMG class=blogimg
src="数据流图(DFD)_可樂不加冰.files/52e173c7751f8fd4d100603d.gif" border=0
small="0"></DIV>
<DIV align=left forimg="1"><STRONG>3.3.3流程图的实例</STRONG></DIV>
<DIV align=left forimg="1">
<DIV align=center forimg="1"><IMG class=blogimg
src="数据流图(DFD)_可樂不加冰.files/df31093449294746251f143e.gif" border=0
small="0"></DIV>
<DIV align=center forimg="1"><IMG class=blogimg
src="数据流图(DFD)_可樂不加冰.files/bc014f086a1c6838e924883f.gif" border=0
small="0"></DIV></DIV></DIV></TD></TR></TBODY></TABLE><BR>
<DIV class=opt><A title=查看该分类中所有文章
href="http://hi.baidu.com/joyjoytan/blog/category/vc++">类别:vc++</A> | <A
title=将此文章添加到百度搜藏 onclick="return addToFavor();"
href="http://cang.baidu.com/do/add" target=_blank>添加到搜藏</A> | 浏览(<SPAN
id=result></SPAN>) | <A
href="http://hi.baidu.com/joyjoytan/blog/item/fd562a82721926a70df4d273.html#send">评论</A> (0)
<SCRIPT language=javascript>
/*<![CDATA[*/
var pre = [true,'让CPU占用率曲线听你指挥', '让CPU占用率曲线听你指挥','/joyjoytan/blog/item/1fa0a6625c2210d8e7113ae4.html'];
var post = [true,'常量指针与指针常量','常量指针与指针常量', '/joyjoytan/blog/item/6ae59a509e8d3d591138c274.html'];
if(pre[0] || post[0]){
document.write('<div style="height:5px;line-height:5px;"> </div><div id="in_nav">');
if(pre[0]){
document.write('上一篇:<a href="' + pre[3] + '" title="' + pre[1] + '">' + pre[2] + '</a> ');
}
if(post[0]){
document.write('下一篇:<a href="' + post[3] + '" title="' + post[1] + '">' + post[2] + '</a>');
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -