想做好定制软件开发工作,必须对定制软件开发流程管理必须做科学,每一步定位清晰,目标明确,下面对定制软件开发工作流进行拆解分析:
需求分析
资深软件系统分析师对企业所面临的管理问题进行分析
需求初步确认
软件系统分析师初步确认企业需求,作为合同确认的依据
系统调研
软件系统分析师对企业的初步需求进行详细调研,确定系统界面的设计和运行的流程
需求说明书
将软件系统分析师对企业详细调研文稿化,经双方讨论确认后,开始系统界面设计
界面设计
专业软件开发工程师及美工设计师完成系统界面设计,经用户确认,开始软件开发
开发及测试
专业软件开发工程师和测试工程师完成系统软件开发和测试,强大测试力量和一对一软件测试体系,确保系统软件质量
使用培训
专业培训讲师对企业进行软件基础知识和系统软件运作流程全面培训
初始化试运行
专业软件工程师辅导用户使用系统,协助用户进行初始化工作;系统初始化完毕,进行试运行阶段,测试系统功能的完善性和全面性
正式切换 双方共同测评系统,确保系统能全面符合用户需求说明书定义的所有功能,正式切换系统
从项目推动过程来讲,可以分为:
1、 项目启动阶段
这一阶段主要是为实施做好准备,由项目指导委员会召开项目动员大会,确定项目组成员,确定项目的计划和目标,建立实施所必须的系统环境。
2、调研分析阶段
项目实施小组在开始系统实施前,先对公司现有的应用系统进行详细调研和分析,根据企业的具体情况和信息化管理的特点确定目标业务流程。对各级用户进行需求调研。最终以双方确认的目标作为下一步具体实施的业务蓝图,并结合软件产品和技术开发实际情况,规划设计详细的解决方案,并进行确认,作为设计开发的基础。
3、 系统开发阶段
根据调研分析的结果,进行系统设计、编码、测试,完成软件的开发。
4、 项目实施阶段
在系统开发完成之后,软件实施进入实质性阶段。项目实施小组要在项目指导委员会的全力支持和相关部门、人员的协作配合下完成大量的具体工作,比如数据分析与导入、系统设置、人员培训、规章制度建立、实施文件归档、客户化修改等。软件的使用者尤其是关键用户必须在这段时间内掌握相关功能模块的操作和应用,以便在系统正式运行后能够独立地使用软件。
5、 试运行阶段
在经过项目实施阶段后,各个模块及整个系统需要试运行一段时间,以确信软件能够在企业中运行良好,并达到预期效果。同时,根据试运行阶段中发现的问题进行系统调整。
6、 系统切换/正式运行
在试运行阶段后,确信软件可以正式开始运行后,需要进行系统切换,企业正式切换到新的业务流程,并在软件上进行企业日常业务处理。至此,软件的实施已经全部完成,进入后期维护阶段。
架构设计
设计的中心思想
1、 以业务逻辑建模,而不是以数据库为中心建立系统模型
对信息系统的设计,应紧紧专注于将企业生产的系统抽象转化为信息系统的模型,能够准确、完整、清晰地了解业务逻辑和业务流程,并且对业务的变化作预先考虑,是项目成功的关键。开发人员容易出现的问题是以关系数据库设计或数据控件的设计代替系统建模,造成的问题是以数据为中心,其结果是系统与数据紧密耦合,难以实现业务逻辑的变化和扩展。
2、 定制软件开发是否满足了用户的期望
为了实现这个目标,完善准确的需求收集和需求分析,是项目成功设计的前提。否则无论这个软件再先进,从用户角度看,也是失败的软件。因此,在设计前期,对需求分析所必须的资源和时间投入,必须有足够的重视和充分的计划。
3、 必须要考虑非软件的因素
任何一个项目都是为了用户实现其业务目的,软件工程也不例外。同时,企业用户作为一个实体,其决策收到其行业特点、用户、市场、上级主管部门、决策人员的个性、企业的定位、企业的现状、长远发展规划、历史因素等综合情况的影响,因此,在架构设计上,应综合考虑这些因素。
设计原则
4、 在可能的情况下,按照“统一规划、统一架构、统一标准”的原则。
5、 以良好的设计模式来保证系统的先进性、合理性和应用扩展性。
6、 系统的模块之间应用和交互,尽可能采用松耦合,以实现系统的灵活性和实用性,延长系统的生命周期,保护用户的投资。
7、 采用以SOA作为体系架构的核心,以保证系统级别和部件级别重复使用和业务重组,便于用户长远的。
8、 系统的开放性要求能软件实现三个无关性:通讯组件的网络及协议无关性,数据来源无关性和用户对流程无关性。
9、 采用有效的需求分析手段,力图实现准确到位的需求分析,
为良好的人机界面设计提供坚实的基础。高度重视用户界面的设计,作到符合不同用户的实际经验和使用习惯,减少对信息系统的畏惧感,提高用户使用信息系统的信心,真正使系统成为提高生产管理效率的有效工具。
10、尽可能采用经过实际运行检验的成熟模块,
从而节省开发资源和缩短开发周期,确保项目按时交付使用。
权限是一个公司信息系统的起点。我从入职以来就一直想要对公司后台的权限系统进行一个梳理(其实是老板要求的),苦于对后台和公司业务还不够了解,所以想法一直没能成型。终于,经过几个月断断续续的琢磨,我趁最近需求数量不多的时候,把权限的调整方案梳理了出来。
这次梳理公司后台的系统,我在原有权限系统的基础上引入了 公司组织架构,形成了 动态权限管理模式,使得公司的权限管理更加合理化。目前已经把方案提交给开发进行审核,希望可以最终落实。这里就先向大家汇报一下这几个月以来梳理权限的成果,给同样有权限体系设计问题的朋友们一点参考。
要设计权限,首先要对权限 已有的成熟方案有一定认识,其次要 对业务有深入的分析,才可以在业务的基础上有针对性的设计权限模型。
关于权限成熟方案,我查了很多资料,主要了解了一些关于 RBAC(Role-Based Access Control)权限模型的知识。加上在前司对SharePoint的权限分配方案有一定的了解,权限的知识基本就已经足够了(不够也没有更多了,找到一篇从产品的角度解释RBAC的文章,值得一读:请点击查看)
关于业务需求分析方面,我对公司后台的权限系统做了梳理。
因为公司对数据的保密要求很高,所以后台有大量查看项目、查看投资人的细致权限设置,但是 缺乏一致的管理方法,导致经常出现有需求无权限,或调动后权限没有及时清除的问题。公司后台主要是按照RBAC设置了权限体系,另外还根据项目服务小组的机制为每个项目单独设置了权限。后台RBAC的权限角色中,有部门角色、功能角色、临时团队角色等等,相对比较混乱。
现在这套系统面对一些问题:
权限角色太多,分类混乱。有大量临时建立弃而不用的分组;如果员工调换部门,需要逐个删除他已有的权限,再逐个赋予新部门的权限;如果部门领导更换,需要对部门内员工的所有成员的审批对象都进行调整。
为了解决上述问题,我尝试将公司的 组织结构信息引入权限管理的系统。
尽量以部门为单位分配权限,权限角色过多混乱的情况;出现员工部门调动或领导更换,会根据其部门更改自动重新分配权限;对无法按照部门分配的功能采取原有的权限分配模式,通过给不同的员工分配不同的角色实现,保证灵活性。
从上述的思路出发,我定义了新的权限管理需求。新的权限管理分为 部门权限制度和 非部门权限制度两种:
1、部门权限制度
部门权限分组默认按照组织结构图。
按照小组设置部门,部门分管理者权限和默认权限两种,默认权限为部门管理权限的子集。
若组织架构中的小组设置了管理者,则管理者默认拥有管理者权限。除管理者外,所有人加入小组后默认拥有默认权限。
(2)管理者权限包括
部门权限维护类:新建子权限组、默认权限维护、打破权限集成等权限(可以分配给部门领导使用,也可以掌握在超管手中统一分配) 审批类:所有报销、请假和购票的申请(若小组没有设置管理者,则小组成员所有审批事宜由上级层级中的管理者负责 ) 职能类:单个部门的全部权限
(2)权限维护类权限详细介绍
子权限组:部门内可以根据员工设置子权限组,根据子权限组,分配部门权限;默认权限维护:增删进入部门所默认拥有的权限;打破权限继承:使某位员工失去默认拥有的权限,为其单独分配权限。
2、非部门权限制度
组织方法参照原有RBAC权限管理;
超管可以为单个员工或小组开启非部门权限。
可以为非部门权限设置有效时间段;若员工调转部门,则所有非部门权限默认失效,需要超管审批以后方可重新生效。
这套规则可以基本解决原来的权限与部门没有关联的问题,以及权限分配混乱难以管理的问题。这仅仅只是产品从业务角度梳理出来的需求,具体实现还需要和开发商量以后解决。而且要真正能够落实实现还需要很漫长的过程。
这次设计方案给我最大的体会就是,设计复杂的功能最有效的手段还是 从具体是使用场景出发,使用场景决定业务逻辑,业务逻辑决定功能逻辑。我在最初设计的时候执着于寻找成熟的权限管理模式套用,后来发现这样生搬硬套不能提升后台权限分配的效率。在过后的几个月工作中,我接触到了不少分配权限的实际问题,比如不知道分权限给谁,或者分配出去的问题没有办法管理的问题。这些问题直接启发我引入了公司组织架构的概念,也便有了这套方案。
所以, 产品的设计与实现都服务于使用场景,才是真正好的产品,这一点对业务为导向的后台产品至关重要。与大家分享,也请大家多提意见。
了解更多
一款对的直销软件对直销企业的影响很大,可分为以下几点:
1、降低成本
2、提升业绩
3、提高企业效益
4、迅速扩张,占领市场份额
而如果企业选择了一款不适合自己业务的直销软件呢?那不但不能获得上述的效果,还会为后续更换系统带来很多麻烦。要知道不同的系统所采用的制度、算法结构是不一样的,一旦更换系统,数据就需要重新导入新系统,那就需要考虑到重新结算、数据校正等问题,如果这些问题没有很好的方案来解决,那直销企业将极有可能会面临数据崩溃的危险。
由此可见,直销软件选择的重要性,企业不同的业务适合的直销软件也不同。
随着直销软件的需求越来越大,直销软件公司也如雨后春笋一般,纷纷成立,而这些直销软件公司质量也参差不齐,好的直销软件跟质量低劣的直销软件并存。这让一些需要直销软件的直销企业产生了选择困难,不知道该选择哪家直销软件开发公司制作定制适合自己企业的软件。
而这个时候,选择一个好的直销软件开发公司就十分重要。
深圳市南思特科技有限公司是一间专业从事软件研发、网络建设与电子商务运营、移动应用开发、信息系统集成服务的高新技术企业, 主要的产品和项目有:成长宝·家校通、爱购微商城、知识管理系统(KM)、工程项目管理系统(EPM)、员工自助平台(e-HR)、电子商务系统(O2O/B2B2C)、物业管理系统、会员管理系统、企业网站建设。
南思特具有优秀的技术实力:在大型数据库、.net、app、微信开发应用等方面拥有领先的技术;在Web应用程序、办公自动化、商业智能、电子商务、电子政务、企业资源管理、商业网站等方面具有丰富的开发实施经验。
软件定制开发,通俗来讲,就是软件开发公司针对公司个性化和自身需求开发的软件,它是区别于通用性版本的。企业有特别的需求和功能,那么,沟通好实际情况后,技术开发公司会进行app或者H5或者网站等等开发任务。 通常企业和创始人有可能会碰到模板化,通用性等概念,那么,她究竟和定制开发有何不同呢?
软件定制开发与传统模板化软件的区别:
1、凸显公司文化和个人风格,你可以和别人家的网站、app等不同,不会撞车!想怎样任性就怎样任性!举例来说,官网可以600RMB,也可以是6W。当然,600的那种就风格固定,一些想改动的地方可能因为固定不能改!颜色,图片什么的就不要多想啦!还有别的,官网设计是否有利于SEO,这些模板化软件就有可能不能兼顾部分功能!还有图像设计,在公司产品和形象展示上就会有很多差异!
2、使用比较有针对性,培训和使用比较方便,一些大型公司和细分行业的软件,比如说ERP软件生产流程和工序有别与通用流程,如果使用通用软件,那么在使用,培训上会有较大的不方便!只有结合其生产实际才能比较节省成本。
3、安全性方面,定制开发性软件的源码和服务器会掌握在自己手上,客户数据和企业敏感信息自己掌控可以提高保密性。不用担心自己的商业机密被开发公司看到,这些,在考虑企业品牌和形象上要考虑!有的企业产品是全球化,这样他就需要自己掌握软件源码和服务器,而使用模板化软件这种需求就不会满足!
4、可以避免企业业务流程固化,因为模板化(通用性)软件,代码逻辑就是固定的,只能人去适应软件。根据企业自身实际情况,在预算范围内,选择一家技术过硬,公司实力不错的软件开发公司就十分重要。
了解更多
用户调研前的思考:
PM设计前,调研用户尤其重要,包含如下方面:
用户定位(什么样的人会使用我们的产品)、
客户定位(什么样的人会购买我们的产品或服务)、
用户分类(将拥有共同的特征或行为的用户归类,对有价值的用户进行分析)、用户特点(人口统计信息、性格、爱好、需求特征),
用户行为(操作行为的时间、地点、频率、习惯、消费、感受等)、
用户需求(想要的功能、服务、物品、消费等)