Entry Survey

Please complete the items provided below to the best of your ability. Click on the submit button at the bottom of the page when you are finished. To function properly, this form requires the use of a JavaScript enabled browser.

Name:

I. Development Activities

Here is a list of the various things that might be done in a software project. Check the appropriate response to indicate how often you do each of these when you write a program as a class assignment.

ActivityNeverSometimesAlways
1. spend time thinking about the requirements to be sure you understand what the program should do
2. create a specification based on all the inputs and all the outputs the program should have
3. create a written design for the program
4. review the design before implementing
5. ask peer to review design before implementing
6. ask instructor to review design before implementing
7. compare your design to an expert's design
8. create a written plan for testing the program
9. review the test plan
10. write the code
11. debug until the program runs
12. systematically test using inputs
13. systematically review the pre- and post-conditions
14. ask peer to review code
15. compare your program with an expert's program
16. evaluate program
17. read and review the program documentation
18. reflect upon the process used and write an improvement plan
19. review requirements from the user's perspective

II. Development Criteria

What criteria would you use to review the design for a program?

What criteria would you use to review the program?

III. Maintainability Criteria

Select the three things listed below that will have the greatest effect on improving maintainability. Put a 1 before the one with the greatest effect, a 2 in front of the one the next greatest effect, and a 3 in front of the third most effective.

good design
good documentation of design
elegant coding
good documentation of code
effective review process
good test plan
good test cases

IV. Development Effort

You have 100 hours in which to create and test a program. How many hours do you spend in each of the following activities (you may spend 0 hours on any or all of the listed activities, but the sum should not be more than 100):

creating assertions (pre/post conditions)
creating a good, effective design before you start to code
writing the initial code
debugging (getting the code to work)
conduct formal/informal program review
systematically testing the program
reviewing the program for completeness
reviewing that you have comprehensible documentation

V. Skill Rating

For each of the activities listed below, estimate your skill level. Give yourself the highest rating (5) if you think your skill is better than 80% of students at this stage in the CIS major, the next highest rating (4) if you think you are better than 60% of students, but worse than the top 20% and so forth.

12345
Lowest
19%
20
to
39%
40
to
59%
60
to
79%
Highest
20%
1. creating a specification
2. creating a design
3. evaluating a design
4. creating a test plan
5. evaluating a test plan
6. writing the code
7. debugging programs
8. systematically testing
a program
9. writing
pre- and postconditions
10. evaluating program
11. evaluating documentation
12. reflecting upon process
and writing an improvement plan

VI. Needs Assessment

Review the activities of the semester and provide an honest assessment of what development your skills in software could undergo.

  1. creating a specification
    Needs
    Substantial
    Improvement
    OKPerfect
  2. writing pre/post conditions
    Needs
    Substantial
    Improvement
    OKPerfect
  3. creating a design
    Needs
    Substantial
    Improvement
    OKPerfect
  4. creating a development plan
    Needs
    Substantial
    Improvement
    OKPerfect
  5. creating test plan
    Needs
    Substantial
    Improvement
    OKPerfect
  6. coding
    Needs
    Substantial
    Improvement
    OKPerfect
  7. debugging
    Needs
    Substantial
    Improvement
    OKPerfect
  8. evaluating a design
    Needs
    Substantial
    Improvement
    OKPerfect
  9. writing test cases
    Needs
    Substantial
    Improvement
    OKPerfect
  10. implementing testing
    Needs
    Substantial
    Improvement
    OKPerfect
  11. evaluating a test plan
    Needs
    Substantial
    Improvement
    OKPerfect
  12. reading and understanding foreign code
    Needs
    Substantial
    Improvement
    OKPerfect
  13. project planning
    Needs
    Substantial
    Improvement
    OKPerfect
  14. evaluating a program
    Needs
    Substantial
    Improvement
    OKPerfect
  15. quality assurance
    Needs
    Substantial
    Improvement
    OKPerfect
  16. resource management
    Needs
    Substantial
    Improvement
    OKPerfect
  17. decomposing tasks into subtasks
    Needs
    Substantial
    Improvement
    OKPerfect

VII. Other

Are you currently a computer science major?
If so, please rate how committed you are to continuing in this major.
LowModerateHigh

Please rate how committed you are to working as a software engineer.
LowModerateHigh

Please rate how committed you are to another career in the computer/software industry.
LowModerateHigh