




已阅读5页,还剩21页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
大连民族学院计算机科学与工程学院软件工程课程报告(2013-2014-1学期)项目名称: iYo校园综合服务平台 专业:网络工程班级:114项目负责人姓名及学号:黄湖川 2011083408同组成员姓名及学号(每个成员占一行):樊国敬2011083103陶姊屹2011083217马 慧 2011083412田 原 2011083422丁 心 2011083404指导教师:李锡祚评阅成绩:评阅意见:提交报告时间: 年 月 日目录1、 需求分析42、 项目设计53、 项目实现94、 项目测试125、 项目总结14参考文献附件1:小组分组情况说明 附件2:每个成员的工作报告 1、 需求分析 1.1 环境分析 1)根据民院金石滩校区社团联合会工作现状,社团及其人员的管理工作基本完全依赖于人工处理,但由于数据量较大,人工处理导致操作复杂、人工需求大、效率低、易出错、信息不同步等缺点。 2)校区内所有社团与各种大学生活动缺乏能够展示与宣传的开放式自主平台。3)在校内所举办的各种活动中,线上活动基本依赖于外界平台,但由于外界平台很难满足民院个性化的功能需求,导致使用上的诸多不便。 1.2 设立目标结合校园实际情况,设计一款能够满足在校学生需求的多功能平台。其初期功能包括:社联的相关人员管理功能、在校学生的社团申请与管理工作、各社团的自我展示平台、信息的发布与活动的宣传。 1.3 注意事项 1)由于其内含的管理模式为社团联合会所使用,因此要详细了解其人员管理模式与组织构造,根据其现有的活动与组织的运行模式,设计一套符合其原有业务模式的标准,并能够将其实现在用户对于网站的简易操作上,从而达到满足社联管理功能的基本需求,并使其原有工作变得更加简单、快捷、安全、方便。 2)社团联合会将于10月19日举行全校规模的社团纳新活动,届时将有上千人次使用该平台,因此需要在此之前完成该项目的主要功能部分,并通过相关测试确保其当天能正常运行。3)该网站完成后将作为金石滩校区社团联合会的官方网站,届时将存储数千条社团人员的信息,与校区内全部社团的基本信息,同时由于其承担社联的管理工作,因此该平台的维护与修改工作将长期进行下去。 1.4 业务描述 通过与社团联合会指导教师和学生干部多次沟通后,将相关人员的社团管理与人员管理的主要工作描述如下: 1)设立社团及其负责人: 由社联管理在校全部社团,包括社团的申请与成立、社团负责人的设置与更改、活动的组织与安排,和对其参与人员的信息管理。 2)社团负责人管理社团: 各社团负责人有权管理所在社团,管理工作包括社团的基本信息(社团宗旨、活动目标、社团简介、社徽等),和社团内的人员。社团负责人在实行其管理权限时,需在社联的监督和指导下进行。 3)在校学生申请社团: 申请社团时,首先需要向社联相关人员办理社团一卡通,以证明社团人员的身份,然后即可申报所有社团,具体的社团申报工作由该社团的负责人负责,但需在社联的监督和指导下进行。2、项目设计 2.1 功能设计 该网站所具备的主要功能描述如下: 1)学生申请社团: 用户注册后,即可进行申请社团操作。首先进入个人中心,点击“申请社团”,若该用户身份没有激活则会提示并进入激活页面。在激活页面填入社团一卡通卡号和学号进行验证,若信息匹配成功则进入下一页面,填入社团人员的详细信息,填完提交后,即可进行申请社团的操作。在“申请社团”页面下可选择准备申请的社团,点击“申请”后,该申请请求会提交至后台,需由该社团的负责人或社联管理员对该条申请进行审核,确认无误后可通过该申请。申请被通过后,该社团申请者即成功加入了所申请社团,在个人中心“我的社团”页面下可看到该社团内全部人员的信息。若社团的申请未被管理员通过,则该申请无效。 2)办卡人员信息管理: 学生申请社团时需办理“社团一卡通”用于社团人员身份的验证与识别。办卡人员的信息(包括社团一卡通号和学号)需由“社联管理员”录入网站后台,该条信息作为用户激活自己身份时的验证标准。 3)管理社团: 社团负责人可对自己所管社团进行管理。进入“管理中心”,点击“社团管理”-“我的社团”,即可看到所管理的社团信息。在此,可编辑社团简介,简介会在主页“指点社团”版块显示,可查看该社团的人员并对其进行管理,也可查看申报该社团的请求,并对请求给予“通过”或“删除”的处理。通过“请求”后 社联管理员可对所有社团进行管理,同时可以添加和删除社团。 2.2 用户权限设计 根据上述需求分析,该网站需要区分4种权限不同的用户,具体描述如下: 1)系统管理员: 网站的总管理员,拥有最高管理权限。可进行一切可行性操作,可为其他用户设置相应权限。 2)社联管理员: 社联管理工作的最高权限。可添加和修改社团信息,可为各社团设置负责人,可查看所有社团及其内部人员的基本信息,可进行社团负责人可做的所有管理操作。 3)社团管理员: 各社团负责人所拥有的权限。可对自己所管社团的信息进行修改,可查看社团申请者申报该社团的请求,并对请求进行“通过”或“删除”的操作,通过请求后,该申请社团者将加入此社团的社团人员中,成为正式成员,社团管理员可为其设置职务,已标注身份。同时社团管理员可进行对于该社团内人员的管理操作。 4)注册用户: 普通注册用户。可浏览网站中该权限可见的内容,可申请社团,申请会提交到后台等待相关管理员确认,申请社团成功后,可查看所在社团内其他成员的基本信息。注册用户可由更高级权限的管理者为其设置更高的权限。 2.3 数据库设计 1)Model(实体)描述: 注册用户(ID,邮箱,用户名,密码,权限), 权限(ID,权限名), 操作(ID,操作名), 办卡人员(卡号,学号), 社团人员(ID,卡号,学号,姓名,学院,专业,班级,电话,注册用户), 社团(ID,社团名,社团简介), 社团内身份(ID,身份名)。 2)E-R图: 操作权限描述 权限用户权限描述 注册用户-社团人员关系办卡人员-社团人员关系 注册用户 办卡人员 社团人员 社团申请 社团身份身份描述 社团 3)数据表:(一)基本用户表US_User表列名数据类型完整性描述useridInteger(10)主键用户idusernameVarchar(20)唯一用户名passwordVarchar(20)用户密码rightidInteger(5)参照 Right(rightid)用户权限id说明:用户注册、登陆时使用,核实身份、区分不同用户的权限。(二)权限表US_Right表列名数据类型完整性描述rightidInteger(5)主键权限idrightnameVarchar(20)唯一权限名称说明:所有权限的列表。(三)操作表US_Operation表列名数据类型完整性描述operationidInteger(5)主键操作idoperationnameVarchar(20)唯一操作名称说明:所有操作的列表。(四)权限描述表US_RightDesc表列名数据类型完整性描述rightdescidInteger(5)主键权限描述idrightidInteger(5) 参照Right(rightid)权限idoperationidInteger(5) 参照Operation(operationid)操作id说明:描述每个权限所拥有的操作。(五)办卡人员表CB_MemberList表列名数据类型完整性描述cardidInteger(5)主键卡号numberInteger(10)唯一学号说明:记录办理社团一卡通的学生。(六)社团表CB_Club表列名数据类型完整性描述clubidInteger(5)主键社团idclubnameVarchar(20)唯一社团名称clubintroductionVarchar(5000)社团简介说明:所有社团的列表。(七)社团人员表CB_Member表列名数据类型完整性描述memberidInteger(5)主键社团人员idcardidInteger(5)参照MemberList(cardid)卡号useridInteger(10) 参照User(userid)用户idnumberInteger(5)参照MemberList(number)学号nameVarchar(20)姓名phoneInteger(11)电话SchoolVarchar(30)学院MajorVarchar(30)专业ClassNumIntsger(3)班级说明:记录所有社团成员(有社团一卡通者)。(八)社团身份表CB_Identity表列名数据类型完整性描述identityidInteger(5)主键身份ididentitynameVarchar(20)唯一身份名称说明:描述社团中人员的身份。(九)社团人员身份表CB_MemberDesc表列名数据类型完整性描述memberdescidInteger(10)主键社团人员身份idcardidInteger(5)参照List(cardid)卡号useridInteger(10)参照User(userid)用户idclubidInteger(5)参照Club(clubid)社团ididentityidInteger(5)参照 Identity(identityid)社团内身份说明:描述每个社团成员的社团身份。(九)社团人员申请表CB_MemberApp表列名数据类型完整性描述memberappidInteger(10)主键申请表idcardidInteger(5)参照List(cardid)卡号useridInteger(10)参照User(userid)用户idclubidInteger(5)参照Club(clubid)社团id说明:描述每个社团成员的社团身份。 2.4 项目架构设计 为了使该系统具有良好的健壮性、稳定性、安全性、可维护性,将该系统分为如下七层: 1)Dao层: 操作数据库的接口层。为了保证系统内数据的安全性,利用接口技术实现面向对象程序设计的封装性与多态性,从而保证操作数据库代码的隐蔽性与安全性。 2)DaoImp层: 实现Dao层所对应的接口,将操作数据库的具体代码写在此层。操作数据库时利用面向对象程序设计的向上转型技术实现该层代码的封装。 3)Model层: 实体模型层。模型与数据库中的数据表一一对应,将数据表中的数据映射为系统内实体时所使用。 4)Service层: 提供各种功能性操作的服务层。该网站所具有的功能均由该层提供的操作处理完成,比如登陆、注册、浏览、管理等操作。 5)Action层: 业务逻辑处理层。与前端直接交互的功能层,负责与前端信息的交互,识别并区分请求,然后决定调用Service层合适的功能, 6)前端: 与用户直接接触,负责接收用户发来的消息,并将反馈回的数据显示给用户,前端包括页面和安卓客户端。3、 项目实现 3.1 程序设计语言选择服务端:Java+ssh框架客户端:java、jsp、html、javascript原因:java+ssh框架实现网站服务器端,网站稳定性较好,平台不受限制,易于实现,易于扩展和维护,数据封装性好。 3.2 数据库服务:mysql 原因:适用于中小型项目的数据库系统,安全、稳定、易用、免费。 3.3 设计模式:MVC 原因: 1)低耦合性。视图层和业务层分离,这样就允许更改视图层代码而不用重新编译模型和控制器代码,同样,一个应用的业务流程或者业务规则的改变只需要改动MVC的模型层即可。因为模型与控制器和视图相分离,所以很容易改变应用程序的数据层和业务规则。 2)高重用性和可适用性。随着技术的不断进步,现在需要用越来越多的方式来访问应用程序。MVC模式允许你使用各种不同样式的视图来访问同一个服务器端的代码。它包括任何WEB(HTTP)浏览器或者无线浏览器(wap),比如,用户可以通过电脑也可通过手机来订购某样产品,虽然订购的方式不一样,但处理订购产品的方式是一样的。由于模型返回的数据没有进行格式化,所以同样的构件能被不同的界面使用。例如,很多数据可能用HTML来表示,但是也有可能用WAP来表示,而这些表示所需要的仅是改变视图层的实现方式,而控制层和模型层无需做任何改变。 3)较低的生命周期成本。MVC模式开发可提高开发效率,降低开发成本,易于进行产品的维护。 4)快速的部署。使用MVC模式使开发时间得到相当大的缩减,它使程序员(Java开发人员)集中精力于业务逻辑,界面程序员(HTML和JSP开发人员)集中业务于表现形式上。 5)可维护性。分熟视图层和业务逻辑层也使得WEB应用更易于维护和修改。有利于软件工程化管理。由于不同的层各司其职,每一层不同的应用具有某些相同的特征,有利于通过工程化、工具化管理程序代码。 3.4 技术介绍: 1)表现层技术:jsp本系统用jsp作表现层,负责收集用户请求数据,以及数据的表示。 2) MVC框架本系统使用struts2作为MVC框架。系统中所有用户请求,包括系统超链接和数据提交等都不直接发送到处理层,而是发送给struts2的 action,struts2控制所有请求的处理与转发。 3) spring框架的作用Spring提供的Ioc容器是业务逻辑组合各dao组件的工厂,它负责生成并管理这些实例。借助于spring的依赖注入,各组件以松耦合方式组合在一起,组件之间的依赖通过spring的依赖管理。 4) hibernate的作用Hibernate框架简化了数据库的访问,以简单灵活的方法操作数据库,为底层的dao对象实现提供支持。 3.5具体实现1) 系统结构表现层:由jsp页面组成。MVC层:使用MVC框架技术。业务逻辑:主要由Spring Ioc容器管理的业务逻辑组件组成。DAO层:由16个DAO组件组成。在hibernate 管理下完成数据库操作。数据库服务层:mysql数据库存储持久化数据。2) 功能模块XXXDAO:提供XXX表的数据库操作。XXXService:提供XXX表的业务逻辑处理功能。XXXAction:提供XXX角色的请求处理。3) hibernate持久层持久化实体:User:注册用户信息,包括用户名,名户密码,用户权限等信息。MemberList: 社团卡与学号绑定信息,包括社团卡号与学生学号信息。Member:办卡人员详细信息,包括专业、班级、真实姓名、联系方式等。MemberDesc:社团个员信息,包括所在社团,在社团中的身份等信息。MemberApp:申请社团人员的信息表,包括所申请的社团和申请人详细信息。Club:社团信息,包括社团名,社团号,社团简介等信息。Store: 赞助商信息,同Club表。Right: 用户权限表,包括权限名,权限id两个属性。Identity:加入社的用户在社团中的职位描述,包括职位名和职位id两个属性。其他: 还有一些持久化实体类,因为客观原因使与其相关的功能暂不能开放,在此不给予描述。我们使用annotation实现实体的映射,实现零配置。4) 实现DAO层每个DAO组件对应一个数据表的操作。包括DAO接口和DAO实现类。基本组件:getById(long id): 根据主键取持久化实体。add(object entity);保存持久化实例。update(object entity): 更新持久化实例。Delete(long id):根据主键删除持久化实例。getAll():取出表中所有持久化实体。getXXByYYList(int first,int size,.): 根据数据表的某个属性列分页取出持久化实例。通过spring注入SessionFactory实现DAO层的部署。5) 实现Serivce层这一层我们做的很简单,只是在DAO层上加了一些简单的判断,大部分的业务逻辑处理都被放到了action里。6) 实现web层Struts2与spring整合。在web.xml中配置struts2核心Filter与初始化spring容器,实现action的自动装配。业务控制器Action。主要是对用户请求做业务处理,并通过jsp把处理结果呈现给用户。主要有:UserAction:处理用户一般的操作,例如登录、注册、申请社团等。ManageAction: 处理管理角色用户操作请求,例如审核社团申请、设置权限等。PageAction:处理部分页面跳转请求。4、项目测试 4.1 分层测试:1) Model:建立持久化实体类,并在beans.xml中部署,运行测试,运行后数库据中自动生成数据表,通过命令行查询,表和表之间的对应关系正确。2) DAO层:建立接口和实现类,在XXXText使用单元独立测试,针对数据库操作组件一一测试。添加、查找功能正常,删除、更新时出导常。审查代码,没有发现错误,通过命令查看数据,发现外键级联设置错误,经手动调节后再次运行测试代码,运行正确。3) Service层:这一层是基于Model层和DAO层建立的逻辑处理层,主要负责进行数据库操作之前的逻辑处理,主要是对DAO层的调用和数据流向的控制。我们采用各功能函数独立测试,主要是检查是否正常调用DAO层,问题主要是输入数据不能保存,查询时数据存有存在时出异常。解决办法是在保存数据时验证数据是否正确,在取出时检查数据是否存在,不能取出的数据当作不存在处理。4)Action:这一层主要是处理请求返回结果到表现层,主要测试能否正确接收提交上来的数据,能否正确存储数据和提取数据,能否正确返回表现层。测试依赖表现层,异常不确定,主要表现在数据提取不正确,中文乱码等。解决办法:提取数据错误时返回错误提示,统一工程使用字符编码集。 4.2 功能模块测试:1. 注册 测试数据(1):邮箱:447100651用户名:fgj密码:123456确认密码:123456点击确定,提示注册成功,返回主页面 测试数据(2):邮箱:447100651用户名:fgj密码:123456确认密码:123456不能点击确定,提示邮箱输入不正确。 测试数据(3): 邮箱:447100651用户名:fgj密码:12345确认密码:123456不能点击确定,提示密码确认不一致。结论:注册数据输入正确时可以提交,输入不正确时不能提交并提示正确输入格式。注册模块功能正常。 2.登录测试数据(1): 输入邮箱:447100651 输入密码:123456 点击确定,登录成功,返回主页。测试数据(2): 输入邮箱:1111xx.xx 输入密码:* 点击确定,提示没有该用户,返回注册页面。 结论:登录功能正常。3. 后台管理 后台管理各项操相同,以下只以用户管理为例。 测试操作(1):点击用户管理,页面显示所有注册用户,分页正常。 测试操作(2):在用户列表选择其中一个数据,点修改,弹出修改编辑框,输入修改内容,提交后返回列表,修改成功。 测试操作(3):点击删除,点击确定,返回用户列表,删除成功,再点击删除,点取消,数据被删除。问题出在js函数上,修改js函数后重试,数据不删除。 测试操作(4):输入id/邮箱/用户名,点击查找,不能查找。原因:后台没相应处理action。解决:增加查找action函数。结论:后台管理出现很多小问题,经过测试和修改后能正常使用。 4.用户申请社团用户卡号绑定,信息录取、修改都正常。问题:用户没有绑定卡号时申社团出现错误。原因:申请数提交到后台的处理函数中没检验数据。解决:增加检验代码。结果:没有绑定卡号的用户申请社团时提示先绑定卡号,运行正常。5. 社团审核在申请用户信息列表中点通过,申请用身份成为社团人员,在社团中身分为成员。在成员列表点修改,能正确修改信息。经过两周的测试试用,根据用户提出的问题进行经过修改更新,平台的注册、登录、卡号绑定、社团人员信息管理等功能已能使用正常。其中还有很多错漏的问题,由于时间有限,只能在日后再进行汇总和修改。5、 项目总结 5.1 项目完成情况 目前该网站所有与社团管理相关的功能基本完成,并全部进行了相关测试,运行结果正常,可以满足金石滩校区社团纳新工作的需要,作为社联信息化管理平台投入使用。 由于该网站使用校内网,手机所接收的外网信号访问不到网站资源,因此安卓客户端暂时没有投入使用。 5.2 实际使用情况 通过团队近两个月的努力,项目于10月14号开始正式使用。作为社联的信息管理平台,承担2013届的社团纳新工作,截止到今日(11月6日),该平台注册用户数已超过1800人,保存全校70余个社团信息,记录办卡人员信息3900余条,保存1501条社团人员的信息,与2025条社团参与信息,总点击量达37336次。 5.3 成员工作情况 根据工作职责的不同,将团队成员分为3个小组,即前端组、安卓组、后台组。 1)前端组 负责人:丁心 成员:马慧,田原 任务描述:负责网站所有页面的设计与实现。 任务完成情况:丁心制作网站首页、管理中心和通知版块的相关页面。马慧制作论坛相关页面。田原制作个人中心、指点社团、新闻版块的页面。 2)安卓组 负责人:伞银晨 成员:陶秭屹 任务描述:负责安卓客户端的设计与开发。 任务完成情况:伞银晨负责安卓客户端的总体设计与开发,陶秭屹负责安卓客户端界面的设计与实现。 3)后台组 负责人:黄湖川 成员:樊国敬 任务描述:负责网站后台的架构设计与开发,负责服务器的配置与维护。 任务完成情况:黄湖川负责与使用者沟通,确定需求与使用情况,从而进行项目的设计和后台的开发,与日常维护。樊国敬负责后台的开发与服务器的维护和配置。 5.4 收获与总结 该项目从2013年4月份确定需求开始,7月份正式开始制作,经过团队2个多月的努力,在10月份完成了该项目的设计、实现、测试、维护等主要工作,当前正作为社联的信息化管理平台已经投入日常化的使用, 通过制作该项目,让我们体验到了软件制作的标准化流程,即从需求的获取开始,然后经过设计、实现、测试等主要阶段的工作,最终完成一个能够满足用户需求的“有价值”的产品。 同时,该项目的制作由团队完成,所有队员都能够在假期时间主动留下来参与项目的制作,并在制作过程中积极工作,增强了大家对于团队合作的体验,和团队精神与意识的形成。 总的来说,该项目的制作过程与完成情况比较成功,基本达到了预期的目标,但还存在很多缺陷有待改进,很多功能也需要进一步地实现。但此次经历对于我们来说是非常宝贵的,不仅学习到了技术,更重要的是体会到了为“用户”开发产品并最终投入使用的整个过程,和团队协作、相互配合、共同完成目标的经历,使我们体验到了计算机专业人员的工作与感受。参考文献:1 李刚.轻量级Java EE企业应用实战(第3版).电子工业出版社2 李刚.疯狂Java讲义(第2版).电子工业出版社3 李兴华.JavaWeb开发实战经典.清华大学出版社3 刘甫迎(编者),刘焱(编者).Android移动编程实用教程.电子工业出版社3 美 Nicholas C. Zakas .JavaScript高级程序设计(第3版).人民邮电出版社附件1:小组分组情况说明 黄湖川2011083408网络114伞银晨2011081620计科116樊国敬2011083103网络111陶姊屹2011083217网络112马慧 2011083412网络114田原 2011083422网络114丁心 2011083404网络114附件2:每个成员的工作报告iyo校园综合信息服务平台项目个人工作报告计算机科学与工程学院 网络111班 樊国敬 学号:2011083103项目前期工作:上学期在工作室内10级学长带领下开始学习java语言。刚开始时目的不是很明确,只管埋头学习,到期中时,龚正学长写了一个需求文档,让我们用所学的东西去开发。我们一边学一边做,通过实战来巩固所学知识和提高自身能力,虽然我们没有把学长给的项目进行到底,但是这个过程中我们掌握了很多技术,这些使技术在我们这次项目的开发中起了很大作用。在我们学习过程中,龚正学长发现学校社团所使用的信息管理网站有漏洞,黄湖川帮他们解决漏洞过程中发现他们所用平台功能少,管理不方便等问题,他认为我们工作室团队可做一个更好的平台。经过几次讨论后,我们开始为开发一个让社联管理社团人员信息和各社团展示自己及人员管理的web平台做准备。我们首先确定了使用这个平台的不同身份的用户,以及他们对平台的功能需求,经过整理后,我们写下了一份简单的需求分析,这时已是学期期末。因为大家一起学习的时候就选确定了方向,所以项目分工没有出现什么困难。我的任务是实现服务端代码。放假后,我们讨论了几次后确定确数据表信息。数据库设计出来后又用了几天时间对数据表做一些修正。数据库设计难点是各个表间的关系,例如一个注册用户,他同时是多个社团的成员,并且是其中的一个或几个社团的管理员,他的权限分配如果只参照一个表的话就可能会出现权限越级了,因此,我们在权限表外再设一个描述社团人员身份的数据表,这样就解决了权限分配的问题。数据库设计完成后我们就开始编码。前期工作总结:前期工作中我们做了需求分析、人员分工、数据库设计。存在的问题:在获取需求时没有做好,没有写详细设计,导致编码时页面功能不确定,页面没有出来前写后台的就没法编写代码。经验总结:在做项目时,需求分析一定要做好做细,在开始编码前必须设计好,尽量考虑更多的实现细节。实现过程:由于所学内容不是很深,我们采用struts2、spring、hibernate三大框架整合MVC模式进行开发。起初后台编码有三个人,我们把数据表分成三组相关组各自去实现model层、dao持久层和service层的基本操作。三个人独立编码独立测试,完成任务后把文件合到一起。没有用项目管理软件,把各组员写的代码合到一起时有些麻烦,还会出现合到一起后不能运行的情况。在做这个项目之前我们都没有自己去搭建三大框架的开发环境,刚开始的时候遇到了不少问题,编写代码的前几天我们都用学长之前培训时给我们部署的环境去写代码。经过几天的摸索我们才自己搭起环境。环境搭起后我们开始写hibernate 持久层,model层,对应数据库表的实体类。其中最大的难点是在代码中实现各个表间的参照完整性!我们参考了很多资料和实例代码,通过多次实验去测试,最终把问题解决了,但是,级联问题还是没解决,只能通过手动去修改数据库。写完持久层实体类我们开始实现dao层,因为具体的操作还没有确定,只写了增删改查四个基本操作。过程中还写了一些service层的类来测试。这个过程中并没有什么大的问题。做完上述的事后,由于页面功能没确定,页面还没做出来,我在项目中暂时没有任务。在等待前台做出页面的时间里我做了一些前台后数交互的实验。页面出来后,我的任务是做论坛贴吧这个模块的内容。过程中遇到问题是从数据库中分页提取数据,因为hibernate框架用得不熟练,解决这个问题花了不少时间,是在参考学长的代码后解决的。还有因为和做前台的人员交流不够透彻,页面显示或要提交的数据跟后台的数据不对应。做完这些后时间已过去三周了。在本学期开学后的一段时间,我在项目中没什么任务,只在之前基础上做一些改进。后管理功能是黄湖川在做,做后台的三个中有一位退出,但并不影响项目进行。9月初,我开始在虚拟服务器上架设网站,对一个linux系统新手来说,这并不是件容易的事,网上能搜到的教程都不适用,甚至还会误导。掌握架设网站的大概过程后我跟据所遇到的问题假设了一些解决方案,几次尝试后,服务器配置成功。接下来的时间里我对社团信息管理模块进行测试和修改,解决了一些细节上问题,社团信息管理功能基本完成,网站基本成形。9月底,我在工作室机器上装ubuntu系统,架设成服务器。网站部署完后我的工作是测试与修改,10月中旬,网站开试用,我的工作任务是解决用户使用过程中出现的问题。总结:做这个项目的几个月,很累,很烦躁,但很值得。在项目开始之前我认为自己掌握的知识能够去完成开发任务,项目开始后便发现自己知识的匮乏,真的出了问题才知道自己所学不精。从项目中发现自己的诸多不足,这也是在这个项目中最大的收获,如果没有实践,我就没有看见自己的问题,没法去解决这些问题,也提高不了解自己的能力。经过几个月的实践,我学会struts2、spring、hibernate三大框架的基本用法,对web开发有更深入的了解,从中获得解决web开发过程中遇到的问题的基本方法。在开发过程度遇到的问题举不胜举,在这里不能一一列举,但是其中的每一个问题都是值得我们仔细的去探讨,认真的去总结的。项目过程中我最感触深的两个问题是项目管理问题与团队合作问题。我们没项目管理经验,开发过程有些混乱,每个组员都能在自己的机器上正常工作,但是,大家的代码合到一起的时就会出现一些问题,如文件重名、函数重名、字符编码不一致等问题,这些问题都很大程度的干扰了我们的工作。我们是按学习方向进行任务分配的,组员间进行了很大程度的互补,如果没有前台的同学,我们很难去实施这个项目。由于前台后台人员各自所学的知识分化程度很大,我们做服务端的人对客户端的知识掌握不够,做前台的同学对后台知识也不是很了解,使得前端后台交互出现困难。不过,随着项目的深入,我们也慢慢调好,慢慢适应这样的环境,团队合作也是一项很重要的能力。虽然网站已经做出,并成功试用了,但是其中还有很多问需要我去研究和解决,我的能力有待提高。2013年10月26日 iyo校园综合信息服务平台项目个人工作报告计算机科学与工程学院 网络114班 马慧 学号:2011083412一、项目简介及个人工作任务 iYo网是一个主要服务于社联的社团纳新及日常管理的校内应用平台。人员安排分前端、后台、客户端三个部分,我是负责做前端的其中一个。初期定的要实现的功能有:社团卡号激活、社团简介、社团管理、新闻、通知、论坛、学术、个人中心等。我负责的主要是论坛和学术板块还有一个广告的弹出框和广告介绍页面。但最后由于各种原因,论坛和学术功能删除了,所以我做的部分就没有在最终结果中展现出来,但它确实存在。二、工作内容介绍 现在网上出现了越来越多的论坛,贴吧等供人们进行交流和分享,增加了人与人之间思想和情感上的互动,人们的言论自由也在一定程度上得到了解放。虽然有很多适合大学生交流的平台,比如人人网,百度贴吧等等,但并没有一个完全只局限在我们民院内部的平台,所以在iYo网放这个功能还是可以的(只是言论内容限制这块不太好控制,这也是后来为什么取消这个功能的一个原因)。接下来就具体说一下,以论坛为例,学术不同之处会指出。1、页面功能描述:论坛部分: (1)论坛首页:head部分要有各板块的连接,还有登陆注册的连接;有帖子的列表,设成连接,点击进入帖子浏览页面;有发帖按钮,点击到编辑帖子内容框处;有个人信息,包括头像、用户名,点击用户名可进入个人中心。 (2)帖子浏览页面:head部分要有各板块的连接,还有登陆注册的连接;有帖子内容的展示部分,包括帖子标题,发布时间,发帖人名和帖子正文;有评论按钮,点击链接到页面底部的评论编辑框处,在评论里还有回复按钮,可对此评论进行回复;有个人信息,包括头像、用户名,点击用户名可进入个人中心。 (3)发帖页面:最初的版本里有此页面,点击发帖按钮可进入页面在编辑框处进行帖子编辑,按发布按钮进行帖子发表。但最终的版本删除了此页面,将其合并到了论坛首页。(注:学术的形式和功能同论坛类似,只是在页面设计方面稍显不同)广告部分:(1) 广告弹出框:页面一打开就会有广告从上部降到页面底部,有关闭按钮。(2) 广告详细介绍页面:有广告商家的文字介绍和商家宣传照片展示。2、页面功能实现用到的技术: 所有页面都是用HTML写的结构,用CSS定位和美化样式。(1) 论坛首页的帖子列表,用javascript循环控制显示的帖子的个数,翻页用到ajax异步刷新,只刷新帖子列表那一部分,打破了过去刷新整个页面的技术限制。(2) 发帖和帖子评论都导入了kindeditor-4.1.7编辑器,可以改变文字样式,发表情,上传图片等。(3) 弹出广告就是用到了javascript。3、页面设计: 从开始做到现在,论坛和学术页面我一共做了4个不同的版本,不断摸索不断尝试不断改变。到现在了,页面设计对我来说也才是初步学习水平而已,设计是专业学设计的人的强项,我们前端更注重编程方面,但如果想要在前端方向走得更好,设计方面的东西好好学习一下是很有必要的。我认为一个页面的设计要做到一下几点:1、 网页设计应该简约并且完整。2、 网页设计必须具备一致性。3、 留白和信息同样重要。4、 清晰的视觉层级。最开始的三个版本都是自己摸索设计的,还有旁人的指点,虽然很不完善,也不专业,但做到了简洁,最后一个版本,根据负责人的要求是仿照百度贴吧的样子写的,既然是仿写就要像,但也要注意突出自己的主题。最满意的是第三个版本,完全是自己想出的点子,以墙为背景,木质图片做点缀,还有藤蔓,有点小清新,很舒服的感觉。而广告的简介页面是以黑色为背景,比较有质感,大气,因为本身内容也比较少,所以看起来很简洁。网页设计不仅需要专业的知识,也需要一定正确的审美,还需要不断的积累经验,不断的学习。三、遇到的问题及解决办法 遇到的问题真不少,不只是专业知识,还有其他的一些问题,遇到了问题,首先想到的是自己解决,百度和google帮了很大的忙,解决不了就跟同伴一起商量解决,再不行就找经验丰富的学长学姐,最终把问题解决掉。 在专业知识方面,因为刚开始做项目的时候也是刚开始学知识的时候,所以会遇到很多很杂的问题,在这就举个例子说一下吧。比说说页面的布局方面,最开始在书上学到的布局方法就是浮动和定位,但用着用着就都用了定位,整个页面都是用相对定位和绝对定位来写的,让一个专业的人看了之后,被批评了,说没有这样布局的,定位只是用来调整一些小的地方的位置的,说代码也很不规范,所以我又相当于全部重新写了一遍,用浮动定位,但浮动用的也不太熟练,所以就从网上找博客一篇一篇看,才把它整明白了。四、总结和感想这个项目从暑假开始,我们团队在老校区工作室就开始着手做了,每个人都是新手,知识也都是才开始学的,所以说其实并不容易,没个人都有很辛苦的付出,都是怀着想要把这个项目做好的心情在进行,因为要在新生开学的社团纳新时用上,所以时间也很紧迫。这是我第一次跟一个团队一起做项目,谢谢给我这次机会的同学,也感谢并肩作战的每一个战友,完成后有很多的收获和感受。收获了知识、友谊和团队精神。“纸上得来终觉浅,绝知此事要躬行。”你看再多的技术书,不去实践,那就是一潭死水,特别是我们计算机专业,实践才是最重要的,在实践过程中遇到的问题可能在书中是没有提到过的,解决方法更不用说了,这样会让你积累经验,提高以后解决问题的效率。还有在实践过程中可能会有更好的点子出现。在项目中学到的是在书本上学不到的,积累了知识和经验。在项目的进行过程中,团队里的每个人都很乐于助人,遇到了问题都帮忙解决,也是比较和谐的。我们三个前端,吃、住、学都在一起,有什么问题都一起商量解决,有了好点子好主意大家一起分享。很开心跟她们在一起共事。团队精神我学到的最重要的一点,一个团队的好坏决定着这个作品的成败。现在不管公司还是什么组织,都注重团队协作,所以这次也是个很好的机会让我来感受一下团队的氛围。沟通是一个很重要的环节,沟通不好会影响很多事情,前端和后台沟通不好,在功能实现方面就会出问题,负责人和团队成员沟通不好,就会出现矛盾。开会,不只是形式,更多的是交流,交流想法,交流感情,是很必要的。学到很多,感受很多,更多的是成长,也让我更加喜欢上了前端,坚定了要在前端这条路上走下去的想法。 2013年10月20日iyo校园综合信息服务平台项目个人工作报告计算机科学与工程学院 网络114班 丁心 学号:2011083404一 负责功能:负责首页和后台管理系统的编写。1.1 首页模块设计: 页面分为五个模块,页面整体布局为(1+1+1+1+1)形式: 最上一层为导航模块,点击分别可转到(首页,新闻,通知,学术,论坛,个人中心),此模块设定position:fixed;使其固定在浏览器最上层,即便是鼠标滑轮滑到底层也可点击快速转到新的页面。 第二层为logo展示、登陆注册及个人中心链接部分,用户未登录时显示登陆注册两项功能,用户登陆后显示用户姓名,及退出,点击用户姓名可进入个人中心。 第三层为社团活动展示页,由jQuary编写的焦点图带有社团活动图片及活动介绍。 第四层为新闻、学术、贴吧、论坛的部分信息展示及社团链接,此模块通过Tab方式展示。 第五层为footer页面。动态,并留有登陆、注册、个人信息、社团及后台管理系统接口。1.2 后台管理系统模块设计:页面分为三个模块,页面整体布局为(1+(1+1)形式:最上一层为header导航部分,点击可转到首页个人中心,社团详细页面,并含有退出按钮,可随时退出后台管理系统到首页。下层分为左下侧和右下侧:左下侧也为导航模块,此模块为用户信息导航 用户管理:注册用户 权限管理:权限列表 论坛管理:论坛列表 社联管理:人员管理:办卡人员 社团人员 待审核人员社团管理:社团列表 社团职务商家管理:商家列表 社团管理:我的社团右下侧模块为信息展示模块,通过使用内置框架,点击左下侧导航,可在页面右下侧动态加载网页,信息网页实现的功能及样式基本相同,信息皆为table表格形式展示,页面可修改信息,添加信息,删除信息,查找信息,其中修改信息在弹出框内进行,并且有js验证功能,添加信息跳转新网页,也拥有js验证功能,部分网页如:个人信息展示页,有查看功能,点击查看可扩大该行高度,显示全部信息。二 编写过程中遇到的问题及解决方案:2.1 浏览器兼容问题: 对于首页使用了圆角,和设置了透明度,ie是不支持圆角的,导致显示的都是方块,影响美观,后来是把所有带圆角的都变成了图片,才堪堪解决了这个问题。 对于后台管理系统,刚开始的页面变成jsp形式时无法兼容ie和基于ie内核的360浏览器,点击左下侧的链接右侧页面脱离了结构,显示在了网页的最下层,明显有一种被挤下去的感觉,刚开始是怀疑iframe不支持ie,后来编写了一个iframe的小程序试验了一下发现是可以实现的,于是知道了大概会是在某个标签内多设置了一些属性。我发现,我对于一些标签,当设置其宽度的属性,总是愿意写上width=100%; 在其他情况下多
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB/T 46278-2025个体工商户信用评价指标
- 办事处生产安全培训课件
- 刺猬设计包装课件
- 别致胡花瓶胡课件
- 化工企业安全管理培训课件
- 别把药丸当糖吃课件
- 化工企业培训课件
- 化工三传一反课件
- 初夏安全培训记录课件
- 内部交通安全培训课件
- 人工搬运培训课件
- 2025年哈尔滨投资集团有限责任公司校园招聘笔试备考题库含答案详解(精练)
- DB4406∕T 47-2024 养老机构安全风险管理规范
- 城乡垃圾压缩站建设施工组织设计方案
- 安徽省合肥市六校联考2025-2026年高三上学期开学考试语文试卷(含答案)
- 2025年北京市中考英语真题卷含答案解析
- (2025年标准)课时合同转让协议书
- 风力发电机自动消防系统
- 公益性岗位业务培训课件
- 屋顶分布式光伏发电项目施工组织设计
- 学校安保培训课件
评论
0/150
提交评论