走在架構(gòu)師的大道上 Jack.Wang's home

          Java, C++, linux c, C#.net 技術(shù),軟件架構(gòu),領(lǐng)域建模,IT 項(xiàng)目管理 Dict.CN 在線詞典, 英語(yǔ)學(xué)習(xí), 在線翻譯

          BlogJava 首頁(yè) 新隨筆 聯(lián)系 聚合 管理
            195 Posts :: 3 Stories :: 728 Comments :: 0 Trackbacks
          前言
                 最近應(yīng) P2P 課程的要求,組織了六個(gè)同學(xué)開(kāi)發(fā)取名為 NesQQ  的小系統(tǒng)。等開(kāi)發(fā)完, 會(huì)把他共享,供初學(xué)者學(xué)習(xí),現(xiàn)在只把開(kāi)發(fā)控制文件共享。傳統(tǒng)的項(xiàng)目會(huì)有啟動(dòng),開(kāi)發(fā),實(shí)施,收尾的過(guò)程,而在這個(gè)項(xiàng)目中,結(jié)合實(shí)際,只做了個(gè)控制文件,俗話說(shuō)麻雀雖小五臟俱全。感謝所有參與這個(gè)項(xiàng)目的人員,你們已經(jīng)開(kāi)始 Open Source 的第一步。關(guān)注 Java, 關(guān)注開(kāi)源。
                第二次會(huì)議記錄
                    1. 時(shí)間
                        2007-10-24 星期三
                    2. 地點(diǎn)
                        501 教室
                    3. 參加人員
                        XXX 小組全部成員
                    4.主要內(nèi)容
                        4.1 討論參考文檔內(nèi)容
                        4.2 討論需求
                        4.3 確認(rèn) 2007-10-28 再次開(kāi)會(huì)
                第三次會(huì)議記錄
                       時(shí)間:2007-10-31
                       地點(diǎn):227 寢室
                     1. 近一周的進(jìn)展情況
                     2. 進(jìn)一步明確需求
                     3. 討論設(shè)計(jì)實(shí)現(xiàn)(每個(gè)人都發(fā)表意見(jiàn))
                     4. 分工及協(xié)助方式(沒(méi)有時(shí)間限制,但會(huì)有里程碑和緩沖時(shí)間)
                     5. 相關(guān)經(jīng)驗(yàn)介紹 (每個(gè)人都發(fā)言, show yourself)
          正文
           

          案卷號(hào)

          01

          版本號(hào)

          1.0

          日期

          2007-10-17

           

           

           

           

          <通訊系統(tǒng)NesQQ>

          小組開(kāi)發(fā)參考文檔

           

           

                                                                          者:          汪保杰          

                                                                      完成日期:         2007-10-17             

                                                                      人:                               

                                                                      簽收日期:                               

           

                    修改情況記錄:

          版本號(hào)

          修改批準(zhǔn)人

          修改人

          安裝日期

          簽收人

            

           


          小組開(kāi)發(fā)參考文檔

          引言

          1 編寫(xiě)目的

          2 范圍

          3 參考文件

          4 溝通方式

          5 技術(shù)與工具

          6 WBS (人員分配,進(jìn)度計(jì)劃)

          7 用例模型

          8分析與設(shè)計(jì)

          9 參考界面

          10測(cè)試

          11 公開(kāi)演示

          12 項(xiàng)目總結(jié)


          引言

          這個(gè)學(xué)期我們上了網(wǎng)絡(luò)課,學(xué)習(xí)了 TCP/IP 協(xié)議,也看了林老師發(fā)給我們的 winsock 代碼,我們對(duì) socket 編程有了一定的了解,但這還不夠。故此,學(xué)校組織了一些專題講座,也組織同學(xué)以組為單位開(kāi)發(fā)關(guān)于 socket 方面的小系統(tǒng),小組最多 6 個(gè)人。

          小組人員: 彭東石,周鑫,李鵬,龍曉泉,鄺月娟, 汪保杰(組長(zhǎng))

          人員簡(jiǎn)單介紹:

                    彭東石: 擅長(zhǎng)硬件,在深圳工作兩年, 熟悉語(yǔ)言 C++, 做過(guò)team leader pdongshi@foxmail.com

                    周鑫:   擅長(zhǎng)軟件開(kāi)發(fā),原軟件學(xué)院學(xué)生,目前在公司做項(xiàng)目. 熟悉 C#,Java 語(yǔ)言zhouxin830723@163.com

                    李鵬:   擅長(zhǎng)軟件開(kāi)發(fā), 熟悉 Java 語(yǔ)言.lipeng82@126.com

                    龍曉泉: 擅長(zhǎng)軟件開(kāi)發(fā), 熟悉 Java 語(yǔ)言.lxq5270@163.com

                    鄺月娟: 擅長(zhǎng)軟件開(kāi)發(fā), 熟悉 Java 語(yǔ)言.kyjnihao@yahoo.com.cn

          汪保杰: 擅長(zhǎng)軟件開(kāi)發(fā), 在深圳工作3年多,熟悉 C++, Java,做過(guò)系統(tǒng)分析員 wbjeasygo@163.com

               開(kāi)發(fā)方式:

                  先給大家一開(kāi)源的 Demo 一下,大家以他為開(kāi)發(fā)模板完成開(kāi)發(fā)工作。

                  大家盡量用網(wǎng)絡(luò)資源學(xué)習(xí)。

          1 編寫(xiě)目的

              為了明確小組系統(tǒng)開(kāi)發(fā)范圍以及開(kāi)發(fā)注意事項(xiàng),同時(shí)也叫部分沒(méi)有參與過(guò)系統(tǒng)開(kāi)發(fā)的同學(xué)了解軟件開(kāi)發(fā)過(guò)程是一個(gè)什么樣的過(guò)程,本次開(kāi)發(fā),一是要從中學(xué)習(xí)技術(shù),二是要學(xué)習(xí)如何管理一個(gè)項(xiàng)目,尤其是處于我們這種模式的項(xiàng)目(人很分散,部分人不能上手開(kāi)發(fā))。這對(duì)大家都是一個(gè)挑戰(zhàn)。

          關(guān)于開(kāi)發(fā)相關(guān)的文檔合并在這一個(gè)文檔里,供開(kāi)發(fā)時(shí)參考。同時(shí)此文檔也作為一個(gè)交流平臺(tái)。

          目的很明確,希望大家能從這次開(kāi)發(fā)中學(xué)到些東西,可能不只是開(kāi)發(fā)哦!

          2 范圍

          A   軟件名稱:簡(jiǎn)易通訊系統(tǒng) NesQQ

          B   軟件功能

               分兩個(gè)層次 (兩次迭代完成,至少完成第一層次功能)

          1.             基本的 p2p交流

          包括登陸模塊,管理好友模塊, 群功能模塊,特定好友聊天模塊

                          2.     文件共享,視頻,語(yǔ)音功能

                      

          3 參考文件

          Thinking in java

          Java 編程規(guī)范》

          Java 1.5 API

          Java 高級(jí)編程》

          Swing , SWT,JFace編程》

          4 溝通方式

          1. 每天利用課余時(shí)間交流

          2. 每個(gè)星期開(kāi)個(gè)小會(huì)

          3. QQ 群為我們的即時(shí)通訊工具, 必要時(shí)可以用 Email

          5 技術(shù)與工具

          1. Java 語(yǔ)言 (1.5), 開(kāi)發(fā)工具 eclipse 3.2

          2. 數(shù)據(jù)存貯可以考慮 DB(sqlserver).

          3. 建模工具用 StarUML , PowerDesigner

          6 WBS (人員分配,進(jìn)度計(jì)劃)

          1. 簡(jiǎn)易通訊系統(tǒng) NesQQ

           1.1.前期準(zhǔn)備

              1.1.1 需求確認(rèn) (OK,(ALL))

              1.1.2 分析設(shè)計(jì) (OK,(ALL))

           1.2. 第一次迭代

              1.2.0. 數(shù)據(jù)中心模塊 (保杰)

             1.2.1. 登陸模塊 (東石)

             1.2.2. 用戶管理模塊

                 1.2.2.1 好友查詢(小泉)

                 1.2.2.2 用戶注冊(cè)(月娟)

                 1.2.2.3 查看所有聊天記錄(小泉)

                 1.2.2.4 組功能模塊(保杰)

             1.2.3. Socket 封裝 (周鑫)

              1.2.4. 聊天模塊 (周鑫)

              1.2.5. 主界面模塊(李鵬)

              1.2.6. 服務(wù)器模塊(取消)

           1.3. 第二次迭代 (目前不考慮)

              1.3.1. 文件共享

              1.3.2. 視頻
           
          1.3.3. 語(yǔ)音

           1.4. 第三次迭代

               1.4.1. 功能完善,界面美化( ALL)
               1.4.2. 驗(yàn)收測(cè)試(ALL)



          ALL: 所有人

          PS: 鑒于實(shí)際情況,小組開(kāi)發(fā)沒(méi)有時(shí)間限制,但會(huì)有里程碑和緩沖時(shí)間.


          進(jìn)度計(jì)劃:

          1910,11周,截止到 2007-11-16 完成基本功能,11周星期五第一次集成

             第一次集成里程碑

          212 周,截止到2007-11-23,星期五,功能完善,美化

          313 周的星期一,二,三,四 最終集成,測(cè)試,美化

             最終集成里程碑

          413 周的星期五 準(zhǔn)備報(bào)告

          514 周為緩沖時(shí)間(可進(jìn)一步完成其他功能)

             報(bào)告里程碑

          7 用例模型

          1. 參與者: 注冊(cè)用戶

          2. 注冊(cè)用戶

           2.1. 登陸和注冊(cè)

          用例名稱

          登陸和注冊(cè)

          用例目標(biāo)

          提供用戶登陸系統(tǒng)和注冊(cè)界面

          參與者

          注冊(cè)用戶

          前置條件

          輸入

          ID編號(hào) (登陸時(shí)用)

          姓名

          口令

          Email

          性別

          UserIP

          服務(wù)端口號(hào)

          操作

          輸入ID,Password 登陸,

          輸入相關(guān)信息注冊(cè)ID

          輸出

          登陸: 成功進(jìn)入主界面

                失敗彈出警告信息

          注冊(cè): 成功彈出成功信息

                失敗彈出警告信息

          后置條件

          2.2. 好友管理

          用例名稱

          好友管理

          用例目標(biāo)

          提供好友的管理(增加,刪除)

          參與者

          注冊(cè)用戶

          前置條件

          已經(jīng)登陸系統(tǒng)

          輸入

          增加:

              好友 ID

              群組 (將好友添加到哪個(gè)組中)

          刪除:

              在主界面右鍵單擊刪除

          操作

          輸出

          好友以 Tree 結(jié)構(gòu)顯示

          如:

          同學(xué):

              張三

              李四

          同事:

          老師:

          后置條件

          2.3. 組管理

          用例名稱

          組管理

          用例目標(biāo)

          提供組的 CURD

          參與者

          注冊(cè)用戶

          前置條件

          已經(jīng)登陸系統(tǒng)

          輸入

          組名稱

          組描述

          建立者

          組下面的好友

          操作

          輸出

          Tree 型結(jié)構(gòu)顯示

          如:

          同學(xué)

              張三

              李四

          同事:

          老師:

          后置條件

          2.4.  查看聊天記錄

          用例名稱

          查看聊天記錄

          用例目標(biāo)

          查看和某個(gè)好友聊天的記錄

          參與者

          注冊(cè)用戶

          前置條件

          輸入

          好友ID編號(hào)

          操作

          輸出

          顯示記錄

             時(shí)間

          好友

             內(nèi)容  

          后置條件

          2.5.       客戶模塊

          用例名稱

          客戶模塊

          用例目標(biāo)

          提供向好友發(fā)送信息

          參與者

          注冊(cè)用戶

          前置條件

          已經(jīng)登陸系統(tǒng)

          輸入

          好友名字

          信息內(nèi)容

          信息發(fā)送時(shí)間

          操作

          輸出

          成功與否

          后置條件

          2.6.       信息保存

          用例名稱

          信息保存

          用例目標(biāo)

          當(dāng)好友不在線時(shí),將所發(fā)信息保存在數(shù)據(jù)中心

          操作

          Schedule Thread 負(fù)責(zé)信息再發(fā)送。

          輸入

          信息發(fā)送者

          信息接受者

          消息內(nèi)容

          消息創(chuàng)建時(shí)間

          8分析與設(shè)計(jì)

          數(shù)據(jù)庫(kù)設(shè)計(jì):

           用戶數(shù)據(jù)模型

          屬性名稱

          英文名

          類型

          備注

          編號(hào)

          ID

          NUMBER(10)

          自動(dòng)生成

          姓名

          User Name

          NVARCHAR(50)

          用戶名稱

          口令

          Password

          NVARCHAR(16)

          要限制密碼長(zhǎng)度

          Email

          Email

          NVARCHAR(50)

          前端要驗(yàn)證 Email 是否有效。

          IP地址

          UserIP

          NVARCHAR(20)

          自動(dòng)獲取IP 地址

          服務(wù)端口號(hào)

          ServicePort

          NUMBER(5)

          提供默認(rèn)值

          分組模型

          屬性名稱

          英文名

          類型

          備注

          ID

          Id

          NUMBER(10)

          自動(dòng)編號(hào)

          組名稱

          Name

          NVARCHAR(20)

          限制大小

          建立者

          UserId

          NUMBER(10)

          建立日期

          CreateDate

          Date

           用戶和組的關(guān)系模型 (Many to Many)

          屬性名稱

          英文名

          類型

          備注

          ID

          Group Id

          NUMBER(10)

          自動(dòng)編號(hào)

          用戶ID

          User Id

          NUMBER(10)

          自動(dòng)編號(hào)

          信息數(shù)據(jù)模型

          屬性名稱

          英文名

          類型

          備注

          信息 ID

          Id

          NUMBER(10)

          自動(dòng)編號(hào)

          發(fā)送者

          Sender

          NUMBER(10)

          消息內(nèi)容

          Content

          NVARCHAR(255)

          限制大小

          創(chuàng)建時(shí)間

          CreateDate

          Date

          信息和接受用戶的關(guān)系 (one to many) 目前先實(shí)現(xiàn)單用戶發(fā)信

          屬性名稱

          英文名

          類型

          備注

          信息 ID

          message Id

          NUMBER(10)

          自動(dòng)編號(hào)

          用戶ID

          User Id

          NUMBER(10)

          自動(dòng)編號(hào)

          數(shù)據(jù)庫(kù)名稱 nesQQ

          用戶名/密碼 nesQQ/nesQQ

          系統(tǒng)設(shè)計(jì):

             物理結(jié)構(gòu)圖:

              
          概要設(shè)計(jì):

                  基于 P2P 思想,每個(gè) Peer 實(shí)現(xiàn) clientServer 兩個(gè)功能。對(duì)應(yīng)兩個(gè)端口。

                    一個(gè)端口負(fù)責(zé)服務(wù),一個(gè)端口負(fù)責(zé)發(fā)送消息。

                  當(dāng)好友不在線時(shí),將數(shù)據(jù)存儲(chǔ)在數(shù)據(jù)中心(Client 端有專門(mén)的線程負(fù)責(zé)重發(fā))

                 (目前好友不在線,不能聊天)

          9 參考界面(參考)

          1登陸界面
           

            2. 其他

          10測(cè)試

          單元測(cè)試:

              在提交代碼時(shí)必須保證已經(jīng)進(jìn)行過(guò)完整的單元測(cè)試??梢钥紤]用 JUnit 自動(dòng)測(cè)試或者是用界面驅(qū)動(dòng)測(cè)試.

          集成測(cè)試:

              大家確保將完整的 Source code 提交給我,由我進(jìn)行集成,等測(cè)試 ok 之后,在將新的 Source code 轉(zhuǎn)給大家 (簡(jiǎn)單的協(xié)作實(shí)現(xiàn)軟件的配置管理)

          組內(nèi)驗(yàn)收:

              開(kāi)會(huì)演示,當(dāng)前成果.

          11 公開(kāi)演示

          項(xiàng)目提交,相關(guān)文檔制作 (演示 ppt) 由組長(zhǎng)負(fù)責(zé),其他事項(xiàng)由東石組織.

          12 項(xiàng)目總結(jié)

          附錄:

          對(duì)于需求不明確和需求變更多的應(yīng)對(duì)措施主要有:

          1.快速原型-盡快給用戶一個(gè)快速原型啟發(fā)用戶的需求。

          2.增量迭代-整個(gè)開(kāi)發(fā)中遵循增量迭代的思路,加強(qiáng)各階段與用戶的溝通,對(duì)各個(gè)功能逐步完善本文轉(zhuǎn)自項(xiàng)目

          3.架構(gòu)考慮可擴(kuò)展性-架構(gòu)和設(shè)計(jì)都要考慮是為變更而設(shè)計(jì),而不僅僅是滿足當(dāng)前需求。

          4.需求開(kāi)發(fā)-需求人員不僅僅是描述清楚用戶需求,而更多的應(yīng)該是去開(kāi)發(fā)用戶需求,去挖掘用戶的潛在需求。

          通信協(xié)議表

           





          本博客為學(xué)習(xí)交流用,凡未注明引用的均為本人作品,轉(zhuǎn)載請(qǐng)注明出處,如有版權(quán)問(wèn)題請(qǐng)及時(shí)通知。由于博客時(shí)間倉(cāng)促,錯(cuò)誤之處敬請(qǐng)諒解,有任何意見(jiàn)可給我留言,愿共同學(xué)習(xí)進(jìn)步。
          posted on 2007-11-07 15:36 Jack.Wang 閱讀(5482) 評(píng)論(24)  編輯  收藏 所屬分類: 項(xiàng)目管理

          Feedback

          # re: NesQQ 項(xiàng)目控制文件分享 2007-11-07 15:53 BeanSoft
          朋友路過(guò)請(qǐng)留言

          支持一下! C++ 開(kāi)發(fā)?  回復(fù)  更多評(píng)論
            

          # re: NesQQ 項(xiàng)目控制文件分享 2007-11-07 15:58 Maggie
          支持支持?。?nbsp; 回復(fù)  更多評(píng)論
            

          # re: NesQQ 項(xiàng)目控制文件分享 2007-11-07 21:11 yz
          早就想開(kāi)發(fā)一個(gè)類似通信的軟件了!是基于JAVA開(kāi)發(fā)的吧!苦于沒(méi)有時(shí)間,現(xiàn)在在做項(xiàng)目開(kāi)發(fā)!  回復(fù)  更多評(píng)論
            

          # re: NesQQ 項(xiàng)目控制文件分享 2007-11-08 10:43 CoderDream
          支持分享!  回復(fù)  更多評(píng)論
            

          # re: NesQQ 項(xiàng)目控制文件分享[未登錄](méi) 2007-11-08 16:55 L2
          不錯(cuò)!
          一看你們的需求知道是“練過(guò)”的。
          關(guān)注!??!  回復(fù)  更多評(píng)論
            

          # re: NesQQ 項(xiàng)目控制文件分享 2007-11-09 08:51 astamei
          一看就知道是軟件工程出身。
          是吧?


          其他相關(guān)專業(yè) 一般對(duì)文檔的要求沒(méi)有這么高。
            回復(fù)  更多評(píng)論
            

          # re: NesQQ 項(xiàng)目控制文件分享 2007-12-14 09:25 yz
          這篇文章放了這么久,我都來(lái)過(guò)幾次了,怎么不見(jiàn)發(fā)布出來(lái)?難道是在作秀??  回復(fù)  更多評(píng)論
            

          # re: NesQQ 項(xiàng)目控制文件分享 2008-08-03 18:47 李陪陪
          我要  回復(fù)  更多評(píng)論
            

          # re: NesQQ 項(xiàng)目控制文件分享[未登錄](méi) 2008-08-17 11:20 每一天
          支持^^等待^^  回復(fù)  更多評(píng)論
            

          # re: NesQQ 項(xiàng)目控制文件分享 2008-10-12 12:08 f
          請(qǐng)發(fā)布  回復(fù)  更多評(píng)論
            

          # re: NesQQ 項(xiàng)目控制文件分享 2009-02-28 04:38 gfg
          sfgsfgsdfg
            回復(fù)  更多評(píng)論
            

          # re: NesQQ 項(xiàng)目控制文件分享 2009-05-16 09:12 秦毛
          可以給我發(fā)份NES版的QQ嗎?mygoodatall@163.com 先謝謝樓主了??!!  回復(fù)  更多評(píng)論
            

          # re: NesQQ 項(xiàng)目控制文件分享[未登錄](méi) 2009-05-28 02:24 cheng
          下載軟件  回復(fù)  更多評(píng)論
            

          # re: NesQQ 項(xiàng)目控制文件分享 2009-06-04 15:51 caoguoqing
          371658746@qq.com 可以給我發(fā)個(gè)嗎?(*^__^*) 嘻嘻…… 謝謝啦  回復(fù)  更多評(píng)論
            

          # re: NesQQ 項(xiàng)目控制文件分享 2009-08-09 23:13 李特
          可以給我發(fā)份NES版的QQ嗎?saiter001@163.com麻煩你了樓主  回復(fù)  更多評(píng)論
            

          # re: NesQQ 項(xiàng)目控制文件分享 2009-10-05 10:03 韓亞?wèn)|
          可以給我發(fā)份NES版的QQ嗎?1136988397  回復(fù)  更多評(píng)論
            

          # re: NesQQ 項(xiàng)目控制文件分享[未登錄](méi) 2009-12-20 09:34 天天
          還有這軟件啊  回復(fù)  更多評(píng)論
            

          # re: NesQQ 項(xiàng)目控制文件分享 2010-01-08 01:41 5566
          可以給我發(fā)份NES版的QQ嗎  回復(fù)  更多評(píng)論
            

          # re: NesQQ 項(xiàng)目控制文件分享 2010-03-12 16:50 LIXUFENG
          gei w yi ge y ouxiang 497353042@qq.com  回復(fù)  更多評(píng)論
            

          # re: NesQQ 項(xiàng)目控制文件分享 2010-09-05 10:57 覺(jué)得糊精
          @cheng
            回復(fù)  更多評(píng)論
            

          # re: NesQQ 項(xiàng)目控制文件分享[未登錄](méi) 2010-12-21 22:53
          一直都再找nes的QQ,把NES版的QQ給我一份唄!
          mimi100703@126.com  回復(fù)  更多評(píng)論
            

          # re: NesQQ 項(xiàng)目控制文件分享 2011-03-17 07:33 l1003200@qq.com
          @BeanSoft
          一點(diǎn)也不方便  回復(fù)  更多評(píng)論
            

          # re: NesQQ 項(xiàng)目控制文件分享 2011-03-17 07:34 l1003200@qq.com
          e   回復(fù)  更多評(píng)論
            

          # re: NesQQ 項(xiàng)目控制文件分享 2011-03-17 07:34 l1003200@qq.com
          不真么方便  回復(fù)  更多評(píng)論
            

          主站蜘蛛池模板: 大丰市| 东方市| 铜山县| 军事| 三亚市| 乐平市| 西青区| 吴堡县| 黎城县| 宁远县| 天镇县| 宁国市| 邵东县| 资阳市| 桑日县| 金塔县| 昌江| 长治县| 新竹市| 合水县| 泾阳县| 天门市| 四平市| 康保县| 宿迁市| 九江县| 清水县| 巴南区| 建湖县| 阆中市| 东山县| 略阳县| 温州市| 荔浦县| 和田县| 津市市| 达日县| 肥乡县| 睢宁县| 甘南县| 灵璧县|