26.1. Early in this chapter we noted that "variation control is the heart of quality control." Since every program that is created is different from every other program, what are the variations that we look for and how do we control them?
26.7. You have been given the responsibility for improving the quality of software across your organization. What is the first thing that you should do? What’s next?
26.10. Some people argue that an FTR should assess programming style as well as correctness. Is this a good idea? Why?
Please do the following problems from the end of Chapter 27 (page 767):
27.1. Why is the First Law of System Engineering true? Provide specific examples for each of the four fundamental reasons for change.
27.2. What are the four elements that exist when an effective SCM system is implemented? Discuss each briefly.
27.3. Discuss the reasons for baselines in your own words.
In addition, please play with cvs. You can use any version of cvs you may have access to. It's installed on hills for your use. Click here to see your hills login id. If you've never logged onto hills before, your initial password for hills is your birthday, written like: jan0380 if you were born on January 3, 1980. You will be forced to change this password the first time you login, using this password as your "old password", and a new one of your choice for future use. If you've logged onto hills before, your password is the same as it was last time you logged in. Ask the ACRC staff for help if you don't remember your password.
Turn in a script showing results from diff and history commands. To create a script file, type "script cvsScript" before you start, and "exit" when you're finished. Here's the CVS documentation. Here's a sample script, annotated with my comments ( // starts a comment):
mkdir cvsDemo CVSROOT=/users/cpersiko/cvsDemo;export CVSROOT //use your directory here; probably /students/flast01/cvsDemo cvs init mkdir demoProj cd demoProj mkdir cppSource pico cppSource/hello.cpp // put a few files here cvs import -m "Imported sources" demoProj/myFiles persiko start // use your name instead of persiko cd ../ rm -r demoProj // erase original sources: let CVS takeover cvs checkout demoProj/myFiles // notice demoProj re-created pico demoProj/myFiles/cppSource/hello.cpp // change one of the checked-out files cvs diff // see a summary of all changes made cvs commit // will open vi with a file for comments: hit Esc, then ZZ to exit ls -l demoProj/myFiles/cppSource // notice files are read only now cvs history -e // see history of changes; M means "modified"
E-mail me your answers at: cpersiko@ccsf.edu