Siêu thị PDFTải ngay đi em, trời tối mất

Thư viện tri thức trực tuyến

Kho tài liệu với 50,000+ tài liệu học thuật

© 2023 Siêu thị PDF - Kho tài liệu học thuật hàng đầu Việt Nam

Testing Computer Software phần 9 pptx
MIỄN PHÍ
Số trang
29
Kích thước
724.7 KB
Định dạng
PDF
Lượt xem
871

Testing Computer Software phần 9 pptx

Nội dung xem thử

Mô tả chi tiết

225

• Dollars. Management can try to add features more quickly, rather than dropping them, by spending

money. However, because new features haven't yet been fully specified or designed, the project's

designers may become bottlenecks.

• Release date. The power of the evolutionary approach is best seen in the degree of schedule control

that it gives management. The project manager can always postpone the release date. Often, though,

he will choose to ship the product on time rather than adding those last 15 features.

Because the program is always stabilized before the next wave of features is added, a proj ect manager

who decides to stop adding features can probably finish the project within a few weeks.

• Reliability. The reliability of evolutionary products is high. Because the product is tested and

stabilized as each new piece is added, most of the project's testing budget is spent before the end of

the schedule. If management says stop adding features and get the thing ready to ship, it won't take

much additional final testing before the product is ready forrelease. The incentive to skimp on testing

and release something buggy is gone.

The testing cost under the evolutionary model threatens to be large because testing starts early. However,

much of that cost is recouped because there isn't so much testing at the end. Further, all those features that

weren't specified or coded weren't the subject of test plans or tests either.

One way to make a mess of an evolutionary project is to have the programmers keep writing fresh code rather

than fixing the problems discovered during testing. This is very tempting when the project is running behind

schedule, but the appearance of progress is deceiving. The problems will take longer to fix and retest later.

The project manager will face last minute tradeoffs between reliability and release date.

Another risk of adopting an evolutionary approach is that an inexperienced project

manager may imagine that he doesn't have to do much initial planning, because the product

will evolve over time. This is a big mistake. If the core is built inflexibly, it will need

extensive reworking before key features can be added. Fundamental work might have to be

redone many times. Also, at what should be the end of the project, the marketing group might

realize that they forgot to identify some features as critical, so others were done instead. Now

the product has to wait until those features are added.

Marketing and sales staff sometimes don't understand this approach well enough to realize that when the

project manager says that some features might be in the product or they might not, no one should sell the

product as if it has a given feature, until that feature has been added.

The test manager has another way to ruin the project. If he doesn't assign test resources to the project early

(perhaps because they're still assigned to some other project that's behind schedule), then the core program

doesn't go through the full test cycle, nor do the incremental changes. No one sees this slippage on the schedule

until the testing staff are finally assigned, perhaps near what should be the very end of the project. At that point,

the testers are in the traditional system test situation, with a big pile of untested code and very little remaining

testing time left in the schedule. The result is something that looks like a badly managed waterfall project—

testing costs more, the schedule falls apart, and lots of bugs are missed.

The Testing Group probably has more ability to destroy an evolutionary project than anyone else. Be

considerate of this risk.

226

A DEVELOPMENT MODEL'S IMPLICATIONS FOR TESTING

Once you understand the project manager's development model from his point of view, think about its

implications for the testing effort. Here are some implications of the waterfall method:

• Review the user interface early, perhaps by testing prototypes. If the user interface is specified and

approved before the code is written, usability tests near the end of the project won't have much effect.

• Start writing the test plan as early as possible because this will force you to critically analyze the

specifications (or drafts of them). Any risks they pose for testability of the project must be raised early.

Theoretical models are important, but you must also be effective when managers throw out the rule book. Think

about this Figure as you read the tidy sequence of tasks in this chapter.

Tải ngay đi em, còn do dự, trời tối mất!