1、专 业 学 位 硕 士 学 位 论 文新疆国税网络发票系统的设计与实现Design and Implementation of Networked Invoice System for Xinjiang Tax Bureau作 者 姓 名: 李 建 工 程 领 域: 软件工程 学 号: 40817364 指 导 教 师: 完 成 日 期: 2010年4月30日 大连理工大学Dalian University of Technology大连理工大学学位论文独创性声明作者郑重声明:所呈交的学位论文,是本人在导师的指导下进行研究工作所取得的成果。尽我所知,除文中已经注明引用内容和致谢的地方外,本论文
2、不包含其他个人或集体已经发表的研究成果,也不包含其他已申请学位或其他用途使用过的成果。与我一同工作的同志对本研究所做的贡献均已在论文中做了明确的说明并表示了谢意。若有不实之处,本人愿意承担相关法律责任。学位论文题目: 新疆国税网络发票系统的设计与实现 作 者 签 名 : 日期: 年 月 日大连理工大学专业学位硕士学位论文摘 要我国的税收信息化建设已经有了近30年的历史,在这30年里,税收信息化建设突飞猛进,已由最初进行文字录入发展为对数据、信息的广域采集、广泛共享、深度利用,引发了税收征管、行政管理、决策支持、外部信息利用、为纳税人服务等多项变革,推动着税收事业大步迈向现代化、规范化、高效化。
3、作为税收信息化工作的一个重要方面,网络发票是指利用互联网技术为纳税人提供一个普通发票使用平台,完成了发票开具、发票作废、发票缴销、发票验旧、信息自动采集等一系列功能,既加强了税源管理,又强化了纳税服务。本文通过新疆国税网络发票系统的设计与实现,全面实践了现代的面向互联网开发的软件工程。论文首先对本系统开发使用的相关技术进行了描述,阐述了新疆国税网络发票系统开发的项目背景。与传统的软件开发,尤其是系统性软件开发不同,论文摒弃了传统的概要需求与详细需求的定义方法,提出了面向互联网特征的需求分析。遵照软件工程开发设计原则,对网络发票系统从体系架构、及功能结构的整体设计及数据库进行设计,在系统实现阶段
4、展示了功能,最后,在测试阶段阐述了测试策略及其方法。关键词:软件工程;互联网;网络发票;Design and Implementation of Networked Invoice System for Xinjiang Tax BureauAbstractThe history of IT application of China Taxation was about 30 years. During those 30 years, IT application of taxation has had tremendous development, instead of original w
5、ord typing, developed multiple collections of data and information, broad sharing, and deep utilization, as well as taxation management, government management, decision support, external information utilization, and other innovative services for tax payers. Those innovations improved taxation indust
6、ry moving up to modern, regularization, and effectiveness. As an important part of IT application of taxation, network invoice is a normal invoice usage platform for tax payers by using internet technology which can realize serial functions of invoice receipt, invoice void, invoice revoke, invoice c
7、heck, and IT automation as well. Those functions not only enhanced taxation management, but also enforced tax services. The thesis states the design and execution of network invoice system of XinJiang state taxation that can fully realize modern internet oriented software engineering development.The
8、 thesis describes the relative technology used for development of this system, and illustrates the project background of network invoice system of XinJiang State Taxation. Compared with traditional software development, especially system software development, this thesis brings up the definition of
9、requirement that aims at internet feature while abandons traditional definition method of general requirement and detailed requirement. Obeys the software engineering development principle of design, carries on the system structure and the function structure overall outline design to the network inv
10、oice system, finally it demonstrates test strategy and method in test phase.Key words: Software Engineering; Internet; Networked Invoice;- I -目 录摘 要IAbstractII引 言11项目背景与相关技术31.1项目背景31.2相关技术31.2.1J2EE技术31.2.2MVC框架模型61.2.3Oracle技术82需求分析92.1传统的需求分析方法92.2新疆国税网络发票系统的需求分析92.2.1系统总体框架102.2.2系统总体用例分析112.2.3
11、确定目标用户122.2.4系统功能分析132.2.5E-R图193系统设计213.1功能模块设计213.1.1注册登录模块213.1.2用户主页模块223.1.3资格申请模块233.1.4资格审批模块243.1.5在线开票模块253.1.6查询统计模块263.1.7查询验伪模块273.2系统的软件架构设计273.3数据库设计283.3.1数据库设计原则283.3.2数据库表结构设计294系统实现334.1MVC实现及开发工具334.1.1MVC实现334.1.2开发工具344.2新疆国税网络发票系统的实现344.2.1注册登录功能354.2.2用户主页功能354.2.3资格申请功能364.2.
12、4资格审批功能374.2.5在线开票功能374.2.6查询统计功能404.2.7查询验伪功能445系统测试455.1测试环境455.2测试目的465.3新疆国税网络发票系统的测试465.4测试结论48结 论50参 考 文 献51附录A 附录内容名称53攻读硕士学位期间发表学术论文情况54致 谢55大连理工大学学位论文版权使用授权书56- III -大连理工大学专业学位硕士学位论文引 言如果以20世纪80年代初期税务部门开始在税收工作中应用计算机为标志,我国的税收信息化建设已经有了近三十年的历史,但税收信息化的快速发展始于1994年实施以增值税为核心的税制改革。1994年实行凭专用发票扣税的增值
13、税制后,对保证税收收入稳定增长,促进社会经济健康发展起了非常积极的作用。但在实施过程中,出现了犯罪分子利用增值税专用发票大量偷、骗国家税款的问题,犯罪活动一度非常猖獗。传统的工作方法和工作手段已难以适应新形势的需要,我们不得不把目光转向了日益发展的现代化技术手段。1994年,作为金税工程一期的增值税发票交叉稽核系统在50个大中城市试点,对加强增值税征收管理起到了积极作用、但金税工程一期并未能解决好信息录入的准确性和完整性问题,网络也没有覆盖全国,没有完全实现预期的效果,但它给我们提供了利用高科技手段解决增值税专用发票管理问题必须保证信息的准确性和完整性的启示。于是以“一个平台、四个系统”为内容
14、的金税工程二期应运而生了。2000年,在总结实践经验的基础上,完善了金税二期的建设思路,提出了整体方案,加快了建设步伐。国家税务总局到省、市、县国税局的四级网络全部联通。金税工程二期的建成,实现把征管业务放到网上运行这样一种现代化的征管方式,有效解决犯罪分子利用增值税专用发票偷骗国家税款的问题,虚开增值税专用发票大要案下降趋势明显。税务机关对增值税的征管工作逐步实现了系统化和规范化,以及不同环节在信息共享基础上的相互制约1 2。以增值税专用发票防伪税控系统和交叉稽核系统为代表的金税二期工程,有效的解决了增值税专用发票通过网络进行开具、认证和全国交叉稽核的问题,有效的控制了税款的流失,但增值税专
15、用发票仅针对于一般纳税人使用,虽然一般纳税人的普通发票也可以通过“一机多票”形式在防伪税控系统中使用,但还有80%多的小规模纳税人,在开具普通发票时不能使用这一系统,只能通过税务监制纸质发票(传统纸质发票),它以“定额撕开税务监制纸质发票”、“手工填写税务监制纸质发票”、“税控机具开具套打税务监制纸质发票”、“离线计算机开具套打税务监制纸质发票”等4种形式存在。这四种方式全部都缺少不了存在税务监制的纸质发票管理问题。上述方式中,“定额撕开税务监制纸质发票”、“手工填写税务监制纸质发票”属手工开具范畴,“税控机具开具套打税务监制纸质发票”、“离线计算机开具套打税务监制纸质发票”属电脑套打开具范畴
16、。除“税控机具开具套打税务监制纸质发票”可以在每月申报时通过存储介质将纳税人开票情况汇总到现有的征管系统外,其余三种只能在纳税人需要购买空白发票时在报税大厅里由税务系统工作人员对开具的每本、每张发票的开具情况进行验旧录入,这一过程耗时、耗力,通常一本发票由操作熟练的工作人员录入大约需要5分钟时间,工作人员和纳税人普遍存在怨言,由于是手工录入,也难免会出现错误。对于发票的这种管理方式,难以有效的反映纳税人的真实开票情况,假票、借开、乱开、代开发票等违法行为泛滥,造成国家税款的大量流失。在当前,从实现业务目标角度出发,提升普通发票管理的最关键即是对传统发票进行利于快捷数据采集和方便数据利用的数字化
17、管理。利用各种计算机或税控机具加强对税务监制的“纸质发票”开具打印管理,会加强纸质发票的数字防伪性能,以及对纸质发票开具信息采集的快速和准确。为加强普通发票管理,从源头上遏制制假、贩假、用假、代开、转借、虚开普通发票的违法行为,提高税源监控能力,按照总局信息管税的思路和“简并票种、统一票样、网络开票、建立平台”的要求,新疆国税着手设计、开发“网络发票系统”。本系统利用互联网,采用“网络在线开具发票”方式,虽说同样存在税务监制纸质发票管理问题,属“传统纸质发票”范畴,但是“网络在线开具发票”方式通过互联网,利用“电脑套打在线开具”加强了纸质发票开具信息采集的“实时性”,从而在时效上加强了税务机关
18、对纸质发票使用监管措施。1 项目背景与相关技术1.1 项目背景从建国以来到90年代,我国的发票管理基本上通过手工操作来实现的。90年代初期,随着计算机的普及,将发票管理内容及发票的流程编制出计算机程序,将发票纳入计算机管理,以此来提高工作效率。从此,发票管理现代化进入了起步期。自1994年起,国家对增值税专用发票的管理投入了大量的人力、财力,着手研制了金税工程,与此同时普通发票管理现代化也取得了长足的发展,各种税控收款机被研制、应用,但税控收款机普及率并不高,从技术上并没有彻底解决普通发票流程的全过程监控,增值税防伪税控系统采用发票的存根联信息与发票联(抵扣联)信息进行比对来证实发票使用的真实
19、性。但普通发票管理仅限于发票的收、发、存方面的管理,对纳税人的发票使用过程毫无监控能力。理想的发票管理是发票纯电子化模式,它是以纯电子数据形态进行发票开具,税务监管的也只是纯电子形态的数据信息,进销双方纳税人通过下载电子数据获得发票信息。该模式一般通过联机服务器端进行在线开具,或是通过离线发票数字化开票工具进行无纸化的离线电子开具。理论上发票可实现无纸化和纯电子数据化,并以采取过严密技术防伪措施的电子数据为最终法律依据。无纸化的发票电子数据还可通过收付款双方发票数据进行碰头“票票比对”和双方分别纳税申报时的“表票稽核”来进一步验证发票数据的真实性。新疆国税目前发票管理还是传统的收、发、存模式,
20、也开发过一些普通发票使用系统,但这些系统都处于离线状态。考虑到当前财会制度的制约,新疆国税现在不可能真正把发票纯电子化代替传统的纸质发票,只能将传统的离线开票模式转变为再线开票模式,并将现有种类复杂的普通发票种类简化为少数几种。根据前期关于普通发票开发经验和总结各省国税系统关于在线开票系统的使用经验,按照总局信息管税的思路和“简并票种、统一票样、网络开票、建立平台”的要求,新疆国税着手设计、开发“网络发票系统”。1.2 相关技术1.2.1 J2EE技术(1) J2EE技术概念Java2 Platform, Enterprise Edition(J2EE)是Sun 公司推出了一种全新的概念模型,
21、它与传统的互联网应用程序模型相比有着不可比拟的优势。3J2EE 平台提供了一个多层结构的分布式应用程序模型,该模型具有重用组件的能力、 基于扩展标记语言(XML)的数据交换、统一的安全模式和灵活的事务控制;使开发人员不仅可以比过去更快应对业务的改变而作出新的解决方案,而且其独立于平台、基于组件的 J2EE 解决方案不再受任何提供商的产品和应用程序编程界面的限制。(2) J2EE技术架构J2EE 平台使用了一个多层的分布式应用程序模型。应用程序的逻辑根据其实现的不同功能被封装到组件中,组成 J2EE 应用程序的大量应用程序组件根据其所属的层被安装到不 同的机器中。如图1.1描述了一个分布式 J2
22、EE 应用程序,它可以分为如下四层: 客户层主要用来处理用户界面,一个 J2EE 客户端既可以是一个 Web 客户端,也可以是一个应用程序客户端。客户端可以直接和运行在 J2EE 服务器中的业务逻辑层进行通信;如果是一个运行在浏 览器中的客户端,也可以通过运行在 Web 层中的 JSP 页面或 Servlet 进行通信。 WEB层(表现逻辑层)主要用来生成和处理显示给用户的各种界面,并处理一些简单的业务逻辑,通常采用的技术是JSP和Servlet技术 商业逻辑层(业务逻辑层)图1.1 多层结构的应用程序Fig. 1.1 J2EE structure diagram商业逻辑层负责处理应用系统各部
23、分功能模块的业务规则和商业逻辑,它由 运行在业务逻辑层的 enterprise bean 处理。一个 enterprise bean 可以从客户端接受数据,对 它进行处理,并将其发送到企业信息系统层以作存储;同时它也可以从存储器获取数据, 处理后将其发送到客户端应用程序。 企业信息层主要存放企业应用所需要的各种数据,主要包括各种数据库及相关的数据采集传输设备。(3) J2EE技术优点 简化结构J2EE平台支持简化的、基于组件开发模型,由于J2EE基于Java编程语言和J2SE平台,它提供了编写一次,随处运行的可移植性,遵循J2EE标准的所有服务器都支持该模型。EJB组件使编写应用程序更为简单。
24、尽管EJB体系结构复杂,但应用程序开发人员一般都必再编写访问系统服务的代码,EJB容器会实现系统级的服务,例如,事务、安全性等。另外,J2EE还支持异构环境。基于J2EE的应用程序不依赖任何特定操作系统、中间件或硬件,因此,设计合理的基于J2EE的程序只需开发一次就可以部署到各种平台,这在典型的异构企业环境中是十分关键的。J2EE标准还允许客户订购与J2EE兼容的第三方的现成组件,把其部署到异构环境中,节省了由自己制订整个方案所需的费用。 提高开发效率由于组件技术的使用,可以按照开发人员的技能对应用程序开发进行分工,并行开发,提供整体开发效率。例如:图形设计师创建JSP模板,商业逻辑由该领域的
25、专家完成,JSP页面和EJB由Java工程师完成,应用程序的装配和部署由团队中其他的成员完成,其中许多工作可以同时进行,有助于加速应用程序的开发。 可移植性强除了Java语言固有的可移植性外,EJB体系结构在Bean和支持该Bean的容器之间提供了一套标准化的应用程序编程接口,这使开发人员能够将Bean从一种操作环境移植到另一种操作环境,而无需重新编写其源代码。 重用性好由于在EJB模型中,各个软件组件都是严格分离的,因此,可以从现有的软件组件装配出服务器端应用程序,这与从现有的JavaBean可以装配出客户端应用程序一样,使软件能够重用。 易于维护基于组件的设计简化了应用程序的维护。由于组件
26、可以被独立地更新和替代,通过更新应用程序中特定的组件,新的功能可以被很容易地增加。 可伸缩性企业必须要选择一种服务器端平台,以便满足那些在它们系统上进行商业动作大批新客户。基于J2EE平台的应用程序可被部署到各种操作系统上,例如,可被部署到高端UNIX或其他的大型机系统上。J2EE领域的供应商提供了更为广泛的负载平衡策略,能消除系统中的瓶颈,允许多台服务器集成部署,实现可高度伸缩的系统,满足未来商业应用的需要。 被广泛接受目前主要的IT供应用商都采纳EJB体系结构,不同供应商的产品只要符合EJB体系结构,就都是可互操作的。1.2.2 MVC框架模型(1) MVC技术介绍在使用JAVA技术建立W
27、eb应用的实例中,由于JSP技术的发展,很快这种便于掌握和可实现快速开发的技术就成了创建Web应用的主要技术。JSP页面中可以非常容易地结合业务逻辑(jsp:useBean)、服务端处理过程(jsp:scriplet)和HTML(),在JSP页面中同时实现显示业务逻辑和流程控制,从而可以快速地完成应用开发。现在很多的Web应用就是由一组JSP页面构成的。这种以JSP为中心的开发模型我们可以称之为Model 1。4当这种开发模式在进行快速和小规模的应用开发时,是有非常大的优势,但是从工程化的角度考虑,它也有一些不足之处:首先应用的实现一般是基于过程的,一组JSP页面实现一个业务流程,如果要进行改
28、动,必须在多个地方进行修改。这样非常不利于应用扩展和更新。 其次由于应用不是建立在模块上的, 业务逻辑和表示逻辑混合在JSP页面中没有进行抽象和分离。所以非常不利于应用系统业务的重用和改动,在这种情况下,要想开发大型Web应用时必须采用不同的设计模式-也就是采用Model 2。Model 2是基于MVC模式的框架,MVC是ModelViewController的简写。Model 代表的是应用的业务逻辑(通过JavaBean、EJB组件实现),模型包含应用程序的核心的业务处理功能。View 是应用的表示面(由JSP页面产生),视图提供模型的表示。它是应用程序的外观。Controller 是提供应
29、用的处理过程控制(一般是一个Servlet),控制器对用户的输入作出反应。它创建并设置相关业务处理模型对象(相当于任务分发中心)。通过这种设计模型可以有效地分离数据处理和数据表现,从而弥补了Model1的不足。模型-视图-控制器(Model-View-Controller,MVC)体系突出了Servlets和JSP的优点,同时也令它们的缺点最小化。在实现中,用户请求被发送到一个控制器Servlet,该Servlet决定请求的性质,并且根据请求的类型传送给适合的处理器。每个处理器都和一个特别的模型相关,里面封装有商业逻辑来执行一些特别的函数集合。处理完毕后,结果会发送回处理器,处理器选择适合的视
30、图显示它。系统的体积架构图如图1.5所示:图1.2 MVC体系架构图Fig. 1.2 MVC structure diagram(2) MVC的应用特点 应用的业务逻辑由MVC中的模式也就是EJB、javaBean来表现。模式必须处理由控制器传递过来的对数据的访问请求。 多个页面组成了MVC中的视图,这些视图必须随模式一起更新。 控制器是一系列接收用户动作的对象,他们把用户的请求转换成模式可理解的请求,并决定显示那一个页面当模式处理完请求后。通过这种设计模型把应用逻辑,处理过程和显示逻辑分成不同的组件实现。这些组件可以进行交互和重用。从而弥补了Model 1的不足。同时Model 2具有组件化
31、的优点从而更易于实现对大规模系统的开发和管理,但是开发MVC系统比简单的JSP开发要复杂许多,它需要更多的时间学习和掌握。同时新东西的引入会带来新的问题。这是因为必须基于MVC组件的方式重新思考和设计应用结构。原来通过建立一个简单的JSP页面就能实现的应用现在变成了多个步骤的设计和实现过程。 所有的页面和组件必须在MVC框架中实现,所以必须进行附加地开发工作。 1.2.3 Oracle技术新疆国税网络发票系统是一个典型的OLTP系统,因此必需选择一个安全、稳定、可靠运行和易于维护的数据库,当前业界流行的数据库产品很多,有Sybase、Oracle、SQL Server、DB2等,本系统选择了O
32、racle10,因为Oracle在新疆国税具有以下优势:(1)广泛的技术支持新疆国税97年开始就开始使用Oracle7作为数据库、Developer2000作为开发工具,开发了核心税收征管系统,当时采用的区县级数据集中模式,该系统的开发和维护工作均为新疆国税信息中心的技术人员所承担,直到2003年总局在全国推广现在使用的C/S结构的综合征管软件才停止使用。同时国税总局所推广的其他应用系统90%均采用Oracle数据库,总局的技术支持中心也有很多Oracle技术专家在日常在线进行问题的解答。新疆国税每年都为全地区的计算机技术人员举办为期半年的Oracle技术培训班,经过多年的学习,新疆国税的技术
33、力量足以支持今后系统的开发和维护,(2)真正的企业级大型数据库在近年来,Oracle数据库系统已经成为了遍及全球的主流数据库平台,多年来Oracle在全球数据库市场排名第一。在中国,Oracle在金融保险业、电信、制造业、科技教育、能源交通、政府机关和航天航空到军队均拥有广泛的客户群体。Oracle支持大数据库、多用户的高性能事务处理、分布式数据库和分布处理、高扩展能力等众多优势是其它数据库所无法比拟的。(3)支持广泛的操作系统新疆国税目前有上百台小型机和PC服务器,小型机有不同档次的IBM和HP,运行着和同版本的UNIX操作系统,PC服务器操作系统基本上是WINDOWS和LINUX,Orac
34、le数据库目前支持操作系统最多的数据库,新疆国税目前所有已安装的操作系统均有相应的Oracle版本与之对应。2 需求分析任何一个软件产品的开发过程都是从产品需求的确定开始的,在作为软件工程诞生的里程碑的“瀑布模型”中,需求被作为软件开发的四个阶段之一独立存在着。一个产品如果需求定义错误,后期导致的成本代价就比较高。以渐增型开发过程模型为导向的新疆国税网络发票系统的开发当然以需求分析开始。2.1 传统的需求分析方法需求分析自从软件诞生以来一直就是软件开发的首要问题,但是长时间以来,需求定义都没有得到充分的重视。自60年代爆发软件危机到今天,需求工程开始引起越来越人们的关注。特别是我们目前正在走向
35、“面向服务(Service-Oriented)”的软件工程时代,需求工程将占据空前重要的位置。从软件工程诞生起就被认为是一项独立的任务,并随着软件工程的发展而发展。80年代之前,需求工程领域最受人关注的是功能分解。这是基于软件工程大师迪杰克斯特拉当时提出的分解概念,即把一个问题不断分解成几个部分,每次分解都有新的东西加进去。后来由Rational公司提出统一软件过程。英国伦敦的亚特兰大系统协会还提出了Volere需求规格模板,目前已经被广泛应用于软件开发领域。但是这些确定需求的方法都毫无例外的将基于传统的软件,并且将需求确定作为工程化的一部分。跟随这股国际潮流,国内的软件开发也形成了自己的需求
36、管理办法,基本上就是将需求划分为概要需求阶段和详细需求阶段。在概要需求阶段,开发人员无法进行详细的设计和开发。开发人员必须得等详细需求完成以后才能进行详细的设计和开发。传统的需求工程的方法适合于大型的软件系统,尤其是系统性软件,在敏健快速的今天,并不能完全适应。2.2 新疆国税网络发票系统的需求分析近年来,随着金税二期工程网络监控和日常征管的加强,发票违法犯罪活动的目标已逐渐从增值税专用发票转向普通发票,制售假发票、非法代开、借用发票、大头小尾开具发票等违法行为较为普遍,扰乱了正常的税收管理秩序。为了加强普通发票管理,新疆国税也组织了多次针对普通发票的专项检查,对纳税人已开具的发票信息进行手工
37、采集和比对,但由于手工采集覆盖面小、效率低和发票代码、发票号码、开票单位、金额等信息容易被仿冒、套票等原因,税务部门对普通发票的监控能力受到限制,普通发票真伪可信度受到影响。部分纳税人的个别种类的普通发票尽管已经实现了电脑开具,但与税务系统没有接口,无法及时地进行数据采集,更无法保证开票数据在数据采集、传输过程中不被篡改。另外,现有普通发票的票种繁多,给日常管理、防伪识别增加了难度,也增加了纳税人的使用成本。与此同时,由于假发票泛滥,各机关和企事业单位出于规范内部管理、提高信誉和避免受到假发票侵害的考虑,对推行网络发票和提高发票防伪查询的权威性也有迫切的需求。为加强普通发票管理,从源头上遏制制
38、假、贩假、用假、代开、转借、虚开普通发票的违法行为,提高税源监控能力,按照总局信息管税的思路和“简并票种、统一票样、网络开票、建立平台”的要求,新疆国税着手设计、开发“网络发票系统”。通过在线票开具过程的数据采集,新疆国税可以加强监控企业用票行为。可根据企业监管风险程度,根据需要调整企业开票方式、开票额度和开票量。企业有条件根据经税务部门严密监管的发票电子数据进行纳税申报,从而可有效减少和防犯当前纸质发票的制假售假行为,强力打击假票的“买方”市场空间。通过加强进销双方发票用票数据的及时有效采集,并将双方数据进行比对,税务部门可通过对纳税申报表的完善,最大限度地实现多个税种发票的真伪识别,以及企
39、业纳税申报的表票比对,有效加强相应税种的纳税稽核。通过对企业用票数据的及时分析和综合分析,方便税源监控。通过在实践中不断优化和完善,最终通过网络技术提高税务部门纳税服务水平,从而具备探讨逐步降低发票综合使用成本的条件,并能在未来适应电子商务网上无纸交易的发展需求。2.2.1 系统总体框架新疆国税网络发票系统由外网系统、内网系统和内外网数据交换系统三部分组成,外网系统直接面向纳税人,依托新疆国税外部门户网站,以WEB方式基于J2EE的新疆国税网络发票系统给企业提供了一个网上办税的电子化平台。内网系统面向税务系统内部工作人员,通过桌面平台与纳税人交流,为保证系统安全,内、外网通过防火墙和网闸进行隔
40、离,纳税人通过受理服务器登录系统进行业务操作,数据保存在防火墙内的数据库中,通过网闸与内网的征管系统数据库进行数据交换。外网线路:利用新疆国税已有的电信和移动备份线路,此线路一直用于新疆国税的门户网站和网上办税等信息化平台;内网线路:利用新疆国税已有的广电线路,此线路已覆盖全疆,于2001年开通,一直用于全疆国税系统核心征管业务;联网设备:与线路相关的路由器、交换机、防火墙、网闸都已具备;运行设备:用于外网的数据库服务器采用HP5470,它配置4CPU,16G内存,与浪潮AS1000G2存储相连;应用服务器部署在新采购的Vmware虚拟机中,虚拟主机配置8CPU,32G内存,存储使用浪潮AS1
41、000G2,应用服务器的配置可根据业务量随时进行调整。系统总体框架如图2.1。图2.1 网络发票系统框架Fig. 2.1 System framework of networked invoice system2.2.2 系统总体用例分析UML用例图体现系统的需求,用户能够借助系统完成怎样的功能,也就是阐明了系统应该具有什么样的功能,以及各个用户对相应的功能都有什么样的权限,并不是所有的用户对所有的功能都是可见的,特定用户只能使用系统中属于本用户的特定功能,对特定的数据库进行操作。用例图是一种反映一个角色与系统之间交互的分析方法。通过用例图能够获取分析模型所必需的重要信息。但是,用例图并不是一
42、种规范化的分析方法,它只是描述了用户与功能之间的交互。下面的用例图描述了交互功能用例。图2.2 系统用例图Fig. 2.2 System use case diagram2.2.3 确定目标用户新疆国税网络发票系统用户大部分来源于征管软件中登记的纳税人和前台操作人员,包括系统管理员、税务系统工作人员、征管软件中已登记认证的纳税人,自然人无需登记,可以直接进入系统进行查询。用户结构如下图2.3 网络发票系统的用户结构Fig. 2.3 User structure of Networked invoice system用户可完成的功能如下:(1) 系统管理员:代码维护、后台数据库、应用的维护等;(
43、2) 税务系统工作人员:对纳税人开票情况进行监控、查询统计管理、发票比对验伪、纳税人申报时进行发票、申报表的比对、购票资格审核等;(3) 纳税人:身份验证、资格申请、发票开具、发票打印、查询验伪等;(4) 自然人:消费时对收到的发票进行查询验伪。2.2.4 系统功能分析系统功能是新疆国税网络发票系统能够对用户提供的功能模块,它将功能的名称、功能的大致描述,功能类型、所针对的目标用户等用文本的方式概要的表述出来,是一种静态的功能描述。系统功能设计如下:(1) 注册和登录功能作为基于互联网的新疆国税网络发票系统,所针对的用户是主要是纳税人,纳税人需要使用本系统进行在线发票开具时,必须先到税务机关窗
44、口进行网上在线开票资格申请,经税务机关审批,确定其具有网络开票的资格后,对纳税人进行系统发行。纳税人进入本系统主页面,通过纳税人识别号确定是否具有网上开票资格,再填入相应信息完成系统注册,在本系统中可以完成身份验证、资格申请、发票开具、发票打印、查询验伪等功能。对于仅完成发票查询验伪的自然人,可以以游客的身份进入本系统,无需注册,但他仅能使用发票查询验伪功能。系统管理员和税务系统工作人员需要经过内部系统管理模块进行注册和权限分配,完成系统管理和资格审批等功能。当注册用户忘记登录密码时,他不能重复注册,需要用系统提供的密码找回功能,通过注册时登记的经过认证的邮箱,收取系统发送的带有用户密码的邮件
45、。当用户进行登录时,对系统来说是一种动态的交互,可以用序列图来表示:序列图主要用于按照交互发生的一系列顺序,显示对象之间的这些交互。序列图显示不同的业务对象如何交互,除记录当前事件外,业务级的序列图通过把用例和所特性表表达的需求,转化为进一步、更加正式层次的精细表达。用例常常被细化为一个或者更多的序列图。可以用一个或多个序列图来阐明实现用例的对象交互过程。序列图明确了对象在流程中的角色,因而可以为确定类的责任和接口提供基本的输入。序列图包括了时间顺序,但不包括对象关系。在序列图中可以有对象和角色以及说明它们如何交互的消息。序列图描述了在参与交互的对象中所发生的事件,以及这些对象如何通过相互发送
46、消息进行通信。一个序列图最主要的部分是对象、角色和消息。对象被表示为垂直虚线。 它表示对象在特定时间的存在。作为交互的发起者,角色通常由序列图中的最左侧垂直虚线来表示。消息是对象之间的通信,它在传达信息的同时期望活动随之发生;在序列图中,消息被表示为从一个对象的生命线到另一个对象的垂直虚线的水平实线箭头。如果消息从一个对象发向该对象自身,箭头的开始位置和结束位置就可能位于同一条垂直虚线上。箭头通过消息名称及消息参数来标记。为了显示消息在整个交互中的顺序,还可以用顺序号来标记消息箭头。比如,在新疆国税网络发票系统中纳税人登录交互的序列图如下:图2.4 登录的序列图Fig. 2.4 Sequenc
47、e diagram of login(2) 用户主页功能用户登录系统后,需要一个页面显示用户的信息的系统所提供的功能,如果是具备开票资格的纳税人,则显示购票资格申请、开票资格申请、发票核定申请、在线发票开具(已经过审批)等功能,显示针对所有纳税人的公共信息和针对本纳税人的特定信息,如审批信息等;修改用户的注册信息;如果是自然人则显示一些税法宣传信息和发票查询验伪功能。(3) 资格申请资格申请包括以下子功能:购票资格申请和发票核定申请。 购票资格申请本模块针对还不具备使用发票的新开业的纳税人,纳税人登录系统,根据自身业务量填写发票领购类型、月使用数量,并提交领购申请。等待税务机关的审批,税务机关对纳税人申请的发票类型和申购数量进行评估,确定今后纳税人领购发票的类型和数量。税务