For Test 3, you will write four reflective essays. A reflective essay is a form of writing that requires the writer to analyze the experience and draw meaningful conclusions about the experience. The purpose of each essay is not to assess how well you memorized specific concepts. Instead, it is intended to assess your comprehension of software engineering at an introductory level. For this course, we studied four knowledge areas of software engineering. We applied the four knowledge areas to our course project. If you were fully engaged in the project process, you have applied the concepts covered in this course to a real project and therefore should have no difficulty expressing your understanding of the topic. Each of the four essay questions has its own instructions. Please read each question carefully. Take time to think about what you are going to write before you write it. Remember it is a REFLECTIVE essay. Feel free to sketch an outline on a scrap piece of paper prior to writing. You should spend more time thinking than writing. Responses do not need to be any specific length. The quality of writing is more important than the quantity of writing. Write concisely and clearly.
1. (15 points) The first knowledge area covered in this class was software requirements. Considering your experience participating in the course project, write an essay that discusses this knowledge area. For this essay you must discuss at least three of the concepts listed below. Please do not limit yourself to these concepts. Discuss how you applied concepts from this knowledge area. Following are some examples of questions to ask yourself while contemplating your response for this specific knowledge area:
Questions to contemplate for software requirements:
· How did this knowledge area apply to our project?
· What went well?
· What went poorly?
· Did we encounter any surprises?
· Am I confused about some aspect? (it is okay to admit confusion)
Concepts for software requirements (discuss at least three):
· Requirements elicitation
· Functional requirements
· Nonfunctional requirements
· Project estimation
· User stories
· Task prioritization
2. (15 points) The second knowledge area covered in this class was software design. Considering your experience participating in the course project, write an essay that discusses this knowledge area. For this essay you must discuss at least three of the concepts listed below. Please do not limit yourself to these concepts. Discuss how you applied concepts from this knowledge area. Following are some examples of questions to ask yourself while contemplating your response for this specific knowledge area(my project is to create a website that can search shows, similar to IMDB, 5 people in a group)
Questions to contemplate for software design:
· How did this knowledge area apply to our project?
· What went well?
· What went poorly?
· Did we encounter any surprises?
· Am I confused about some aspect? (it is okay to admit confusion)
Concepts for software design (discuss at least three):
· Architectural design
· Detailed design
· Use case diagram
· Class diagram
· Sequence Diagram
3. (15 points) The third knowledge area covered in this class was software construction. Considering your experience participating in the course project, write an essay that discusses this knowledge area. For this essay you must discuss at least three of the concepts listed below. Please do not limit yourself to these concepts. Discuss how you applied concepts from this knowledge area. Following are some examples of questions to ask yourself while contemplating your response for this specific knowledge area:
Questions to contemplate for software construction:
· How did this knowledge area apply to our project?
· What went well?
· What went poorly?
· Did we encounter any surprises?
· Am I confused about some aspect? (it is okay to admit confusion)
Concepts for software construction (discuss at least three):
· Minimize complexity
· Standards
· Elegant vs clever code
· Maintainable code
· Version control system
4. (15 points) The fourth knowledge area covered in this class was software testing. Considering your experience participating in the course project, write an essay that discusses this knowledge area. For this essay you must discuss at least two of the concepts listed below. Please do not limit yourself to these concepts. Discuss how you applied concepts from this knowledge area. It is possible that you did not fully apply this knowledge area to your project due to time constraints. If that is the case, please describe how you would apply software testing to your project if your project were to continue.
Concepts for software testing (discuss at least three):
· Glass box testing
· Unit testing
· Regression testing
· Black box testing
· Bugs detection and fix
Recent Comments