

Wednesday, February 12, 2003
Best Approach to Software Development
Management: A Discussion
Multi-Threaded .NET Clients
Instrumenting Your C#/.NET
Application with System Diagnostics
Build a Distributed, Plug-In
Object Broker, Part l
Real-World Enterprise Web Application
Development
Advanced Custom Controls for
Windows Forms and Web Forms
Advanced .NET Development Techniques:
How .NET Assembly Loading Really Works
Thursday, February 13, 2003
Database of the Future: A Preview
of Yukon and Other Technical Advancements
.NET Remoting in C#
Build a Distributed, Plug-In
Object Broker, Part II
Inside IIS & ASP.NET: Intercepting
HTTP Requests
Analyzing, Architecting,
and Modeling N-tiered C# Applications
WinForms Over the Web
C# Live! Sessions
Wednesday, February 12, 2003
Best Approach
to Software Management: A Discussion
Point/Counter-point Discussion, Featuring Interaction
Design Guru Alan Cooper, and Rational Software's Alan Brown
Looking for practical techniques to optimize your development
projects? Join our two distinguished experts as they discuss
a wide range of topics that will help you choose the right
way to deliver the right software, on time. Based around key
process areas our software management experts will examine
various ways to implement best practices.
9 a.m.
Multi-Threaded
.NET Clients
Chris Sells, Sells Brothers, Inc.
Rich clients in .NET require two things: Windows Forms and
responsive user interfaces. And because rich clients process
data and access Web services, both of which can take a long
time, to stay responsive, they need threads. .NET has built
in support for threads, which we’ll do a quick refresher
on, but then we’ll dive into how to best integrate this
into a WinForms application, including synchronization-based
locking and synchronization-free message-based multi-threaded
communication to avoid race conditions and deadlock.
10:30 a.m.
Instrumenting
Your C#/.NET Application with System Diagnostics
Martin L. Shoemaker, Martin L. Shoemaker Consulting
If your .NET application needs to run unattended (as a server,
a Web application or
a Windows Service), reporting errors via MessageBox won’t
cut it: you need to catch
all exceptions (your own or others) and gracefully report
what went wrong. If your
app gathers and reports data over time, you could write your
own logging and
reporting mechanisms; but why would you want to: Windows performance
counters and the event logger will meet most of your needs
with much less work. If your app is performing poorly, will
you know why, or will you just have to optimize randomly?
In this session, we’ll discuss the use of .NET’s
diagnostics capabilities, the event logger, performance counters
and how to write applications that elegantly tell you what’s
really going on in your code.
11:45 a.m.
Build
a Distributed, Plug-In Object Broker, Parts l and ll
Richard Hale Shaw, The Richard Hale Shaw Group
.NET services such as Reflection, Remoting and Events aren’t
nearly as interesting by themselves as they are when integrated
to produce powerful software architectures. In this 2-part
session, we'll discuss and look at how to: use Reflection
and Attributes to dynamically load assemblies, discover useful
objects and instantiate them; use Events to notify remote
clients of new object types that are available; use WeakReferences
to allow event-firing on objects that could be discarded without
warning; and use Remoting to let Clients request objects from
a remote broker across machine boundaries. We’ll integrate
the pieces to create a Distributed Object Broker that uses
pluggable objects, which you’ll take away in source
form.
2 p.m.
Real-World
Enterprise Web Application Development
Dominic Selly, Capella University
While the .NET Framework has vastly simplified building and
deploying Web applications, the requirements of real world
enterprise development easily surpass the simple examples
found in books and the .NET SDK. What if the project requires
several IIS applications, N-tiers of components (including
COM+ hosted serviced components), different security models,
version control, and complex build dependencies? How do you
share logins across IIS application boundaries, break down
sessions across these boundaries, managed build paths, reference
paths, and the copy local feature of VS.NET? In this session
we'll discuss just these issues, as well as how to deploy
into production environments, deploy serviced components into
COM+, share custom configuration files, and implement error
handling, trapping, and reporting in a large production environment.
You'll gain a better understanding of issues and strategies
for architecting, configuring, maximizing code reuse, building,
and versioning large projects.
3:15 p.m.
Advanced
Custom Controls for Windows Forms and Web Forms
Andrew Troelson, InterTech-Inc
With the advent of .NET, developers are provided with
an extremely elegant model used to build custom Windows
Forms and Web Forms controls. While the process of creating
reusable GUI widgets may be familiar to most, many developers
are unaware of how to integrate these types into the
design time environment of VS .NET. You will come to
understand the architecture (and related .NET namespaces)
used to expose custom configuration behaviors through
the VS .NET IDE property window, form designer and component
icon tray. .
4:30 p.m.
Advanced
.NET Development Techniques:How .NET Assembly Loading
Really Works
Chris Sells, Sells Brothers, Inc.
There are differences between a private and a shared
assembly. In this session, we'll discuss the difference
loading algorithms used by the .NET Runtime for each
type of assembly and look at how to create a multi-module
assembly and demonstrates how the runtime loads modules.
We'll also talk about the subtle differences that result
from using Load and LoadFrom. You'll gain a solid understanding
of the reasons why you should be giving your assemblies
a strong name.
5:45 p.m.
Midnight Madness
Here's a chance to unwind while you get the latest on cutting-edge development technologies. Hammer out programming issues and problems with attendees, speakers and industry leaders in a wide-ranging, open-ended chat. We plan to shock you, dare you, and prepare you for the other extreme topics and previews that we can't reveal... yet. Vie with other developers to get your share of thousands of dollars worth of cool prizes and hear top-notch speakers, including sponsors Rational Software, Microsoft and Wise Solutions.
8 p.m.
C# Live! Sessions
Thursday, February 13, 2003
Database of the
Future: A Preview of Yukon and Other Technical Advancements
David Campbell, Product Unit Manager, SQL Server Engine,
Microsoft
The next major release of SQL Server, code named
Yukon, promises airtight security and fast, scalable data
access at your finger tips. David Campbell has been working
on the development of Microsoft SQL Server for over 7 years
and he wants to share his vision of the future of data access
with you. You will hear about technical advancements in the
areas of programmability, manageability, scalability, availability,
and business intelligence. Come see what's looming in the
horizon in the fast-changing landscape of data access development.
9 a.m.
.NET
Remoting in C#
Richard Hale Shaw, The Richard Hale Shaw Group
Find out effective ways to write and test a .NET Remoting
client and server. Attend this session and find out
how to use Microsoft's Internet Information Server (IIS)
as a host for a .NET Remoting server. We'll discuss
the differences between a Remoting server and a Web
service, while explaining the pros and cons of each,
too.
10:30 a.m.
Inside
IIS & ASP.NET: Intercepting HTTP Requests
Michele Leroux Bustamante, IDesign Inc.
By now, you've learned how easy it is to build Web applications and Web services with .NET-but now you want MORE. You want to intercept raw HTTP requests as they arrive at your Web server's door, and manipulate them right out from under ASP.NET. You want a closer look at raw data, so you can pre-process information, or redirect traffic. Attend this session and find out how to "butt-into" an HTTP round trip, using techniques such as HTTP handlers, handler factories, modules, and SOAP extensions for Web Services that can intercept inbound requests to your Web server.
11:45 a.m.
Analyzing, Architecting, and Modeling
N-tiered C# Applications
Martin L. Shoemaker, Martin L. Shoemaker Consulting
VS .NET, C#, and the .NET Framework make it far easier
to implement distributed N-tier applications; but implementation
is the least important factor to the success or failure
of large, complex systems. Its likely that these projects
will run aground on the same shoals that have sunk projects
for years: requirements analysis, architecture, and
design. And coupled with the ease and speed of C#, there's
a real risk that stakeholders will expect—and
teams will commit to—unrealistic schedules based
solely on accelerated coding. Modeling, however, is
a powerful tool to accommodate such acceleration; and
VS .NET lets you incorporate modeling directly into
your development processes. In this session, we'll take
a brief look at the Unified Modeling Language (UML),
and then create models of a project as a means to capture
requirements, design an architecture, create that architecture
as a C# application, and finally, reverse engineer and
generate code via the model. We'll focus on how C# and
.NET idioms are modeled in UML, and on seeing how UML
models lead to code.
3:15 p.m.
WinForms
Over the Web
Chris Sells, Sells Brothers, Inc.
HTML is great for deployment, but terrible at building rich
application UIs. Attend this session and learn how WinForms,
the rich UI framework for .NET, can be used to enjoy the same
zero-deployment model of HTML. Also learn how to deploy your
WinForms applications in lower security Intranet and Internet
zones.
4:30 p.m.
|