Friday, June 29, 2007

007 - Reasons of a Successful Project

These are the top 7 common facts that makes a project successful:

  1. Clarity of requirements
  2. Project Ledership/ Management
  3. Clear Business Goals and Scope
  4. Management Support
  5. Skilled Resources
  6. Development Methodology (Agility)
  7. Good Tools and Infrastructure

I'll provide details on each point in upcoming posts.

Tuesday, June 26, 2007

The Agile Manifesto

Before you start thinking about the Agile development
Take printout of following and pin in front of your desk. Read it again and again untill you are convinced with it (Bug me if you are not).
------------------------------------------------------------------------
Manifesto for Agile Software Development
We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value:

Individuals and interactions over processes and tools
Working software over comprehensive documentation
Customer collaboration over contract negotiation
Responding to change over following a plan

That is, while there is value in the items on the right, we value the items on the left more.
------------------------------------------------------------------------
© 2001, Authors Kent BeckMike BeedleArie van BennekumAlistair CockburnWard CunninghamMartin Fowler
James GrenningJim HighsmithAndrew HuntRon JeffriesJon KernBrian Marick
Robert C. MartinSteve MellorKen SchwaberJeff SutherlandDave Thomas

Monday, June 25, 2007

The Art of Software Development

Hello and welcome to my blog. My name is Abhishek Kaushik and I strongly believe that software development is an art as well as science (I've realized during eight years of software development). Internet has lot of references on technology (from basic programming, oops, patterns etc.) and IT processes (CMMI, Analysis, Estimation etc.) that makes a software implementation successful. However, you seldom find places that aims towards providing information on the common sense we need have for developing a software system that WORKS (Agile development is a great effort in this direction).


Software that really works is the system that is used with ease by end users. No-matter what latest/best technology or process you follow at backend, the bottom line is that system must WORK for the end user. I’ll share what I’ve learned from practical situations that I’ve faced during these years of software carrier.

I must tell you that I’m great supporter of technology (working as .Net Solution Architect; I love my job ) and got opportunities to work upon wide range of technologies including - Assembly, C++, PHP, ASP/ VB/ COM, .Net (Beta 1 - 3.0), SharePoint, BizTalk, Commerce Server, Office InfoPath and so on… Also I understand the importance of software process that we must follow to deliver successful and profitable projects. At the same time I believe that if you lack or deviate from the common sense required, you will end up loosing.