Software Development Paradigm


Case 5: Specifying

Background Questions

  1. What is the functional specification used for?

  2. Why were there errors in it?

Jane Doremus found about 100 pages of printed sentences with lots of white space on the center of her desk. It was the Functional Specification of the software product for which she had to do the user manual. This was to be the source of information that Jane was to use for composing the document.

Unfortunately, the specification constantly changed. The usual method was to write the manual using the spec as the best source, and then the manual was given to the technical lead of the project for review. She marked it up, based on her understanding of the requirements to date.

Jane was writing the manual. While she did so, she realized that only rarely did her work match the software when it was done. The result was a flurry of bug reports .

Tasks  
  1. Who really found discrepancies between the user manual and the software?

  2. What do you think about this way of writing user manual?

Case 6: Designing

Background Questions

  1. What is the difference between design and architecture?

  2. Why did Jill let the design document fall out of currency?

Jill Smith was known as the System Architect. She looked carefully at the detailed design to date. Once past this point, the software would be outsourced to the company s partner in China.

Usually, the partner would get a current description of any interfaces for software they would add. Two things convinced Jill to skip the preparation of this document. One was that the project was late. The second was that she saw a Chinese man while visiting the company who looked to be from the mainland of China, where the partner is located.

Tasks  
  1. Was the system architecture ready to be outsourced?

  2. What were Jill s problems? How could she have avoided them?

Case 7: Coding

Background Questions

  1. How do the architects handle detailed design?

  2. How did Jim violate the design?

The detailed design filtered down from the team of architects above. Jim Royce got his copy of his component early Tuesday morning. Quickly, he coded the series of equations and the interfaces to his module.

Friday at noon he was cursing the stupidity of the architects. He could clearly see how the exchange of data could be optimized. They had missed it.

He could file a change request, but everything else was going well, it was a small change, and only one other engineer was affected. Jim made the change himself. Later, he sought out the affected programmer and told her that there was a change.

Tasks  
  1. What is the result of Jim s lying to the other engineer?

  2. Does optimization matter here?

Case 8: Testing

Background Questions

  1. What was Nian trying to do?

  2. How did she do it?

Qu Nian entered the collection of modules into her automated tester. She could almost hear it chugging along, examining every module. It tested sending messages and accurately receiving them.

Even with the speed of automated testing, Nian was certain that she could not be done before the end of the day. She decided instead to make a more limited test suite. This one exercised only a portion of the software, saving considerable time. She figured that if she used Markov modeling, only a portion of the test suite would be run, anyway.

Tasks  
  1. Why was Nian s reasoning false?

  2. What else could she have done?




Human Aspects of Software Engineering
Human Aspects of Software Engineering (Charles River Media Computer Engineering)
ISBN: 1584503130
EAN: 2147483647
Year: 2004
Pages: 242

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net