IT翻訳者の疑問

この業界に入って約20年。私の疑問は相変わらず解決しません。

原文の1文は訳文でも1文にすべき?

昨日取り上げた部分の続きです。引用元は「Windows Vista カーネルの内部」(http://www.microsoft.com/japan/technet/community/columns/secmgmt/sm0708.mspx、英語版はhttp://technet.microsoft.com/en-us/magazine/cc162458.aspxと思われます)です。

Windows Vista 向けに作成されたアプリケーションでは、カーネル トランザクション マネージャによる NTFSレジストリの新しいトランザクションサポートを使用して、ほとんど作業をする必要なしに、エラーの回復機能を利用できます。アプリケーションで関連性のある多くの変更を行う必要があるときは、分散トランザクション コーディネータ (DTC) と KTM トランザクション ハンドルを作成するか、直接 KTM ハンドルを作成して、ファイルやレジストリキーの変更をトランザクションに関連付けることができます。すべての変更が正しく行われると、アプリケーションはトランザクションをコミットして、その変更を適用しますが、トランザクションを任意の時点までロールバックして、変更を破棄することもできます。

Applications written for Windows Vista can, with very little effort, gain automatic error recovery capabilities by using the new transactional support in NTFS and the registry with the Kernel Transaction Manager. When an application wants to make a number of related changes, it can either create a Distributed Transaction Coordinator (DTC) transaction and a KTM transaction handle, or create a KTM handle directly and associate the modifications of the files and registry keys with the transaction. If all the changes succeed, the application commits the transaction and the changes are applied, but at any time up to that point the application can roll back the transaction and the changes are then discarded.

「〜を使用して、ほとんど作業をする必要なしに、」が引っかかりませんか? この文章で言おうとしていることは、直前の段落の内容(エラーハンドリングはtediousであり、プログラマーがコーディングしたエラーリカバリーのコードにエラーが残ることもある)との対比で、Windows Vistaならばエラーリカバリーはほぼ自動的に行われるということです。そのための機能が「the new transactional support in NTFS and the registry with the Kernel Transaction Manager」ですね。だから、読んだ順に訳せばよいのですが、そうなると2文に分けなければなりません。特許や法律の文書ならともかく、この手の文書で無理矢理英語の1文を日本語でも1文で訳す必要はないと思います。
カーネル トランザクション マネージャによる NTFSレジストリの新しいトランザクションサポート」という表現も誤解を招きそうです。「〜による」が直後の「NTFSレジストリの」を修飾しているように見えるので。ですので、私なら「Windows Vista向けにプログラミングされたアプリケーションでは、ごくわずかな作業だけでエラーリカバリーを自動化できます。そのための機能であるカーネル トランザクション マネージャによって、NTFSレジストリでも新たにトランザクションがサポートされるようになりました」などと訳します。
次の「アプリケーションで関連性のある多くの変更を行う必要があるときは、」も問題有りですね。助詞「で」にはいろいろな意味がありますが、この「アプリケーションで」の「で」の意味は何でしょうか。原文のapplicationには不定冠詞anが付いていますが、applcationが「a number of related changes」と1:Nの関係にあるので、「1つのアプリケーションの中で、互いに関連する多数の変更を実行するときは」のように訳出する必要があります。
KTM トランザクション ハンドル」の「KTM」が何の短縮語かの説明がありませんね。英文の読者には、すぐ上に見える「Kernel Transaction Manager」の略であることがわかりますが、日本語訳ではそういうわけにはいきません。原文の「Kernel Transaction Manager」に何も付いていなくても、訳文では「カーネル トランザクション マネージャ」の初出時に「(KTM)」を付ける必要があります。
「すべての変更が正しく行われると、アプリケーションはトランザクションをコミットして、その変更を適用しますが、」も間違いではありませんが、「and the changes are applied」が受動態ということは、自動的に行われることを意味していると思うので、「すべての変更が正しく行われたら、アプリケーションがトランザクションをコミットすると変更が適用されます」などと訳したほうがよいと思います。
その次の「トランザクションを任意の時点までロールバックして、」は誤訳ですね。「at any time up to that point the application can roll back」のthat pointは「アプリケーションがコミットを実行する時点」でしょう。トランザクションのコミットとロールバックVistaに限らずおなじみの概念のはずですが、「トランザクションを任意の時点までロールバック」というのはあまり聞いたことがありません。ロールバックできるのは、直前のコミットポイントまでのはずです。