Delivering good quality software  I am wondering why it is so difficult to deliver good quality software. Is it so hard? Every customer wants good quality and their definition or measurement of quality is so varied. So what is my definition of quality? Simply put – End users are successfully using your software to achieve [...]

Investing in Requirements

I.N.V.E.S.T. Principles of Requirements by Bill Wake Independent • Avoid Dependencies. • Combine requirements or split if there are dependent elements. Negotiable • Requirements are not written contracts. • Flexible about implementation. Valuable • Should be written to emphasize business value . Estimatable • Requirements are elements of planning and have to be estimatable (on [...]

How Internet Advertising Targets & Tracks You?

The question that was put forward was: “How does internet ad network know my interest? I saw couple ad for watches last night whereas I was googling for watches in evening.” – Pritesh So the situation most likely as I imagine here is that Pritesh googled for wrist watches last evening and went on a [...]

I have come across this multiple times over the last few weeks when I have two objects that need to be compared for values. In more practical scenario these objects are not necessarily referencing the same objects internally but may have the same values. Lets take an example of this simple Customer class. Now this [...]

Here are a few principles I gathered over a period of time to design and develop web/WCF services.   Service Encapsulation. Services should abstract the business logic inside the application and provide high level business functions e.g. Quote or ProcessPayment. Service method names must be valid business transactions or must start with verbs. Boundaries are [...]

Here are a few rules to be adopted and observed while designing (WCF) Data Contracts for Services that are being written on top of existing applications. This is done typically as a re-engineering or rewriting plan. Some ORM tools allow creating Data Contracts from Database Structures very simple, but it does not mean you would [...]

Using Dependency Injection is a good idea to decouple various layers of an application. In a simple three tier application the Presentation layer has the dependency of Business Logic Layer and the Business Logic Layer has the dependency of Data Access Layer. For Business Logic Layer it is relatively simple as you would use Constructor [...]

Whats in your performance tool kit?

Recently I have had the opportunity to do a dedicated Performance Improvement project where I landed up using a lot of tools and utilities. Now that the project is nearing an end, here are the tools that I found useful and may not be uninstalling. HTTPWatch Basic Fiddler RedGate ANTS Performance Profiler dynaTrace AJAX Edition [...]

The alleged gain in performance that stored procedures guarantee over plain SQL code lies in the reuse of the execution plan. The false myth is that a Database Engine reuses the execution plan only for Stored Procedures. SQL Server Online Documentation: When any SQL statement is executed in SQL Server, the relational engine first looks [...]

Reducing Size of ViewState in ASP.NET WebForms by writing a Custom ViewState Provider (PageStatePersister). Part 1/2 Ok, now that we have the supporting classes implemented in Part 1 of this two part series we will start with creating the actual PageStatePersister. Microsoft provided PageStatePersister as part of the ASP.NET Framework, its an abstract class with [...]

ViewState, even though it makes a developers life simple by enabling a rich even model, it is considered a performance evil. Performance evil not only because it adds a large amount of data in the Request & Response of a page, but also because you have very less control over it. This is until ASP.NET [...]

Here is a presentation I prepared as part of my MBA Curriculum a few years ago with my friend & brother-in-law. The PowerPoint with Raw Research can be downloaded from here. US Sub-Prime Crisis – Presentation And Research

© 2013 Ashish Nangla's Blog Suffusion theme by Sayontan Sinha