宠物商店详细设计项目说明书.doc

上传人:小飞机 文档编号:1598291 上传时间:2022-12-10 格式:DOC 页数:31 大小:676KB
返回 下载 相关 举报
宠物商店详细设计项目说明书.doc_第1页
第1页 / 共31页
宠物商店详细设计项目说明书.doc_第2页
第2页 / 共31页
宠物商店详细设计项目说明书.doc_第3页
第3页 / 共31页
宠物商店详细设计项目说明书.doc_第4页
第4页 / 共31页
宠物商店详细设计项目说明书.doc_第5页
第5页 / 共31页
点击查看更多>>
资源描述

《宠物商店详细设计项目说明书.doc》由会员分享,可在线阅读,更多相关《宠物商店详细设计项目说明书.doc(31页珍藏版)》请在三一办公上搜索。

1、宠物商店详细设计项目说明书宠物商店详细设计说明书目录目录2i.引言4 编写目的444444ii.总体设计444:444444iii.系统功能设计4444 主要功能设计及详细设计4444444444iv.概念结构设计44 库表描述4 数据库脚本4v.维护与扩展4i. 引言 编写目的本详细设计说明书是针对项目案例宠物商店编写的. 计算机技术发展日新月异,在各行各业应用越来越广泛。人们越来越多的在网上购物,开发网上宠物购买可以使宠物买卖方便、快捷、费用低等有点,将人们从传统的宠物买卖方式中解脱出来,提高效率,帮助了解更多宠物的信息。此项目由13届软件工程一班,实训时完成。软件是基于实训内容java和

2、数据库。软件目前只能运行在Windows平台下。软件用于方便人们快捷的从逛街式,转变成网上购买宠物,不仅可以避免外出,还可以具体了解宠物的信息。 面向对象程序设计的思想 使用类图设计系统 Java集合存储和传输数据 Java异常处理 JDBC操作数据库 Oracle存储数据 DAO层的应用面向对象的程序设计:即(Object-OrientedProgramming,简记为OOP)立意于创建软件重用代码,具备更好地模拟现实世界环境的能力,这使它被公认为是自上而下编程的优胜者。它通过给程序中加入扩展语句,把函数“封装”进编程所必需的“对象”中。面向对象的编程语言使得复杂的工作条理清晰、编写容易。J

3、ava:Java是一个由Sun公司开发而成的新一代编程语言。使用它可在各式各样不同机器、不同操作平台的网络环境中开发软件。Java正在逐步成为Internet应用的主要开发语言。JDBC:JDBC(JavaDataBaseConnectivity,java数据库连接)是一种用于执行SQL语句的JavaAPI,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC提供了一种基准,据此可以构建更高级的工具和接口,使数据库开发人员能够编写数据库应用程序,同时,JDBC也是个商标名。DAO层:DAO(DataAccessObjects)数据访问对象是第一个面向对象的接口,

4、它显露了MicrosoftJet数据库引擎(由MicrosoftAccess所使用),并允许VisualBasic开发者通过ODBC象直接连接到其他数据库一样,直接连接到Access表。DAO最适用于单系统应用程序或小范围本地分布使用。系统开发步骤: 明确需求 设计数据库 设计技术框架 Java技术 数据访问层 编码顺序1) 系统启动2) 登录功能3) 各种宠物主人操作 4) 各种宠物商店操作界面交互设计的原则:(1)统一性原则 界面风格统一 用相同方式展现相同类型的数据,如:日期类型 交互风格统一 用相同方式完成相同类型的操作,如:录入日期(2)美观性原则 界面美观大方(3)易用性原则 操作

5、方式自然、易理解系统功能结构: ii. 总体设计1、项目基础信息项目名称:宠物商店项目小组:孙明,黄慧芳,郑露,沈宪阳,郑鑫鑫,孙俊杰,季兵,叶浩东;项目时间:2016/1/1-2016/1/3项目承担:项目小组成员2、项目相关文档文档:详细设计说明书、实训课程报告;:l 在宠物商店里,宠物主人可以出卖、购买宠物l 每一笔买入、卖出的业务,店家都会记录在账l 商店可以根据需求自己培育宠物品种l 系统角色:宠物、主人、宠物商店、账目总体业务流程图1、先进性:采用先进成熟的技术,确保系统的先进性、经济性和实用性。2、安全可靠:平台提供的应用框架及平台本身提供应用安全保证,并可以和第三方安全手段,如

6、认证、加密、电子签名等进行集成。必须保证数据的安全性和保密性。3、规范性:开发过程控制、开发技术、系统编码、文档应规范化,并遵循相应的国内外标准。开发结束时,提供必要的文档资料。4、可靠性:保证系统的可靠运行和在升级过程中的方便快捷。5、可扩充性:系统应当可以根据需求的变化,方便地进行功能的调整、增减,模块的升级和系统架构的逐步完善。提交相应的系统规范文档,应用单位能够进行必要的二次开发。6、界面友好、操作方便:操作界面要直观、简单、贴近实际,操作过程应当尽量简化,符合实际过程。身份认证过程即要保证安全,也要尽量简化认证过程。7、可维护性:系统维护应当简单。8、集成性:平台应对基于平台开发的应

7、用模块、权限控制、界面进行集成。9、操作系统:本软件支持Windows系统。程序中实现的接口有:Accountable、Breadable、Buyable、PetFactory、PetOwnerService、PetStoreFactory、PetStoreService、Sellable、PetDao、PetOwnerDao、PetStoreDao、AccountDao1、采用面向对象技术进行设计和开发。2、应用中间件技术,保证系统的开放性和对技术发展的适应性。3、采用组件技术进行开发,提高系统可扩展性。4、科学划分信息块,方便快速查询,提高使用性。(1) 在宠物商店里,宠物主人可以出卖、购

8、买宠物(2) 每一笔买入、卖出的业务,店家都会记录在账(3) 商店可以根据需求自己培育宠物品种iii. 系统功能设计本系统主要实现在线电子宠物商店的前台功能,可分为会员服务、宠物信息查询、宠物分类(新培育的宠物和库存宠物)、用户登陆、用户购买宠物、用户卖出宠物、交易账目等主要的功能模块。下图是系统流程图: 总体类图 主要功能设计及详细设计 当我们进入宠物商店时,我们有一个系统启动模块:在系统启动时,显示所有的宠物信息、宠物主人信息、宠物商店信息。系统启动后,提示选择登录模式 。(1)思路分析:DAO代码:PetDao:getAllPet() 查询所有宠物信息PetOwnerDao:getAll

9、Owner() 查询所有宠物主人信息PetStoreDao:getAllStore() 查询所有宠物商店信息测试类startPetShop():获取相关信息并输出,提示选择登录模式main():调用startPetShop(),启动程序(2)重点使用JDBC访问Oracle数据库获取相关信息并遍历输出 如下图: 图 3-0在登陆这块模块,输入用户名和密码,判断登录是否成功,如果成功,输出主人基本信息并提示选择相应操作。如果登录失败,提示确认用户名和密码后重新输入。我们以成功为例,主人成功登录后,可选择购买库存宠物,显示所有库存宠物列表供主人选择,输入宠物编号完成购买,购买成功将显示提示信息 。

10、(1)思路分析DAO代码PetOwnerDao:selectOwner() 根据查询条件查询宠物主人信息Service代码PetOwnerService:login() 宠物主人登录测试类ownerLogin() :宠物主人登录startPetShop():如果选择主人登录,调用ownerLogin()main():调用startPetShop(),启动程序如下图:图 3-1主人成功登录后,可选择购买库存宠物,显示所有库存宠物列表供主人选择,输入宠物编号完成购买,购买成功将显示提示信息。(1)思路分析DAO代码Service代码查询所有库存宠物根据主人选择实现购买测试类ownerBuy():宠

11、物主人购买宠物ownerLogin() :如果主人购买宠物,调用ownerBuy()(2)重点更新宠物信息:指定ownerid更新宠物主人信息:减少更新宠物商店信息:增加更新账目信息:添加新账目如下图: 图 3-2主人成功登录后,可选择购买新培育宠物,显示所有新培育宠物列表主人选择,输入宠物编号完成购买,购买成功将显示提示信息。思路分析实现步骤与购买库存宠物相同 购买库存宠物和新培育宠物属于两种不同的业务,在业务接口和实现类中应该定义不同的方法重用数据访问层代码宠物主人卖出宠物给商店显示主人的宠物列表,选择要卖出的宠物序号,确认卖出宠物,显示宠物商店列表,选择买家序号完成交易,交易成功将显示提

12、示信息。1、思路分析(1)DAO代码(2)Service代码获得指定ID的宠物主人的所有宠物信息宠物主人向宠物商店卖出自己宠物(3)测试类ownerSell():宠物主人卖出宠物ownerLogin() :如果主人卖出宠物,调用ownerSell()2、重点根据主人选择实现购买更新宠物信息:删除ownerid更新宠物主人信息:增加更新宠物商店信息:减少更新账目信息:添加新账目如下图:图 3-3实体类一般和数据库表对应,实体类的属性对应于表的字段,为四个数据库表分别创建实体类,实现数据库数据在各个层次的传输,四个实体类的名称可以定义为Pet、PetOwner、PetStore、Account。

13、宠物商店实体类:PetStore 宠物主人实体类:PetOwner 宠物实体类:Pet 宠物商店账目类:Account 图 3-5采用面向接口编程的思想设计数据访问层,定义DAO接口和实现类,为四个数据库表分别创建DAO接口和实现类,为了重用建立和关闭数据库的代码,创建BaseDao作为四个实现类的父类图3-6 宠物主人实现类:PetOwnerServiceImpl 宠物工厂实现类:PetFactoryImpl 宠物商店实现类:PetStoreServiceImpl 宠物商店工程实现类:PetStoreFactoryImpl图 3-7 我们按照“单一职能原则” 对业务接口定义进行优化,抽取出B

14、uyable、Sellable、Breedable、Accountable等接口,PetOwnerService、PetStoreService接口根据自身功能继承其中的一个或多个接口。宠物商店数据库操作类:PetStoreDaoImpl宠物主人数据库操作类:PetOwnerDaoImpl宠物数据库操作类:PetDaoImpl宠物商店账目信息数据库操作类 :AccountDaoImpliv. 概念结构设计4.1.1 库表描述名称实现宠物表Pet用户表PetOwner商店表PetStore1. 宠物表2. 主人表3商店表 4.1.2 数据库脚本CREATE TABLE PET(ID NUMBER

15、,NAME VARCHAR2(50);TYPENAME VARCHAR(20);HEALTH NUMBER,LOVE NUMBER, BIRTHDAY DATE,OWNER_ID NUMBER,STORE_ID NUMBER);CREATE SEQUENCE SEQ_NAMESTATR WITH 1INCREMENT BY 1NOMAXVALUE CACHE 10;select to_char(BIRTHDAY,mm-dd-yyyy)from pet;insert into pet(ID,NAME,TYPENAME,LOVE,BITHDAY,OWNER_ID,STORE_ID)values(6

16、51,小花,狗狗,90,89,to_date(2015-02-14,yyyy-mm-dd),361,985);insert into pet(ID,NAME,TYPENAME,LOVE,BITHDAY,OWNER_ID,STORE_ID)values(652,贝贝,喵咪,100,95,to_date(2015-05-05,yyyy-mm-dd),362,211);insert into pet(ID,NAME,TYPENAME,LOVE,BITHDAY,OWNER_ID,STORE_ID)values(653,小环,企鹅,98,100,to_date(2015-08-08,yyyy-mm-dd

17、),363,212);insert into pet(ID,NAME,TYPENAME,LOVE,BITHDAY,OWNER_ID,STORE_ID)values(654,麦克,鹦鹉,100,100,to_date(2015-09-09,yyyy-mm-dd),364,213);insert into pet(ID,NAME,TYPENAME,LOVE,BITHDAY,OWNER_ID,STORE_ID)values(655,爱丽丝,仓鼠,100,95,to_date(2015-10-01,yyyy-mm-dd),365,214);insert into pet(ID,NAME,TYPENAM

18、E,LOVE,BITHDAY,OWNER_ID,STORE_ID)values(656,旺财,狗狗,100,85,to_date(2015-11-11,yyyy-mm-dd),366,215);insert into pet(ID,NAME,TYPENAME,LOVE,BITHDAY,OWNER_ID,STORE_ID)values(657,小白,蛇,100,75,to_date(-12,yyyy-mm-dd),367,216);SELECT * FROM PET;DELETE PET;create table Petowner(ID NUMBER,NAME VARCHAR2(50),PASS

19、WORD VARCHAR2(50),MONEY NUMBER(10,2);insert into Petowner(ID,NAME,PASSWORD,MONEY)values(361,小红,6661,150);insert into Petowner(ID,NAME,PASSWORD,MONEY)values(362,前前,6662,200);insert into Petowner(ID,NAME,PASSWORD,MONEY)values(363,小静,6663,80);insert into Petowner(ID,NAME,PASSWORD,MONEY)values(364,菲菲,66

20、64,163);insert into Petowner(ID,NAME,PASSWORD,MONEY)values(365,夏雨,6665,45);select * from Petowner;delete Petowner;create table Petstore(ID NUMBER,NAME VARCHAR2(50),PASSWORD VARCHAR2(50),MONEY NUMBER(10,2);insert into Petstore(ID,NAME,PASSWORD,MONEY)values(001,安徽第一宠物店,1101,4300);insert into Petstore

21、(ID,NAME,PASSWORD,BALANCE)values(002,北京西苑,1102,5507);insert into Petstore(ID,NAME,PASSWORD,BALANCE)values(003,重庆观音桥,1103,8954);SELECT * FROM PETSTORE;DELETE PETSTORE;create table Account(ID NUMBER,DEAL_TYPE NUMBER,PET_ID NUMBER,SELLER_ID,BUYER_ID,NUMBER,PRICE NUMBER,DEAL_TIME DATE);v. 维护与扩展主要为对服务器上的数据库数据进行维护。可使用Oracle数据库的维护功能机制。例如,定期为数据库进行Backup,维护管理数据库死锁问题和维护数据库内数据的一致性等。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号