关于.net:Smart Client Software Factory的经验

关于.net:Smart Client Software Factory的经验

Experiences of the Smart Client Software Factory

是否有人从Microsoft模式和实践小组的Smart Client Software Factory构建过"现实世界"应用程序方面有过任何经验? 我正在寻找有关掌握难度的建议,它是否减少了您的上市时间以及其他任何陷阱。


我们将SCSF用于具有大约10个开发人员的真实应用程序中。设置和开发使用模式的过程非常艰巨,但是一旦建立,向项目介绍新开发人员就非常容易。使用CAB和SCSF对我们的项目非常有好处,特别是使每个开发人员都能快速提高工作效率。

SCSF的一个缺点是它提供了许多可能无法使用的功能(我们可能只使用了60%的功能)。

我还在将SCSF用于新项目,并正在考虑将其重构为PRISM。 PRISM可以消除未使用的功能。如果您使用WPF,建议您调查PRISM。


我没有个人经验,因此请喜欢某人的建议而不是我的建议。我知道有两个使用过该工厂的同事,并且他们的做法相同:

  • 设置和学习很伤人
  • 最终值得
  • 因此,如果您有空闲的时间,我会去争取的。


    我们在2006年与8个(4个UI + 4个WCF服务)开发人员一起开发了SCSF应用程序(招募中),目前有350个用户在一个楼层中使用它。

    一开始,学习的东西太多了,教程也越来越少了。非常感谢Matias Wolosky和Eugenio Pace,他们在模式和实践/代码复合方面做出了很多贡献。我们得分的关键领域是:

    1)明确区分用户界面和业务
    2)开发人员的重点角色
    3)基于模块的按需应用结构
    4)通过clickonce轻松部署
    5)就绪的模式和助手,使开发人员的生活更轻松,更结构化。

    随着时间的推移,它在用户中赢得了很多尊重:

    1)RBAC-基于角色的访问控制
    2)功能的快速转变,因为我们将基础结构服务/业务服务/ UI帮助器服务巧妙地分开,并且整个应用程序都是基于模块的(CAB的最佳组成部分)。
    3)现在我们正在考虑使用WPF添加更多爵士元素。


    我们将SCSF用于具有6个开发人员的真实复合应用程序中;整个团队的规模为14人,包括BA,PM,测试人员等。就像Torrey所说的那样,这对于没有OO或设计模式经验的3个开发人员来说是一个陡峭的学习曲线。我自己和另外两个人已经成为面向对象的纯粹主义者多年了。因此,我们仅通过识别模式就将CAB像鸭子一样浇了水。在项目进行的一部分过程中,我们组织了为期一周的面向对象原理培训课程,然后是设计模式。一旦其他三个都完成了此过程,生产率立即开始提高。

    我的建议,请确保您的团队具有扎实的OO和设计模式知识。当他们看到可以识别的图案时,曲线就会下降。


    我们使用Web服务软件工厂,我们真的很喜欢它,因为它使开发人员更容易遵循标准和适当的模式。对于我们来说,学习曲线还不错-每个开发人员最多几个小时。

    除此之外,没有其他优点和缺点值得一提。


    推荐阅读