1.65k likes | 1.82k Views
《 基于 .NET 的 Web 网站开发 》 精品课程学习情境设计. 学习情境一. 新闻发布及管理系统. 资讯 —— 任务提出. 【 现状分析 】. 1 .项目的背景及意义 当今社会是信息竞争的社会,企业的信息化建设是提高企业管理效率的必要途径,在这样一个信息化建设中,企业的新闻发布系统是企业对外快速传播信息的门户。 这个“门户”让拥有它的企业能够及时发布企业的最新信息,让其他用户第一时间获取信息,以此占有市场先机。谁拥有互联网,谁就拥有了信息;谁拥有了信息,谁就能占据有利竞争地位,已经成为一条新的市场竞争规则。. 【 现状分析 】. 本项目分为前、后台管理系统 :
E N D
《基于.NET的Web网站开发》精品课程学习情境设计《基于.NET的Web网站开发》精品课程学习情境设计 学习情境一 新闻发布及管理系统
【现状分析】 1.项目的背景及意义 当今社会是信息竞争的社会,企业的信息化建设是提高企业管理效率的必要途径,在这样一个信息化建设中,企业的新闻发布系统是企业对外快速传播信息的门户。 这个“门户”让拥有它的企业能够及时发布企业的最新信息,让其他用户第一时间获取信息,以此占有市场先机。谁拥有互联网,谁就拥有了信息;谁拥有了信息,谁就能占据有利竞争地位,已经成为一条新的市场竞争规则。
【现状分析】 • 本项目分为前、后台管理系统: • 前台实现的功能主要包括: • 用户注册、修改已注册用户信息功能 • 注册用户发布新闻功能 • 新闻搜索功能 • 各新闻类别中的新闻数量的统计功能 • 用户对新闻进行评论功能 • 热点新闻统计及浏览功能 • 按类别浏览新闻功能
【现状分析】 • 后台实现的功能主要包括: • 管理现有新闻 • 发布新的新闻 • 对要发布的新闻进行审核 • 管理新闻评论 • 管理新闻栏目 • 管理系统用户
开始 浏览网页 是否是注册用户 是 否 是 是否注册 登录 否 是普通用户还是系统管理员 查看新闻信息 普通用户 管理员 进入后台管理 新闻浏览及发布 结束 【现状分析】 2.新闻发布及管理系统业务流程
【需求分析】 需求分析阶段的工作,可以分为四个方面:问题识别,分析与综合,制订规格说明,评审。 (1)问题识别:就是从系统角度来理解软件,确定对所开发系统的综合要求,并提 出这些需求的实现条件,以及需求应该达到的标准.这些需求包括:功能需求(做什 么),性能需求(要达到什么指标),环境需求(如机型,操作系统等),可靠性需求(不发生 故障的概率),安全保密需求,用户界面需求,资源使用需求(软件运行是所需的内存 ,CPU等),软件成本消耗与开发进度需求,预先估计以后系统可能达到的目标. (2)分析与综合:逐步细化所有的软件功能,找出系统各元素间的联系,接口特性 和设计上的限制,分析他们是否满足需求,剔除不合理部分,增加需要部分.最后,综合 成系统的解决方案,给出要开发的系统的详细逻辑模型(做什么的模型).
【需求分析】 (3)制订规格说明书:即编制文档,描述需求的文档称为软件需求规格说明书.请 注意,需求分析阶段的成果是需求规格说明书(好象软考曾经考过这个问题),向下一 阶段提交. (4)评审:对功能的正确性,完整性和清晰性,以及其它需求给予评价.评审通过才 可进行下一阶段的工作,否则重新进行需求分析。
【需求分析】 • 1.用户需求调查问卷 • 问卷主要内容包括: • 调查人姓名、所在部门、职务 • 调查日期 • 建议软件名称 • 该软件的使用者、部门、角色、主要任务 • 与软件运行有关的实体、实体名称、关系 • 软件工作平台与体系结构的要求 • 管理系统体系结构
【需求分析】 • 软件开发工具的要求 • 软件功能上的要求 • 软件性能上的要求 • 软件安全方面的要求 • 软件约束性要求 • 软件使用方便的要求
【需求分析】 • 2.用户需求 • 用户可以匿名浏览新闻信息,但需注册具有用户资格才能发布新闻 • 用户注册后可以修改个人信息 • 用户可以按新闻栏目浏览新闻信息 • 用户可以搜索满足一定条件的新闻 • 用户在浏览新闻信息时,可以输入一些必要的个人信息就可以对新闻进行评论 • 用户可以浏览到点击率最高的新闻,同时可以知道每条新闻评论的条数以及每 个新闻栏目新闻的数量
【需求分析】 • 系统注册用户分为普通用户及管理员用户,普通用户可以修改个人信息发布新 闻,管理员可以对普通会员资料进行添加与删除 • 管理员可以创建与维护新闻内容 • 管理员可以维护新闻评论 • 系统具有友好性和易操作性 • 系统具有安全性和保密性
【需求分析】 3.撰写需求规格说明书 (1)产品说明 产品名称:企业新闻发布信息管理系统; 用途:新闻浏览,新闻发布,新闻评论,会员注册等 产品的开发背景: 当今社会是信息竞争的社会,企业的信息化建设是提高企业管理效率的必要途径, 在这样一个信息化建设中,企业的新闻发布系统是企业对外快速传播信息的门户, 具有重要作用。 信息发布及时;
【需求分析】 运营成本低; 增强企业竞争力; 增强企业宣传力度,提升企业形象 不受时间空间限制; (2)产品面向的用户群体 面向Internet上来自全国各地的访问该系统的用户。
【需求分析】 (3)产品中的角色 管理员:对该系统进行后台维护的工作人员 普通用户:在本系统中注册的用户,可以发布新闻信息 游客:没有在该系统注册,通过Internet访问该系统的人员 (4)产品的硬件环境要求 要求安装有MS Windows Server2003/2008标准版/企业版的服务器 要求安装IE5.5以上版本 要求安装IIS5.0以上版本
【需求分析】 4.评审 组织专家组成员评审。对功能的正确性,完整性和清晰性,以及其它需求给 予评价.评审通过才可进行下一阶段的工作,否则重新进行需求分析。
任务名称:项目计划安排 任务描述:根据PMBOK2000,项目计划可以包含如 下要素: • 项目范围说明 • 项目进度计划 • 项目质量计划 • 项目资源计划 • 项目沟通计划 • 风险对策计划 • 项目采购计划 • 变更控制、配置管理计划
任务分析:编制项目计划的过程应当分为以下几任务分析:编制项目计划的过程应当分为以下几 个步骤: • 确定项目的应交付成果 • 任务分解 • 确定各个任务开始和结束时间的先后顺序 • 确定每个任务所需的时间 • 确定项目团队成员可以支配的时间 • 编制项目总体进度计划:任务名称、责任人、开始与结束时间、应提交的可检查的工作成果 • 考虑项目的费用预算、可能的风险
项目计划 1.应交付成果 • 系统源程序 • 系统需求规格说明书 • 系统使用说明书
项目计划 2.任务分解及具体安排
项目计划 3.项目计划安排的审核 以项目工作计划书中的阶段成果为依据,根据配置管理计划规范编 制配置管理计划,项目经理审批配置管理计划,并对配置管理计划的有 效性负责。
任务名称:系统架构设计 任务描述:企业新闻发布信息管理系统架构。 任务分析:构架由许多不同的构架视图来表示,这些视图本质上是以图形方式来摘要说明“在构架方具有重要意义”的模型元素。在 Rational Unified Process 中,将从一个典型的视图集开始,该视图集称为“4+1 视图模型”[KRU95]。它包括:用例视图、逻辑视图、实施视图、进程视图、配置视图
【架构设计】 企业新闻发布信息管理系统架构设计要达到如下的目标: 可靠性(Reliable)。软件系统对于用户的商业经营和管理来说极为重要,因此软件系统必须非常可靠。 安全行(Secure)。软件系统所承担的交易的商业价值极高,系统的安全性非常重要。 可扩展性(SCAlable)。软件必须能够在用户的使用率、用户的数目增加很快的情况下,保持合理的性能。只有这样,才能适应用户的市场扩展得可能性。 可定制化(CuSTomizable)。同样的一套软件,可以根据客户群的不同和市场需求的变化进行调整。
【架构设计】 可扩展性(Extensible)。在新技术出现的时候,一个软件系统应当允许导入新技术,从而对现有系统进行功能和性能的扩展 可维护性(MAIntainable)。软件系统的维护包括两方面,一是排除现有的错误,二是将新的软件需求反映到现有系统中去。一个易于维护的系统可以有效地降低技术支持的花费 客户体验(Customer Experience)。软件系统必须易于使用。 市场时机(Time to Market)。软件用户要面临同业竞争,软件提供商也要面临同业竞争。以最快的速度争夺市场先机非常重要。
【架构设计】 构架设计流程:在 Rational Unified Process 中,构架主要是分析设计工作流程的结果。当项目再次进行此工作流程时,构架将在一次又一次迭代中不断演化、改进、精炼。由于每次迭代都包括集成和测试,所以在交付产品时,构架就相当强壮了。构架是精化阶段各次迭代的重点,构架的基线通常会在此阶段结束时确定。
任务名称:子系统设计 任务描述:完成企业新闻发布信息管理系统子系 统设计。 任务分析:通过子系统设计将形成一个实用、合 理的解决方案。该任务包括: • 类的设置 • 数据库的设置
企业新闻发布 信息管理系统 前台功能 后台管理 用户注册 登录 新闻类别管理 新闻搜索 新闻评论 新闻统计 新闻浏览 新闻管理 评论管理 用户管理 【功能设计】
【数据库及表设计】 企业新闻发布信息管理系统目采用SQL 2005数据库系统。在该系统中新建 一个数据库,将其命名为news2008,然后在该数据库中创建4个数据表,分别 为,新闻信息表(tb_News),新闻评论表(tb_Comments)新闻类别表 (tb_BigClass)和用户信息表(tb_User)。
【数据库及表设计】 1.各表的含义
【数据库及表设计】 2.各表的详细设置 (1)tb_ News(新闻信息表)主要用来保存新闻的基本信息
【数据库及表设计】 2.各表的详细设置 (2)tb_Comments(新闻评论表) 主要用来保存新闻评论的相关信息
【数据库及表设计】 2.各表的详细设置 (3)tb_BigClass(新闻类别表)主要用来保存新闻类别的相关信息
【数据库及表设计】 2.各表的详细设置 (4)tb_ User(用户信息表)主要用来保存用户的相关信息
子系统设计 8 【文件结构设计】
【任务描述】 新闻信息显示与检索是本系统的重要功能之一。该任务中包括新闻内容的显示与检索及新闻栏目的显示与检索两部分。本系统采用标准的三层架构。在该任务中MODAL类库中的类NewsInfo、BigClassInfo主要完成对数据库中的新闻内容表tb_News、新闻栏目表tb_BigClass中的字段的定义。DAL类库中的类NewsAccess、BigClassAccess主要是对新闻内容及标题操作的各种功能的具体实现。BLL类库中的类NewsLogic、BigClassLogic则是对DAL类库中的类的逻辑调用。因此要完成新闻信息显示与检索实现这个任务就要对此任务功能进行分析,完成各个类库中类的实现。
【任务分析】 本任务的完成类的顺序如下: (1)MODAL类库中的NewsInfo类、BigClassInfo类 (2)DAL类库中的DBbase类、NewsAccess类、BigClassAccess类 (3)BLL类库中的NewsLogic、BigClassLogic类
【任务实施】 实施步骤: 建立一个项目,要先建立解决方案。 (1)首先启动Visual Studio 2008。选择“文件/新建/项目”,在弹出 的“新建项目”窗口中,单击“项目类型”下的“其他项目类型”选项中的 “Visua Studio 解决方案”,然后单击右侧“模板”中的“空白解决方案”, 接下来设置项目名称及位置。 (2)在空白解决方案上右击,选择“添加/新建项目”。在弹出窗口中 选择类库并为其命名为“MODEL”。单击确定按钮。
【任务实施】 实施步骤: (3)按上面步骤依次添加DAL类库和BLL类库 在完成MODEL类库后,新建DAL类库需要在DAL类库中添加对MODEL 类库的引用。即在DAL类库名上单击鼠标右键,选择“添加引用”在弹出 的窗口中单击“项目”选项卡,然后选择项目名称“MODEL”,单击确定按钮。 同样,在建立BLL类库时,需要添加对MODEL类库和DAL类库的引用。 而在新建立网站时需要添加对MODEL类库、DAL类库、BLL类库的引用。
【任务实施】 MODEL层:实体类实现 1.NewsInfo类实现 程序开发步骤如下: (1)在MODEL上右击,选择“添加”/“新建项”,选择模板中的“类”,在名称中 输入“NewsInfo.cs”,如图所示,单击“添加”按钮添加。
【任务实施】 MODEL层:实体类实现 添加后双击“NewsInfo.cs”文件进行编码。定义类所属命名空间为 namespace Model,类的访问修饰符设为public。NewsInfo类中主要 进行属性的设置。各个属性对应数据库tb_News表中的相应字段。 主要包括:
【任务实施】 MODEL层:实体类实现 private int _n_id; //新闻id private string _title; //新闻标题 private string _info; //新闻内容 private int _BigClassID; //栏目ID private string _username; //发布者名称 private string _infotime; //发布时间 private int _hit; //点击率 private int _flag; //是否通过审核,1通过,0没通过 private int _cindex; //最大索引,得到最大索引就得到了新闻总数
【任务实施】 MODEL层:实体类实现 2.BigClassInfo类实现 程序开发步骤如下: (1)在MODEL类库中添加新项,选择类,取名为BigClassInfo。添加后双击 “BigClassInfo.cs”文件进行编码。定义所属命名空间为namespace Model,类 的访问修饰符设为public。BigClassInfo类中主要进行属性的设置,各个属性对 应数据库tb_News表中的相应字段。
【任务实施】 MODEL层:实体类实现 (2)主要程序代码:BigClassInfo类包含5个内部变量 private int _b_id;//新闻类别ID private string _name;//新闻栏目名称 private string _flag; //是否显示分类标记 private int _cindex; //最大索引代表新闻类别的总数 private int _newscount;//每类新闻所包含的新闻总数
【任务实施】 DAL层:数据访问类实现 1.DBbase.cs类实现 程序开发步骤如下: (1)在DAL类库中添加新项,选择类,取名为DBbase。添加后双击“DBbase.cs” 文件进行编码。定义所属命名空间为namespace DAL,类的访问修饰符设为public。 (2)主要程序代码:DBbase.cs类主要实现数据库连接及对SQL命令的执行。
【任务实施】 DAL层:数据访问类实现 2.NewsAccess类实现 程序开发步骤如下: (1)在DAL类库中添加新项,选择类,取名为NewsAccess。添加后双击 “NewsAccess.cs”文件进行编码。定义所属命名空间为namespace DAL, 类的访问修饰符设为public。 (2)主要程序代码:NewsAccess.cs类主要通过构造SQL语句及调用 DBbase类中的方法,实现关于新闻信息的显示与检索。
【任务实施】 DAL层:数据访问类实现 3.BigClassAccess类实现 程序开发步骤如下: (1)在DAL类库中添加新项,选择类,取名为BigClassAccess。添加后双击 “BigClassAccess.cs”文件进行编码。定义所属命名空间为namespace DAL, 类的访问修饰符设为public。 (2)主要程序代码:BigClassAccess.cs类主要通过构造SQL语句及调用 DBbase类中的方法,实现关于新闻类别的显示与检索。