Great start but I have few questions

Topics: Web Client Software Factory
Sep 26, 2006 at 10:44 PM
It's great that after all you've done in smart client and mobile space now you turn your attention to web. I really appreciate that.

Today I have downloaded and browsed through the latest release. I have few questions.

I see that you are trying to achieve similar model to CAB. However I haven't seen yet any mention of WorkItems or any similar concept. Are you going to abandon this?

There are several reasons to have WIs. One is to provide scope for given user scenario. For me this means mostly separating all state belonging to Views participating in certain use case from all others. From current implementation I've seen that you put state directly to Page.Session. Are you going to change this?

Second reason is modularity. From current implementation I see you only accept Views as being Pages. But what about UserControls? In CAB WIs provide easy way to split the page content into several Views and yet allow them to easily work together via common WorkItem. This goes back to hierarchical MVC I think. It also allowed to reuse same Views in different context.

Next question is how you are going to address passing values between pages? For now I've only seen some navigation implemented as ActionCoordinator. Are you going to use Session state or rather maybe to use properties on Page.PreviousPage?

Last question is whether you are going to support a service layer like in CAB, so we will have a single place to request for common services and construct other objects? This of course ties to implementation of IoC container (basically, why you don't use ObjectBuilder)?

Btw. after reading the documentation I still don't understand the purpose of controller in your model. Maybe it's only the name because It can be confusing with WorkItemControllers used in CAB. In CAB I would perhaps call such component a ServiceAgent.

Best Regards,

Sep 27, 2006 at 12:16 AM
Hi Szymon,

Thanks for your post. We certainly appreciate you embracing CAB and we do hope to achieve similar usefulness for the Web. Just to be clear, our goal is not to achieve a similar model to CAB (we confess some temptation though). Instead, our goal is to provide guidance around the most pressing concerns for Web client developers, and do so in the context of a factory.

That being said, we (like you) strongly suspect that this factory will end up with many similar concepts and possibly implementation elements (there is a lot of team overlap with the Smart Client Software Factory team.) But we'll introduce the elements as we need them to address more various application scenarios.

We do know that scope for user scenarios and state will become important, and future scenarios will require us to do something there (will it be a "WorkItem?"). We also plan to require modularity within a Web page and page flow support.

Similarly we haven't yet needed ObjectBuilder and therefore haven't added it. But the omission to date is not a sign that we won't.

Several upcoming scenarios will force us to address many of these questions in the next few weeks of drops - stay tuned! It's great to have your participation and we look forward to your feedback.

Sep 28, 2006 at 5:53 PM
You mentioned being "tempted" to provide a similar model as the CAB. I would love to see the new Web Client Software factory support a composite/modular approach to Web development (similar to DotNetNuke perhaps) where disparate groups can contribute to a single application. Can you speak to why this isn't going to be the approach? If your team chooses not to primarily design for composite style Web applications, I hope the design will at least accomodiate this approach. The UIPAB was designed for more of a monolothic style web application, so I hope the new factory will better accomodate composite apps.

Derek Greer
Sep 28, 2006 at 6:43 PM
Hi Derek,

We're in sync. Composability and modular approach are a top priority. Like with the CAB and Smart Client SF, we recognize that different teams can work on different parts of an application.

Given that composability is at the top of the list, we may very well end up with a model that has a lot in common with CAB. We just want to make sure we create a model that fits customer scenarios, insteaed of expecting customers to adapt their scenarios to a predefined model.

Appreciate the feedback - we have several stories on the board around composability coming up, and we look forward to your input.

Oct 2, 2006 at 3:21 PM
The long awaited WCSF! Great News!! This Software Factory will be of great help for architects and developers building solutions using .Net. Thanks!

My questions are in regards to general architectural guidelines. How in sync is this Software Package when compared with the architectural guidelines recommended in the P&P site, namely:

User interface components
User interface process components (How does this compare to MVPC?)
Service Agents and Interfaces
Business Workflows, entities and components
Data access layer
Security, operational management, communication

How far from an end to end prescription or guidance will this be? Thanks!

Adan Brown