To me, it seems like, the Keep wasn't done as a service for the customer
Well, it's just my word so you're free to not believe it... but even as an employee I *love* the keep since we're only testing from one source. I spent a lot of time testing DA2's import process from a systemic point of view. I give people full permission to tell me how perfectly that went.
Given that we also had to come up with a solution that dealt with the console transition, because we didn't want people to feel forced to stick with a platform they didn't want to play on, I hope at least some consideration that we felt this would be a solution that would be preferred among a lot of people, as opposed to something ostensibly done to protect ourselves via some form of DRM. Note that it's only really an effective form of DRM depending on how many people feel that the import process is mandatory. I don't even know how many people imported their game for DA2 (though telemetry may say)... nor do I know how many people would have been just fine if they couldn't (this is hard to say. If there was no import feature at all but the game was pretty uniformly well received and highly regarded, would this be your deal breaker? How widespread would this feeling be?). If most people are actually okay playing the game under some default state, then this is a pretty poor form of DRM.
As someone that provided feedback on the Keep when it was still in the conceptual stages, what I liked about it was:
- Instant save game transferability. Solves import process to next gen while also allowing people to move to a different, existing platform (I consider this a pretty awesome feature for gamers, personally)
- Data collected in a single place allows for easier maintenance
- Easier to push forward decisions going back several titles
- Reduced demands on QA time for creating and validating import data (as we can see, custom creating data ad-hoc for DA2 wasn't without its issues)
- Consistent data export (for some reason variable names were modified at the end of Witch Hunt, so we have to check multiple areas - something we didn't even realize we needed to do at first - for decisions the player made in the base game of DAO. Small things like "Did you do the Dark Ritual.")
The biggest negative, of course, was connectivity. Could people connect? How many people would be overlooked? Some undoubtedly will. Is that acceptable?
Ideally, the Keep should be a separate application that comes with the game, but it's opened within the game itself.
Sure, ideally. But I think you understate the amount of time and effort it'd take to do this. Plus it would come with the added negatives of losing some of the benefits of the online process (unless you were suggesting keeping the online part as well... in which case I think you're really underestimating the dev time). Your proposed solution may also not even be allowed by First Party, depending on whether or not they allow us to install and execute separate applications from an already running application. There's also patch restrictions and other things that can complicate things that most customers don't really know about because it doesn't really affect them (so they don't need to know about it).
Your assumption that it wouldn't take extra development time, however, is incorrect. If it didn't cost us anything, we'd do it because we love solving problems for free.