导航

社团管理系统项目总结

Posted on 2019-12-16 21:06  31701062马钰萍  阅读(1079)  评论(1编辑  收藏  举报

                社团管理系统项目总结

一、项目链接

需求分析:https://www.cnblogs.com/liyi2019/p/11797566.html

UML图:https://www.cnblogs.com/liyi2019/p/11973497.html

总体设计:https://www.cnblogs.com/liyi2019/p/11885770.html

Github代码:https://github.com/li989

 

二、 我的工作

需求分析

  做社团管理系统这个项目,最开始的工作:我跟着我们小组组员一起进行需求分析,由总到分,仔细分析讨论了制作一个社团管理系统用户的角色、不同角色的用户拥有哪些权限、整个系统需要由哪些模块组成,以及各个模块分别包含了哪些功能。

在这一部分的工作中,我主要负责绘制数据流图来分析各个角色的用户有哪些权限、细化系统的功能并进行可行性分析。

 

总体设计

         总体设计阶段主要借助UML图来理清楚整个系统具体要实现的功能,在类图、顺序图、用例图这三部分的图中,我主要负责顺序图的绘制,主要分为社长、管理员、普通用户这三个角色,分析其各自拥有的权限,社团系统功能流程的分析。

顺序图展示(部分):

 

 

此外,我构想了社团管理系统的框架,并用墨刀工具画出系统的主要页面。

部分页面展示

       

 

 

 

界面原型设计

         在这个阶段,我们使用Android studio 工具来制作app。我主要负责用户个人中心的模块,主要包括个人中心主页面的设计、用户个人信息的查看,用户相关信息的修改页面、以及查看用户加入的社团、系统的维护信息等。

部分页面展示:

      

 

 

 ……

         此外,我还协助了管理员界面的完成。

管理员界面奖项列表的制作、参与一部分奖项数据的有关连接

部分页面展示

      

 

 

项目的总结

         在最后的阶段,我们试运行系统,查漏补缺。我还负责数据库后端测试数据的录入。

 

三、 项目总结

  实话讲,在这次《软件工程》课程上,是我第一次尝试开发取去做一个这样的系统,第一次和我们组内另外5个成员进行合作开发系统,第一次学习使用墨刀去绘制整个系统的页面,以及第一次尝试使用android studio 工具进行app前端页面的设计。

制作这样一个社团管理系统,包含了我在开发这条路上这么多的第一次,就算不管最后制作出来的系统是什么样子,我想,经历过这样的一个过程也可以说是一次收获。

在这次开发项目的实践中,我真正了解了一个项目的开发需要经历的过程、以及团队合作的重要性。在开发app的过程中,第一次接触了android studio ,虽然当熟悉此软件的使用之后,该软件还是很方便使用的。但在开发的前期还是遇到了一定程度的困难。我想,任何新的开发工具的使用也是一样,需要首先学习该工具的基础功能、熟悉该工具的使用,并且要早做准备,这样子才不会延误后期开发的进程。

 

项目开发的过程:

在项目的初期——需求分析、总体设计的阶段,我们感到时间还是很充裕的,到后来的界面原型设计以及项目总结阶段,我们明显感到时间不够用了。在这时,终于明白了老师前期说“做社团管理系统,我们一定要‘先紧后松’,保证项目按期完成,”的这句话的意思了。

因为是第一次使用android studio 工具在设计页面上并没有很顺利,需要考虑页面总体的布局、页面之间的连接,以及最后连接后端的可行性与便捷性等。

在进行页面设计时,我以为我负责的“个人中心”模块差不多好了的时候,组长他们查看之后才发现,页面在设计的过程中很严重的一点就是没有考虑与后端数据库中数据的连接问题,一经提点,我也恍然大悟。页面的设计不仅仅需要考虑页面呈现的效果,还需要从系统的总体出发考虑问题。

此外,也是在后期真正开始制作页面我才明白了前期花费这么长时间进行需求分析和总体设计的意义是什么。一个系统一定要首先考虑核心的、必要的功能模块,仔细分析。并且设计的功能要符合一定的逻辑性、整个功能的流程需要有可行性,这样在后期进行app开发时才会顺利进行。

在项目的最后阶段,我负责系统后端数据库中数据的录入,开始的时候我觉得这是一项十分枯燥且没有技术难度的任务。后来,当我真正开始想数据、录入数据时,我才发现系统后端的数据需要考虑相互之间的关联性,比如说场地数据的录入需要考虑系统中已经包含了哪些社团而这些社团会举办哪些功能。因此,录入数据还是需要一定的逻辑思考能力。

 

团队合作:

这是我第一次进行6个人的团队合作,我感觉在团队合作中团队的凝聚力是很重要的。一个团队必定存在能力强的成员、以及能力并不是那么强的成员,因此在分工时需要充分考虑团队成员的实力。分好工之后,每个团队成员都负责一个模块,而每个模块的完成时间一定要安排好,并且需要留足修改的时间。否则,时间到了最后,系统的模块还未被完成,这样就对整个系统的完整度造成了影响。开发一个系统需要由总到分,系统的核心功能模块、总体框架一定要首先设计好。

 

四、对课程的意见和建议

  《软件工程》课程,老师采用理论和实践结合的方式,以团队合作开发一个系统这样的方式,来带领我们了解软件实际开发的工程、让我们体会到了团队合作的重要性。

可以说老师上课的形式充分考虑了我们的水平,以项目的方式带我们了解开发的过程,让我们探索无限的可能性!

我主要就我们小组合作开发社团管理系统遇到的一些问题为课程提供一点建议。

先不讨论需求分析和总体设计,在项目实际开发的过程中,主要包括前端页面编写、后端函数的编写、以及前后端的连接这三个部分。小组之间每个成员之间的能力有差距这是客观存在的,但在进行实际开发的过程中,一定要考虑哪些成员擅长什么,擅长什么就负责哪一部分的开发,使用自己擅长的开发工具。因为在我们开发系统过程中使用的是android studio工具,了解该工具使用之后,感觉页面开发还是很方便的。但对于我们从来没有了解过该工具的使用的成员实际开发页面还是存在困难的。

所以,在进行系统设计的初期,组长就要定好用什么工具进行开发,要综合考虑团队成员的实力。

核心页面设计人员

此外,在我们团队中每个组员负责一部分页面的开发,这样在后期连接时就会遇到很大的困难。因此,我建议在项目开发的初期,组长就要定好一个核心的页面开发人员负责系统页面框架的编写、核心功能模块的设计,然后再把工作分配给小组的每一个成员。

组长考核制

在开发页面的过程中,我们小组一般是以一个星期为周期提交页面设计的作业,这样的时间规定还是长了些,在后期若是规定的页面没有被完成、完成得不够理想,这样会影响整个系统的开发进程。所以我建议,在开发阶段,可以制定“组长考核制”。组长在一个星期中可以定好两次检查的时间,可以是星期三、星期天,到了检查时间组长可以对每个成员的开发效果进行检查评价,这样做的目的,主要是为了保证整个团队项目的顺利进行。倘若组长发现那个组员开发进程缓慢、有延期的危险就可以早做准备。