Real World Software Architecture

Real World Software Architecture is dedicated to providing information and experiences from the field of Software Architecture.



Subscribe with RSS or ATOM Add to Google

Links

  • Home Page
  • Real World Software Process Engineering
  • Suggested Reading
  • .NET Dev and Arch Collection
  • SEI Essays on SA
  • Software Architecture
  • Bredemeyer
  • wwisa
  • Product Line Engineering
  • PLEES
  • Software Product Lines
  • MSDN Architecture Center
  • patterns & practices






Thursday, April 26, 2007

Cool .NET 3.0, 3.5, TFS, AJAX, ORCAS, CAB, WWF, Expression Tools and Links

Over the past couple of weeks I have been scouring the web for information on .NET 3.0 Windows Workflow Foundation (WWF), Windows Presentation Foundation (WPF), and Windows Communication Foundation (WCF).

I have also been looking for information on the Microsoft Patterns and Practices Software Factories including the Smart Client Software Factory, Web Client Software Factory, and the Web Service Software Factory.

Beside the topics above I have found stuff on Team Foundation Server (TFS), XAML Tools, .NET 3.5 resources, Orcas resources, SQL Server 2005, ASP.NET, AJAX, Office 2007, Architecture, Vista, Visio, Enterprise Architect, and Rosario.

Here are some of the best:

Acropolis at TechEd 2007
Enterprise Library 3.1 - May 2007 Released
Smart Client Software Factory (SCSF) v2 Released (May 2007)!!!!
Dotnet Commons

BlogEngine.NET - Full featured simplicity
TableDiff.exe - a cool SQL Server 2005 tool
Refactor! for ASP.NET

Free .NET Tutorial Articles and Examples - ADO.NET ASP.NET Enterprise Library Design Patterns SQL Server C#
Enterprise Library 3.0 - April 2007 Released!!!!
Enterprise Library 3.0 and WCSF Sample Download - Can't Wait for WCSF Team
Designing Applications using CAB & the Smart Client Software Factory
WCF activities for windows workflow
Windows Workflow Foundation Web Workflow Approvals Starter Kit
Smart Client Software Factory WPF Support
WPF/XAML tools list - April 2007
Microsoft Silverlight- Formerly known as “WPF/E”
Expression Blend and Expression Studio will be available to MSDN Premium subscribers.
Orcas and then Rosario (The next code name for Visual Studio Team System)
Another day another Codename - Astoria and Jasper
Kevin's Bag-O-Tricks - MIX07 Edition (AWESOME WPF Examples)
Family.Show (Cool WPF example app.)
NBear Version 3.7.1 Released

Microsoft’s Data Access Strategy
ADO.NET Entity Framework Update
OakLeaf Systems- ADO.NET vNext and Entity Framework Resources

The Beta 1 release for Visual Studio Orcas and .NET FX 3.5 is available for Download
Conversation with Soma: Orcas Beta 1 and Beyond
The Visual Studio Code Analysis Team Blog : Announcing Visual Studio Code Metrics!

Customizing Team Build
patterns & practices: Visual Studio 2005 Team System Guidance
Add Continuous Integration Capabilities to Team Foundation Server
Update on Team Foundation Server Roadmap
Understanding the TFS Cube

.NET Framework 3.5- C# 3.0, ASP.NET 3.5 & ADO.NET vNext
The Visual Basic Team : Live From Redmond Webcast Series (Beth Massi)
Regular Expressions (Video Tutorial and Cheatsheet)

WPF Learning Experience: Presentations
Paul Andrew : The Windows Workflow Foundation WebCasts
.NET Framework 3.0: Design on the Windows Vista Platform
MSDN Nuggets
WF Nuggets (These are an awesome way to get familiar with WWF)
ASP.NET 2.0 and ASP.NET AJAX Videos
MIT's OpenCourseWare
Essential ASP.NET: ASP.NET 2.0 On demand Webcasts
LINQ to SQL Videos
Asp.net Ajax, Orcas, C# 3.0, Silverlight and More Webcast in May
AJAX Design Patterns by Data & Object Factory
Design Patterns for .Net

Microsoft CEO 2007 Summit
Visit MIX07
All of the MIX06 and MIX07 recorded sessions (A LOT of VIDEO!!!)

Silverlight 1.0 Beta QuickStart
Silverlight Developer Reference Poster
Silverlight Videos
Silverlight Resources (Mind Map)
Scott Guthrie on Silverlight
Silverlight Links - The Silverlight Launch Pad is Ready for Launch
For all Windows Mobile Bubblebreaker fans, now on Silverlight
9 Microsoft Silverlight Features
30+ WPF and Silverlight Resources

Code Formatter
It's just RESTing

Architecture Reading
Building SOA Solutions Using the Rational SDP
Excellent Software Architecture and SOA Site
An Introduction to Enterprise Architecture
Coding Horror: Going Commando - Put Down The Mouse
An Open Letter to Scott Guthrie
6 Great Ways To Rid Yourself of Good Developers
The seven sins of programmers
The Developer Cheat Sheet Compilation
25 Ajax Code Snippets and Tutorials
Top ten things ten years of development has taught me

ASP.NET shapes in Visio
Free BPMN Stencils for Visio 2003
Products & Services Visio Stencils - Cisco Systems

How-to: Free Portable Web Development on a USB Drive
Firefox as an IDE

_

posted by tadanderson at 9:16 AM 0 comments

Friday, April 20, 2007

ASP.NET 2.0 and ASP.NET AJAX Web Development Helper

Nikhil’s Web Development Helper is a very nice tool for debugging ASP.NET 2.0 and the ASP.NET AJAX framework and toolkit.

The tool allows for digging into ViewState, the HTML DOM, ASP.NET trace messages, and the contents of your cache.

Below is the table of contents from the help document provided on the site, to give you a better idea of what it has to offer:

Introduction
Activating and Using Web Development Helper
HTTP Tracing
Scripting Tools
Page Tools
ASP.NET Tools
Using HTTP Tracing
Filtering HTTP Logging
Using the Scripting Tools
Error Reporting
Script Console
Script Immediate Window
debugService API for Script
Using the Page Tools
Using the ASP.NET Tools
View State Viewer
Trace Viewer
Cache Management
Restart Application
Credits
Version History
License

Check it out HERE.

_

posted by tadanderson at 10:53 AM 0 comments

Experts4D Smart Client Software Factory WPF (Windows Presentation Foundation) Community Site

There is now a CodePlex site dedicated to the Smart Client Software Factory using Windows Presentation Foundation (WPF).

The CodePlex project is a modification of Microsoft Smart Client Software Factory to support building WPF based applications using Kent's WPF layer for CAB.

Check it out here.

_

posted by tadanderson at 5:17 AM 0 comments

Thursday, April 19, 2007

The Beta 1 release for Visual Studio Orcas and .NET FX 3.5 is available for Download

From this MSDN site:

Visual Studio Code Name “Orcas” Beta 1
Visual Studio code name "Orcas" is the next generation development tool for Windows Vista, the 2007 Office system, and the Web. Beta 1 consists of multiple releases including, Visual Studio Professional Edition, Visual Studio Team Suite and Visual Studio Team Foundation Server, which are available as installation media ISO images you can use to install the products. Alternatively, you can download VPC images with the software pre-installed. In addition, you can download prerelease versions of Visual Basic Express, Visual C++ Express, Visual C# Express, and Visual Web Developer.

Get it here:
Visual Studio Team Suite-Only VPC
Visual Studio Team Suite with Team Foundation Server VPC
or from the MSDN Subscriber Downloads.

Watch this:
Conversation with Soma: Orcas Beta 1 and Beyond

_

posted by tadanderson at 1:17 PM 0 comments

Monday, April 16, 2007

Microsoft Silverlight- Formerly known as “WPF/E”

Silverlight (Known as WPF/E previously) is a cross-browser, cross-platform plug-in for delivering the next generation of media experiences and rich interactive applications (RIAs) for the Web.

These sites are definitely worth checking out:
Microsoft Silverlight Home
Silverlight on MSDN
Somasegar's WebLog
Microsoft Silverlight Virtual Pressroom

posted by tadanderson at 7:40 AM 0 comments

Sunday, April 15, 2007

Frauds- Liar, Liar, Resume on Fire

Over the past few months I have had to review a lot of resumes, and go to a lot interviews where the candidate blatantly lies on their resume about their technical skills. Out of the last 10 I reviewed only 1 of them was honest about their skill set. These are not lies of omission. For example, they didn't get a along with their teammates or bosses. They are also not exaggerating by putting skills on the resume they know a little bit about. They are adding skills that they simply have never done, and a lot of times don't know anything about, except for the buzz word.

I really don't know if it is the market, and they are getting away with it at other companies, or if it is just the new thing to do.

We are hoping for some of the following skills:
C# 2.0 experience
Enterprise Library experience 3.0
Windows Form Development experience
Smart Client knowledge/experience
SQL Server (DB creation, Stored Procs) experience
.NET 2.0 & 2005 tools (SQL Server, Visual Studio) knowledge
UML experience/knowledge
ASP.NET Web Service experience
ASP.NET Experience
SQL Reporting Services experience
CAB (Composite UI) knowledge/experience
FxCop experience
WSE experience
WCSF

Odds are, if they had not lied about having experience, some of them may have been considered as a candidate that can learn and would been given a position. Their dishonesty blew any hope of that.

We are finding C#, RUP, UML, Process, Leadership, Enterprise Library, Smart Client, and experience with Design/Analysis/Architecture to be the main things people are lying about on their resumes.

I have had 2 or 3 paragraphs about using the RUP, doing Design and Analysis, with a list of all the UML diagrams listed which they said they had created. One resume had them in two consecutive jobs. When questioned, the candidate had not done any of it. At the end of the drilling session, the only thing the candidate did was read use cases created by a different team. The project did not use the RUP, but the candidate thought that reading use cases was the RUP, what?!?!?!?! Another candidate with the same type of listing was just as clueless.

I have had Smart Client and Winforms list on one job. When asked to tell me about the experience around those topics, they just said we didn't do that there. When asked why it was on the resume, they said because they had done it 3 years prior on a different project. So when asked about that project and the Smart Client and Winforms experience they went into some long story about the project. Which was a very nice story, but they never mentioned anything about Smart Client or Winforms.

I had one person list C# experience at 2.5 years on an N-tier application in which they worked at all levels. After questioning was done, they had written a console application and had less that 3 months time using C#.

I had a supposed architect level person come in that had 14 years of experience. They could not tell us what an n-tier architecture was, what a common 3 tier architecture was, what a data layer was, what patterns where used for, or anything at all related to a normal software development process.

One person had Enterprise Library listed as used extensively. When ask about it, they said they used the exception block. Ok, so the use was not extensive, that is ok. When asked to tell me about the use of the exception block, they said they used try catch. I said ok, how did you use the Exception Block with the try catch code blocks. He replied with, that is what we did, try catch. I asked if they logged with it, you know how did you handle the exceptions. The response, with try catch. After another 5 minutes we realized he thought try catch was the EL Exception Block, and because he used it so much he had extensive Enterprise Library experience.

I could go on and on, but I think I have made my point about the level of attempted deception.

It does not seem to be a culture thing. It may be consulting firms thinking they are doing the interviewer a favor by getting them in front of a potential employer at all cost. It has been happening over the past several months at an increasing rate.

One thing that is bad about the consulting firms is that their prescreening is poor. That is if they are not the ones to blame for adding the bogus information in the first place. In the past, the use of consulting firms was to help you prescreen. That does not seem to be true anymore. They have become used car sales people. Lying as much as the candidates, in hope of slipping one through.

Our company is at fault as well because they are not demanding quality prescreening. They are desperate to get the positions filled. The sooner they are filled the sooner they can bill.

The bad thing about wanting the positions filled so badly is they are in danger of repeating one of the biggest messes I have ever seen. More here on that mess. To fill the positions with unqualified people is unfair to our clients who are paying top dollar for senior people.

I have been told by people that this lying is normal behavior, that it is something we should expect, and that calling them a liar or fraud is too harsh. I have been raising this issue as a problem for a while now. I have refused to even talk to the individuals that I have spotted as frauds simply by looking at their resumes. One theory passed on to me is that no one is listening because I am to harsh and that I should just go with the flow. I am not going to change for the worse to fit into environment where emotionally charged words like liar, fraud, and phony close the ears of the people responsible for allowing it to continue. Besides, it is not the message they are even hearing. What they are hearing from me is, "We need to lose money by not filling these positions until qualified candidates are available". When in reality, my suggestion will end up making happier clients in the long run, which will also equate to more money in the long run.

If you are looking for a new job, do not put anything on your resume you cannot go into detail about. If it is not production level experience, mark it that way. Experience is important, but none of it counts if you are caught lying about your experience. It labels the rest of the experience you listed as possibly being bogus too. Most companies are always open to trainable people, just not dishonest ones.

I am most certainly not going to cave in and go with the flow. Hearing a suggestion like that just makes me push harder. If the people around me don't like it, I don't care. What is their argument going to be, "Please start working with us to hire liars, frauds, and phonies. Our clients need them on their projects, and we need them on our teams."?

posted by tadanderson at 7:39 AM 4 comments

Thursday, April 12, 2007

Enterprise Library 3.0 and WCSF Sample Download from David Hayden

From David's Blog:

"It turns out that the Web Client Software Factory Team isn't planning on coming out with a 1.1 Release of the WCSF that supports Enterprise Library 3.0 until Mid-May. I totally missed that in Blaine's earlier post ( my earlier comments ) and find that is way, way too long to wait given that the developer community has been talking about wanting a release of WCSF that supports Ent Lib 3.0 way before Ent Lib 3.0 was even released. Ent Lib 3.0 is also the second most voted on issue behind AJAX Support."

Read the rest and get the sample download on his Blog HERE

posted by tadanderson at 7:58 PM 0 comments

Tuesday, April 10, 2007

Orcas and then Rosario (The next code name for Visual Studio Team System)


With Orcas right around the corner, It appears to me we are getting nothing new (check it out here) for the Software Architect. So we are getting nothing added to an already useless architecting tool. At least when it comes to Software Architecture. System Architects can make some use of it, I assume. I personally don't use it for anything. In this Blog I discuss its uselessness for a software architect.

All I can say is thank goodness for SPARX Enterprise Architect. Depending solely on Microsoft for architecture tools, will never happen.

According to this site, the next major release of Visual Studio Team System is code-named “Rosario”. It will come after the “Orcas” release.

The site also lists what we can expect “Rosario” to include:
- Joint prioritization and management of IT projects through integration with Microsoft Project Server
- Project management across multiple projects for proactively load balancing resources according to business priorities
- Full traceability (inc. hierarchical work items) to track project deliverables against business requirements and the ability to conduct rapid impact analysis of proposed changes
- Comprehensive metrics and dashboards for shared visibility into project status and progress against deliverables
- Powerful new features to enable developers and testers to quickly identify, communicate, prioritize, diagnose and resolve bugs
- Integrated test case management to create, organize and manage test cases across both the development and test teams
- Testing automation and guidance to help developers and testers focus on business-level testing rather than repetitive, manual tasks
- Quality metrics for a ‘go/no-go’ release decision on whether an application is ready for production and has been fully tested against business requirements
- Rapid integration of remote, distributed, disconnected and outsourced teams into the development process
- Easy customization of process and guidance from Microsoft and partners to match the way your team works
- Improvements to multi-server administration, build and source control

posted by tadanderson at 6:28 PM 0 comments

Saturday, April 07, 2007

Enterprise Library 3.0 - April 2007 Released!!!!

From the MSDN download site:

The patterns & practices Enterprise Library is a library of application blocks designed to assist developers with common enterprise development challenges. Application blocks are a type of guidance, provided as source code that can be used "as is," extended, or modified by developers to use on enterprise development projects. This release of Enterprise Library includes application blocks for Caching, Cryptography, Data Access, Exception Handling, Logging, Policy Injection, Security and Validation.

Get it HERE.

Get Power Point Presentations for Microsoft patterns & practices Enterprise Library 3.0 HERE.

_

posted by tadanderson at 9:45 PM 0 comments

Windows Workflow Foundation Web Workflow Approvals Starter Kit

Overview from the MSDN download site:

This starter kit is a Visual Studio 2005 project that demonstrates using Windows Workflow Foundation for simple task oriented workflow in an ASP.NET web application. A workflow model is used to automate work order requests at a small example company. It includes three pre-defined roles which each play a part in the work order creation, approval and monitoring. The starter kit may be modified for other workflow models to suit other small web based task management systems.

Get it here.

posted by tadanderson at 8:49 PM 0 comments

Thursday, April 05, 2007

Software Product Line Engineering and Variability Modeling of Software-intensive Systems (VaMoS)

Often some of the best information available on the latest techniques used to develop software comes out of the proceedings published after a conference. Usually you have to purchase them for $100 and up. Example: 10th International Software Product Lines Conference (SPLC 2006)

The 10th International Software Product Lines Conference (SPLC 2006) did post some of the papers from the conference here. This one is very good.

The First International Workshop on Variability Modeling of Software-intensive Systems (VaMoS) has posted their proceedings and have made them available for free download. It covers a wide range of topics related to Software Product Line Engineering.

It would be nice if more conferences did the same.

Below is the table of contents of what you will find in the VaMoS proceedings:

Keynote
Software Product-Lines: What To Do When Enumeration Won’t Work ... 9
David L. Parnas

Technical Papers
Exploring the Dimensions of Variability: a Requirements Engineering Perspective ...17
Sotirios Liaskos, Lei Jiang, Alexei Lapouchnian, Yiqiao Wang, Yijun Yu,
Julio Cesar do Prado Sampaio Leite, John Mylopoulos

Requirements Modelling and Design Notations for Software Product Lines ... 27
John Brown, Rachel Gawley, Ivor Spence, Peter Kilpatrick,
Charles Gillan, Rabih Bashroush

An Aspect-oriented Approach for Representing Variability in
Product Line Architecture ... 37
Youngbong Kim, Mikyeong Moon, Keunhyuk Yeom

Separation of Variability Dimension and Development Dimension... 45
Isabel John, Dirk Muthig, Jaejoon Lee

Modelling Variation in Quality Attributes ... 51
Leire Etxeberria, Goiuria Sagardui, Lorea Belategi

KumbangSec: An Approach for Modelling Functional and Security Variability
in Software Architectures... 61
Varvana Myllärniemi, Mikko Raatikainen, Tomi Männistö

Visualisation of Variability in Software Product Line Engineering ... 71
Daren Nestor, Luke O'Malley, Ernst Sikora, Steffen Thiel

Unified Feature Modeling as a Basis for Managing Complex System Families ... 79
Mark-Oliver Reiser, Ramin Tavakoli, Matthias Weber

Adding Aspects to xADL 2.0 for Software Product Line Architectures ... 87
Nadia Gámez, Lidia Fuentes

Language and UML Support for Features: Two Research Challenges... 97
Roberto Lopez-Herrejon

Using Goal-Models to Analyze Variability ... 101
Bruno Gonzalez-Baixauli, Miguel A. Laguna,
Julio Cesar do Prado Sampaio Leite

On the Structure of Problem Variability: From Feature Diagrams to
Problem Frames... 109
Andreas Classen, Patrick Heymans, Robin Laney, Bashar Nuseibeh, Thein Tun

DecisionKing: A Flexible and Extensible Tool for Integrated Variability Modeling... 119
Deepak Dhungana, Paul Grünbacher, Rick Rabiser

FAMA: Tooling a Framework for the Automated Analysis of Feature Models... 129
David Benavides, Sergio Segura, Pablo Trinidad, Antonio Ruíz-Cortés

Specifying Variability of an Extensive Mobile System for Feasible
Stakeholder Communication and Optimized Delivered Product Architecture ... 135
Lech Krzanik

Challenges in the Application of Feature Modelling in
Fixed Line Telecommunications... 141
Charles Gillan, Peter Kilpatrick, Ivor Spence, Rachel Gawley,
John Brown, Rabih Bashroush

Using Problem Descriptions to Represent Variabilities For
Context-Aware Applications... 149
Mohammed Salifu, Bashar Nuseibeh, Lucia Rapanotti, Thein Tun

Layered design approach for context-aware systems... 157
Brecht Desmet, Jorge Vallejos, Pascal Costanza, Robert Hirschfeld

A Plea for Help with Variability, in Two Acts ... 167
Reed Little, Randy Blohm

Variability Models Must Not be Invariant!... 171
Elmar Juergens, Markus Pizka

Get it HERE

For more papers from the First International Workshop on Variability Modelling of Software-intensive Systems (VaMoS) go here.

_

posted by tadanderson at 7:26 AM 0 comments

Wednesday, April 04, 2007

Expression Blend and Expression Web will be available to MSDN Premium subscribers.

Expression Blend and Expression Web will be available to MSDN Premium subscribers.

This is great news!!! When they removed the Expression tools from the MSDN subscriber's area, I thought we were going to get stuck having to buy them.

According to this blog:

"Based on this feedback, I am pleased to say that we will be making Expression Web available starting today to all MSDN Premium subscribers. We will also make Expression Blend available to MSDN Premium subscribers shortly after the Expression Studio release later in Q2 2007. Expression Blend and Expression Web are intended to help creative professionals collaborate with developers to create rich user experiences for the Web, Windows Vista applications and beyond, which means we need to make sure both tools are readily available to our developer community."

posted by tadanderson at 8:26 PM 0 comments

Tuesday, April 03, 2007

.NET Framework 3.5- C# 3.0, ASP.NET 3.5 & ADO.NET vNext

Wow. Could we move any faster??? The .NET Framework 3.5 coming around the corner, and we can't find any .NET Framework 2.0 developers, much less .NET Framework 3.0.

Well at any rate it is coming and coming fast. Here is some info:

Books:
Pro ASP.NET 3.5 Server Controls with AJAX Components (Pro)
Pro ASP.NET 3.5 in C# 3.0, Second Edition
Pro C# 3.0 and the .NET 3.5 Framework, Fourth Edition

Downloads:
Microsoft Pre-release Software Visual Studio Code Name "Orcas" - March 2007 Community Technology Preview (CTP)
Orcas Base Image
Virtual PC 2004 SP1 or Virtual Server 2005 R2

Information:
Notes on the January CTP
.NET Framework 3.5 for Orcas Appears Official
February CTP of Visual Studio "Orcas" / .NET 3.5 is out
My "First Look at Orcas" Presentation

posted by tadanderson at 6:48 PM 0 comments

Previous Posts

  • DevOps: A Software Architect's Perspective Book Re...
  • Scaled Agile Framework (SAFe) LiveLessons Video Se...
  • Bulletproof Android: Practical Advice for Building...
  • Swift for Programmers Book Review
  • Security in Computing (5th Edition) Book Review
  • Swift in 24 Hours, Sams Teach Yourself Book Review
  • Sparx Systems Releases Enterprise Architect 12
  • Learning Swift Programming Book Review
  • Android Security Internals: An In-Depth Guide to A...
  • Adaptive Code via C#: Agile coding with design pat...



Archives

  • December 2005
  • January 2006
  • February 2006
  • March 2006
  • April 2006
  • June 2006
  • August 2006
  • October 2006
  • November 2006
  • December 2006
  • January 2007
  • February 2007
  • March 2007
  • April 2007
  • May 2007
  • June 2007
  • July 2007
  • August 2007
  • September 2007
  • October 2007
  • November 2007
  • December 2007
  • January 2008
  • February 2008
  • March 2008
  • April 2008
  • May 2008
  • June 2008
  • July 2008
  • August 2008
  • September 2008
  • October 2008
  • December 2008
  • January 2009
  • February 2009
  • March 2009
  • April 2009
  • May 2009
  • June 2009
  • July 2009
  • August 2009
  • September 2009
  • October 2009
  • November 2009
  • December 2009
  • January 2010
  • February 2010
  • March 2010
  • April 2010
  • May 2010
  • June 2010
  • August 2010
  • September 2010
  • October 2010
  • November 2010
  • December 2010
  • January 2011
  • February 2011
  • March 2011
  • April 2011
  • May 2011
  • June 2011
  • July 2011
  • August 2011
  • September 2011
  • October 2011
  • November 2011
  • December 2011
  • January 2012
  • February 2012
  • March 2012
  • April 2012
  • May 2012
  • June 2012
  • July 2012
  • August 2012
  • September 2012
  • October 2012
  • November 2012
  • December 2012
  • January 2013
  • February 2013
  • March 2013
  • April 2013
  • May 2013
  • June 2013
  • July 2013
  • August 2013
  • September 2013
  • October 2013
  • November 2013
  • December 2013
  • January 2014
  • February 2014
  • March 2014
  • April 2014
  • May 2014
  • June 2014
  • July 2014
  • August 2014
  • September 2014
  • October 2014
  • December 2014
  • February 2015
  • March 2015
  • April 2015
  • June 2015
  • July 2015
  • September 2015

Powered by Blogger