軟考下午題具體解釋---數據流圖設計

? ? ? ? 在歷年的軟考下午題其中,有五道大題。各自是數據流圖的設計,數據庫設計,uml圖,算法和設計模式,從今天這篇博文開始,小編就跟大家來一起學習軟考下午題的相關內容。包含理論上的知識以及典型例題的解說,希望給予有須要的小伙伴有力的幫助,備戰軟考,我們能夠做的更好,今天小編主要簡單總結一下數據流圖的有關知識,首先,我們來看以下這張圖:

? ? ? ??

? ? ? ? 接著,小編就會尾隨上面思維導圖的脈絡,依次對軟考中的數據流圖進行具體解說。有不允許見的小伙伴歡迎討論交流,首先我們來看第一個主要的知識點:

? ? ? ? 數據流圖的基本符號

? ? ? ??數據流圖簡稱DFD。英文名字Data Flow Diagram。DFD 是描寫敘述數據處理過程的一種圖形工具,她從數據傳遞和加工的角度以圖形的方式來描寫敘述數據在系統流程中的流動和處理的異動的變換過程。反映的是數據的流向和自然的邏輯過程和必要的邏輯數據存儲。我們來看以下的一張表。在數據流程圖中。主要有以下的符號:

? ? ? ? ?

? ? ? ? 如我們上圖所展示的,在數據流圖其中。通常採用四種主要的數據流圖符號。在不論什么一個數據流圖其中。必須包括四種基本符號,缺一不可。第一個符號圓形表示的加工處理的過程,在圓形其中,注明加工的名字和編號。第二個符號箭頭:上面寫數據流的名稱。那么同一個數據流在經過了加工之后。可能有不同的加工結果,比如。日常生活中的面粉,經過加工以后,可能加工成了饅頭,也可能是面粉,主要是加工的功能對數據流進行了處理。有流進就有流出,在同一個數據流圖上,不能有同名的數據流。假設有兩個以上的數據流指向一個加工。

或者一個加工中。輸出兩個數據流,那么這些數據流其中,往往存在一定的關系,關系例如以下:

? ? ? ??

? ? ? ??第三種符號:數據存儲文件:一般用雙橫線來表示,可是有關數據存儲文件表示方式在各種不同的教材上表示的方法會不一樣,比方說,實用雙橫線表示的。也有有半框形表示的。箭頭表示存進來或者取出去。表示讀和寫的過程。一般把文件名稱寫在中間,數據存儲文件的作用是保存數據,能夠是數據庫的文件。也能夠是還有一種形式的數據組織,所以她的流向能夠理解為查詢文件。向外的箭頭能夠理解為得到了所須要的結果。
? ? ? ?第四種符號:數據源點或匯點,表示數據流圖其中,須要處理的數據的輸入的來源。在數據流圖其中,僅僅是作為一種符號,并不須要以不論什么軟件的方式來進行設計和實現。她是系統外部環節中的實體。所以稱外部實體。一般來說這樣的數據源點或匯點僅僅出如今數據流圖的頂層圖其中。學習完了數據流圖的基本符號。我們再來看一下數據流圖的設計原則:

? ? ? ? 數據流圖設計原則

? ? ? ??

? ? ? ? 數據流圖的設計原則在后面的典型例題中,小編在細細說明這些原則是怎樣在我們的例題中靈活應用的。

? ? ? ? 數據字典

? ? ? ??數據字典是指對數據的數據項、數據結構、數據流、數據存儲、處理邏輯、外部實體等進行定義和描寫敘述,其目的是對數據流程圖中的各個元素做出具體的說明。數據字典(Data dictionary)是一種用戶能夠訪問的記錄數據庫和應用程序原數據的文件夾。主動數據字典是指在對數據庫或應用程序結構進行改動時。其內容能夠由DBMS自己主動更新的數據字典。被動數據字典是指改動時必須手工更新其內容的數據字典。我們來看以下的一張圖:

? ? ? ??

? ? ? ? 介紹完了數據流圖的基本理論知識之后,我們就開始要實戰了。在這里小編簡單的舉兩個例題,鞏固前面的理論知識。首先我們來看一道04年1月份的真題,盡管04年的題目距今已經有一定的年頭了。可是軟考的題目都是換湯不換藥,所以掌握了主要的解題方法和技巧,任他千變萬化,我自對答如流,好了。小編不扯了,題目例如以下所看到的:

? ? ? ? ?典型例題:

? ? ? ? ?

? ? ? ? ?數據流程圖例如以下:

? ? ? ? ?

? ? ? ? 問題例如以下:

? ? ? ? ?

? ? ? ? ?拿到題目之后。我們須要認真的讀上幾遍。由于這種題目考的不難。關鍵就是細心,有時候,題目中的一句話可能就是我們須要的答案。首先,我們來看第一道題,題目中說數據流圖2中有兩條數據流是錯誤的。請指出這兩條數據流的終點和起點。我們來分析一下,頂層圖中的四個輸入管理工作請求單、查詢請求信息、讀者信息、當前日期在零層圖其中都有體現。接下來,我們來看輸出,輸出的信息有圖書情況、讀者情況和非法請求信息,在0層圖其中。圖書情況和讀者情況均有體現,可是細致觀察我們會發如今頂層圖其中有輸出的的為非法請求信息,在0層圖其中有兩個分別為非法管理工作請求單和非法查詢請求信息,可是這樣我們并不能判定這個就是錯的,出現這種情況可能是在頂層圖中的一個輸出流在0層圖其中被分解了。我們先臨時放一放。

接著我們來看讀者文件,處理查詢請求是對讀者文件進行寫的一個過程。登記讀者信息是對讀者文件進行寫或者說是取信息。我們首先來看處理查詢請求,從前面的事件描寫敘述其中。我們能夠看出,處理查詢請求包含查詢圖書情況和讀者情況,所輸出的結果沒有錯,而且與頂層圖也是相相應的,在查詢過程中,依據用戶的查詢請求信息,如果要查系統分析師繼續指南的信息。那么就會輸入系統分析師繼續指南,然后輸出,輸出的就是系統分析師繼續指南這本書的情況。作者,價格。出版社等情況,那么去哪兒查呢。所以這里面沒有輸入。所以對于讀者文件而言,她所借閱的一些信息應該是從反方向作為輸入,接到了查詢信息以后。從讀者文件里取出相關的記錄來進行查詢,相同情況,第三個加工,登記讀者信息,輸入的是讀者信息,沒有輸出。違法了數據守恒的規則,有輸入就要有輸出。

有輸入,經過加工以后就應該有輸出,那輸出什么nie?在這里輸入的是讀者信息,加工的功能是登記讀者信息,登記到哪兒去。應該要登記到讀者文件里,所以應該也是反方向,例如以下所看到的:

? ? ? ??

? ? ? ? 所以第一題的答案就是從2到讀者文件,從讀者文件到3,這題考察的是子圖和父圖的平衡原則。我們接著來看第二題,題目例如以下所看到的:

? ? ? ? ??

? ? ? ? ?第三個數據流圖是對0層圖第二個加工的一個細化,把第二個加工細化成讀者信息查詢和圖書信息查詢。那么要找出缺少的數據流,我們首先使用父圖和子圖的平衡原則。先看看1層圖和1層圖相相應的數據流的情況。


先看輸入:查詢請求信息,讀者文件的輸入,輸出三條:圖書情況、讀者情況、非法查詢讀者請求信息。缺少的應該是內部的數據流情況,由于查詢的請求信息包含兩個。一個是查詢讀者請求信息,還有一個是查詢圖書請求信息,也分成了兩個。所以數據流跟父圖是平衡的。可是問題是少了三條,少了那三條nie?依據子圖和父圖的平衡原則。所以缺少的肯定是2.1和2.2之間的,或者是2.1和2.2與文件之間的。

? ? ? ? 所以這里,我們就須要依據試題的描寫敘述來找到對應的答案,試題描寫敘述到:系統的信息查詢功能主要包含讀者信息查詢和圖書信息查詢。其中讀者信息查詢可得到讀者的基本信息及讀者借閱圖書的情況,圖書信息查詢可得到圖書基本信息和圖書的借出情況。依據試題描寫敘述,我們非常easy看出來,有關讀者的信息查詢。應該要用到借書的文件,由于這里面是須要借書的情況。借書的相關信息在借書文件其中,所以這須要查詢讀者信息的話,不但要有讀者文件還須要借書文件,所以要添加一條結束文件到讀者信息查詢的一條數據流,相同的情況,還要添加一條從借書文件到圖書信息查詢的數據流,圖書信息查詢出了圖書的基本情況外。還應該包含圖書的借閱情況,所以她也在借書文件其中,同一時候。來看圖書的借閱情況,所以還要從圖書文件夾文件到圖書信息查詢的數據流,由于要查詢圖書的基本情況,圖書的基本情況在圖書文件夾文件其中。所以依據試題描寫敘述來發現缺少的數據流。

都能夠依據子圖和父圖的平衡原則,還有試題的描寫敘述來確定。接著。我們來看第三題,題目例如以下所看到的:

? ? ? ??

? ? ? ??中括號表示反復的情況,管理工作包含四個方面:購入新書,讀者借書。讀者還書、圖書注銷。購入新書的時候須要為該書編制入庫單。

讀者借書的時候須要填寫借書單。

讀者還書的時候須要填寫還書單。

注銷圖書的時候須要填寫注銷單。所以她的管理工作請求單包含四種情況:入庫單、借書單、還書單、注銷單這四種。由于四種是可選的情況。依據數據流圖里面數據結構的描寫敘述,我們應該用中括號,中間用一個豎線來進行分開。我們再來看入庫單:我們來看試題描寫敘述。入庫單的內容包含圖書分類文件夾號、書名、作者、價格、數量和夠數日期。這個是不是非常清楚nie。

? ? ? ? ?小編寄語:這篇博文。小編主要針對軟考中的考點下午題數據流圖進行解說,主要解說了四個方面的基本內容,數據流圖的基本符號,數據流圖的設計原則,數據字典,然后列出了一個簡單的例題,對前面的理論知識加以鞏固,盡管04年的題目有點兒年頭了,可是軟考的題目都是換湯不換藥。所以掌握了主要的解題方法和技巧,任他千變萬化,我自對答如流,對于數據流圖這類題型,關鍵就是細心,從眾多文字描寫敘述中。火眼金睛的看到我們所須要的答題信息,一般解題的時候都會利用上子圖和父圖的平衡原則已經數據平衡原則,掌握了解題技巧。數據流圖就是送分的題,相信自己,肯定沒有問題。因為上次小編抱著吊兒郎當的心態學習。認為這次只是下次過。然后上天就真的成全了小編,沒關系,小編會越挫越勇的,再次擁抱軟考的小編。小編會給小編自己怎么樣的奇跡呢,讓我們拭目以待,小編給大家帶來的精彩。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/541453.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/541453.shtml
英文地址,請注明出處:http://en.pswp.cn/news/541453.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

基本程序 打印Scala的Hello World

Scala中的基本程序 (Basic program in Scala) As your first Scala program, we will see a basic output program that just prints "Hello World" or any other similar type of string. With this example, we will see what are the part of the code that is im…

java treemap lastkey_Java TreeMap lastKey()用法及代碼示例

java.util.TreeMap.lastKey()用于檢索Map中存在的最后一個或最高鍵。用法:tree_map.lastKey()參數:該方法不帶任何參數。返回值:該方法返回映射中存在的最后一個鍵。異常:如果映射為空,則該方法將引發NoSuchElementException。以下…

mysql屬于數據庫三級模式_數據庫系統的三級模式指的是什么

數據庫系統的三級模式指的是什么發布時間:2020-10-26 10:11:21來源:億速云閱讀:52作者:小新小編給大家分享一下數據庫系統的三級模式指的是什么,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧&…

《自頂向下網絡設計(第3版)》——導讀

目錄 第1部分 辨明客戶的需求和目標 第1章 分析商業目標和制約 1.1 采用自頂向下的網絡設計方法 1.2 分析商業目標 1.3 分析商業制約 1.4 商業目標檢查表 1.5 小結 1.6 復習題 1.7 設計環境 第2章 分析技術目標與折衷措施 2.1 可擴展性 2.2 可用性 2.3 網絡性能 2.4 安全性 2…

python矩陣變化_用numpy改變矩陣的形狀

我的問題有兩個方面。我有下面的代碼來處理一些矩陣。在import numpytupleList [(0, 122), (1, 246), (2, 157), (3, 166), (4, 315), (5, 108), (6, 172), (7, 20), (8, 173), (9, 38), (10, 28), (11, 72), (12, 102), (13, 277), (14, 318), (15, 316), (16, 283), (17, 31…

最小硬幣問題_進行更改的最小硬幣數量

最小硬幣問題Description: 描述: This is classic dynamic programming problem to find minimum number of coins to make a change. This problem has been featured in interview rounds of Amazon, Morgan Stanley, Paytm, Samsung etc. 這是經典的動態編程問題…

java 生成xml亂碼_jdom解決中文亂碼問題 JAVA生成xml文件幫了我很大的忙

決解了數據庫讀取出來 再保存到xml 產生的亂碼問題import java.io.FileOutputStream;import java.io.IOException;import java.io.OutputStreamWriter;import org.jdom.Attribute;import org.jdom.Document;import org.jdom.Element;import org.jdom.output.Format;import org.…

給定重量上限,背包問題_滿足給定重量的袋子的最低成本

給定重量上限,背包問題Problem statement: 問題陳述: You are given a bag of size W kg and you are provided costs of packets different weights of oranges in array cost[] where cost[i] is basically cost of i kg packet of oranges. cost[i] -1 means t…

springMVC rest風格

1.dispatcherServlet的配置<!-- The front controller of this Spring Web application, responsible for handling all application requests --><servlet><servlet-name>springDispatcherServlet</servlet-name><servlet-class>org.springfram…

sql2008能否打開mysql數據庫_mysql數據庫數據能不能導入到sql server中

點“測試”按鈕確認你的鏈接是正確的。 Press the "Test" button to ensure your connection settings are set properly and then the "OK" button when youre done.二. 創建Microsoft SQL到MySQL的鏈接1.在SQL Server Management Studio中打開一個new qu…

c語言 函數的參數傳遞示例_isunordered()函數與C ++中的示例

c語言 函數的參數傳遞示例C isunordered()函數 (C isunordered() function) isunordered() function is a library function of cmath header, it is used to check whether the given values are unordered (if one or both values are Not-A-Number (NaN)), then they are u…

java進一_JAVA小白進:基礎入門知識

1.注釋&#xff0c;關鍵字&#xff0c;標識符1.注釋(1)注釋&#xff1a;解釋說明程序的而文字。(2)注釋的分類&#xff1a;單行注釋 格式&#xff1a; //注釋的文字多行注釋 格式&#xff1a;/*注釋的文字*/文檔注釋 格式&#xff1a;/**注釋的文字*/(3)注釋的作用&#xff1a;…

補丁(patch)的制作與應用

為什么80%的碼農都做不了架構師&#xff1f;>>> 轉自http://linux-wiki.cn/wiki/zh-hans/%E8%A1%A5%E4%B8%81(patch)%E7%9A%84%E5%88%B6%E4%BD%9C%E4%B8%8E%E5%BA%94%E7%94%A8 如果hack了開源代碼&#xff0c;為了方便分享&#xff08;如提交Bug&#xff09;或自己…

php知識點匯總與解答_PHP操作員能力傾向問題與解答

php知識點匯總與解答This section contains Aptitude Questions and Answers on PHP Operators. 本節包含有關PHP運算符的 Aptitude問答。 1) Which of the following types of operators are used in PHP? Arithmetic OperatorsLogical OperatorsArray OperatorsString Oper…

csv導入mysql phpmyadmin_【轉】從phpMyAdmin批量導入Excel內容到MySQL(親測非常簡潔有效)...

今天做項目遇到需要用phpMyAdmin批量導入Excel內容到MySQL數據庫。分析了我的踏坑經歷并且總結一最便捷的一套導入數據的方法&#xff0c;非常實用簡潔&#xff1a;1、修改Excel表的數據&#xff0c;使得Excel中的字段與數據庫字段要一一對應&#xff0c;并加上自增id。2、然后…

weakhashmap_Java WeakHashMap putAll()方法與示例

weakhashmapWeakHashMap類的putAll()方法 (WeakHashMap Class putAll() method) putAll() method is available in java.util package. putAll()方法在java.util包中可用。 putAll() method is used to copy all of the associations or mappings from the given map and assig…

c語言memcmp和java的_C語言memcmp()函數:比較m字節長的兩個字符串s1和s2

函數名&#xff1a;memcmp頭文件&#xff1a;函數原型&#xff1a; void* memcmp(void *s1,void *s2,unsigned m);功能&#xff1a;比較m字節長的兩個字符串s1和s2參數&#xff1a; s1 和 s2 為要比較的字符串unsigned m 為要比較的前m個字節返回值&#xff1a;s1s1s2 返回等…

[下載地址] Subclipse 1.10.9(SVN) _附說明

http://pan.baidu.com/s/1bp6EFHt轉載于:https://www.cnblogs.com/gscq073240/articles/6814429.html

hbase 偽分布安裝 java_HBase基礎和偽分布式安裝配置

一、HBase(NoSQL)的數據模型1.1 表(table)&#xff0c;是存儲管理數據的。1.2 行鍵(row key)&#xff0c;類似于MySQL中的主鍵&#xff0c;行鍵是HBase表天然自帶的&#xff0c;創建表時不需要指定1.3 列族(column family)&#xff0c;列的集合。一張表中有多個行健&#xff0c…

java treemap_Java TreeMap firstEntry()方法及示例

java treemapTreeMap類的firstEntry()方法 (TreeMap Class firstEntry() method) firstEntry() method is available in java.util package. firstEntry()方法在java.util包中可用。 firstEntry() method is used to retrieve the key-value pairs linked with the lowest valu…