Assignment 1 Feedback

advertisement
Fall 2014 (both sections) Assignment #1
Feedback
• Elapsed time (How long):
–
–
–
–
Ranged from 45 minutes to 10 days
About 1/4 said less than 1 day
About 1/2 said 2-5 days
About 1/4 said 5- 10 days
• Effort (in person hours):
– Ranged from .4 person-hour to 22.4 person-hours
– More than 1/2 said 2 - 4 person hours
Some were a bit confused and reversed the data; some gave me just the effort part.
Comments on Assignment # 1 (Fall 2014)
• Basic Programming Skill:
– There were some good programming with input validity
checks, error messages, and features which gave the
users opportunities to correct their mistakes. (e.g. Java
programmers usage of “try –catch” combination)
– Small group “over-simplified” the problem - limited
and fixed number of inputs with no input validation
check. ---- hopefully not because of lack of
programming skills
Assignment #1 was a “how are you assignment.”
So --- graded very leniently on assignment #1 ------ scores range : 16 to 20
More Comments on Assignment #1 (Fall 2014)
Software Engineering Related:
•
“Enhanced Problem Statements” = Requirements Specification (needed for
developing and testing your solution):
–
•
Generally Weak :
1. Input definition not clear (e.g. acceptable type/size/format)
2. Output definition not clear (e.g. type/size/format)
3. Limited specification about what happens with “illegal” inputs (incomplete feature analysis
of “tributary” path).
Adding “extra” features NOT in the problem (requirement) statement:
1. Performing Extra functionalities --- not asked in the Problem --- extra effort(cost)
2. Support people surprised; hard to maintain and enhance unexpected extra code
3. If there is a bug in that portion ---- causes chaos for “unsuspecting” users and
fixers
•
Testing (Generally Weak): [Evidence for ---- How Good is your solution? ]
– Some --- testing only limited amount of legitimate inputs
– Input some very large or small number, illegitimate number, etc.
– Not trying the initial condition and the ending condition separately.
• Testing termination condition before processing --- e.g. dividing by zero problem
• “Graceful” termination with “quit”, “end”, or some other indicator
– Not testing illegitimate cases to show stability and robustness of solution (show
error conditions and all error/warning statements do work.).
Comments on Past Classes
(Fall-2011) Assignment 1 Feedback
• (Pre-project) How long do you think assignment #1
would take?
–
–
–
–
1 hr
2 hrs
3 hrs
10 hrs
---------
7 people
6 people
2 people
3 people
• (Post project) Actual data from class:
– Elapsed time:
• range was 5 days to 46 minutes
• mostly between 1 to 3 hours
– Effort:
• range was 8 person-hours to 40 person-minutes
• mostly between 1 person-hour to 3 person-hours
Comments on Assignment # 1 (fall 2011)
•
While a lot of “good” programming was done ---- there is more to learn
about software engineering:
•
Enhanced Problem Statements (requirements spec.) was generally weak:
1. Input definition not clear (e.g. acceptable type/size/format)
2. Output definition not clear (e.g. type/size/format)
3. Some use terminating character that may be considered a “legitimate” input (some do not
say anything about it)
4. Little or limited specification about what happens with “illegal” inputs.
•
Extra Solutions or Adding complexities:
1. Performing Extra functionalities --- not asked in the Problem
•
Testing:
– Testing only the legitimate inputs
– Not trying the initial condition and the ending condition separately.
• Testing termination condition before processing --- dividing by zero problem
– Not testing illegitimate cases to show stability and robustness of solution
(show error conditions and warning statements do work.).
Graded fairly leniently on assignment #1 ------ score range : 12 to 20
Download