You are on page 1of 10

King Mongkut's University of Technology Thonburi

Final Exam of Second Semester, Academic Year 2008

COURSE CPE 333 Software Engineering Computer Engineering Department, 3rd Yr.

Tuesday 3 March 2009 9.00-12.00 h.

Instructions

1. This examination contains 10 pages (including this cover page).


2. Students are to solve all problems
3. The answers must be written in this exam paper only
4. Students are allowed ONE sheet of (A4) note paper and a paper-based dictionary.
5. No other documents can be taken into the examination room.

Students must raise their hand to inform to the proctor upon their completion of the
examination, to ask for permission to leave the examination room.

Students must not take the examination and the answers out of the examination room.

Students will be punished if they violate any examination rules. The highest punishment is
dismissal.

This examination is designed by


Dr. Tiranee Achalakul
Tel. 0-2470-9380

Name ID
Part I: Multiple choices (1 point awarded for each correct answer, 0.5 point deducted for
each wrong answer)

I What is information hiding?

a) A design principle that involves separating the design into different categories to
reduce complexity.
b) The fact that variables declared inside a function have a different scope than global
variables.
c) A design strategy that makes sure each module accomplishes exactly one function.
d) The process of designing a module so that only its interface is known to other
modules.

2 What is successive refinement?

a) A design strategy that starts with a general design and then adds more detail.
b) Another word for "bottom-up design".
c) A design strategy that can lead to overgeneralization and unnecessary complexity.
d) None of the above.

3 Which of the following is a FALSE statement about software engineering?

a) The results of applying software engineering are independent of the people involved.
b) Software engineering can aid in controlling the cost of software development.
c) Software engineering always uses formal notations and mathematical analysis.
d) None of the above.

4 What does it mean to say that requirements should be quantifiable?

a) It should be possible to link each feature in the design back to the specific requirement
that it implements.
b) It should be possible to express the requirement in a formal or semi-formal notation,
such as a sequence diagram.
c) It should be possible to measure whether the requirement is satisfied by the system.
d) All of the above.

5 Which of the following would be a good name for a use case?

a) Place an order
b) Browse a catalog
c) Register for a course
d) All of the above
6 Which of the following is FALSE about sequence diagrams?

a) Message parameters in a sequence diagram will likely become function arguments


during the design phase.
b) Self-messages are place holders that often indicate the need for additional sequence
diagrams.
c) Synchronous messages are more common than asynchronous messages for most types
of applications.
d) Sequence diagram is functionally equivalent to activity diagram.

7. What is the difference between black box testing and white box testing?

a) Black box testing is focused on the user interface only, while white box testing covers
the whole system.
b) Black box testing assumes that you do not know anything about the implementation of
a system, while white box testing uses implementation knowledge.
c) Black box testing uses legal input data, while white box testing checks the response to
invalid or illegal ·input data.
d) Black box testing is manual, while white box testing uses automated testing tools.
e) None of the above.

8. What is CMMI (Cabability Maturity Model Integration)?

a) One of the diagrams included in the UML standard


b) A popular software development process paradigm
c) A tool conveniently for browsing, editing, compiling and debugging software systems
d) A framework to guide continuous process improvement within a company or
organization.
e) none of the above

9. Which of the following is a true statement about the Extreme Programming (XP) software
development process?

a) It requires programmers to always work in pairs while developing software.


b) It defines many different artifacts that should be created as part of the development
cycle.
c) It is a process paradigm from the l 980's which is rarely used today.
d) It was developed in a university environment and is based on fom1al software
engineering theory.
e) None of the above
I 0. What is stubbing?

a) A design strategy that involves building "throwaway" programs that illustrate or


explore certain aspects of a system design
b) Creating a written test plan before starting system validation
c) One of the key requirements of ISO 9001 certification
d) Working with stakeholders to define Use Cases
e) None of the above

11. Which of the following issues is most closely related to deployment of a software system?

a) Layout of user interface screens


b) Choice of programming language and platform
c) Communication protocols
d) Migrating databases from legacy systems
e) Setting up a source code repository

12. What are coding standards?

a) The full set of diagrams defined by UML


b) The rules for creating a "make" file to automate the build of a software system
c) A set of rules that specify in detail how the programmers in a team should write their
code.
d) The detailed list of requirements and constraints for a software system.
e) None of the above

13. What is regression testing?

a) Testing that is done so that the user or customer can decide whether the software meets
the specifications
b) Testing that is done to determine whether a single function or a module works
correctly.
c) Testing which verifies that previously released functions still work correctly.
d. All of the above.
e. None of the above.

14. Which of the following design notations has a purpose and content somewhat similar to a
UML class diagram?

a) Entity-relationship diagram
b) Data flow diagram
c) Petri net
d) Sequence diagram
e) None of the above is similar to a class diagram
15. According to the CVS, how can you rename files and directories?

a) Click the right mouse button on the selection, and then select Rename.
b) By combining remove and add operations.
c) Both a and b are correct.
d) None of them are correct.

16. Which UML diagram is a process model that can be use to represent control flow, logic,
interaction, and sequence? •
1) Sequence diagram 2) State machine diagram 3) Collaboration diagram
4) Dataflow diagram 5) Flowcharts 6) Petri nets
7) Class diagram 8) Package diagram 9) Activity diagram
10) Entity-relationship diagram

a) 1,2,3,9 are correct


b) 1,3,5,6 are correct
c) 5,6,7 are correct
d) 8,9, 10 are correct

17. Which diagram is a structural model that can be use to represent data structures, data
relationships, component breakdowns?

a) 1,2,3,4 are correct


b) 1,3,5,6 are correct
c) 5,6,8,9 are correct
d) 7, 8,10 are correct

18. Consider the following PHP code. Which one is the correct output?
<?php
$txt=" and ";
$a="l6";
$b="l";

$c=$a+$b;
echo $c;

echo $txt;

$c=$a.$b;
echo $c
?>
a) 17 and 161
b)l 7 and 17
c) 161 and 161
d) 161 and 17
19. According to the Quick Test program, how can you generate steps to test?

b) By using the step generator function


c) By recording the step
d) By using VB scripting
e) Only a and bare correct
f) Only a and care correct

20. Which of the following statement is false?

a) Good coding standard can lead to software robustness.


b) Software validation should be done in all phases across the sofhvare life cycle.
c) Good software testing methodology can provide an absolute certainty about the
system correctness.
d) None of the above

21. How can the architectural design be validated?

a) Prototyping
b) Simulation
c) Formal method
d) Only a and b are correct
e) Only band care correct

22. What is "test coverage"?

a) A set of test cases that exercises all paths or possibilities in a system


b) A document that specifies how a system will be tested.
c) A method for organizing test cases.
d) Code modules that are written to exercise and test the system.
e) All of the above

23. What is not true about the waterfall process model?

a) It is a traditional process that value structure and sequence of activities.


b) It is not very practical for use in today's software development environment.
c) It emphasizes testing and risk analysis.
d) All activities must have prerequisite.
e) None of the above
24. Which statement is false?

a) Extreme programming allows source code to change more continuously and more
frequently than RUP.
b) Both RUP and XP are test-centric and code-centric.
c) RUP produces many more artifacts throughout the software life cycle than XP.
d) None of the above

25. Which statement is false?

a) SCM is mainly used to manage changes to source code made by multiple developers.
b) SCM allow backtracking in case of errors.
c) Software configuration should also be tracked in SCM.
d) SCM only allows one developer to "check out" a source file at a time in order to avoid
conflicts in code.
e) None of the above

26. Which statement is false?

a) Use case diagrams shows the system functionalities and system users.
b) Sequence diagrams displays how the processes are carried out in small steps and the
order of these steps.
c) Collaboration diagrams represent interactions between objects using a series of
sequenced messages.
d) Both Sequence and Collaboration diagrams provide the global view of the system's
functionalities.
e) None of the above

27. Which are the functions provided in Microsoft Project?


1) Calendars 2) E-mail 3) Managing costs
4) Tracking progress 5) Assigning resources 6) Upload files

a) 1, 3, 4, 5
b) 2, 3, 4, 5
c) 1,2,5,6
d) 1,2,4,6

28. Which CVS's command can be used to submit the modifications to the repository?

a) Import
b) Update
c) Commit
d) Release
29. In QTP software, what output values will be displayed when a "checkpoint" is inserted for
page testing?
1) Load time 2) Number of image 3) Number of link
4) Image address 5) Link address

a) I, 3, 4, 5
b) 1,2,3,5
c) 2, 3, 5
d) I, 2, 3, 4, 5

30. Which statement is not a benefit of usability design?

a) The users will be more satisfied when using software.


b) Software training time and cost can be reduced.
c) The software will be more attractive to users.
d) The software correctness will be improved.
e) All statements are usability design benefits.

ANSWERS

1 2 3 4 5 6

7 8 9 10 11 12

13 14 15 16 17 18

19 20 21 22 23 24
I
25 26 27 28 29 30
Part II Answer the following questions (1 point each, answer must fit in the provided space)

1. Give two examples of a software configuration management tool and briefly describe at least
three general functions available in SCM.

ANS:

2. Describe at least 2 usability problems present in www.cpe.kmutt.ac.th.

ANS:

3. Briefly describe your term project

ANS:
4. Which software development process do you like best, and why?

ANS:

5. Give at least 3 issues that should be considered prior to the deployment phase?

ANS:

You might also like