Madhawa Learns To Blog

.net, c#, sql, OOAD and more mad memory dumps...

Monday, June 13, 2005

Does your role in the development team effects in performance tuning?

Ok guys, its abt performance again. You know in a development team all members have to keep performance in mind right… But that affects ur role in the team.

Performance affects different roles in different ways:

· As an architect, you need to balance performance and scalability with other quality-of-service (QoS) attributes such as manageability, interoperability, security, and maintainability.

· As a developer, you need to know where to start, how to proceed, and when you have optimized your software enough.

· As a tester, you need to validate whether the application supports expected workloads.

· As an administrator, you need to know when an application no longer meets its service level agreements, and you need to be able to create effective growth plans.

· As an organization, you need to know how to manage performance throughout the software life cycle, as well as lower total cost of ownership of the software that your organization creates.

And other crucial thing is when to approach into the performance in the life cycle of a project. This is for architects right...

Reactive vs. Proactive Approach

"If you're very lucky, performance problems can be fixed after the fact. But, as often as not, it will take a great deal of effort to get your code to where it needs to be for acceptable performance. This is a very bad trap to fall into. At its worst, you'll be faced with a memorable and sometimes job-ending quote: 'This will never work. You're going to have to start all over.'"
Rico Mariani, Architect, Microsoft

Performance is frequently neglected until a customer reports a problem. In other cases, performance is not evaluated until system test or initial deployment. In either case, you may not be able to fix the issue by throwing more hardware at the problem.

There are several problems with a reactive approach to performance. Performance problems are frequently introduced early in the design and design issues cannot always be fixed through tuning or more efficient coding. Also, fixing architectural or design issues later in the cycle is not always possible. At best, it is inefficient, and it is usually very expensive. You experience increased hardware expenses and finally increased total cost of ownership.

But in proactive approach you know where to focus your optimization efforts and
its decrease the need to tune and redesign as well as expensive hardware upgrades. This will leads to reduced operational cost and total cost of ownership.

1 Comments:

At 12:38 PM , Anonymous Anonymous said...

hi, performance was really a big issue when we are developing apps for Windows CE (Compact Framework). machan u really rocks.. cheers

 

Post a Comment

Subscribe to Post Comments [Atom]

<< Home