Docsity
Docsity

Prepare for your exams
Prepare for your exams

Study with the several resources on Docsity


Earn points to download
Earn points to download

Earn points by helping other students or get them with a premium plan


Guidelines and tips
Guidelines and tips

software engineering for University students, Exams of Software Engineering

software engineering for University students

Typology: Exams

2021/2022

Uploaded on 12/06/2022

abdi-maf
abdi-maf 🇪🇹

6 documents

1 / 9

Toggle sidebar

Related documents


Partial preview of the text

Download software engineering for University students and more Exams Software Engineering in PDF only on Docsity! Final Exam Software Engineering 810:172 Fall 2009 Instructions • The exam consists of this cover sheet, eleven (11) problems, and two (2) pages of code. Be sure that you have all of these items and that they are all legible. • Read all questions and their instructions thoroughly before you begin. It is always worth your time to plan ahead! • Write your answers in the spaces provided on the exam. • Whenever I ask you to answer "... briefly...”, a one- to three-sentence answer is long enough to express the each bullet item. • Whenever a problem contains multiple parts, be sure that your response includes answers to each part. • The exam is worth sixty (60) points total. The point value of each question is given in brackets immediately after the problem number. You may wish to use these point values as you budget your time across the exam period. • Points will be awarded based on your explicit answers. Partial credit will be given where possible, so show all of your work. • The exam lasts sixty (60) minutes. It is due at 4:00 PM. Name: 1. [6 points] Answer briefly each of these questions about refactoring. • What is refactoring? • What role does refactoring play in the design of software? • What is the relationship between refactoring and testing? 2. [6 points] In class, we began to refactor a Customer class for a video rental store sys- tem. The current version is given at the end of the exam. • Describe two different refactorings that we could apply to improve this code by reducing duplication between the statement() and htmlStatement() methods. • For each of the refactorings, identify at least one programming issue that we would face in trying to ensure that we don’t break the program. 7. [6 points] Answer briefly these questions about agile methodology, as it relates to Fowler’s distinction between predictive versus adaptive approaches to software de- velopment processes. • Describe at least two ways in which agile methodologies are adaptive rather than predictive. • What risk does a development team incur when it chooses to be adaptive rather than predictive? • In what ways does extreme programming try to mitigate this risk? 8. [6 points] Based on your experience with your team project, answer briefly these questions about the software life cycle. • Which stage was most difficult? Why? What did your team do in response? • Which stage was most straightforward? Why? 9. [6 points] In light of your experience building a medium-sized program with a team, discuss briefly the key ideas in the "No Silver Bullet" article by Brooks. Be sure to discuss at least two of Brooks’s ideas. 10. [4 points] Answer briefly these questions about specification. • What is a functional specification? • What is a technical specification? 11. [6 points] Identify each of the labeled components in this UML class diagram. A ___________________________ F ___________________________ B ___________________________ G ___________________________ C ___________________________ H ___________________________ D ___________________________ I ___________________________ E ___________________________ J ___________________________ .
Docsity logo



Copyright © 2024 Ladybird Srl - Via Leonardo da Vinci 16, 10126, Torino, Italy - VAT 10816460017 - All rights reserved