1

I mainly have to design a backup and recovery plan for a client, but another duty is to make the systems reliable in terms of failover and load balancing which will make me to changes the system architecture.

I mainly think that should be better to design an apply the backup and recovery plan after refactoring the system, I mean, at once, designing the backup and recovery plan after the refactorization.

I feel that if do so in advance is going to be a big big headache.

Do you think that is good idea propose to my client to refactore the system before applying the DR plan?

Would you so?

Thanx

arrrrgv
  • 141
  • 1
  • 4
  • It all depends on your clients' requirements. Do they require a DRP for the current state environment or not? – home Dec 13 '11 at 13:00
  • Yes, but in fact at same time I have to define a fail-over and load balancing system, high availability, so as soon as the architecture will be changed I'm thinking on doing so at same time, architecture redefinition an its DR plan. – arrrrgv Dec 14 '11 at 04:50

1 Answers1

0

From your description, the reason the existing application needs refactoring is that it was built based on the functional requirements while the load balancing and availability aspects were ignored. Since these were not taken into account in the initial application design, the application now needs to be redesigned. The various impacts of HA and load balancing on the application design did not become issues until the client started trying to implement them against an application not designed for them.

What you are proposing is to perform the new application redesign without taking into account the disaster recovery aspects. This is exactly the same mistake that was made during the first implementation, only this time the requirements being ignored are the DR aspects. What will you do when you get to the DR design and discover that your freshly refactored app has unforeseen functionality gaps and defects which conflict with the DR design?

Before touching any code on this assignment you will need to have a very good understanding of the client's recovery requirements and then design the application with these in mind. You should know the recovery time objective, the recovery point objective, how the application will reconcile its state with any upstream or downstream applications (and whether that is a manual or automated reconciliation), the licensing impact of a hot/warm/cold DR site, etc., etc. Otherwise you are introducing unwarranted risk and the possibility of significant rework later on.

T.Rob
  • 31,522
  • 9
  • 59
  • 103
  • I'm going for the DR with the actuall scenario, after will redesign and will do a new one, thanks, I'd vote you up, but I don't have reputation to do so :-( – arrrrgv Dec 19 '11 at 12:38
  • Glad to help. Although you may not be able to vote yet, you can always accept your own questions. Doing so will encourage other users to respond to any new questions you post. I've +1 you to get you a bit closer to the rep cap for voting. :-) – T.Rob Dec 19 '11 at 14:41