家譜管理系統(tǒng)1_第1頁(yè)
家譜管理系統(tǒng)1_第2頁(yè)
家譜管理系統(tǒng)1_第3頁(yè)
家譜管理系統(tǒng)1_第4頁(yè)
家譜管理系統(tǒng)1_第5頁(yè)
已閱讀5頁(yè),還剩17頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、軟件綜合設(shè)計(jì)家譜管理系統(tǒng)院系:計(jì)算機(jī)科學(xué)技術(shù)學(xué)院二系班級(jí):計(jì)11-2班姓名:劉文秀(15)合作者:姜雪(05)、岳奉宜(33)指導(dǎo)教師:薛曼玲2013年12月01日軟件綜合設(shè)計(jì)任務(wù)書(shū)一、題目:家譜管理系統(tǒng)二、設(shè)計(jì)要求(1)劉文秀(組長(zhǎng))、姜雪和岳奉宜組成課程設(shè)計(jì)小組。(2)小組成員分工協(xié)作完成。要求每個(gè)成員有自己相對(duì)獨(dú)立的模塊,同時(shí)要了解其他組員完成的內(nèi)容。(3)查閱相關(guān)資料,自學(xué)具體課題中涉及到的新知識(shí)。(4)采用結(jié)構(gòu)化、模塊化程序設(shè)計(jì)方法設(shè)計(jì),功能要完善,界面美觀。(5)所設(shè)計(jì)的系統(tǒng)應(yīng)有菜單、動(dòng)畫(huà)和音樂(lè)。(6)按要求寫(xiě)出課程設(shè)計(jì)報(bào)告,并于設(shè)計(jì)結(jié)束后1周內(nèi)提交。其主要內(nèi)容包括:封皮、課程設(shè)計(jì)

2、任務(wù)書(shū),指導(dǎo)教師評(píng)語(yǔ)與成績(jī)、目錄、概述、軟件需求分析、總體設(shè)計(jì)、詳細(xì)設(shè)計(jì)、程序的調(diào)試與測(cè)試、總結(jié)與體會(huì)、結(jié)束語(yǔ)、程序清單(帶中文注釋)、參考文獻(xiàn)等。報(bào)告一律用A4紙打印,正文的中文字體為宋體,西文字體用TimeNewRoma一律用小四號(hào)字,行距采用“固定值”18磅,首行縮進(jìn)2字符。1級(jí)標(biāo)題中文字體為黑體,西文字體為T(mén)imeNewRoma采用三號(hào)字;段落為居中、段前18磅、段后12磅、行距采用“固定值”18磅,首行縮進(jìn):無(wú),段中不分頁(yè),與下段同頁(yè)。僅一級(jí)標(biāo)題上目錄。三、課程設(shè)計(jì)工作量由于是設(shè)計(jì)小組團(tuán)結(jié)協(xié)作完成設(shè)計(jì)任務(wù),一般每人的程序量在400行有效程序行以上,不得抄襲。四、課程設(shè)計(jì)工作計(jì)劃201

3、3年12月2日,指導(dǎo)教師講課,學(xué)生根據(jù)題目準(zhǔn)備資料,需求分析;2013年12月3日,設(shè)計(jì)小組進(jìn)行總體方案設(shè)計(jì)和任務(wù)分工;2013年12月4日2013年12月10日,每人完成自己承擔(dān)的程序模塊并通過(guò)獨(dú)立編譯;2013年12月11日12日,將各模塊集成為一個(gè)完整的系統(tǒng),并錄入足夠的數(shù)據(jù)進(jìn)行調(diào)試運(yùn)行;2013年12月13日,驗(yàn)收、開(kāi)始撰寫(xiě)課程設(shè)計(jì)報(bào)告;2013年12月18日前,提交課程設(shè)計(jì)報(bào)告和軟件。指導(dǎo)教師簽章:教研室主任簽章指導(dǎo)教師評(píng)語(yǔ)與成績(jī)指導(dǎo)教師評(píng)語(yǔ):課程設(shè)計(jì)驗(yàn)收成績(jī):課程設(shè)計(jì)報(bào)告成績(jī):課程設(shè)計(jì)總成績(jī):指導(dǎo)教師簽章年月日第1章概述0課題研究的目的和技術(shù)發(fā)展現(xiàn)狀0課題研究的主要內(nèi)容0課題研究的

4、難點(diǎn)0第2章需求分析1性能需求1功能需求1第3章可行性分析2經(jīng)濟(jì)可行性分析2技術(shù)可行性分析2第4章概要設(shè)計(jì)2程序設(shè)計(jì)的基本思想2總體功能模塊圖3相關(guān)應(yīng)用技術(shù)3第5章詳細(xì)設(shè)計(jì)3日期信息的合法性檢驗(yàn)3添加成員孩子模塊5添加成員兄弟模塊5按照出生日期對(duì)家譜排序5由兄弟、孩子二叉樹(shù)生成家譜文件6按照姓名、出生日期查找家譜成員6第6章調(diào)試分析與測(cè)試結(jié)果6測(cè)試方法6測(cè)試過(guò)程6測(cè)試結(jié)論6第7章結(jié)束語(yǔ)11參考文獻(xiàn)12附錄13第1章概述課題研究的目的和技術(shù)發(fā)展現(xiàn)狀本家譜管理系統(tǒng)是以電子家譜的形式記載父系家族世襲、人物為中心。電子能準(zhǔn)確記錄家族成員出生卒年,以及生活地點(diǎn)、家庭成員等信息。一般情況下是不會(huì)出現(xiàn)信息丟

5、失情況。更不需要擔(dān)心傳統(tǒng)家譜隨著年代的久遠(yuǎn)字跡不清晰,有破損等情況的出現(xiàn)。所以本課題的研究目的是讓大家不但能夠非常容易的記錄家族情況,而且能清楚的了解本家族信息,使用起來(lái)非常方便?,F(xiàn)有的計(jì)算機(jī)技術(shù)足以支撐電子家譜的開(kāi)發(fā)。家譜的科學(xué)管理不但有助于民族文化和地方文化的發(fā)展,而且有其自身的積極意義。例如本電子家譜是利用VisvalC+開(kāi)發(fā)完成的。電子家譜的出現(xiàn)無(wú)疑讓家譜煥然一新,但是傳統(tǒng)家譜更能凸顯出歷史的韻味,文化的內(nèi)涵。這是電子家譜所不能夠替代的,電子家譜不可能成為文物。開(kāi)發(fā)人員應(yīng)該清楚的認(rèn)識(shí)到這一點(diǎn)。課題研究的主要內(nèi)容家譜,又稱(chēng)族譜、祖譜、宗譜等。一種以表譜形式,記載一個(gè)以血緣關(guān)系為主題的家族

6、世系繁衍。本課題研究的主要內(nèi)容是以電子家譜的形式記錄、查詢(xún)父系家族歷史信息為主要內(nèi)容。課題研究的難點(diǎn)建立輸入文件以存放最初家譜中各成員的信息,以及能夠?qū)π薷暮蟮募易V存盤(pán)以備以后使用。用戶(hù)界面的設(shè)計(jì)不夠完美。功能上的設(shè)計(jì)難度很大第2章需求分析性能需求系統(tǒng)的核心是利用對(duì)話框的連接和文本處理來(lái)存儲(chǔ)和修改家族管理系統(tǒng)的信息聯(lián)系,其中的每一個(gè)動(dòng)作都可能影響到其他的功能。使用方便,易于傳播,數(shù)據(jù)共享等性能。易于維護(hù)。功能需求建立輸入文件以存放最初家譜中各成員的信息。成員的信息中均應(yīng)包含以下內(nèi)容:姓名、出生日期、焙否、地址、健在否、死亡日期(若其已死亡)也可附加其它信息、但不是必需的。能對(duì)修改后的家譜存盤(pán)以

7、備以后使用。能從文件中讀出已有的家譜,形成樹(shù)狀關(guān)系。家譜建立好之后,以圖形方式顯示出來(lái)。顯示第n代所有人的信息。按照姓名查詢(xún),輸出成員信息(包括其本人、父親、孩子的信息)。按照出生日期查詢(xún)成員名單。輸入兩人姓名,確定其關(guān)系。某人添加孩子。刪除某人(若其還有后代,則一并刪除)。修改某人信息。按出生日期對(duì)家譜中所有人排序0打開(kāi)一家譜時(shí),若家譜中某人的生日在打開(kāi)家譜的那一天,應(yīng)給出提示。第3章可行性分析經(jīng)濟(jì)可行性分析對(duì)系統(tǒng)開(kāi)發(fā)規(guī)模進(jìn)行估算屬此軟件項(xiàng)目屬于小規(guī)模軟件開(kāi)發(fā)。所以開(kāi)發(fā)人員三到五人即可。開(kāi)發(fā),維護(hù)等成本相對(duì)較低。所以從經(jīng)濟(jì)可行性分析的角度來(lái)看此家譜管理系統(tǒng)適于開(kāi)發(fā)。技術(shù)可行性分析根據(jù)軟件系統(tǒng)

8、功能、性能要求的各項(xiàng)約束條件從技術(shù)的角度實(shí)現(xiàn)系統(tǒng)的可行性。家譜信息以樹(shù)的形式一次讀入內(nèi)存,而個(gè)人的各種資料雖然目前條目不多,但隨著程序的升級(jí),以后可能越來(lái)越大。我把樹(shù)形結(jié)構(gòu)和個(gè)人信息記錄的文檔分為兩個(gè)文件保存在外存中,一個(gè)文件串行化的記錄家譜樹(shù)的結(jié)構(gòu)化信息,保持少量個(gè)人信息作為識(shí)別標(biāo)志;另一個(gè)文檔保存完整的個(gè)人信息。索引時(shí),以樹(shù)形中的少量信息為依據(jù)在另一個(gè)文件中找到全部個(gè)人信息資料。第4章概要設(shè)計(jì)程序設(shè)計(jì)的基本思想家譜管理系統(tǒng)的總體設(shè)計(jì)思路是先為程序搭建好一個(gè)人結(jié)構(gòu)框架,家庭成員之間的關(guān)系,用樹(shù)形結(jié)構(gòu)(家族樹(shù))表示,這是本家譜管理系統(tǒng)的邏輯結(jié)構(gòu)。根據(jù)MFC勺特點(diǎn),采用CfamilytreeDl

9、g類(lèi)實(shí)現(xiàn)用戶(hù)窗口界面指令對(duì)于家譜的各種操作。有文件控制和家譜控制兩大模塊,按生日查找、刪除成員、文件輸入輸出、修改成員信息、按名字查找、成員關(guān)系顯示、按代數(shù)顯示等各種操作。然后再根據(jù)需求分析逐步增強(qiáng)程序的功能和性能??傮w功能模塊圖家譜管理系統(tǒng)按生日查擲出生日排尿福定美總椅潴名查探某代信曷事改資料上刪除該人聶法冢最保存家濠新建家評(píng)打開(kāi)家嘴相關(guān)應(yīng)用技術(shù)1 .定義“家譜”類(lèi)型2 .用結(jié)構(gòu)Date存儲(chǔ)日期3 .用結(jié)構(gòu)QuickSortNode存儲(chǔ)快速排序數(shù)組值(為快速排序而設(shè))4 .根據(jù)家譜的特點(diǎn),采用孩子-兄弟的二叉樹(shù)鏈表表示法(鏈表的基本單位為以結(jié)構(gòu)PersonNode表示的結(jié)點(diǎn)),各種操作以CO

10、perationFamilytree類(lèi)來(lái)實(shí)現(xiàn)。5 .根據(jù)MFC勺特點(diǎn),采用CfamilytreeDlg類(lèi)實(shí)現(xiàn)用戶(hù)窗口界面指令對(duì)于家譜的各種操作。第5章詳細(xì)設(shè)計(jì)日期信息的合法性檢驗(yàn)圖5-1日期信息的合法性檢查IntCOperationFamilytree二ReadNode(FILE*fp,Person&T,char*parentname)neself);輸入的成員出至溫寤一個(gè)孩子早?陰影都分的耳底是鉞衰惱丸deleteorder;voidCOperationFamilytree:SortByBirthday(QuickSortNode*order)irthday;irthday,pivo

11、tkey)=1|CompareDate(orderhigh.birthday,pivotkey)=0)-high;orderlow=orderhigh;irthday=orderhigh.birthday;neself=orderhigh.oneself;while(low<high&&(CompareDate(orderlow.birthday,pivotkey)=-1|CompareDate(orderlow.birthday,pivotkey)=0)+low;orderhigh=orderlow;.high作快速排序intpivotloc;if(low<hig

12、h).high一分為二QuickSort(order,low,pivotloc-1);irthday=T->(*order).oneself=T;order+;CopyInfoFromBiTreeToArray(T->child,order);CopyInfoFromBiTreeToArray(T->sibling,order);由兄弟、孩子二叉樹(shù)生成家譜文件voidSaveNode(FILE*fp,Person&pNode)tf)(2)按下按鈕“新建家譜”,新建一個(gè)家譜文件(*.ftf)(3)按下按鈕“保存家譜”,將修改過(guò)的家譜保存(4)按下按鈕“另存家譜”,將修改

13、過(guò)的家譜另存為一個(gè)家譜文件(*.ftf)(5)按下按鈕“刪除該人”,將樹(shù)型控件中選中的成員及其后代刪除(6)按下按鈕“增加孩子”,給樹(shù)型控件中選中的成員增加一個(gè)孩子(7)按下按鈕“更改資料”,更改樹(shù)型控件中選中的成員的資料京港管辱統(tǒng)某代信息諄法信言必存意.嘗偉三明居攣李華事學(xué)白:李白-S(8)按下按鈕“按照姓名查找”,將家譜中特定名字的成員的信息顯示在列表控件中(9)按下按鈕“確定兩人關(guān)系”,將家譜中某兩人的關(guān)系顯示出來(lái)(10)按下按鈕“出生日期排序”,將家譜中的所有成員按出生日期排序并顯示在列表控件中一句2111100無(wú)距無(wú)無(wú)而無(wú)尤KR冒普壬忌正是A-鈍苫吉吉代吉古范一!在叁誓示善告吉受喜凈

14、荷邑N輔營(yíng)卜出長(zhǎng)點(diǎn)_崩-1+茹?.rtvncri亙E*(11)按下按鈕“按照生日查找",將家譜中特定日期出生的成員的信息顯示在列表控件中(12)選擇菜單項(xiàng)目“關(guān)于”,顯示該程序的版權(quán)信息(13)選擇菜單項(xiàng)目“退出”,結(jié)束該程序的運(yùn)行第7章結(jié)束語(yǔ)通過(guò)這次大作業(yè),體會(huì)很深刻,將一直以來(lái)學(xué)到的東西都運(yùn)用到實(shí)際上來(lái),學(xué)以致用,對(duì)所學(xué)知識(shí)有了更深刻的理解,同時(shí)還發(fā)現(xiàn)了許多平時(shí)在書(shū)本上沒(méi)有遇見(jiàn)過(guò)的問(wèn)題,促進(jìn)了自己對(duì)知識(shí)的渴望,遇見(jiàn)了問(wèn)題,就希望能夠通過(guò)查找課外書(shū)來(lái)解決它們。剛接觸題目的時(shí)候,自己就有了一定的想法,覺(jué)得這個(gè)程序做起來(lái)是問(wèn)題不大的,但到了自己真正開(kāi)始編程的時(shí)候卻發(fā)現(xiàn)遠(yuǎn)遠(yuǎn)沒(méi)有想象中那么

15、簡(jiǎn)單,很多細(xì)節(jié)的問(wèn)題沒(méi)有預(yù)想到,很多關(guān)系的處理想得過(guò)于簡(jiǎn)單,以至于實(shí)施起來(lái)遇到了很大的困難,花了大量的時(shí)間。同時(shí)還有一個(gè)比較深刻的體會(huì)就是要盡量多在源碼上作注釋?zhuān)郧熬幰恍┕δ芎?jiǎn)單的程序,總能很清楚每個(gè)函數(shù)和每個(gè)變量的作用,但到了做這個(gè)大作業(yè),由于分開(kāi)了各個(gè)功能板塊去實(shí)現(xiàn),很多時(shí)候是做了后面就忘了前面,后來(lái)意識(shí)到這個(gè)問(wèn)題,便開(kāi)始在編程時(shí)加入注釋?zhuān)沂窃皆敿?xì)越好,這樣做了以后,很多時(shí)候需要查看自己原來(lái)寫(xiě)的源代碼,也能夠很方便地了解了,跟上了思路,也方便以后的維護(hù)。關(guān)于這個(gè)程序的缺點(diǎn)方面,由于自己花的時(shí)間不是很多,再加上知識(shí)有限,編寫(xiě)出來(lái)的界面不夠友好,在功能上還是有不完善的地方,譬如說(shuō)各項(xiàng)數(shù)據(jù)

16、的統(tǒng)計(jì)還沒(méi)有弄,數(shù)據(jù)的存儲(chǔ)還不夠理想等等。對(duì)于這個(gè)程序的改進(jìn),我自己還是有不少想法的。首先是需要加強(qiáng)數(shù)據(jù)的存儲(chǔ)這方面的知識(shí),使自己編寫(xiě)出來(lái)的程序能以一種標(biāo)準(zhǔn)的格式存儲(chǔ)下來(lái),方便以后其它程序的讀取??偟膩?lái)說(shuō),通過(guò)這次作業(yè),收獲還是挺多的,也發(fā)現(xiàn)了不少的問(wèn)題,并給自己以后的學(xué)習(xí)指引了方向,知道自己缺少哪方面的知識(shí),需要補(bǔ)充哪些知識(shí)等等。自己將會(huì)以這次作業(yè)為契機(jī),看更多編程方面的書(shū)籍,不斷充實(shí)自己的知識(shí)庫(kù)。參考文獻(xiàn)數(shù)據(jù)結(jié)構(gòu)(C語(yǔ)言版)一一清華大學(xué)出版社一一嚴(yán)蔚敏、吳偉民編著C至VisualC+程序設(shè)計(jì)語(yǔ)言一一科學(xué)出版社一一蔡常豐、林小蘋(píng)編著«MicrosoftVisualC+高手速成一一兵器

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論