考试告一段落,该忙乎院长交与的项目了。《学生信息管理系统》,准备用struts+iBatis+spring构建,今天算是考完试后小组的第一次开会,交代了近两个星期内的任务。我立刻将结构的想法画成简图,以及计划建议交给组长和各组员。以下是结构设计简图,精彩的工作由这里开始:
接下来是半个月左右的计划:
下星期完成数据层到服务层的详细类图,其间我将确定後的实体类图交与邓飞,让他们建表。
再下个星期开会+培训後组织第一阶段的编码,我打算这样的:首先我来建立工程,建立好包结构和服务层的所有接口、添加好所有需要的库,也就是搭个骨架。然后我将工程文件夹、开发工具(Eclipse)、JDK安装文件(统一JDK也很重要)、数据库一并打包传给每个参加编码的人。之后开始分配任务从右至左编码:从Sql查询语句开始至FacadeManagerImp类结束算是完成了这个阶段的任务,其间要注意代码同步,我担心subversion我们都没经验,硬要用上也不见得是好事。所以我觉得要避免代码版本冲突就要严格划分任务区域,各司其职就没事了。可以考虑在某个FTP中为每个人都指定一个代码文件夹,谁有新版本的代码就传到属于他自己的文件夹里,并放上一个名字为更新日期的文本文档,这样我们每隔一段时间就上这个FTP,去每个人的文件夹里下载最新的代码到本地覆盖就可以了。
如上计划完成了的话,我们几乎算是完成了一半的工作。剩下的工作分两种方案:一起作为一个阶段做完、分两个阶段做完。
1):作为一个阶段做完:业务逻辑层就是struts框架的Action层,直接编写Action,并组织页面流程,完成之后整个项目也就差不多了。这样的话业务逻辑层和表现层就都交给struts来组织。
2):分为两个阶段做完:先做我们自己定义的业务逻辑层的设计和实现(不跟任何struts的api耦合)(这一层的类多,但形式单一,属于劳动密集型,大概占总的20%的工作量),称为“业务逻辑组件”。;然后就是结合struts来摆纯的表现层,也就是最后30%的工作,其中“业务逻辑组件”中的方法要么返回某种计算结果,要么返回指示是否执行成功的true/false信息,也就是说跟struts达成“控制耦合”,Struts在这里就只管表现层。
方案1)其实属于一般常用做法,循规蹈矩;但方案2)由于实现了独立于任何框架的业务逻辑组件,今后如果要改表现层框架(如放弃struts用webwork或jsf),甚至想把本项目重做成C/S架构都是很方便的事情,只需要做最后30%的工作;但若是方案1)作出这样的改动的话就要做50%的工作(业务逻辑层以上均重新构建)。
也许方案2)有点画蛇添足,我们的项目或许做好后再也不需要做那么大的改动...这是鱼和熊掌的问题...
不过决定用那个方案起码是半个月之后的事情,现在不用着急,先完成最上面的计划吧。
分享到:
相关推荐
《软件综合项目工程综合基础设计任务计划书》是软件工程学科中的一项重要实践环节,旨在培养学生的软件设计与开发能力,提升团队协作和项目管理技巧。在这个任务中,学生将参与一个旅店管理系统的开发,以此来掌握...
这是一份软件工程课程设计项目计划报告,标题为“图书信息管理系统项目计划报告”,描述为“软件082-06T-图书信息管理系统01项目计划报告.pdf”,标签为“技术”。报告的主要内容包括项目计划、项目概述、人员组织及...
- **网络图**:采用单代号或双代号网络图来表示任务间的依赖关系,帮助团队成员更好地理解项目进度。 - **里程碑图**:标识出项目中的关键节点,如需求冻结、设计完成、系统测试等,便于追踪项目的重要时间节点。 #...
绘制相关的设计图纸,如系统架构图、流程图等;以及通过实验验证设计方案的可行性,获取试验结果。这些要求旨在确保学生全面掌握设计过程,从理论到实践全方位提升技能。 在进行毕业设计时,学生需按照任务书的指引...
在【背景】部分,我们了解到该系统的开发目标是为中高校图书馆人员、员工、学生和教师服务,由厦门理工学院软件工程教师提出任务。系统基于C/S架构,其中服务器承担数据存储和监管网络的角色,而客户机则用于运行...
- **文件**:包括项目开发过程中产生的各种文档,如需求规格说明书、设计文档等。 - **服务**:提供给用户的软件安装、使用指导等服务。 - **非移交的产品**:例如项目过程中生成但不对外发布的中间件或辅助工具...
包括中期检查时至少完成工作总量的 60%、查阅分析速达物流信息查询微信小程序的相关需求、运用前端的基础知识设计合理的网站控制方案、数据库架构设计、功能流程图和数据库架构图的设计、客观分析课题任务涉及到的...
这份报告由洛阳理工学院的计算机科学与技术专业学生在2014年6月完成,旨在通过实践提升学生的分析、设计及文档编写能力。 报告的核心内容包括以下几个方面: 1. **需求分析**:首要任务是明确系统的需求。需求分析...
### 图书馆管理系统软件项目开发计划 #### 一、引言与背景 1. **编写目的**:为了明确项目目标,提升开发效率,加强团队沟通与合作,制定本项目开发计划。具体而言,该计划旨在确保项目的有序进行,增强与客户的...
任务分解图(Work Breakdown Structure,简称WBS)是项目管理中的一个重要工具,用于将复杂的项目分解为更小、更易管理的部分。在这个银行个人储蓄管理系统项目中,WBS被用来清晰地定义各个任务,确保所有工作都能...
### 图书馆管理组织系统软件项目开发计划方案 #### 一、引言 - **编写目的**:为了明确项目目标,提升工作效率,增强团队协作能力,确保项目按期完成,特编写此计划书。具体内容包括但不限于项目的背景介绍、定义...
- **项目组织者与产品生产者**: 嘉兴学院南湖学院网络工程N111班web程序设计综合训练第一小组全体成员 - **产品设计者**: 朱纬婧、于伟、孙志恒、黄刚、陈庆、肖静、王成 - **产品所有权**: 嘉兴学院南湖学院网络...
### 标准数据库设计说明书 #### 一、需求分析 在设计教务管理系统的数据库时,首先需要明确系统的主要目标和服务对象。此教务管理系统旨在为学校提供一套全面且高效的解决方案,以支持教学管理和学生选课流程。...
- 设计阶段:包括软件架构设计、界面设计等。 - 开发阶段:编码实现设计阶段的成果。 - 测试阶段:确保系统功能正确且稳定。 - 部署与培训:将系统部署到生产环境,并对用户进行培训。 - 维护阶段:提供持续的技术...
### 数据库设计说明实例知识点详解 #### 一、引言 **1.1 编写目的** 本《HUST学分制教务管理系统数据库设计说明书》的主要目的是为了明确HUST学分制教务管理系统的数据库设计方案,确保系统能够有效地支持各种...
【图书馆消防毕业设计任务书.pdf】是一份针对常州工程职业技术学院智能化楼宇专业学生的毕业设计任务,旨在培养学生在楼宇消防系统设计方面的专业知识和实践能力。该任务书详细列出了设计的内容、目标、进度安排以及...
- **综合运用知识**:课程设计旨在让学生通过实际项目,综合运用《数据库原理》课程中学到的知识,设计并开发一个小规模的数据库管理信息系统。 - **理论与实践结合**:通过具体的项目分析、设计与实施,帮助学生将...
【黄河交通学院本科毕业设计(论文)任务书】 本次毕业设计任务书涵盖了两个项目,分别是“基于B/S架构的数据结构课程设计选题系统”和“基于B/S架构的城市公交查询系统”。这两个项目均属于技术开发类,旨在利用现代...
【标题】"大连理工大学软件学院课程设计大作业"揭示了这是一份来自大连理工大学软件学院的高年级学生在课程设计阶段需要完成的重要任务。在这个阶段,学生们通常会被要求运用所学的理论知识解决实际问题,设计并实现...