逆向软件设计和开发是一个程序员在软件开发中必备的能力,只有具备了逆向的软件开发能力,才可以改进别人的已经写好的软件,并不断完善。
本次课程设计我逆向开发的软件是一个使用c++编写的员工信息管理系统,原作者是21计算4班的彭星辰,学号2152426,现在也是我在软工2班的同学。
运行截图
优点评估:该员工管理系统已经包含了必要的功能,操作简单,运行效率高,界面设计简洁明了。
首先初次运行,该系统具备的功能已经很完备了,看似在功能上很难再有什么改进,但是实际上原来的系统遗漏了非常重要的一点。
在学习完软件工程导论以及软件需求工程后,我们知道,软件是给用户使用的,软件在设计的时候都有一个目标用户群体,很显然,这个管理系统的目标用户是公司的人事或者财务管理人员,既然是给特定用户使用的信息系统并且涉及商用,那么系统必须要有登录系统并且要有保密性。显然,现在这个直接就能进去并且什么人都能看到所有信息的信息系统是不能满足用户的需求。
改进前的功能模块图
经过对功能的细分和补充,系统在加入针对不同管理员的登录功能以后,对也补充了在财务方面的相关功能。
改进后的功能模块图,将用户分为两类,两类管理员可以在系统里面进行不同的系统操作,互不干涉。
改进后的登录界面
原软件部分代码
此外,观察文件代码,我发现在原作者在定义类的参数时,习惯使用public进行定义,虽然这么做对于函数以及参数的调用非常方便,但是如果系统投入实际使用,将会存在安全隐患。所以在对软件进行修改的时候,要适当的对部分重要的,需要隐藏的信息在定义时,采用private或者protect的方法。
经过以上改进后的的软件优点:不同管理员登录可以进行不同的操作,互不干涉;员工信息更加安全
2152415肖佳伟 2023年3月4日
标签:逆向,软件设计,系统,员工,改进,软件,信息管理系统 From: https://www.cnblogs.com/dibur03/p/17178530.html