记AD域控中间件接口程序开发
一、我喜欢需求
近日,我和陶小渔联手,满足了一个在OA流程中,需要为用户在AD域控上自动绑定工作站的需求。该项开发内容包含泛微OA的开发和AD域控中间件的开发,在满足开发需求的过程中,我也掌握了AD域控中间件接口程序的开发技术,我想小渔也同样掌握了泛微OA开发的内容。
对于开发需求,只要有求于我,我一直都很乐意的接受。我想,这些开发需求其实都是公司的业务活动,把这些需求变成上线的功能,会让业务处理更加快捷,提升大家的工作效率;一分耕耘一分收获,开发人员也可以通过开发过程从底层去理解公司的业务活动;这是双赢。
二、信息系统开发五步
需求,有2个特性:1、源头,它像陀螺的尖,从这一个点上,延申实现出整个陀螺(功能设计,开发,测试,部署);2、善变,经常我们还在需求的实现阶段,需求自己就变化了,业务人员在原来需求的基础上又提出了新的需求,或者在需求的实现阶段,我们发现不合理的需要会把实现引向无法逾越的技术难关时,我们也会反过去调整需求使它更加合理。 (近日 我去买一张火车票,我发现12306推出了排队买票功能,而不用傻傻的去抢票了,其实这个排队买票需求在2011年第一次网站上线时,就应该替代那个抢票的需求)
从需求的一个点,转到第二环节,是功能设计。功能设计人员要求既了解需求业务,也了解后续的开发。我们要求有《需求说明书》文档来固化意识形态内容并说明需求,OA泛微的基于JAVA开发是小渔的强项,所有我让小渔来完成后续OA这块的《功能设计说明书》。在他写功能设计的时候,他告诉我希望使用WebService接口的方式来调用AD中间件。 我做过基于SOCKET的网络开发,但WS没有做过,甚至AD上的开发,我也从未做过。 不过我能非常熟练的用C# 在.net平台上作开发,我估计难度不大。不久我就实现并掌握了这块内容,也拿出了我的《功能设计说明书》,并写了一个AD开发说明系列放在我的博客上,表示我吃掉了这一领域的开发。
三、我们的初次合作
我自认为我了解小渔。他的强项是基于JAVA的服务器端的开发,我看过他开发的系统,我很高兴有他这样一个很强的队友;我的强项是WINDOWS平台的开发,开发工具从VC++到MFC再到C#,紧跟技术潮流,不断升级开发语言好处是开发效率的大幅提升。 这次需求要求打通OA到AD域服务器的接口开发,我把我们2人分别放在泛微OA和.net环境中再合适不过了。开发进展很快,从无到有,我们最终实现通过OA接口调用AD中间件去控制AD中的元素。
四、错误与安全
功能上线了一段时间,小崔来找我,问我绑定邮箱怎么没有实现,我感到很奇怪,前面开发时好像没有这个需求呢?把《需求说明书》打开仔细一看,绑定邮箱需求白字黑字写得很清楚。我和小渔居然都看漏了。不过我们已经很有经验了,几天功夫,绑定邮箱功能实现,最终通过小崔测试后上线运行。回想起来,可能时因为我们都太关注未作过的技术开发怎么去实现,而忽略了对需求说明书全面的理解。除了实现基本的需求功能,我还为AD中间件添加了日志记录,接口IP限制等安全功能,这些没有列在需求文档中,但也是程序设计的必要内容。
五、各施其职加有效的协同就会成功
这一次合作中,我们分几块开展工作,以《需求说明书》《功能设计说明书》《程序开发说明书》《测试报告》《部署文档》为有效的支撑,多次交流实现阶段的进度和难点,最后成功的实现了需求。在合作伊始,我就很期待最后的结果,我们一项项的完成开发过程,最终功能的顺利上线是团队努力的结果。
本文分享了在OA流程中自动绑定工作站到AD域控的实际开发经验,包括泛微OA和AD域控中间件的开发过程,以及如何解决开发过程中遇到的问题。
326

被折叠的 条评论
为什么被折叠?



