Software modernization requires carefully analyzing candidate modernization options and strategies that affect the interests of many stakeholders. As a result, software modernization requires making nontrivial and nonobvious trade-offs. These trade-offs are multifaceted and include technical, programmatic, and organizational considerations that may strain an organization's decision-making abilities . As a result, development teams approach large modernization efforts either with trepidation and misgivings or with unwarranted self-confidence . Unfortunately, the former group is usually the one with the most experience. Fortunately, there is a middle road, which is to approach the modernization with respect for the magnitude of the effort and a plan. This plan must demonstrate an understanding of the legacy system and modern information system technologies, as well as an understanding of the as-built and as-desired architectures. Most important, this plan must manage risk throughout the modernization effort. |