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






Wednesday, March 29, 2006

Scrum for Team System

From the Scrum for Team System Site:
Scrum for Team System is a free Agile Software Development Methodology add-in for Microsoft Visual Studio Team System, developed by Conchango, in collaboration with Ken Schwaber and the Microsoft Technology Centre UK.

Scrum for Team System provides development teams with deep support for the use of Scrum, when running projects using Visual Studio Team System’s integrated suite of lifecycle tools.

>>GET IT HERE<<

posted by tadanderson at 6:27 AM 0 comments

Monday, March 27, 2006

Microsoft's Internet Explorer Developer Toolbar

From the Microsoft download page:

Overview

The Internet Explorer Developer Toolbar provides several features for exploring and understanding Web pages. These features enable you to:

-- Explore and modify the document object model (DOM) of a Web page.
-- Locate and select specific elements on a Web page through a variety of techniques.
-- Selectively disable Internet Explorer settings.
-- View HTML object class names, ID's, and details such as link paths, tab index values, and access keys.
-- Outline tables, table cells, images, or selected tags.
-- Validate HTML, CSS, WAI, and RSS Web feed links.
-- Display image dimensions, file sizes, path information, and alternate (ALT) text.
-- Immediately resize the browser window to a new resolution.-- Selectively clear the browser cache and saved cookies. Choose from all objects or those associated with a given domain.
-- Choose direct links to W3C specification references, the Internet Explorer team weblog (blog), and other resources.
-- Display a fully featured design ruler to help accurately align and measure objects on your pages.

The Developer Toolbar can be pinned to the Internet Explorer browser window or floated separately.

This Beta 2 version of the toolbar contains functionality and stability enhancements over previous versions and includes the following improvements.
-- You can now selectively enable and disable CSS parsing.
-- The Misc menu contains a color picker.
-- Several link reports are available.
-- When you select an element in the DOM element tree list, the selected element scrolls into view if it is not already visible in the browser window.

>>> Download Here <<<

posted by tadanderson at 5:44 AM 0 comments

Friday, March 24, 2006

Microsoft Patterns and Practices Mobile Baseline Architecture Toolkit (BAT)

A new patterns & practices Guidance offering to help you build end to end solutions on the Mobile platform. It includes a port of the Composite UI Application Block to the .NET Compact Framework.

This is very good news and great timing. We are already using their Smart Client Baseline Architecture Toolkit as an architectural guide on the Desktop smart client. This mobile version should be put together in the same architectural context as the desktop, which will allow us to have similar architectural structures on the Desktop client and the Mobile client.

From the introduction documentation:
This series of guidance documents discusses the Mobile Client Baseline Architecture Toolkit (BAT) project. Mobile Client BAT is a project from the Microsoft patterns & practices (p&p) group with the following aims:
· To make it easier to create complex mobile applications that integrate with existing systems, reducing development time and cost
· To help you build mobile applications having an architecture that meets common requirements, such as deploying applications, working offline, and caching reference data
· To provide a comprehensive client application as a reference implementation that demonstrates best practices and acts as a source of guidance for developers

A Baseline Architecture Toolkit consists of:
· A general introduction to help you understand and use the toolkit
· Design patterns for applications of the type targeted by the toolkit
· One or more application blocks, such as those described in this document
---The application blocks include documentation that explains the design criteria and implementation details of the blocks, and shows how to use and extend the blocks
· A reference implementation: a simple yet well-designed application that illustrates best practices for the relevant type of application and shows how to build applications using the patterns and blocks described
· Lifecycle documents that explain specific features of working with the BAT and its associated technologies; including activities such as source control, development, and testing regimes
· Guidance packages that integrate with Visual Studio 2005, providing Wizards and other tools integrated with the development environment that make it easier to build the targeted type of application

Check it out here.

posted by tadanderson at 5:10 PM 0 comments

Tuesday, March 21, 2006

Microsoft .NET 2.0 Tools Evaluation (Part II- Update) - DSL, GAT, SQL 2005, Mobile 5, VSTS, Enterprise Library, Reporting Services, etc.

Here is an update on our progress with the Microsoft products and toolkits that we are considering for use on my current project. The first post is here.

Domain-Specific Language (DSL) Tools - DONE - Going with UML. DSL's have a great potential if used by the right people for the right things. Currently this would be a great overhead. In the future DSL's may serve a purpose in allowing a visual representation to configuring our product, but only after it has been institutionalized as a product, we are experts in DSL, and DSL tools from Microsoft have proven their effectiveness in the software engineering field. See this for more info.

Software Factories- DONE - Too far off in the future for too much consideration. The core practice does involve Product Line Engineering, so in the future we may be able to migrate over. This would include taking advantage of DSL.

Guidance Automation Toolkit- DONE- This will work great for restrictive development in the application development cycles, and for configuration of the core asset library. See this for more info.

Composite UI Application Block- DONE - This is a very thorough application block. It takes some time and some proof of concepts to ensure it's usability. It will also have to conform to your architecture. The team that worked on this block is providing great information on the block. See this for more info.

Enterprise Library .NET 2.0 release- DONE - Once again an excellent release from the EL Team.

SQL Server 2005 Mobile Edition- DONE - Excellent integration for design purposes into VSTS and SQL Manager. We are using it as a local data cache on our PPC smart client application.

Microsoft SQL Server 2005 Mobile Edition 3.0 Merge Replication - DONE - We are using merge replication only if the client insists on it. Although merge replication has a great potential for minimizing the amount of development done in resolving concurrency issues with the database, it has proved itself overly complicated and not dependable with previous applications. The development effort will be less effort than it would be to resolve all the issues merge replication introduced. We are also opening up the doors to databases other than SQL for future releases, so merge replication is being avoided.

Visual Studio Team System Suite - DONE - We are using Developer edition of VSTS 2005. The advantages of using the suite where not worth the additional cost. Architect adds no value unless you are a System Architect (See this for more info), and the Tester version would only be good for us if we had a fulltime test team. We are using Sparx EA (see this for more info) to make up for the lack of modeling tools in VSTS.

SQL Server 2005- DONE - Just using and testing. This version's manager rocks compared to 2000 as well as its other enhancements.

Web Services Enhancements 3.0 for .NET - DONE - Because of the lack of support in the Compact Framework 2.0 on Mobile 5.0 we are not using WSE for anything. See this for more info.

Visual Studio Team Foundation Server - NOT STARTED - A possible replacement for the vault and an integration tool for project management.

Reporting Services - NOT STARTED/Looking Good - This will serve as a replacement to Crystal Reports which is currently being used. As mature as SQL 2000 Reporting Services were upon release there is no reason to not accept this change, especially for customers using SQL 2005 or for that mater users that use SQL 2000 which allows for free use of SQL Reporting Services with their SQL Server License.

Mobile 5.0 - DONE - Mobile 5.0 has a lot of great enhancements. They way the mobile market moves forward, we don't have much choice but to use Mobile 5.0.

posted by tadanderson at 9:55 PM 0 comments

Friday, March 17, 2006

Microsoft announces Team Foundation Server is Ready

According to this article Bits are expected to be available on to customers on the Microsoft Developer Network (MSDN) on Monday, March 20.

posted by tadanderson at 9:10 PM 0 comments

Monday, March 13, 2006

Microsoft's Priority- The VB.NET Developer

Microsoft decides to release tools in VB.NET first, maybe?

It would appear from this thread none of the C# developers care, they are to proud to admit they care, or are too inexperienced to realize the impact.

I would have to say they are too inexperienced to realize the impact.

After 2 pages of crap for feedback, I'd say MS has it right. If the VB guys are smart enough to ask for MS releases of tools in VB first, then they deserve to have them.

Responding comments on this topic are here: Microsoft's Priority- The VB.NET Developer

Update:

Tom Archer response to the thread (link above).

posted by tadanderson at 11:07 AM 0 comments

Friday, March 10, 2006

In Praise of Microsoft- SEI partnering, Essential Unified Process, VSTS 2005 Enhancements, Engineer-to-Engineer Connection Program

Although I do a lot of complaining about Microsoft, much of the complaining I do gives me job security. In other words, as long as they keep falling short in some areas, someone is going to have to figure out how to fill in the gaps. It's kind of like the complaining of so many non-IT people I hear, "Why do computers never work right". If they did, I wouldn't have a job.

Some of the positive things I have seen Microsoft doing lately is reaching out for help in the areas they have been lacking.

One prominent areas is process. The MSF has been in dire need of structure since its inception. Here are a few things that shows MS has finally come to realize this.

New Collaboration Enables the Right Guidance

Partnering with SEI is one of the best things any organization can do. I just hope MS does not take lightly the difficulty in getting to the higher CMMI levels. Actually I should say, I hope the people using the CMMI MSF implementation do not take lightly the difficulty in getting to the higher CMMI levels. So far in my career I have seen a lot of firms and companies get their certifications by using Appraisers that deserve to have their license revoked for giving the certification. Institutionalization is not an easy or fast process. I have seen a company given a level 2 certification with only 6 weeks of work done on building the process, and they had never even used it. So how the heck could the process have been repeated enough to be institutionalized.

A lot of the offshore companies laying claim to being CMMI Maturity Level 5 are no where close. What a lot of firms in the US don't understand that chose to use them is that you only are given the level of service you are certified for. I trust the CMMI level 2 -3 offshore companies than I do the level 5 companies, because if you take a hard look level 5 off-shore companies are a dime a dozen, and most of them are no where close to level 2 much less level 5.

None of this is Microsoft's problem. Just like none of it is SEI's problem. It is just something to watch for since the CMMI MSF implementation is going to be so wide spread.

Another thing process related is that they brought in Ivar Jacobson to work on the Essential Unified Process (essUP). I Blogged on this here

My previous Blog contains links to some info on the topic. It seems we now have the UP (Unified Process), which grew to the RUP (Rational Unified Process), and now the BUP (Basic Unified Process) which = (UP + SCRUM) out there in the world of IBM and open source communities. I am assuming the Essential Unified Process (essUP) will be Microsoft's equivalent to the BUP.
Info on the BUP.
Agility and Discipline Made Easy: Practices From RUP and BUP book coming soon.

VSTS 2005 is a pleasure to code with. The added Refactoring tools, snippets tools, and enhanced intellisense make coding fun. There are plenty of new tools for the Developer, Tester, and Project manager to take advantage of.

Although VSTS 2005 is still lacking any support for modeling Sparx Enterprise Architect has been a pleasure to work with, and makes up the difference.

We will have to see how effective the program is, but the Engineer-to-Engineer Connection Program will hopefully provide MS with some valuable information for their future releases of Team System. It is nice to see them going to such great lengths for feedback.

posted by tadanderson at 5:30 AM 0 comments

Wednesday, March 08, 2006

Microsoft's Marketing Machine Marches On, in the wrong direction...

From Tom Archers blog: Why so many examples in Visual Basic?

We find another thing for us to ignore from MS when trying to do what they do, and not what they say to do.

This blog from Feb I wrote touches on the VB.NET & C# mess discussed in the threads from his Blog, plus some other things to ignore from MS.
DNA, SOA, Software Architecture, VB.NET, CMMI, Agile Development - Doing what Microsoft does, not what they say to do…

We will just need to keep turning to third party authors on how to use MS tools, like we always have.
The Marketing Machine Marches on.

UPDATE:
It would appear from this thread none of the C# developers care, they are to proud to admit they care, or are too inexperienced to realize the impact. I would have to say they are too inexperienced to realize the impact.

After 2 pages of crap for feedback, I'd say MS has it right. If the VB guys are smart enough to ask for MS releases of tools in VB first, then they deserve to have them.
Posts on this topic are here: Microsoft's Priority- The VB.NET Developer

At least Rockford Lhotka keeps it on the lighter side: Yet again: VB vs C#

UPDATE 2:

Tom Archer response to the thread (link above).

posted by tadanderson at 5:11 AM 0 comments

Tuesday, March 07, 2006

ASP.NET 2.0 Webcast Series

This series is worth checking out if you have any interest in ASP.NET 2.0:The main page - http://www.learn2asp.net/Campaign.aspx
They are offering
ASP.NET 2.0 for JSP Developers: Take what you already know about object-oriented programming and discover how implementing simple ASP.NET features can help you increase performance, increase security, reduce your code, and simplify your projects.
ASP.NET 2.0 for PHP Developers: See for yourself how ASP.NET 2.0 provides a robust, object-oriented, event driven programming model for developing Web pages while still maintaining the simplicity that PHP developers are accustomed to. Presenters include Joe Stagner.
ASP.NET 2.0 for ColdFusion: Developers Start with an introduction to ASP.NET 2.0 for ColdFusion developers. Then move on to learn how to build master pages and themes in ASP.NET 2.0 and create code that is easier to read and reduces the time and effort involved in maintenance.

posted by tadanderson at 12:14 PM 0 comments

Microsoft® MSDN Virtual Labs

Got this email and figured I would post it.


Training at your convenience and your fingertips

With no cost, no installation, and no formatting, all that's left to do is the training.

Microsoft® MSDN Virtual Labs make it easy for you to get the training you need. They provide a great opportunity to check out the latest Microsoft software and platforms in a no-fuss environment. There's no cost and nothing to install or format. With 13 Microsoft SQL Server™ 2005 and 10 Microsoft Visual Studio® 2005 lab modules, you will learn all you need to make the most of these innovative technologies. To make it easy, each module includes a downloadable instruction manual and a full 90 minutes to complete your training.

Check out these new modules for yourself:

1) Using XQuery with SQL Server 2005 XML Data:
http://go.microsoft.com/?linkid=4533653

After completing this lab, you'll be able to use the built-in methods of the XML data type to execute XQuery queries, execute XQuery and T-SQL together, and modify XML data by using XQuery.

2) Build a Domain-Specific Language Designer Using the DSL Tools for Microsoft Visual Studio 2005:
http://go.microsoft.com/?linkid=4528060

Explore how the DSL Tools for Visual Studio 2005 can be used to build a visual designer with code generation.

3) Understanding, Designing, and Refactoring Code Using the New Class Designer Tool in Microsoft Visual Studio 2005:
http://go.microsoft.com/?linkid=4528063

This lab illustrates the benefits of the new Class Designer tool available in Visual Studio 2005.

4) Using the Application Designer to Design Your Web Service Architecture in Microsoft Visual Studio 2005:
http://go.microsoft.com/?linkid=4528066

In this walkthrough, you will experience the Application Designer, part of the Distributed System Designers in Visual Studio Team Edition for Software Architects.

5) Using the Distributed System Designers to Visually Design and Validate Service-Oriented Systems in Microsoft Visual Studio 2005:
http://go.microsoft.com/?linkid=4528069

This lab illustrates the benefits of the Distributed System Designers available in Visual Studio 2005 to application architects, operations teams, and developers.

6) Using the Logical Datacenter Designer for Configuration and Deployment in Microsoft Visual Studio 2005:
http://go.microsoft.com/?linkid=4528072

Learn to use Logical Datacenter Designer, Application Designer, and Deployment Designer. These designers are part of the Distributed System Designers and ship in Visual Studio Team Edition for Software Architects.

For a complete list of ISV Touchdown Virtual Labs, visit:
http://www.touchdownvirtuallabs.com/

Get started today!

posted by tadanderson at 10:43 AM 0 comments

Wednesday, March 01, 2006

Software Architectural Synthesis Factor Table

We now have Quality Attributes from SEI, Non-functional requirements from the Unified Process and the RUP, and Perspectives which is used in this book which is based on the IEEE Std 1471, which is a great book by the way.

And now 'Quality of Service Requirement' from Microsoft.

Quality attribute requirements drive the design of architecture and the resulting views of the architecture. A Software Architectural Synthesis Factor Table results from several iterations of putting together different abstraction levels and then views of an architecture. The factor table below came from an old project that in the end the client decided would be to costly to move forward with. I thought I would post it to give an example of what a factor table ends up looking like.

Shift-Click image for full size view.


posted by tadanderson at 7:05 AM 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