持续一个月的
数据库实训,让我参与了软件工程化的开发过程。其中体会最深的便是我们这个实训网的几个之最:一.项目最大:项目大是因为我们这个事业起点网站涉及到用户众多-高校,企业,学生,老师,专家,第二个原因是网站的功能多-用户管理,网上实习,网上竞赛,毕业实习设计,项目管理,人才库管理,人才推荐,搜索 ... 项目大很容易造成系统范围的泛滥,在我们的开发初期,由于需求不太明确,功能实现没有重点,造成了需求范围的扩大,给项目开发进度造成了严重的滞后性。然后我们召开了会议讨论了这个问题,一致认同先把项目的基本功能实现,将网站的基本架构搭建起来,最后再在这个基础上继续增加我们网站的其他功能。因此在这个过程中,我深刻体会到了软件工程初期
阶段的需求分析以及概要设计的重要性,这两个文档是指导我们后期开发的最重要的依据。 二.数据库表最多:如此庞大的系统,就需要庞大的数据库来支持,所以项目大的直接后果就是我们的数据库表特别多,而且表与表之间的依赖关系也复杂,实体类之间的关系众多,设计起来有一定的难度。数据库的另外一个问题是-数据表的属性,数据表属性的设计完全是依赖于我们刚开始做的需求分析文档,如果需求分析不完整的话,就会造成数据库表属性的缺失,从用户的角度看,就会觉得你的系统提供的数据不够全面,信息量小。 三.开发团队最大:我们团队一共有十四个人,这个对于我们的项目经理来说,是一个相当严峻的问题,毕竟十四个人的团队相当于其他几个小组加起来的人数总和,管理起来有相当大的难度。对于我们这些小组成员来说,由于沟通渠道太多,造成了我们项目中遇到问题,不知道去跟哪个小组成员沟通。为了解决这个问题,我们在团队中又选出了三个小组长,小组成员遇到问题,先去咨询小组长,然后小组长提供反馈信息。 四.项目各个
模块间藕合度高:网站涉及的各个功能模块之间的联系紧密,模块之间的接口设计的好坏是项目最终集成成功与否的最重要因素。用户管理这一个部分要为每个模块提供接口,主要是用户的编号以及用户的类型等。每个页面之间的链接也是其中重要的模块接口。这个问题由于我们前期做好了充分的沟通以及按照概要设计中的接口说明去设计自己的模块,所以后期的模块整合没有遇到什么太大的不兼容性等问题。 接下来就谈谈我这一个月中的工作:需求分析阶段:需求分析阶段我完成了网上竞赛模块的需求分析,其中遇到的主要问题是阅读材料后发现网上实习,网上竞赛,毕业设计指导这几个模块的功能是类似的,提取需求分析后不够明确,经过几次跟汤老师的交流后,确定了这几个模块之间的具体差别,网上竞赛模块的基本需求也大致确定了,网上竞赛模块的基本功能就是学生通过网站报名参加竞赛,企业审核通过后,专家对作品进行评分,排名。 概要设计阶段:在需求分析的基础上,对网上竞赛模块进行了比较具体的概要设计,流程图(IPO图以及用例图);这个阶段的主要难点是对网上竞赛业务流程的描述,如何实现学生报名,企业发布,专家评审的步骤 *** 作,与及跟其他模块对该模块的限制。 数据库设计阶段:我负责整合初步数据库设计说明书,分配组员按照各自的功能模块的具体需求设计自己模块需要的数据表,然后对这些数据表进行整合。在这个过程中遇到的问题就是数据库实在是太大了,最后下来一共有30多张表,表与表之间的关系复杂,关联性大,需要设置的外键较多,很难将所有的属性字段给提取出来,属性的类型设置也是一个问题,采用数值型还是采用字符串性在数据库设计中尤为重要,因为在后台搜索方面,数值型比较快捷,而在数据显示方面,字符串型又有直接读出不用转换的好处。每个表的主键我们采用了用实体的编号去标记它,因为这样实体间关联起来会更加简单。数据库的设计关键是要对整个项目的整体的把握,并且要细化对每个实体类的具体属性要求。 详细设计阶段:我觉得是最重要的一个方面,一个完整的详细设计说明应该可以帮助程序员完成具体的实现,程序员可以不用考虑模块之间的耦合问题,只需要将单一的功能按照逻辑顺序编写出来就可以了。网站整体构架搭好了,我们就可以在里面填充自己的功能了。但是因为时间太仓促了,我们这个阶段也就缩水了,带来后面的问题就是后期代码编写的时候比较混乱,函数接口较难统,界面风格多样化。这个阶段,我的主要工作是跟队友一起设计出了网上竞赛模块的学生,企业,管理员,高校以及专家的界面。 编码阶段:我们是用ASP.net开发的,主要任务就是从工具中选出你想要的控件,然后在控件响应函数中填充代码,完成相应的事件响应。这里遇到的最大问题是页面的排版问题,因为自己是第一次开发网站,造成了自己设计的界面风格单调,不太美观,现在就尽量做到页面的整齐。这个阶段主要做的就是:写代码→编译→调试→写代码。 这一个月中我学到了很多东西,技术方面就是学会了用ASP.Net编写网站,最重要的是让我经历了软件工程化的所有阶段,让我对整个软件工程有了感性的认识,而且将大学三年所学到的知识进行了一次系统的串联,更重要的是学会了如何跟项目团队中的成员沟通问题,这是一个宝贵的实践经验。数据库开发不仅仅是写存储过程,函数,触发器。包括很多内容。
1.掌握数据库技术的基本概念、原理、方法和技术;
2.能够使用SQL语言实现数据库 *** 作;
3.具备数据库系统安装、配置及数据库管理与维护的基本技能;
4.掌握数据库管理与维护的基本方法;
5.掌握数据库性能优化的基本方法;
6.了解数据库应用系统的生命周期及其设计、开发过程;
7.熟悉常用的数据库管理和开发工具,具备用指定的工具管理和开发简单数据库应用系统的能力;
8.了解数据库技术的最新发展。
一、数据库应用系统分析及规划
1.软件工程与软件生命周期。
2.数据库系统生命周期。
3.数据库开发方法与工具。
4.数据库应用体系结构。
5.数据库应用接口。
二、数据库设计及实现
1.概念设计。
2.逻辑设计。
3.物理设计。
4.数据库对象实现及 *** 作。
三、数据库存储技术
1.存储与文件结构。
2. 索引技术。
四、并发控制技术
1.事务管理。
2.并发控制技术。
3.死锁处理。
五、数据库管理与维护
1、数据完整性。
2、数据库安全性。
3、数据库可靠性。
4、监控分析。
5、参数调整。
6、查询优化。
7、空间管理。
六、数据库技术的发展与新技术
1、分布式数据库。
2、对象数据库。
3、并行数据库。
4、数据仓库与数据挖掘。
A、需求分析阶段:综合各个用户的应用需求。
B、在概念设计阶段:用E-R图来描述。
C、在逻辑设计阶段:将E-R图转换成具体的数据库产品支持的数据模型,如关系模型,形成数据库逻辑模式。然后根据用户处理的要求,安全性的考虑,在基本表的基础上再建立必要的视图(VIEW)形成数据的外模式。
D、在物理设计阶段:根据DBMS特点和处理的需要,进行物理存储安排,设计索引,形成数据库内模式。
一展开就够论文字数了
评论列表(0条)