Microsoft SkyScrapr
Architecture Journal Profile: Faisal WarisIn this issue, we catch up with Faisal Waris, an architectural consultant at Ford. The Architecture Journal asks him about the role, what some of his challenges are, and his views on architecture.
Diego Dagum's giving us some tips to get into Software architectureWe had a great conversation with Diego, a Software architect, about the way that we can become a software architecture. Tools, tips and his own experience. Everything started with a game for him. Step by step guidance and a good picture on how can we...
Communicating and Relationships in ArchitectureAs a solutions architect, you need to gain the cooperation and support of three audiences: Business Stakeholders (the people who commission the work), Architects, Project Managers, Developers (the technical people who accomplish the work) and End Users...
The Total Solution Life CycleThe total solution life cycle includes the business strategy and business planning activities that precede the software development life cycle (SDLC), as well as the deployment and ongoing operations that follow. We examine the tools used to create...
Write Code Once For Both Mobile And Desktop AppsThere are many reasons you might want to share business logic across both platforms, regardless of whether the original application was written for Windows or Windows Mobile. You can start from either, and port to the other. The techniques and principles...
MSDN Webcast: DinnerNow Technical OverviewIn this session, we break down the architecture of DinnerNow, the flagship Microsoft .NET 3.0 sample application. We discuss the use of technologies such as Windows CardSpace, Windows Communication Foundation, Windows Workflow Foundation, Windows...
MSDN Webcast: Visual Basic .NET Soup to Nuts: Building a Multi-Tier Business ApplicationIn this Microsoft Visual Basic .NET Soup to Nuts webcast series, we have covered the basics of building applications with Visual Basic. Join this final session to see how you can build a multi-tier business application with Visual Basic. Do not miss this...
MSDN Webcast: The Role of the Software ArchitectIn this session, we explore the role of the software architect-from defining what the job role actually entails, what it takes to be successful at it, and what steps you can take to become a software architect (or a better one) today.
Jean-Paul Boodhoo on Demystifying Design Patterns Part 4Jean-Paul is back to help us grow more brain cells in learning about patterns in .NET. In this installment JP uses the Specification Pattern to give almost unlimited extensibility to our example contacts list application.
Transitioning from a Developer to an ArchitectAre you a developer who would like to learn more about becoming an architect? Or how to get formally recognized as one (since you already wear the design and architecture hat along with the developer one)?. During this session we will discuss how you can...
Scott Stanfield on the Importance of AestheticsScott Stanfield from Vertigo Software is back (see show #11) to talk about cultivating an aesthetic sense around software, media, and user experience.
Services Orientation and Other Architectural ApproachesOne of the hottest topics in software architecture is the services oriented approach to building solutions and how this can provide agility, flexibility and reuse. This session will give an overall description of service orientation and how it differs...
ARCast.TV: Training - Architect as DesignerFor those aspiring architects among us, this week we consider the role of designer. Frank Lloyd wright is the most famous American architect but what did he have to say about design? Join me on this trip around the world to Los Angeles, Boston and...
ARCast.TV: Presenter First Pattern (Part 1)Remember way back in the day when you first heard of the Model View Controller pattern (MVC) ? Or perhaps you have heard of Model View Presenter (MVP). While preparing for my Tech-Ed presentation this year I ran across the Presenter First pattern. I was...
Miguel Castro on ExtensibilityOur old friend Miguel Castro is back to give us a fresh look at software architecture. This show will be helpful for both beginners and veteran developers. Miguel uses some well known and perhaps not so popular patterns to make your project flexible and...
Software Development Lifecycle and MethodologiesOver the years the various approaches teams have used to develop software have evolved. Join Dave Remmer in the second of a series focused on aspiring architects where we will discuss the various stages projects go through and sample some of the...
ARCast: 2012 and Network ConvergenceInfratructure that is not only stadiums and sports venues but also a great deal of IT Infrastructure. Today we are chatting with Alf Raju who is working on a plan to insure that the infrastructure that remains will produce value for the community for...
MSDN Webcast: Visual Basic .NET Soup to Nuts: Custom Windows Forms ControlsJoin this session if your applications require a user interface (UI) that is unique or different than the standard Windows Forms. In this webcast, we explore some advanced features of Windows Forms development, such as Windows GDI+, that enable you to...
Microsoft Office Live Seminar: Michael Gerber presents, "Awakening the entrepreneur within"Entrepreneurs are inventors. But their inventions are not products, but new companies that organize the world in unique and compelling ways. Their companies add value to their customer's lives, provide solutions to the problems that confront us at every...
Architecture 101Architecture is the balance between art and engineering, it requires a certain mindset and approach to solving problems. Architects often function as a bridge between the business users and development groups and are increasingly being recognized as a...
Microsoft Office Live Seminar: ?Delegation is not a dirty word."For some of us telling someone else what to do is one of the most uncomfortable aspects of being an entrepreneur. But in order to be a successful business owner you have to master the art of delegating because you can't do everything yourself. We will...
ARCast.TV: Exploring Disney Studios with Steve DavisDisney Studios is without a doubt a highly successful an influential player in Hollywood. Actually, they are in Burbank right near the NBC studios. While I was in LA checking the place out for the Architecture Training videos about Architect as Explorer...
Making Governance Work at a Developer LevelThis article will show you how to implement business policies without creating a bureaucratic nightmare.
Quality-Attribute Auditing: The What, Why, and HowSoftware quality is a key factor in the long-term success of any company. Quality software will increase profitability, reduce maintenance cost, and achieve higher customer satisfaction and loyalty. Software-quality audits will help ensure that the...
Monitoring Quality AttributesThis article covers how to apply architecture statements to a real-world environment.
Modern CRM SolutionsThis article covers how a modern customer-relationship management system solved the business loss faced by Humongous Insurance.
The Role of Architecture in Business AnalysisUnderstand the architecturally significant aspects of business analysis on which a project architect should focus.
ContractsThis article covers what architects should know about contracts and why. Its objective is to enable an architect to identify the clauses in a contract that could affect the design and implementation of a system, and, conversely, how system design might...
Beyond Keywords: Structure and Intelligence from TextThis article reviews key concepts in text analytics. Text processing for business intelligence involves a variety of tools, with many applications that can be of great value. Keyword search is just a start. Beyond keyword search, the relevance of a...
Mentoring: A Natural Element of Architectural LeadershipAs an experienced architect, I would encourage you to make the choice to perfect our profession by mentoring a hopeful new architect. It's worth the journey. With mentoring, everybody wins.
Device Management and ProvisioningThe term "provisioning" for a device means to evolve a device to a state in which it can be handed-off to an end user, or end-user team, for their specific use in a functional manner. The device could be a desktop, laptop, server, or mobile device.
Are We Engineers or Craftspeople?What is software engineering, and should we care?
ARCast.TV: Training - Architect as AdvocateHave you ever been in trouble with the law? I hope not, but if you ever were arrested in the US they would tell you that you have "...the right to remain silent" and "...You have the right to speak to an attorney, and to have an attorney present during...
Eric Evans on Domain Driven DesignEric Evans offers his insights on good software development using Domain Driven Design techniques.
ARCast.TV: Training - Architect As ExplorerImagine standing on the shore of a new discovery and looking out to a cloudless horizon. Who will chart the path? Who will lead the team to the undiscovered country? The Architect - that's who!
Jean-Paul Boodhoo on Demystifying Design Patterns Part 2This week Jean-Paul Boodhoo continues his design pattern series. Jean-Paul shows us two more patterns, Monostate and Strategy.
Architecture: Description Really MattersArchitecture description can affect the "life and death" of the software system that it describes.
Jack GreenfieldJack Greenfield is an architect for enterprise frameworks and tools at Microsoft. He was previously chief architect, practitioner desktop group, at Rational Software Corporation, and founder and CTO of InLine Software Corporation. At NeXT Computer, he...
Software-Engineering Asset ManagementWhen users ask for what they need, it's not enough to tell them what you have. When someone looks for the answer to a problem, users will (hopefully) understand what the problem is, but probably will not understand the solution yet. Software-engineering...
Software Architecture: Past, Present and FutureJunior and senior developers are asking about software architecture and software architects. In this article we discuss the history of software architecture and address the forbidden question: "Can a developer become software architect?"
Layered Versus Client-ServerBeware: Architectural advice from local experts might not be correct. Each architecture style has a distinct purpose for communicating a specific understanding. An architect has the responsibility to understand the styles and employ them by representing...
Compliance: What Architects Must KnowCompliance is a complicated domain that is built upon a simple concept: doing what you said you were going to do.
"Are We There Yet?" Estimation and Tracking on the Road to Software Development and ImplementationCost estimation and tracking are two very important elements in software development and implementation, but the relationship between them is even more important.
What is an Architect?Imagine two architects sitting together at a technology conference ? one is clearly very interested in the impact of architecture on the long term IT strategy of the company, the other is interested in how best to use SQL data access patterns in an...
Diplomatic Software: Customer RelationsSometimes, your biggest architectural challenge is the customer's technical staff.
The Customer: The Missing LinkUnderstanding business processes requires working with the customer to understand their business fundamentals.
Follow Me!A leadership approach that is based on principles is flexible and widely applicable to many situations. You should make an attempt to understand and apply the 10 principles of leadership that are presented in this article.
Business-Process Engineering (BPE) and Business-Process Management (BPM)Learn about Business-Process Management (BPM), and get ready for the future. What is right about IT is that we recognize the value of full collaboration with our business customers and, finally, we are developing tools that enable us to realize that...
Keys to the KingdomThere are four keys to an architecture that unlocks business value; to know them is good, to use them is great.
Jeff Atwood on the Human Side of Software DevelopmentJeff Atwood from codinghorror.com tells Carl and Richard what's on his mind, including his recommended reading list, and above all the human side of software development.
ARCast: Architect Panel - Tel AvivI love to hear about the mistakes people make. Why? Because it is our mistakes that make us into experienced architects. If I can learn from the mistakes that others make - perhaps I can avoid making them while still learning their lesson. In this episode...
Jean-Paul Boodhoo on Demystifying Design Patterns Part 1Jean-Paul Boodhoo starts a multi part series on design patterns that can be applied in any environment. This week Jean-Paul explores Factories and Singletons in ways you may not have thought of.
Tutorial 21: Implementing Optimistic ConcurrencyFor a Web application that allows multiple users to edit data, there is the risk that two users might be editing the same data at the same time. In this tutorial, we'll implement optimistic-concurrency control to handle this risk.
Tutorial 24: Paging and Sorting Report DataPaging and sorting are two very common features when displaying data in an online application. Listing all on one screen can lead to information overload for the user perusing the data. To help make the results more manageable, we can break up the data...
Architecture Journal Profile: Don FergusonDr. Donald Ferguson is a Microsoft Technical Fellow in Platforms and Strategy in the Office of the CTO. Don focuses on both the evolutionary and revolutionary role of information technology in business. Prior to joining Microsoft, Don was an IBM Fellow...
Tutorial 23: Limiting Data-Modification Functionality Based on the UserA number of Web applications support user accounts and provide different options, reports, and functionality based on the logged in user. In this tutorial, we'll examine how to adjust dynamically the data-modification capabilities based on the visiting...
A Tale of Two, Three, Four (or More) InterfacesThis article covers the art and science of identifying an application's need for common services.
Solution ArchitectureSolution architecture starts with an understanding of the problem, and this is where so many projects fail. Too many people have the idea that solving a problem is all about coding. The coding is the easy part.
Murphy?s Law Manifests on Manic MondayThe Information Technology Infrastructure Library (ITIL) is an integrated series of best practices in IT service management that conform to the British Standards Institution standard (BS15000), with over 1,00,000 certified practitioners worldwide. ITIL's...
From Stakeholders to Models: It Is All a Matter of ViewpointsAn article on viewpoints and views, the differences between them, and why you should care.
Strengthen Access Control with Enterprise Identity Management ArchitectureWithout robust identity management, we can never be confident of our security.
Tutorial 17: Examining the Events Associated with Inserting, Updating, and DeletingExtend the built-in inserting, updating, and deleting capabilities of ASP.NET data Web controls, and customize the editing interface to update only a subset of the product fields, with this tutorial from Scott Mitchell.
Tutorial 16: An Overview of Inserting, Updating, and Deleting DataIn this tutorial, Scott Mitchell explains how to map the Insert(), Update(), and Delete() methods of the ObjectDataSource to methods of classes in the BLL, as well as how to configure the GridView, DetailsView, and FormView controls to provide...
Design Skills: The Practice of DesignTo meet the challenges placed on us by both the customer and our IT leadership, we must understand the whole system of interconnected elements that participate in, affect, and influence the design process. Design is about understanding "the whole system."
Validating ASP.NET Query StringsRecent statistics show that cross-site scripting (XSS) attacks are gaining momentum and they claim the lion's share of discovered attacks. Successful XSS attacks are always due to unvalidated or improperly validated input data, and more often than not,...
Have Your Layer Cake and Eat It, TooAs a design pattern, layering is an established best practice, but it can be used for more than just providing structure to an application.
The IT EnvironmentLike good actors, architects play many roles?from archaeologist to inventor to mediator to security agent to leader?but often it seems as if technologist were the least of them.
Conflict ManagementArchitects must understand that business leads, project managers, and developers consider them as alien. One of the reasons for this is a conflict of interests. Relationship management and clearly defined and communicated architecture-service offerings...
Human DynamicsBeing an architect is all about relationships, and one relationship for which you are responsible is the one that you create between leadership and learning.
The President's Dilemma: Business and Technology Strategy RationalizationHow does an architect get approval and money from a business executive? Not by being an architect, but by thinking like the executive.
Infrastructure ArchitectureAn introduction to a new branch of architecture that is urgently needed to support modern organizations, and needed to help architecture to mature as a whole.
The Software Architect and Organizational ReadinessTo be successful, an architect must be able to assess an organization's readiness to change. Implementing organizational-readiness activities in your project plan is above and beyond the technical process of software architecture. The good thing is that...
Implementing System-Quality AttributesBuild high-quality software, leverage industry practices, and plan to build quality into your solution; but be sure to prioritize carefully.
Business-Capability Mapping: Staying Ahead of the JonesesBusiness-capability mapping enables adaptive, sleek architectures that can respond quickly to changes in today's competitive business landscape.
Overview of Visual Basic 9.0Visual Basic has always centered on building pragmatic, data-oriented, line of business applications. The next release of Visual Basic includes a set of features that result in a profound affect a developers productivity when building data-oriented...
Mark Dunn on Streams in .NETMark Dunn is back on DNRTV and he's screaming about streaming this time. Getting to know and loves streams in .Net is fundamental. Mark walks us through doing basic file I/O and delves into some advanced topics like using network, memory and buffered...
Paul Sheriff on Providers in .NETOur friend Paul Sheriff speaks to us from Sunny California about Providers in .NET. Paul shows us how to build and use your own providers and gives some examples of common yet powerful provider models that come with .NET.
Perspectives on ASP.NET AJAXMicrosoft ASP.NET AJAX (formerly referred to as "Atlas") adds many new capabilities to ASP.NET 2.0, all of which are geared towards making it easy to add AJAX-based functionality to your Web sites. In this column, we examine ASP.NET AJAX, looking closely...
The Service Factory for Windows Communication Foundation (WCF)Web Service Software Factory (WCF Release) is featured in the Service Station column in the February 2007 edition of MSDN Magazine. This article discusses how to customize the guidance package, and provides a suite of code recipes that integrate with...
Extend The 2007 Office System With Your Own Ribbon Tabs And ControlsThis article discusses: an introduction to the Ribbon; RibbonX controls and features; upgrading add-ins to use RibbonX and; building add-ins for Word and Excel
Build a Queued WCF Response ServiceWindows Communication Foundation (WCF) enables disconnected work between clients and services. The client posts messages to a queue and the service processes them later. Such interaction permits a different programming model from the default...
Develop Add-Ins For PowerPoint And Visio Using VSTOThis article discusses: extensibility for Microsoft Office applications; PowerPoint object model and Visio object model
Introducing Visual Studio 2005 Team Edition for Database ProfessionalsDatabase development has gotten easier, thanks to Visual Studio 2005 Team Edition for Database Professionals (or DB Pro edition, for short). If you need to create, manage, or build solutions that connect to SQL Server, this tool is for you. This article...
MSR Technical Education Series: Designing .NET Class LibrariesThis class presents best practices for designing reusable libraries. The guidelines are applicable to frameworks ranging in size and in their scale of reuse from large system frameworks to small components shared among several applications. This...
Architecture Journal Profile: Scott GuthrieScott Guthrie is a general manager in Microsoft's Developer Division. He runs the development teams that build CLR (Common Language Runtime), ASP.NET, WPF (Windows Presentation Foundation), "WPF/E," Windows Forms, IIS (Internet Information Services) 7.0,...
Team Foundation Server Version ControlVisual Studio Team System provides extensibility options for almost every area of the product, and the Version Control service is a shining example. Using the rich APIs, we create a simple add-in that lets you put Word documents into the Team Foundation...
Client-Side Web Service Calls with AJAX ExtensionsThere were certainly places where ASP.NET would generate client-side JavaScript, most notably in the validation controls and more recently with the Web Part infrastructure, but it was rarely more than a simple translation of server-side properties into...
The Server Side of ASP.NET PagesAs an ASP.NET developer, you probably have a pretty good idea about how ASP.NET handles code in an .aspx resource, how that markup is parsed and transformed into a Visual Basic? or C# class on the fly, and so forth. But what happens next? Where are the...
TechNet Webcast: An Overview of Windows PowerShellJoin this webcast to experience Windows PowerShell, the way everyone will be automating Windows and other Microsoft server products in the years to come. Scripting guru Don Jones shows you how to start making Windows administration faster and easier when...
MSDN Webcast: Enabling a New Generation of Dynamic Applications Through SOAThe Microsoft vision for service-oriented architecture and how Microsoft supports it by way of an integrated platform. Learn how you can use your existing line-of-business applications and data exposed as services (using the .NET Framework and adapters)....
Inside Diagnostic Tools for .NETMany diagnostic tools use the CLR Profiling API-even those that aren't strictly profilers. So if you've ever wondered how these tools work, a look at the Profiling API is a good start. In this column, you'll see how they work and look at some useful tips...
Simplify Data Binding In ASP.NET 2.0 With Our Custom ControlA flexible and intuitive approach that provides consistent behavior for data binding and unbinding, validation, error handling, and error display in forms-based Web interfaces.
The Client Side of ASP.NET PagesIn this column I'll analyze the client-side source code that ASP.NET pages generate. I'll cover hidden fields such as the well-known view state, but also little known ones such as control state, event validation, event target, and argument and...
Single Sign-On: A Developer's Introduction To Active Directory Federation ServicesADFS solves a number of problems?one of the most obvious and compelling being business-to-business automation. In this article I'm going to take a look at ADFS from the perspective of a developer who is building a Web application and wants to allow other...
Documenting And Evaluating The Security Guarantees Of Your AppsThis article discusses: Analyzing the security of application features; A deeper look at security requirements; A top-down security design extension to SDL; and Disclosing details to users and experts.
8 Simple Rules For Developing More Secure CodeThis article discusses: Using analysis tools and experts to review your code; Reducing risk using fuzzing and threat modeling; Keeping bad input out of your applications; and Learning all you can about security concepts.
MSDN Webcast: SharePoint Workflow Development and ModificationsIn this webcast, we explain the concepts behind workflows in Microsoft Office SharePoint Server 2007 and show how you can enable users to modify the workflow while it is running on an item. We demonstrate how to create two workflow modifications in...
MSDN Webcast: Extending the Web Content Management Features of Office SharePoint Server 2007Find out how to extend the Web content management authoring and rendering features in Microsoft Office SharePoint Server 2007. Topics we cover in this webcast include extensions to the navigation system, creating new document to page converters, and...
MSDN Webcast: Building Collaborative Applications Without Code Using Office SharePoint Designer 2007Learn how to use Microsoft Office SharePoint Designer 2007 to build productive and efficient solutions on Microsoft SharePoint Products and Technologies. In this webcast, we explain how you can use SharePoint Designer 2007 to create and deploy interactive...
MSDN Webcast: Developing, Deploying, and Hosting Rich Office InfoPath 2007 Client and Browser FormsDid you know that you can design a single Microsoft Office InfoPath 2007 form for both the rich client and for the browser? This webcast presents this design-once process, provides best practices for debugging and deployment, and explains how to improve...