本人的毕业设计是开发一套功能完善的电子商务系统——在线网上书店。它应该具有电子商务应该具有的基本和必备功能,包括:卖家经营自己的店的功能,用户购物的功能,基本搜索功能,和付款功能。在此基础上尽量完善本系统的功能,使之能够正式投入使用。
此外单单开发这么套系统还不是我唯一的目标,我要使这套系统具有可维护性和可扩展性。因为网络毕竟是随时随地的变化的,一个电子商务网站更是不可能一成不变。
电子商务这个概念是具有两方面的专业知识的:一方面它是侧重于商业方面的,因为它是为贸易沟通服务的。另一方面,它也需要一定的技术支持。毕竟在网络上要做到安全交易,还是很需要技术上的安全性和稳定性。那么本论文研究的内容是侧重于技术的:第一,是怎样实现系统的这些功能;第二,怎样做到系统的可扩展性和可维护性的提高。
研究方法、步骤和措施等:
为了开发这么一套系统,必须有科学的研究方法。
本论文的研究方法是,开发系统按照软件工程:对使用者进行一个调查。对现存的电子商务网站的分析。找出具体一个电子商务网站应该具有哪些功能点。收集必要的数据,对系统进行详细设计,把需要的功能模块画出来,对数据库进行设计画出E-R关系图。决定开发工具和数据库系统。然后进行详细编码设计,最后进行测试。
本论文的计划研究步骤是:
首先,需要弄清楚系统的卖点在哪里,既然是个在线网上书店,那么就对现存的网上书店进行了一番调查。对经常在网上购物的人收集他们的信息。调查结果是在网上购物的主要是青年。他们具有时尚的眼光和和生活习惯。他们喜欢买的书各种各样。从科普到杂志样样都有。主要在网上搜集了下他们最喜欢去的购书网站。然后对那些网站进行了界面和功能的分析。发现,用户都喜欢美观而较为简单的操作界面。 网站功能必须完善,能够满足各种用户的不同要求。最重要的一点是,一定要安全!安全第一!
然后,对功能进行总结。主要分两大模块,一个是用户模块,一个是管理员模块。所以总结我的系统至少应该具有的功能如下
其次,当这些都确定完后,就需要确定下我的开发语言、工具及数据库。通过图书馆,网络等各方面的信息收集,决定使用JAVA语言来开发。Java语言的优良特性使得Java应用具有无比的健壮性和可靠性,这也减少了应用系统的维护费用。Java对对象技术的全面支持和Java平台内嵌的API能缩短应用系统的开发时间并降低成本。Java的编译一次,到处可运行的特性使得它能够提供一个随处可用的开放结构和在多平台之间传递信息的低成本方式。特别是Java企业应用编程接口(Java Enterprise APIs)为企业计算及电子商务应用系统提供了有关技术和丰富的类库。开发工具我选用eclipse,它是现在最流行的JAVA开发工具,因为它是免费的开源工具,并且具有强大的自带功能,和插件扩展功能。数据库我选用MYSQL,它也是免费的,并且功能强大的开源数据库。另外还选用了三种JAVA开源框架,Spring,Struts,Hibernate。Spring是一个开源框架,它由Rod Johnson创建。它是为了解决企业应用开发的复杂性而创建的。Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅限于服务器端的开发。从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。Struts是套强大的MVC框架。除此之外,Struts的优点主要集中体现在两个方面:Taglib和页面导航。Taglib是Struts的标记库,灵活动用,能大大提高开发效率。另外,就目前国内的JSP开发者而言,除了使用JSP自带的常用标记外,很少开发自己的标记,或许Struts是一个很好的起点。Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。
使用了这么多既强大又免费的工具帮助我构建我的网站系统,使得本系统能够很容易构建自己的框架,并节约了大量成本。
再次,就是开发本系统了,根据前面讲的那些框架,再熟练使用的基础上,本系统就能够很达到我所要的这些功能。和保证可扩展性和可维护性的要求。编码也变得简单哪易懂,清晰明了。
最后,需要测试本系统。测试就是为了发现错误而执行程序的过程。一个软件的开发成本往往比其维护成本要小,是因为程序的需求在互联网当中是不断变化并且在变化中极易出现BUG 的。所以这里要设计一系列的测试用例来对其进行校验。首先得设计黑盒测试用例,测试通过之后,还要设计白盒测试用例,针对程序进行了路径覆盖。使本系统不但达到我的目标,还具有相当的健壮性。
最后对设计进度与安排:
第一周 收集材料 整理信息
第二周 需求分析
第三周 软件设计:选择模块划分的方案
第四周 总体结构和模块外部设计
第五周 具体模块设计
第六周 运行设计
第七周 详细设计(数据库)
第八周 软件测试
第九周 形成毕业设计全部文件