我们必须分发和维护一个有点复杂的软件应用程序,其安装程序没有(也不期望)安装和configuration任何可能types的服务器上所需的每个部分。
到目前为止,我一直是负责安装的人员,我知道所有的许多陷阱和窍门,让安装顺利运行。 现在我们有更多的人想要在这个程序中训练,并且希望尽量减less我们在学习的时候把握他们的需要。
事情是,对于所有可能的情况,一个线性文件将是非常不理想的,因为有许多可能的path在过程中,取决于起点(Windows Server 2003 32/64位,Windows Server 2008 32/64位,SQL Server 2005 32/64位,Windows XP Pro SP2 / SP3,.NET 2.0 SP1 / SP2)以及每个组合中出现的所有可能的问题。
所以,我正在寻找一个devise这个场景的工具,希望能够根据一组input参数(机器的configuration)生成文档,或者甚至更好的是一个工具,它会根据什么来指导安装过程一直在发生,可以logging新的问题,并将其映射到已知的解决scheme。
我可以设想编写这样一个工具,但它看起来不是一个(非常)微不足道的问题。 这似乎是知识库和专家系统的交集。
所以你会怎么做? 假设失败,并具有巨大的线性文档和FAQ像KBs?
好的,我有两个意见。 首先,你想听到的人(虽然你可能不期望这一点)。
Gamebook引擎( http://freshmeat.net/projects/gamebook-engine )听起来可能是你想要的,因为你基本上是在谈论一个“创build你自己的冒险”types的过程。 如果您在Windows XP上安装,请参阅第45页,如果您攻击了德鲁伊。
第二条评论:你可能会用这种错误的方式去做。 你应该做的是为这个安装程序编写一个包装程序,该包装程序足够智能以了解您的平台,并且具有该平台所需的特定说明。 这可能是(也许)更多的工作,但是这听起来像是从长远来看可以节省每个人的时间。
线性安装的问题是缺乏幂等性,或者一次又一次地以相同的结果重复执行任务的能力,如果发生故障,它会在故障发生的地方进行恢复(在修复了故障之后,当然是: – ))。
如果手动安装在一半的时间内失败,则通常不得不将整个过程再次报废。 input人为因素,可能会发生灾难。
我没有Windows世界的答案,但Unix / Linux有两个优秀的configurationpipe理工具,为幂等性而devise:Chef和Puppet。 虽然线性安装程序可能是一些需要的东西,但是如果出现意外事件并且没有完全安装,那么这些工具将从停止的地方恢复。
我可能会去维基的方式:使用维基页面每configuration问题与其他维基页面的链接取决于答案。 通过安装的stream程将通过相应的链接来表示。 随着新问题出现,您可以创build新的维基页面。
然后,根据维基,您可能能够以一种很好的方式打印维基页面,并按照所需的顺序将它们组合到不同的服务器安装中。
为什么不创build一个可以在浏览器中用向导式导航打开的链接的便携式html页面,IE“如果你有Windows 2003服务器,则点击此链接”等。