代码改变世界

开源->一步步实现cnblogs博客采集工具->概要设计

2012-10-10 23:53  wid  阅读(2818)  评论(6编辑  收藏  举报

  今天来对项目进行概要设计, 概要设计是指将得到的项目需求转换为软件的结构和数据结构, 网上有许多有关概要设计的模板, 十分详细, 但是正是由于太详细, 需要编写的内容太多, 致使编写详细概要设计的工作量太大, 如果要按规范报纸保量的编写完成一份概要设计足足要几十页的, 需要花几天时间才能完成, 但是Wid的这个开源项目侧重点在于软件的功能实现上, 所以对于详细的概要设计就不进行实现了,这里实现一份简略版的概要设计。

 

一、需求规定 

  (1). 功能需求规定

    1>. 能够模拟蜘蛛方式采集博客园中的随笔;

    2>. 能够采集指定用户的随笔;

    3>. 能够采集首页/精华/候选中的随笔;

    4>. 能够采集推荐博客中用户的随笔;

    5>. 对采集有一定的过滤机制, 过滤需求如下:

      ①. 仅采集某个日期时间段内发表的随笔;

      ②. 能够根据输入的关键字进行采集;

      ③. 能够根据输入过滤掉不感兴趣的随笔;

      ④. 对于内容过短的随笔不采集;

    6>. 必须保留随笔作者的相关信息;

    7>. 能够有相关的采集日志。

 

  (2). 采集质量规定

    1>. 能够采集完整的随笔内容;

    2>. 尽可能完整的保留随笔格式;

 

  (3). 运行环境

    能够在Windows/Linux系统上运行。

 

 

二、软件模块设计

  如图所示:

 

 

 

三、需求与模块间的关系
  如表格所示:

  UI模块 采集模块 分析模块 声明模块 保存模块 过滤模块 配置管理 初始化
需求1  

           
需求2  

           
需求3  

           
需求4  

           
需求5          

   
需求6      

       
需求7        

     

所设计的模块满足功能需求。

 

四、项目文件的组织

  对于项目文件的组织, 如图所示:

完成了概要设计后就是对各模块的详细设计, 详细设计内容将在下一篇随笔中进行叙述。

 

今天再次完成了坚持每天更新三篇随笔的计划, 欢迎继续关注CnblogsFan开源项目的最新进展, Wid将会坚持在每天的空闲时间完成对该项目的开发

 

GitHub项目地址: https://github.com/mrwid/CnblogsFan

 

--------------------

Wid, 2012.10.09

 

下一篇: 开源->一步步实现cnblogs博客采集工具->详细设计

上一篇:  开源->一步步实现cnblogs博客采集工具->对项目需求的分析