Welcome to Windows Communication Foundation (WCF)
Top Tasks :

WCF Community Bloggers

Browse by Tags

All Tags » Smart Clients   (RSS)

  • PDL from .NET, Reporting, BIRT, Telerik, Orcas, URL Data Services and Astoria!

    There! Enough things in one title? The thing is that Steve Eichert and my whirlwind day covered all of that and more. Let me explain. So, for two weeks, Steve and I have been off discussing/pairing on some big ticket "Infrastructure" items. There are many things on the list and we have been applying both heavy design discussions on the whiteboard with practical prototypes or solutions. These areas have covered the whole spectrum from what will the world look like in 3 months, 6 months, a year, 3 years to caching architecture to workflow to to parallel computing to replacements for CAB to Services to reporting and much more. Yesterday, we spent a day on our "Reporting Strategy or Reporting Architecture." Being a large Enterprise platform, it is very important to have a comprehensive Reporting story on both the Smart Client side as well as on the Server side. I'll just leave it very generally that there are certain kind of reports for us that are really "Statements" and then Ad-Hoc Reporting. My story for most of the last year and half has been SQL Server Reporting Services . I have had good experiences with it at Adesso even as reporting on Oracle. Of course, there is that "small footprint" of having a "reporting database" for SQL Server but virtually all the "Enterprise Reporting" solutions require some footprint. However, lately it has become totally apparent to us that virtually every single Bank customer of ours is an Oracle shop only other than very small hedge funds and we have really de-emphasized SQL Server. Its still in our CI build and code gen but we are now optimizing for Oracle. Anyway, we wanted to keep the Statement stuff simple. Forget a whole reporting thing for that. We really only need to generate pretty much canned statements with customizable logos and footers. So Steve and I began to look at a whole bunch of HTML to PDF or .NET libraries for PDF generation. We ended up feeling real good Read More...
  • New and Notable 177

    Multithreading and Concurrency Software Transactional Memory Part IV - Thread-Bound Transactions Software Transactional Memory Part V - Integration with System.Transactions Parallel LINQ Restating the Concurrency Problem Herb Sutter is starting a new column on Effective Concurrency Shared nothing parallel programming \ Software Design/Smart Clients/CAB/Web Clients Using NUnitAsp to test Pages w/Forms Authentication Build your own CAB #12 - Rein in runaway events with the "Latch" Build your own CAB #13 - Embedded Controllers with a Dash of DSL A whole pile of goodness taking CAB forward from the folks at SCSFContrib . which includes A full implementation of the UI layer for CAB done in WPF with 100% code coverage in tests!! (see Bill's post ) WCF/SOA ChannelFactory Behaviors David Chappell declares the REST vs. WS-* War over . Here's hoping Orcas/LINQ ScottGu continues his excellent series with LINQ to SQL (Part 4 - Updating Our Database) ADO.NET Entity Framework The ADO.NET Entity Framework June 2007 CTP is now available. See the team blog for changes Ruby/Subversion My team-mate Steve points to some great resources on the Beauty of Ruby as well as finding a Web-based Subversion Browser Other Link Blogs Interesting Finds: July 10, 2007 PM Edition Daily Grind 1182 Technorati Tags: CAB , Ruby , Concurrency , Microsoft .NET , Software Transactional Memory , PLINQ , NUnitASP , Software Design , Design Patterns , Ruby on Rails , Subversion Read More...
  • New and Notable 176

    TGIF!! I am super busy right now designing a multi-CPU/multi-threaded Parallel Calculation Engine and diving into the science of Parallel Computing. I'll have some links when I get a chance. Windows Workflow Tomas talks about Silver , the integration of WF + WCF. The marriage is sorely needed because, as I have posted here , the current situation well, sucks. Silver uses Queues and bypasses EDS completely, which is what anyone needs to do to have any real success of communication into Workflows. Because we could not use Orcas here, we actually implemented our own version of the mechanism to avoid the hell that is EDS. Jon Flanders , the guy that helped me with the above, also worked on the PageFlow Sample that has been updated to V1.1 Even more interesting is that he has working on this project for hosting Workflows inside of BizTalk. This is very interesting as developing your own host is so not trivial, but I totally challenge Paul's assertion that " No BizTalk Experience Required ." Architecture Steve Jones has a post YAGNI, Requirements and why scaling isn't always important that I totally agree with and is in-line with what I try to do as an " Agile Architect ": "Split information exchange from the business services, and worry about the scaling that is appropriate for your information exchange. Don't worry about technical purity and some "wonder" architectural approach. Don't over engineer because if you do X (or R) then it will scale to 100,000 users, but your requirements say "6". Software Design/Agile/XP/Design Patterns/CAB Number 11 for Jeremy in his continuing excellent series on UI Design Patterns in Build your own CAB #11 - Event Aggregator Jeremy has another big AMEN post for me in his Design for Testability , which really goes with my Writing Maintainable Code post, "" Done, done, done " isn't just writing code. It's writing code and verifying that that code works correctly. Read More...
  • New and Notable 152

    Smart Clients/Orcas I am extremely pleased to see the .NET Framework (and Microsoft) finally gain the offline sync services that I have been talking about for quite a few years in my work at Groove and Adesso . You will be able to do synchronization from WinForms and WPF apps that you could do from Groove apps (in my case WinForms) 4 years ago and Adesso 2-3 years ago now. OR/M Excellent introduction to NHibernate here more in a little bit Currently listening to Tarkus by Emerson, Lake & Palmer on album Tarkus Technorati Tags: .NET , Orcas , Data , OR/M , NHibernate , Software Architecture , , TDD , Agile , Agile Development , Extreme Programming , CLR , .NET Framework , Click Once , Microsoft Share this post: Email it! | bookmark it! | digg it! | reddit! | kick it! Read More...
  • New and Notable 150!!

    This is it, the big 150! The first New and Notable was on May 19, 2003 , (my first post was March 29, 2002 ) and I paid homage to the master, "I have always admired Mike's ability to look at the world out there and put it all into one great post, The Daily Grind . While I can't pretend to have Mike's writing ability, I would like to start moving to something similar instead of multiple seperate posts." I wish I had the discipline of Mike because if I posted daily I would be well towards 1000 instead of 150-) but hey I'm pretty proud of my record. I love this community and in the last 25 years this community (and Microsoft) have been real good to me and my family. I hope that what I have been picking here has been of good use to the community to keep you informed on key .NET activities as well as the architectural and design side. Thus, I go forth and pick: Entity Framework, ADO.NET 3, Orcas, MVP Summit One of the best writers in the community today is certainly Jeremy Miller . His latest post, MVP Summit Recapped: Linq for Entities, MonoRail, and Shameless Name Dropping , is a fine example of why. In one post, he is able to write quite elequently on complex subjects like the subtle design flaws in Entity Framework 3 and why WF 4 will rock your world. He is able to take a technology, stick to his design principles and stand his ground, educating and helping all involved achieve something better than was there before. He certainly wasn't the only one of us doing that but his post really captures the core design principles of no infrastructure code in business logic classes. Infrastructure is Infrastructure, business logic is business logic. We want the same thing: No marker interfaces, no codegen, no partial classes. Just plain "PO" and support for the Unit of Work pattern. David Laribee also talks on this area and makes clear that its a vision thing that doesn't really compare to NHibernate which is just OR/M; it's a full Read More...
  • Refurbished New Home Site

    I have been working with the Office Live Services Beta for some months now. They just went live with my site over the weekend (although I still have to work on the domain name transfer) and it looks pretty good! I have a new Header and Home Page design. I have added my How-To STS/Window Authentication with ADAM/AD, Roles in AzMan with WCF to the refurbished WCF page . I added a new Domain Driven Design page under Software Engineering . My Presentations, as always are here . Hey, what else am I going to do while I am waiting for my flight? I would like and appreciate any and all feedback as comments here. What's good? What's bad? Knowing my blog and its subjects, what would you like to see? Technorati Tags: .NET , Windows Communication Foundation , WCF , Software Architecture , INETA , MVP , .NET Framework 3 , Microsoft Share this post: Email it! | bookmark it! | digg it! | reddit! | kick it! Read More...
  • All I Can Say is a Big Amen!

    This says it all. Technorati Tags: .NET , Agile , Agile Development , Extreme Programming , ORM , Data , Entity Framework , ADO.NET 3.0 , Orcas , MVP , Visual Studio , VSTS , Team System , Microsoft Share this post: Email it! | bookmark it! | digg it! | reddit! | kick it! Read More...
  • MVP Summit Wednesday - Tour of PAG Agile Development Facilities

    A great treat today was the Architect MVPs having a tour of the PAG Agile facilities with my very good friend Peter Provost. What they have accomplished, especially within the Microsoft office system, is pretty amazing. I will publish pictures later as this information is alll public. They have constructed a number of rooms (maybe 6) that are re-sizeable to serve differing team sizes on the fly. In each room, they have created an Agile "War Room." They have pairing stations like I talked about here that we did. The walls of the room are a special kind of glass that are actually full Wall Talkers for collobrative design. Each of the pairing stations has two flat screens on pivoting equipment so that you can adjust the screens to work the way the pair does. All the cabling has been put under a raised hidden floor. Each room has a projection wall that the computers can connect to via Vista's features. All the people sit together in one of these rooms but the interesting thing is that they wanted to have glass so that the developers could still have a view of the outside and not be a "cave." There is a lot more I am sure I am missing but I encourage you to dig up Peter's posts on this. My group, when we moved to Philly, also spent a chunk of money making a first class Agile facility. We have a large open space with wall talkers. We have a a bunch of pairing stations with dual monitors. The pairing stations are flat in the sense that any pair of people can go up to any station with the chairs and go. Like Peter's groups, we created an area behind for quieter time, to do email. People use their laptops in this area to do email, etc. We don't even have email and such on the pairing stations. We created a base Win2K3 system image with all our tools, seetings (NUnit, etc) and have the exact same image on all stations. More on this later. Share this post: Email it! | bookmark it! | digg it! | reddit! | kick it! Read More...
  • MVP Summit Wednesday Software Factories

    Today, the "breakout" sessions begun. In other words, we started drilling down with the product groups; for me that is Solution Architect. Some of the sessions I can't even name as even the code words are not public but I did want to mention that we had a great session and discussion (on the present) with Jack Greenfield on "The Future of Software Factories and Q &A with Jack Greenfield." Leaving out the future, we had a great discussion on a topic I generated when I told Jack that although I buy the notion totally of Software Factories (we use WSSF, CAB, Smart Client Factory to mention just a few) I had a really hard time buying the notion of Software Product Lines as it really smacked to me of Big Design Up Front, something I abhor as an Agile Architect. The answer was a good one, revolving around the idea of harvesting best practices, frameworks, etc of Product #1, #2 and it doesn't have to be some huge heavyweight notion of designing the product line in advance. I think that's how I understood it. Technorati Tags: .NET , Software Factories , Software Architecture , MVP , Microsoft Share this post: Email it! | bookmark it! | digg it! | reddit! | kick it! Read More...
  • New and Notable 146

    Ah Saturday morning where we can sleep in, ah no wait...I have kids to wake me up at the crack of dawn... Software Architecture The PAG folks continue to deliver their goodness with their first weekly drop of the new version of the Smart Client Software Factory and they looked like they brought over some of the cool stuff from the Mobile version: What’s New In this drop, you have the first look at: • New Application Blocks. We have ported over four application blocks that were previously available as part of the Mobile Client Software Factory. We may refactor, remove, replace, this code in the future (we value your input), but we currently have the following: o Disconnected Agent Application Block. This application block provides management features for execution of Web services from occasionally connected smart clients. With a disconnected service agent, the device can maintain a queue of Web service requests when offline (disconnected) (emphasis mine) and then replay them when a connection to the server application becomes available. o Connection Monitor Application Block. This application block monitors and exposes the available connections and the associated networks. o Endpoint Catalog Application Block. This application block provides features to expose the physical addresses and other details of remote services. o Data Access Application Block. This application block provides support for SQL Server Compact Edition. This application block will be replaced when the factory migrates to the next version of Enterprise Library. Jeremy Miller continues his excellent posts and talks about something Steve and I approach in our architecture: Don't Let the Database Dictate Your Object Model . I have to admit to being dragged a bit by Steve into this approach with OR/M and dropping the whole data-centric database-out view I have had for many years. Also see his My Least Favorite Kind of Requirements Undocumented WCSF Feature: Global Exception Handling Udi tackles Can, or Read More...
  • New and Notable 145

    Architecture/SOA Blaine Wastell has posted that PAG planning an update of the Smart Client Software Factory to be released in late April of this year. They are encouraging feedback at http://www.codeplex.com/smartclient and enter critical items into the issue tracker ( http://www.codeplex.com/smartclient/WorkItem/List.... ). From where I sit, they have their Priority 1 stuff right with WPF Interoperability. We absolutely need to be able to move to WPF with the existing CAB/SCBAT infrastructure I have been listing posts on WS-RM and its implementation in WCF. Harry Pierson, has an autopost that builds on his recent epiphany about WCF and long running services. He speaks about his conversation with Shy and " At some point in the three years between March 2003 and February 2006, WS-RM went from being the enabler of long running services to "yet another misnamed WS-* protocol". And with it, WCF lost (never had?) the ability to support long running services (as I've written previously )." The main point is that it does not support RM-based durable messaging. As Harry says, "As I said before, lack of support for WS-RM based durable messaging isn't that big a deal. As long as you understand WCF's sweet spot - the current version's sweet spot anyway - and don't try and make it be something it's not, you should be fine. Furthermore, Shy mentions the need for an "interoperable Queued Messaging specification" and wrote that it's something he "expect that we will get to it in the near future". Here's hoping that spec is less flexible than WS-ReliableMessaging." CLR/Tools/Agile/TDD The most indispensable tool in the .NET universe, Reflector, has gone through a big update to V5! As Jamie states , "This is a significant update with lots of refinements and new features. Perhaps most significantly it includes support for C# 3.0 language features such as LINQ query expressions, lambda expressions and extension methods. See my screencast about using Reflector 5.0 from VS Orcas." He also Read More...
  • Latest on Agile Project, Reorgs, and Interop

    In a post on January 25th , I said, "I posted yesterday that we had shipped our Enterprise Collateral Management solution based on our new architecture. As I said, we still have a lot more to do ." I provided a concise list of the methodologies, technologies and tools that we used in our 14 month cycle. To update where we are now, it will be necessary for me to give a little more context. First, when I mention "our company", we are actually a Division exclusively devoted to Collateral Management. This division, in turn is part of a much larger worldwide company that has at least 6 more financial sector products dealing with other aspects of managing risk. That company then, in turn is part of a huge Ratings company. The rest of the products are (mostly) integrated into one suite that we sell. Ours is not. One reason is that the various products have been organized into self-contained product groups. That means that we had our own development, marketing, sales, product and management for just Collateral Management. Five or six weeks ago, our company went through a rather large reorganization that aligned things by a global R&D, global Marketing, etc. I think this is an extremely good thing. Our product is now "owned" by R&D which also owns all the other products that are part of the suite and otherwise and we are detached from product so we can focus on development. We can also look at integrating into the suite and bi-directional learning. One consequence of this is now instead of my boss reporting to a VP of Collateral Management, he reports to a Senior Director in R&D who owns a product out of our large offices in Manhattan. The cool thing is that Josh Madden is a 20 year+ veteran developer/architect like me who has done great things in the Financial area for companies like Reuters. He gets development. The other cool thing is that his other product group also uses a lot of Agile techniques and greatly appreciates our total XP environment. One more thing: Read More...
  • New and Notable 142

    Data/ADO.NET Orcas Two from the ADO.NET team: Entity Client and Nulls - LINQ to DataSets Part 3 Software Architecture/SOA/CAB Udi answers, Can or should SOA be implemented without Web Services? David Chappell on The Three Faces of SOA Eric Newcomer: WS-* vs. REST is not the question Another architect with a chronicle of How CAN and TDD helps doing better designs WCF/CardSpace Richard Turner gives an insightful report on RSA2007 especially on the "demo showed Wachovia 's website running on Corillian 's online banking platform using Arcot Systems ' security engine to generate managed cards and process token requests." Corrillian and Wachovia's work will be important for all of this in this sector as more and more backs embrace CardSpace and Identity management. We are seeing a lot of movement in this area. Jorgen provides some great links on Interoperability with WCF . This is an area that I am becoming more involved with Java systems communicating with our WCF Services. Dr. Nick continues with More Poison Message Handling Tomas on Writing a WCF Transport Channel - Part 1 Agile Architecture Uncertain Planning Nick talks about The minimum amount of architecture needed for Test Driven Design . .NET Framework 3/WF .NET Framework 3.0 training kit for WF, WCF and CardSpace [via Mike ] .NET 3.0 Middleware Technologies Day: Third Incarnation David Chappell: Why Workflow Matters WF, WCF and CardSpace training materials posted Technorati Tags: .NET , Smart Client , PAG , CAB , Software Architecture , Windows Communication Foundation , WCF , Windows Workflow , WF , Agile Architecture , TDD , .NET Framework 3 , ADO.NET , Orcas , Microsoft I'm listening to Street Life by Roxy Music on the album Stranded (Remastered) Share this post: Email it! | bookmark it! | digg it! | reddit! | kick it! Read More...
  • New and Notable 141

    Found some time to blog. Smart Client/UI Architecture V2 of the User Interface Process Application Block (UIPAB) is out from PAG [via Mike ]. I must confess to being confused on how this is different than CAB as "designed to abstract the control flow and state management out of the user interface layer into a user interface process layer," which CAB does with MVP as well until I saw. "helps you write generic code for the control flow and state management for different applications types (for example, Web and Windows) and helps manage user's tasks in complex scenarios." So which do you use in Smart Clients and why? Software Design/DDD As I have stated our Architecture reflects a strong, "proper" DDD Layer . Teammate Steve, is also a big believer and we have both lost focus a bit on it as we have been swamped with other things. His post is a good reminder to check out the experience reports on the DDD site. One reader once said I was using buzzwords. I think not. Especially in a large Financial Collateral application it is vitally important to use the UbiquitousLanguage of the actual Collateral banking domain that the analysts use and design a business layer reflecting that. And yeah, I'm astonished how many .NET developers have never even heard of the fundamental DDD patterns when I talk about SOA/Architecture for INETA around the country Data/OR/M One thing that goes well with a true domain layer is an OR/M implementing the Domain Mapper pattern . The ADO.NET team (along with some bloggers), which lately found religion, talks about the Entity Data Model 101 - Part 2 WCF/Indigo Confused about all the many WCF configuration options? Tomas has an excellent post on understanding the admittedly complex WCF configuration schema. In return, you get fine-grained control Technorati Tags: .NET , Smart Client , PAG , CAB , Software Architecture , Windows Communication Foundation , WCF , Microsoft I'm listening to Paranoid Android by Radiohead on the album Edinburgh, Meadowbank Read More...
  • New and Notable 135

    WPF/Avalon One thing I had forgotten about in Avalon is the XAML Browser Apps (XBAPS) sandboxed in the browser. Karen Corby has two posts here on features and the second on security levels . [Found via Lester's WPF Blog ] One of the things I am looking at architecturally for 2007, is rationalizing the different code bases and development frameworks for UI (i.e. the grand convergence of the smart client and browser client). So in that, I would like to rationalize our WinForms/CAB code base and our soon to possibly be ASP.NET projects and have one WCF code base. So the question is; is it XBAPS or WPF/e? Walt reminds us all that there is no Cider goodness in the Orcas drop and " In the meantime, use the beta version of Expression Blend, to layout your controls. The Visual Studio 2005 extensions are very rough around the edges ." Yup. Sahil on WPF Freeable Objects Windows Workflow I talked about that WCF and WF are not at all currently integrated and how that will change in the Orcas timeframe. Microsoft has put up a sample showing how to use WCF from WF. [via Thom ] K. Scott Allan has a nice piece on Managing the Workflow Runtime from ASP.NET . WCF/Indigo Dominick Baier has an interesting post on ASP.NET Control for CardSpace WCF RSS/ATOM Endpoints for dasBlog Customizing the Metadata Resolver Architecture Welcome to the January 15, 2007 edition of Carnival of Enterprise Architecture. Technorati Tags: .NET , Windows Communication Foundation , Windows Presentation Foundation , WCF , WPF , Windows Workflow , Software Architecture , Microsoft Share this post: Email it! | bookmark it! | digg it! | reddit! | kick it! Read More...
More Posts Next page »