Posts

Showing posts from April, 2011

How to register .NET components with COM

Summary Extending the ArcGIS applications with custom .NET components requires that the .NET classes are made available to the component object model (COM) runtime by registering the components in the COM registry. The three ways to perform this task are outlined in this document. In addition, if the component is to be used from a COM development environment, you may also want to export a type library, which is also outlined in this document.  Building the project on a development machine Use: On a development machine   When you want to register an assembly for COM interop on a development machine, the simplest way is to open the project in Visual Studio 2005, ensure the project-level Register for COM Interop property is set to true, then build the project.   To check a project's settings, click Project Properties from the Project menu, select the Build (C#) or Compile (VB.NET) page, and select the Register for COM Interop check box. ...

Visual Studio setup and deployment projects

Image
This article describes the basics of Visual Studio setup and deployment projects. Subsequent articles will cover advanced topics, including more on custom actions, .NET installer classes, and how to build an upgrade for the product. Introduction Setup and deployment projects have always been a part of the Visual Studio.NET environment. Setup projects can be used to build various deployment packages, most notably Windows Installer setups packaged as MSI files. I’ll start with a basic setup that installs a C# Windows forms program and adds a shortcut to it. First, select  Setup Project , grouped under  Setup and Deployment  in the  Other Project Types  section. Choosing this will give you an empty project for adding your deployment units. With the project selected in Solution Explorer, the  View->Editor  choice gives you a selection that includes  File System  – this is where you add your files and shortcuts. Application Folder ...

Best practices for software development projects

Introduction Most software projects fail. In fact, the Standish group reports that over 80% of projects are unsuccessful either because they are over budget, late, missing function, or a combination. Moreover, 30% of software projects are so poorly executed that they are canceled before completion. In our experience, software projects using modern technologies such as Java, J2EE, XML, and Web Services are no exception to this rule. This article contains a summary of best practices for software development projects. Industry luminaries such as Scott Ambler, Martin Fowler, Steve McConnell, and Karl Wiegers have documented many of these best practices on the Internet and they are referenced in this article. See also the Related information section at the end of this article. The companion article, Guide to Running Software Development Projects , describes the top ten factors that help improve the success of your project. Best practices 1. Development process - It is import...

Architecture Maturity Models

Overview Organizations that can manage change effectively are generally more successful than those that cannot. Many organizations know that they need to improve their IT-related development processes in order to successfully manage change, but don't know how. Such organizations typically either spend very little on process improvement, because they are unsure how best to proceed; or spend a lot, on a number of parallel and unfocussed efforts, to little or no avail. Capability Maturity Models (CMMs) address this problem by providing an effective and proven method for an organization to gradually gain control over and improve its IT-related development processes. Such models provide the following benefits: They describe the practices that any organization must perform in order to improve its processes. They provide a yardstick against which to periodically measure improvement. They constitute a proven framework within which to manage the improvement efforts. The variou...