Could We Put This Program into Production?


Our real purpose here, of course, was to write a book about how to develop software in an environment where we have much to learn, and the project was only secondary. Still, we should look at how close the XML Notepad comes to being a production program.

There certainly are features that we would like to add or to improve. File I/O is barely implemented; copy, cut, and paste work, but they are not integrated into our code; the menus aren t organized into a reasonable structure; there is no real ability to view what the resulting document looks like; and the TextBox is limited to 65,000 characters . On the other hand, the program is doing exactly what has been asked of it so far, and it is rather well- tested . We ll come back to the testing issue, and certainly we wish the tests were better, but they re still enough to give us strong confidence that the program works as advertised.

Surprising new features might cause us trouble, although our experience with Undo makes me very confident that we can handle with little difficulty anything that might be thrown at us. Most of the features we can foresee are now just more of the same: more I/O options, more inserts , perhaps a few more intelligent features like adding another P tag or LI tag.

Finally, I suspect that the program may be vulnerable to the user doing things we don t expect. For example, the logic to decide whether to emit a P tag or LI tag looks at the current line to see which to do. A sufficiently complex list item might confuse this logic. If it did, we know exactly where we would have to go to deal with the issue ”to the InListItem() method:

 private Boolean InListItem() { 
if (Lines.Count == 0 ) return false;
return ((string) lines[LineContainingCursor()]).StartsWith("<LI>");
}

We might have to strengthen that method. That would be the only place we d need to change things.

The feature list might not be as long as the customers would want, but I suggest that the program itself is generally robust and ready to be put into the hands of some interested users. I do suspect that they would find a few problems and that we could write tests for them and fix them fairly readily. Which brings me to my next point.




Extreme Programming Adventures in C#
Javaв„ў EE 5 Tutorial, The (3rd Edition)
ISBN: 735619492
EAN: 2147483647
Year: 2006
Pages: 291

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