三层架构框图及其在IDES中的应用.ppt
软件的三层架构及其在IDES中的应用,-Qweic,三层架构框图,文档管理需求,这个子系统是管理公司文档,提供上传下载文档功能。公司现有若干种身份的人在使用这个系统,文档上传之后需要该部门Toolowner身份以上人员批准之后才能下载,下载文档需要登录,否则只能浏览。文档在批准之后,只有文档所在部门员工才能反馈,其他部门员工只能下载。对于一个还没有被批准的文档,上传者可以对其进行更改或删除,该部门的Toolowner可以对其进行批准(包括通过和拒绝),同时发一份邮件给该部门的相关人员统计文档反馈,对员工进行激励(记录员工得分),文档管理用例图,组件图,逻辑层函数调用,浏览:Search()下载:Download()记录下载信息,为文档所有者加分(用户管理模块)文档上传:Upload()增加一个文档记录,为上传者加分文档修改:Update()检查权限以及文档是否锁定?修改文档记录文档审批:Approve()更新文档状态,为相关人员加分,发送邮件(邮件管理模块)文档删除:Delete()检查权限以及文档状态是否锁定?删除文档记录文档反馈:Feedback为相关人员加分,调用Feedback模块。,对外发布接口,查找功能:Search()上传文档:UploadDocument()更新文档:UpdateDocument()删除文档:DeleteDocument(),其他功能可以直接调用已有组件完成,数据层实现接口,查找功能:Search()Select from document上传文档:UploadDocument()Insert into document 更新文档:UpdateDocument()Update document set 删除文档:DeleteDocument()Delete document where id=,用户界面,页面对应的后台(表现层),BLL/Document.cs(业务逻辑层),从数据库中取数据(数据层),WebApplication1,数据及身份检查,逻辑、数据验证(表现层),业务检查(业务逻辑层),三层架构小结,优点:实现了外观,业务,数据的分离,隔离了系统的变化层次清晰,易于理解,维护,扩展各模块可以并行工作不足:效率比不分层的低20%-30%表现层变化隔离不足,MVC模型,MVC,业务逻辑层,数据层,IDES的三层结构,整个IDES的目录结构,其它文件,App_Code/Module(对象包装类)App_Themes(网站皮肤,样式)Bin(网站的调用的动态类库)UserControl(自定义的用户控件)Image,Uploads(网站使用的图片及用户上传的文件)Global.asax(整个网站的全局事件)Web.config(网站的配置文件),业务层,数据层,Thanks!,