You are on page 1of 11

2003 VITEC

Software Design and Development Engineer Examination


(Afternoon, Part 1)

Questions must be answered in accordance with the following:


Question Nos. Q1-Q6
Question Selection All questions are compulsory
Examination Time 13:00-15:00 (120 minutes)
Instructions:
1. Use an HB pencil. If you need to change an answer, erase your previous answer completely and
neatly. Wipe away any eraser debris.
2. Mark your examinee information and test answers in accordance with the instructions below.
Your test will not be graded if you do not mark properly. Do not mark or write on the answer
sheet outside of the prescribed places.
(1)Examinee Number
Write your examinee number in the space provided, and mark the appropriate space below
each digit.
(2)Date of Birth
Write your date of birth (in numbers) exactly as it is printed on your examination admission
card, and mark the appropriate space below each digit.
(3) Write each answer in the space specified for that question.
(4)Write your answers clearly and neatly. Answers that are difficult to read will receive a lower
score.
3. After the test, you may take this question booklet home with you.

Do not open the exam booklet until instructed to do so.


Inquiries about the exam questions will not be answered.

1
2
Q1. Read the following text regarding IP address assignments in a corporate network
implementation, then answer Sub-Questions 1 through 3.

Company K has decided to implement a corporate network based on IP (Internet Protocol


Version 4). As shown in Figure 1, this network consists of a total of five LANs, of which
one is a main office LAN and four are branch office LANs. The LANs are connected to
each other using leased lines via routers. The maximum number of connected hosts
(devices, including routers, that perform communication are called hosts) is 50 for the
main office LAN, and 20 for each branch office LAN.

Branch office Branch office


LAN 2 LAN 3
(20 hosts) (20 hosts)

Branch office Branch office


LAN 1 LAN 4
(20 hosts) (20 hosts)

M ain office
LAN
(50 hosts)

Fig. 1 Implementation of Company K’s Corporate Network

IP addresses are expressed as 32 bits of data to uniquely specify a host connected to the
network. As shown in Figure 2, an IP address consists of a network part and a host part.
The host part is further divided between a subnet ID and a host ID for purposes such as
effective use of addresses. The network ID in the network part, together with the subnet ID
of the host part, are also called a subnet address.

IP address (32 bits)

Network part Host part


Network ID Subnet ID Host ID
Subnet address

Fig. 2 IP Address Configuration

3
In this case, a subnet address identifies a LAN, and a host ID identifies an individual host
in that LAN. One network ID is assigned to Company K’s entire network comprising the
five LANs. In addition, one subnet ID is assigned to each LAN, and one unique host ID is
assigned to each host within each LAN.

It should be noted that it is not necessary to assign subnet addresses to the leased line parts
between the LANs.
The IP address notation method employed involves expressing every eight bits as values in
decimal notation, and delimiting these values with periods (“.”). In this case, a 24-bit
network ID, consisting of “223.x.255” (where x is a certain decimal number), is assigned
to the Company K network using this notation method. The remaining 8-bit host part is
assigned a subnet ID and host ID as appropriate to complete the subnet address assignment
for each LAN.
In order to express a subnet address, it is necessary to indicate the number of bits it has.
Therefore, after the IP address expression in which the host ID is “0”, a forward slash (“/”)
is used as a delimiter and the number of bits in the subnet address is expressed as a decimal
number. For example, it may be expressed as “223.x.255.16/28”.
Any bit pattern other than all zeroes or all ones may be used as the host ID specifying a
host. Likewise, any bit pattern other than all zeroes or all ones may be used as the subnet
ID. The router to be used is a model with the functions required for this problem.

Sub-Question 1
What are the appropriate words to insert in blanks a and b in the
paragraph below, which pertains to IP addresses and routers?

In order to send IP packets to a receiver across LANs, a router is used in connecting the
LANs together. The router looks at the receiver’s IP address in the received IP packets to
determine the next destination for the IP packets. If the subnet address of the receiver’s IP
address specifies LAN a , then it is sent directly to the receiver’s host; otherwise,
it is sent to the next appropriate b .

4
Sub-Question 2
In assigning a subnet address, first the subnet ID was considered as having a fixed length
(the same number of bits for all LANs). What are the appropriate integers to insert in
blanks c and d in the paragraph below?

In Company K’s case, there are five LANs, so the subnet IDs must have a minimum of
c bits. Therefore, given the number of bits that can be used in the host IDs, the
maximum number of host IDs for which IP addresses can be assigned in each LAN is
d .

Sub-Question 3
With the method in Sub-Question 2, it is not possible to assign IP addresses to all of the
hosts in the main office LAN, so the method which was adopted assigns subnet IDs that
have different numbers of bits in each LAN. What are the appropriate integers to insert in
blanks e through m in the paragraph and table below?

Based on the number of hosts requiring IP address assignments, the host IDs for the main
office LAN must have a minimum of e bits. Likewise, the host IDs for the
branch office LANs must have a minimum of f bits.
Subnet addresses were assigned to each LAN, taking care to maintain the uniqueness of the
IP addresses. The results of these assignments are shown in the table below. In this case,
the smallest possible subnet address was assigned to the main office LAN.

Table Subnet Addresses in Company K’s LANs

LAN Subnet address


Main office LAN 223 . x . 255 . g / h

223 . x . 255 . i / j

223 . x . 255 . k / j
Branch office LANs
223 . x . 255 . l / j

223 . x . 255 . m / j

5
Q2. Read the following text regarding the evaluation of the number of bugs during system
development, then answer Sub-Questions 1 through 4.

Mr. U, who is a quality control manager at Company T, a software developer, has checked
the average number of bugs per 1,000 lines of code in 30 past system development projects
in order to estimate the number of bugs that will occur in the future. The mean value of
bugs per 1,000 lines of code was 5.1; variance was 2.8; and standard deviation was 1.7. In
this case, the number of bugs is the number of bugs discovered in a system test. A
histogram of the number of bugs is presented in Figure 1. On the horizontal axis, “1–2”
denotes the number of cases in which the number of bugs was 1 or more but less than 2.

8
Frequency of occurrence

7
(number of systems)

6
5
4
3
2
1
0
0 -1 1 -2 2 -3 3 -4 4 -5 5 -6 6 -7 7 -8 8 -9

Fig. 1 Histogram of Number of Bugs per 1,000 Lines of Code

Sub-Question 1
Assuming the number of bugs in systems developed by Company T in the future follows
the above parameters, what would be the expected value for the total number of bugs in a
system with a scale of 60,000 lines of code? Give your answer as an integer value,
counting fractions of .5 and over as a unit and cutting away the rest.

Sub-Question 2
Assuming the occurrence of bugs has a normal distribution following the above parameters,
which of the following is the most appropriate description of the probability that the
number of bugs per 1,000 lines of code would be equal to or greater than a given value?
Select one answer only.

a) The probability that the number of bugs will be seven or more is approximately 15%.
b) The probability that the number of bugs will be seven or more is approximately 30%.
c) The probability that the number of bugs will be eight or more is approximately 15%.
d) The probability that the number of bugs will be eight or more is approximately 30%.

6
Sub-Question 3
Next, Mr. U expressed the relationship between system sizes and the number of bugs per
1,000 lines of code for the past 30 projects in the form of a scatter plot. The results are
shown in Figure 2. Based on this information, Mr. U decided that the following
relationship exists between the number of bugs and system size.

Number of bugs per 1,000 lines of code = 3.4 + 0.05 × system size (unit: 1,000 lines of code)

10
Number of bugs per 8
1,000 lines of code
6

0
0 20 40 60 80
System size (unit: 1,000 lines of code)

Fig. 2 Scatter Plot of System Size and Number of Bugs

Using this relation expression, determine the total number of bugs expected in a system
with a size of 60,000 lines of code. Give your answer as an integer value, counting
fractions of .5 and over as a unit and cutting away the rest.

Sub-Question 4
What are the appropriate words to insert in blanks a through g in the
following paragraph? Select the appropriate words from the set of answers which follows
the paragraph.

Sub-Question 1 and Sub-Question 3 both estimate the number of bugs based on actual data
from 30 past projects. The result in Sub-Question 1 ignored a , while the result in
Sub-Question 3 did not. The relation expression in Sub-Question 3 is called a recursive
expression. Methods such as the b method are used to calculate the answer of
this expression. In this recursive expression, the coefficient of system size (unit: 1,000
lines of code) is positive. This means that as a increases, the number of bugs per
1,000 lines of code c . Based on the information in Figure 2, it is reasonable to
think that the number of bugs per 1,000 lines of code is affected by a , and it
seems more appropriate to use the result of Sub-Question d .
In addition, in this type of statistical analysis, it is important to assess the overall trend
while simultaneously investigating the causes related to cases (outlier values) that exhibit

7
characteristics differing considerably from other cases. For example, in cases where the
number of bugs is considerably greater than the estimated value at the end of the test, there
may have been problems such as complex system functions and configuration, or
insufficient e . Conversely, in cases where the number of bugs is quite low, it
could be that program quality is extremely high, or it could be that f is
insufficient, so caution is needed.

In addition, it is known heuristically that the cumulative bug count curve plotted against
test progress is a unique curve in many cases. For this reason, there are methods whereby a
cumulative bug count curve is prepared and compared against a curve derived using, for
example, a g model, in order to assess test progress.

Answer set:
a) 1 b) 3
c) Moving average d) Decreases
e) Computer processing capability f) Gompertz
g) Least squares h) System size
i) System particularity j) System complexity
k) Increases l) Test
m) Program developers’ capability n) Poisson
o) Runge-Kutta

8
Q3. Read the following text regarding a VPN, then answer Sub-Questions 1 through 4.

A VPN (Virtual Private Network) is one method for conducting secure communication
between two sites A and B. Figure 1 shows a system configuration for conducting
communication using IP through VPN units A and B. Assume that the information required
for communication between VPN units A and B, such as encryption keys and routing
information, has been set appropriately in advance.

Site A Site B

Router A Internet Router B

VPN VPN
Host A Host B
Unit A Unit B

Fig. 1 System Configuration Diagram

When a VPN unit in Figure 1 receives an IP packet addressed to a site conducting VPN
communication from a host inside its own site, it performs the following transformation,
then sends the packet to the VPN unit of the remote site.
(1) It encrypts the entire received IP packet using a secret key cryptosystem.
(2) It adds, to the encrypted packet, an IP header, which is addressed from itself to the
VPN unit at the remote site.
(3) It calculates the hash function value from the IP header and the entire encrypted packet,
then sets it in the packet as authentication data.
Figure 2 shows the configuration of the transmitted packet after this transformation.

Authentication
IP header Encrypted IP packet
data

Fig. 2 Transmitted Packet

9
When a VPN unit receives the packet from the VPN unit of a remote site, it performs the
following processes.
(4) It confirms that the packet is from the VPN unit of a site engaging in VPN
communication, then checks whether the authentication data is correct.
(5) If the authentication data is correct, it removes and decrypts the encrypted packet from
the received packet, then it transfers it to the receiver's address in the decrypted IP
packet.

Sub-Question 1
Answer the following questions regarding VPN unit packet transformation.
(1) What does packet encryption serve to prevent, in terms of security? Answer in 10
words or less.
(2) What does adding a hash function value to the packet prevent, in terms of security?
Answer in 10 words or less.

Sub-Question 2
When a packet is sent from host A to host B using a VPN, what sender’s address and
receiver’s address appear in the IP header for each interval shown in the table below?
Provide the appropriate words to enter in blanks a through d in the
table.

Table Sender’s Address and Receiver’s Address in Each Interval


Interval Sender’s address Receiver’s address
Host A → VPN unit A Host A a
VPN unit A → VPN unit B b c
VPN unit B → Host B d Host B

10
Sub-Question 3
Which of the following describe characteristics of the method for establishing a VPN as
presented in the problem text? Select all answers that are applicable.

a) Applications that use a VPN must link special libraries.


b) In order to use a VPN, it is necessary to connect leased lines between the sites.
c) Secure communication can be achieved even using a frame relay network or telephone
network over the public communication network.
d) Even if the method for communication between sites is changed from a method which
does not use VPN to a method which does use VPN, it is not necessary to make
application changes.
e) The method is a method for establishing a VPN wherein tunneling is performed in the
data link layer (Layer 2).
f) A VPN can only be used by specific applications.

Sub-Question 4
In order to prevent the exposure of host addresses in sites A and B to the Internet, it was
decided that routers A and B would be provided with a NAT function, whereby they would
translate specific internal addresses in the IP packets into addresses on the Internet side.
Furthermore, it was decided that addresses would be exposed to the Internet for VPN units
A and B only. However, VPN communication between sites A and B stopped working due
to the introduction of the NAT function. Enter the appropriate words in blanks e

through g in the following description of the reasons for this problem. Give each
answer in 20 words or less. In this case, assume that the Internet-side IP addresses of VPN
units A and B are VPN unit AX and VPN unit BX, respectively.

When the NAT function is introduced, the addresses in the IP header of a packet sent from
site A to site B are e for the receiver and VPN unit A for the sender, at the time
of sending from VPN unit A. In addition, the addresses in the IP header at the time of
reception by VPN unit B are VPN unit B for the receiver and f for the sender.
Thus the information in the IP header is changed, and g at VPN unit B fails, so
VPN communication no longer works.

11

You might also like