Exercises - CSC 4700 Software Engineering
CSC 4700 Software Engineering
Due Thursday, 4/26
75 points (separate from other exercises)
You will keep a reading reflection "diary". I will let you know which readings are included in this. For each reading included you must write a short (one paragraph, three or four sentences) summary, and then a second reflective paragraph. The reflective paragraph should contain your opinion about the reading, and can also include questions raised, insights, whatever. When you submit this diary at the end of the semester you will include a list that shows all the readings, ordered from your most favorite to your least favorite. Note: I can ask for you current, up-to-date diary at any time during the semester. I probably won't though, but keep it up-to-date.
Due by midnight, Tuesday, 1/24, email allowed
Read the Brooks article "No Silver Bullet".
Dr. Brooks includes many "opinions" in his article.
Identify one that you believe is insightful and one
that you disagree with. Explain the reasons for your
choices. You should use no more than 500 words.
- Extended Questionnaire
Due Thursday, 1/26, at start of class
Download the "extended" Questionnaire
from the course web site, edit it so that it includes your responses. Your answers do not need to be completely polished - for the most part simply answer in a straightforward, "extemporaneous" manner. Nevertheless, keep it organized, clear, concise, interesting, and as complete as possible.
- Specification Critique
Due Thursday, 2/02, at start of class
Your task is to critique the specification handed out in class. Mark it up. Imagine you are the technical writing and/or software engineering teacher and this spec was submitted by a student. Mark it up for return, hopefully using red ink! Be thorough but you don't have to go crazy. So indicate all the problems that you see that you consider "major". Consider what we discussed about technical writing and about software specifications. Note that this exercise is worth 40 points. It is an important exercise and I expect you to do it carefully, spending an hour or two working on it.
- Project Introduction
Due by midnight, Tuesday, 2/07, use email
Part of team project
Send me a Powerpoint file that contains two slides introducing your team and your project. The first slide must include your team name, your team members names, and your project name. The second slide must introduce your project, in outline form. Your team will use these slides to introduce your project to the class, so the slides do not have to be self-explanatory .. you will be verbally explaining them.
- Success Factors
Due Thursday, 2/9, at the start of class.
Read the article "Critical Success Factors in Software Engineering".
John Reel lists and describes several factors that he feels are
critical to the success of large software development projects.
Write a very brief summary of the article, followed by a list
of two "other' factors that you feel are critical to the
success of a software development project. If you can't think
of two such factors you may, instead, describe factors that are
critical to the success of a student in college. For each of your
factors be sure to both describe it and explain why it is important.
Your entire report should be about one page long.
- Project Specification
Due Thursday, 3/15, at the start of class
Part of team project
Hand in a specification document for your team project. The project should be specified by your team at about the same level as was used in the Learning Pairs specification. The document should be printed single sided, and not stapled. This document may be shared with your classmates.
- Presentation Proposal
Due Thursday, 2/16, at the start of class
Part of presentation project
Hand in one or two proposals of no more that one page each, single sided, about your presentation project. Describe your topic. Explain why it is valuable, why your classmates should learn about it. The idea is for you to instruct/inform us - and for us all to learn about the wide variety of tools and techniques available. Demonstrations are encouraged, but not
required (in fact sometimes demos can be problematic in a short presentation). If possible at this point, outline your approach. Up to two students may work together on a presentation.
Note: There is no reading assignment this week. There is no quiz next week. Therefore I expect that you can put some time and effort into identifying and organizing your ideas about the presentation project. I expect your proposal to be well considered.
- Learning Pairs Design
Due Thursday, 3/15, at the start of class.
Design an API for one of the five exercises that are to be provided by the Drill System of the Learning Pairs system. Do not worry about the user interface. Just identify the public methods, their interface, and a description of what they do, under the assumption that whatever system component is using the API will handle the user interface.
For example (and I am not saying this is a good idea or not) for the Hangman game a potential public method is:
public boolean wasGuessed (char c)
// returns a boolean indicated whether the char c has already been
// guessed in the current game
You could impress everyone by handing in a compiliable report (although I do
want paper copies ... not email attachments ... at least for now).
- Project Design
Due Thursday, 4/26 or 5/03 or 5/10
Part of team project
Hand in an architectural design for your team project. Hand in a user interface design for your team project.
Amended 5/20 - You do not have to complete a formal Architectural Design. In fact I would prefer more of an informal desogn "plan". Three to six pages describing how you would design the system .. what ideas do you have for the major components .. include a sketch or two of any important user inetrface. I want you to show me you have thought about this intelligently, but you do not have to do a full fledged design. I would also like this to be a TEAM effort.
- Specification Critique II
Due Thursday, 3/22, at start of class
Your task is to critique the specification you received tonight in class. Mark it up. Imagine you are the technical writing and/or software engineering teacher. Mark it up for return, hopefully using red ink! Be thorough but you don't have to go crazy. So indicate all the problems that you see that you consider "major". Consider what we discussed about technical writing and about software specifications. When finished assign it a grade of "excellent", "very good", "good", or "ok". Also write your name at the top of the page.
- Personal Private Project Post Mortem
Due Thursday, 5/10, at start of class .. or earlier!
One one page briefly describe your experience with the team project this semester. List what you and/or the team did well, and what you and/or the team could do better, or maybe just differently, if you were starting over. At the end of this brief report list the three members of your team and briefly describe/critique their contribution to the project.