SE 3M04 T1 2003
Exercises Answers
Material for midterms and final
Make sure to review all the notes for each class, paying
close attention to definitions of terms. A good understanding of BNF, types, expressions,
formulas, life-cycle, modularization and specifications will definitely
come in handy. There are question(s) on the midterm from
every single class.
Some sample practice questions:
- What are the 7 components of the Software Process?
- Is abbbaa a string of (b*a*) ? What about a+b*a* ?
- Is pop(pop(push(2,empty))) a valid expression from (int stack) ?
- Write out the type ('a x ('b seq -> 'a seq)) -> 'a set in english.
- [Hard] Give the BNF for the set of all strings on alphabet {a,b,c} that start with 2 a's,
always contain accb as a substring, and ends with b.
- [Easy] Give the BNF for the set of all strings on alphabet {a,b,c} that start with 2 b's,
always contain accb as a substring, and ends with a.
- Write out the type ('c x 'b) -> ('a x ('b seq -> 'a set)) in english.
- Define 'module'
- What is a 'secret' ?
- What does MVC stand for, and where would it be encountered?
- An MIS/MID simulation question.
- Here is a copy of last year's midterm 2.
No answers will be provided; note that there are some of 1-point
questions on this
where the material was not explicitly covered this year (at all!)
- You can also get this year's
first midterm to review.
- See the midterms page for links
to additional midterm material, all of which could be repeated
on the final
- An exercise on state machines would be to take the 2 BNF questions
above (labelled hard/easy) and first create non-deterministic
FSM that accept those languages; then try to do the same with
deterministic machines.
- You can create yourself a large number of state machine
exercises by writing down any random BNF (like the ones in
assignment #1) and then trying to create a finite state machine
that accepts that language. Pair up with a friend and have them
check your work, while you check theirs.
- You can also do this
online set of exercises which have accompanying answers (bottom of page)
Back to main page