Applied Information Technology Engineer Exam, Subject A, Part 4: Queueing and Throughput
M/M/1 utilization, waiting and sojourn times, unit consistency and stability, Little's law, and bottleneck throughput for AP Subject A, with worked examples and four original questions.
AP Subject A · Installment 4 · An independent study resource for the 2026 exam and Syllabus Ver.7.2. It is not affiliated with IPA and does not guarantee a pass. Open the series hub
Revised: 2026-10-20 This article covers the 2026 exam, based on the official IPA “応用情報技術者試験(レベル3)シラバス Ver.7.2” (Applied Information Technology Engineer Examination (Level 3) Syllabus Ver.7.2). Before the exam, check IPA’s latest notices and syllabus again. This is a study aid only and does not guarantee a pass. IPA has not reviewed or endorsed this article.
Learning index
- Learning objectives
- Terminology (Korean ↔ Japanese ↔ English)
- Components of a queueing model
- Distinctions that are easy to confuse: Wq vs W; response time, turnaround time, and throughput; arrival rate, capacity, utilization, and throughput
- Unit discipline
- M/M/1 assumptions
- M/M/1 formulas, derivations, and checks
- Little’s law
- Throughput and bottlenecks
- Four worked examples
- Four practice questions (original)
- Formula sheet
- Common traps
- Final self-check
- Review plan (1/3/7 days)
- Syllabus mapping
- Sources and references
1. Learning objectives
After this article you should be able to:
- Explain the components of a queueing model (customer/job, server, arrival interval, service time).
- Compute arrival rate λ, service rate μ, and utilization ρ after putting them on the same time base.
- State the M/M/1 assumptions and check the stability condition λ < μ.
- Compute W, Wq, L, and Lq, and check them with W = Wq + 1/μ and L = Lq + ρ.
- Apply Little’s law with the right system boundary and effective arrival rate.
- Tell response time, turnaround time, and throughput apart, and explain why the bottleneck sets the throughput of serial processing.
2. Terminology
| Korean | Japanese | English | Symbol / unit |
|---|---|---|---|
| 대기행렬 | 待ち行列 | queue | — |
| 고객 / 작업 | 客 / ジョブ(トランザクション) | customer / job | — |
| 서버(창구) | サーバ(窓口) | server | — |
| 도착 간격 | 到着間隔 | (inter-)arrival interval | time |
| 서비스 시간 | サービス時間 | service time | time, mean 1/μ |
| 도착률 | 平均到着率 | arrival rate | λ, jobs/time |
| 서비스율 | 平均サービス率 | service rate | μ, jobs/time |
| 이용률 | 利用率 | utilization | ρ, dimensionless |
| 대기행렬 길이(대기 중 평균 개수) | 待ち行列長(平均待ち数) | queue length | Lq, jobs |
| 시스템 내 평균 개수 | 系内客数(系内の平均数) | number in system | L, jobs |
| 대기 시간 | 待ち時間 | waiting time in queue | Wq, time |
| 시스템 체류 시간 | 系内時間(滞在時間) | system / sojourn time | W, time |
| 응답 시간 | レスポンスタイム(応答時間) | response time | time |
| 턴어라운드 타임 | ターンアラウンドタイム | turnaround time | time |
| 처리량 | スループット | throughput | jobs/time |
| 병목 | ボトルネック | bottleneck | — |
| 리틀의 법칙 | リトルの法則(リトルの公式) | Little’s law | L = λW |
| M/M/1 모델 | M/M/1 モデル | M/M/1 queue | — |
3. Components of a queueing model
A queueing model has four parts.
- Customer/job: whatever arrives for processing, such as a bank customer, a print job, or an API request.
- Arrival process: when customers arrive. The reciprocal of the mean arrival interval is the arrival rate λ. One arrival every 2 minutes on average means λ = 0.5 per minute.
- Server: the counter or resource that does the processing. The “1” in M/M/1 means one server.
- Service process: how long one job takes. The reciprocal of the mean service time is the service rate μ. A mean of 3 minutes gives μ = 1/3 per minute = 20 per hour.
In Kendall notation A/B/c, A is the arrival process, B is the service-time distribution, and c is the number of servers. M stands for “Markovian” (memoryless). For arrivals it means Poisson arrivals (exponentially distributed interarrival times). For service it means exponentially distributed service times.
Note: the syllabus also includes “simulation using random numbers.” When a model is hard to solve with formulas, you can generate arrival intervals and service times from random numbers, simulate the queue, and estimate the averages. Know the idea at this level.
4. Distinctions that are easy to confuse
4.1 Waiting time in queue Wq vs system/sojourn time W
- Wq (waiting time in queue): mean time from arrival until service starts.
- W (system/sojourn time): mean time from arrival until service ends and the job leaves.
So it is always true that
W = Wq + 1/μ (time in system = waiting time + mean service time)
Questions that say “waiting time” or “待ち時間” usually want Wq. Questions that say “response time,” “系内時間,” or “until processing finishes” usually want W. Read the whole sentence and check where the clock stops.
4.2 Response time, turnaround time, and throughput
| Metric | Meaning (common definition) | Unit |
|---|---|---|
| Response time | In interactive processing, time from the request (end of input) until the system starts returning a response | time |
| Turnaround time | Time from submitting a job (typically batch) until all results are received | time |
| Throughput | Jobs completed per unit time | jobs/time |
Caution: these boundaries are not identical in every source. Some materials measure response time until the response output finishes. Queueing theory often just calls the sojourn time W the “response time.” In an exam question, use the start and end points the question defines. Response time and turnaround time measure how long one job takes (latency). Throughput measures how many jobs finish per unit time (rate). These are different axes, and improving one does not necessarily improve the other.
4.3 Offered arrival rate, effective arrival rate, service capacity, utilization, and actual throughput
| Concept | Symbol | Meaning |
|---|---|---|
| Offered arrival rate | λ | Mean rate at which jobs try to enter the system |
| Effective (admitted) arrival rate | λ_eff | Rate that actually enters the system boundary, after rejection, loss, or abandonment. With loss probability P_loss, λ_eff = λ(1 − P_loss) |
| Service capacity | μ | Maximum rate the server can process when it works continuously |
| Utilization | ρ | Fraction of time the server is busy. For one server, ρ = λ_eff / μ |
| Actual throughput | X | Rate at which jobs actually complete and leave |
In the long-run average of a stable, lossless system, X = λ_eff = λ, not μ. μ is only the maximum possible rate. When little work arrives, the server is idle part of the time (a fraction 1 − ρ).
5. Unit discipline
- Put λ and μ on the same time base (for example, both per minute) before you compute anything.
- 1/μ is the mean service time. If the service time is 15 seconds, do not enter μ = 15. μ = 1/15 per second = 4 per minute.
- W and Wq are times. L and Lq are counts (jobs). ρ is dimensionless. Throughput is jobs per unit time.
- The result of W = 1/(μ − λ) is in the time unit of λ and μ. If you used per-hour rates, the answer is in hours; multiply by 60 to get minutes.
Conversion trap: Suppose arrivals are “180 per hour” and the mean service time is “15 seconds.” If you use μ = 4 per minute but plug in λ = 180, you get ρ = 180/4 = 45 and wrongly conclude the system is “badly unstable.” The correct calculation is λ = 180/60 = 3 per minute, so ρ = 3/4 = 0.75.
6. M/M/1 assumptions
The M/M/1 formulas hold only when all of these assumptions hold.
- Poisson arrivals: arrivals are independent, and interarrival times are exponentially distributed (mean 1/λ).
- Exponential service times: service times are independent and exponentially distributed (mean 1/μ), and independent of arrivals.
- One server.
- Infinite waiting room and calling population: a job can always join the queue, however long it is, and the source of customers does not shrink.
- No loss, balking, or reneging: every arriving customer joins the queue and stays until served.
- Work-conserving FCFS: for teaching we assume first-come, first-served, and the server never idles while work is waiting.
- A steady state exists only when λ < μ, that is, ρ < 1.
What ρ ≥ 1 means: In this model, if ρ ≥ 1 the queue tends to grow without bound over the long run, so no finite steady-state mean exists. (Plugging into the formulas gives a zero or negative denominator.) This means “the M/M/1 formulas cannot give an average.” It does not mean every real system fails at that instant. Real systems have buffer limits, timeouts, users who give up, and recovery after short peaks, so overload shows up as rejections or losses, a growing backlog, or a spike in delay. Under sustained overload, though, backlog still builds up over time.
7. M/M/1 formulas, derivations, and checks
In steady state (ρ < 1), the probability that there are n jobs in the system is P_n = (1 − ρ)ρⁿ. From this:
| Metric | Formula | Unit |
|---|---|---|
| Utilization | ρ = λ / μ | dimensionless |
| Mean number in system | L = Σ n·P_n = ρ / (1 − ρ) | jobs |
| System time | W = L / λ = 1 / (μ − λ) | time |
| Waiting time in queue | Wq = W − 1/μ = ρ / (μ − λ) = λ / [μ(μ − λ)] | time |
| Mean queue length | Lq = λ·Wq = ρ² / (1 − ρ) | jobs |
Checks
- W = Wq + 1/μ: 1/(μ − λ) − 1/μ = [μ − (μ − λ)] / [μ(μ − λ)] = λ / [μ(μ − λ)] = Wq ✓
- L = Lq + ρ: ρ/(1 − ρ) − ρ = ρ[1 − (1 − ρ)]/(1 − ρ) = ρ²/(1 − ρ) = Lq ✓ (ρ is the mean number in service, equal to the probability the server is busy, 1 − P₀ = ρ.)
- L = λW: λ/(μ − λ) = (λ/μ)/(1 − λ/μ) = ρ/(1 − ρ) ✓
- Handy forms: W = (1/μ)/(1 − ρ) and Wq = (1/μ)·ρ/(1 − ρ). Think of them as the mean service time multiplied by a “congestion factor.”
If a model has loss or rejection, Little’s law must use the effective arrival rate λ_eff instead of λ (next section).
8. Little’s law
L = λ_eff · W, Lq = λ_eff · Wq
- Matching boundaries: L and W must refer to the same boundary. For the queue only, use Lq and Wq. For the queue plus jobs in service, use L and W.
- Use λ_eff: use the rate that actually enters the boundary. Jobs rejected at the entrance never enter the boundary, so they are not counted.
- Long-run averages, stability: the law is about long-run averages and assumes a stable system, where the number inside does not grow without bound.
- Consistent units: if λ is per second, W must be in seconds.
- Broader than M/M/1: it holds regardless of the arrival and service distributions, the number of servers, or the service order. So even for non-M/M/1 systems you can directly find how many jobs are in the system on average.
9. Throughput and bottlenecks
- Throughput = actual completions / time.
- In equilibrium, a stable, lossless queue has throughput = accepted arrival rate, not automatically μ.
- Throughput is capped by capacity μ (with several servers, by their total capacity). When arrivals exceed capacity, throughput saturates near capacity, and the excess work piles up or is rejected.
- Serial stages: if every job passes through A → B → C in order, sustainable throughput can be no higher than the stage with the smallest capacity (the bottleneck). Do not add the capacities.
- Pipelining and concurrency: if each stage works on a different job at the same time (a pipeline), throughput can rise to the bottleneck stage’s capacity. The time for one job to pass through every stage (latency) does not shrink, though. Adding parallel servers to one stage raises that stage’s capacity, which can move the bottleneck to another stage.
10. Worked examples
Example 1: Full M/M/1 calculation
One counter, Poisson arrivals λ = 12 per hour, exponential service μ = 20 per hour.
- Units: both per hour ✓. Stability: λ = 12 < μ = 20 ✓
- ρ = 12/20 = 0.6
- Mean service time 1/μ = 1/20 hour = 3 min
- W = 1/(20 − 12) = 1/8 hour = 7.5 min
- Wq = ρ/(μ − λ) = 0.6/8 = 0.075 hour = 4.5 min
- L = λW = 12 × 1/8 = 1.5 customers
- Lq = λWq = 12 × 0.075 = 0.9 customers
Checks: W = Wq + 1/μ = 4.5 + 3 = 7.5 min ✓; L = Lq + ρ = 0.9 + 0.6 = 1.5 ✓; L = ρ/(1 − ρ) = 0.6/0.4 = 1.5 ✓; Lq = ρ²/(1 − ρ) = 0.36/0.4 = 0.9 ✓
Example 2: Unit conversion and stability diagnosis
An M/M/1 server receives 180 requests per hour, and the mean service time is 15 seconds.
- Convert to minutes: λ = 180/60 = 3 per minute, μ = 60/15 = 4 per minute
- ρ = 3/4 = 0.75 < 1 → stable
- W = 1/(4 − 3) = 1 min; Wq = 0.75/1 = 0.75 min = 45 s; L = 3 × 1 = 3 jobs; Lq = 3 × 0.75 = 2.25 jobs
- Check: Wq + 1/μ = 45 s + 15 s = 60 s = W ✓
Traps: Mixing λ = 180 (per hour) with μ = 4 (per minute) gives ρ = 45, the wrong verdict. Entering “15 seconds” as μ = 15 gives ρ = 3/15 = 0.2, which is far too small.
When load increases: If arrivals rise to 270 per hour (4.5 per minute), ρ = 4.5/4 = 1.125 ≥ 1. The M/M/1 model has no finite steady-state mean, so do not compute W from the formula. A negative value like 1/(4 − 4.5) = −2 min is meaningless. You need to add service capacity or reduce arrivals.
Example 3: Little’s law with an explicit boundary
An API server receives 55 requests per second, but admission control at the entrance immediately rejects 5 per second. Boundary = inside the server, from admission until the response completes. For admitted requests, the mean time in system is W = 0.2 s, and the mean time spent waiting in the queue is Wq = 0.12 s. (We do not assume M/M/1.)
- λ_eff = 55 − 5 = 50 per second
- L = λ_eff × W = 50 × 0.2 = 10 requests (mean number inside the boundary)
- Lq = λ_eff × Wq = 50 × 0.12 = 6 requests (mean number waiting in the queue)
- Mean number in service = 10 − 6 = 4 = 50 × (0.2 − 0.12) = 50 × 0.08 ✓
Trap: Using the offered rate 55 gives L = 11, an overestimate. Rejected requests never entered the boundary. In steady state, the throughput is also 50 per second, not 55.
Example 4: Bottleneck throughput
In a serial process, every job passes through A → B → C in order. Each stage can work on a different job at the same time (a pipeline). Capacities: A 30 jobs/min, B 12 jobs/min, C 20 jobs/min. Buffers between stages are large enough.
- Maximum sustainable throughput = min(30, 12, 20) = 12 jobs/min (bottleneck = B). 30 + 12 + 20 = 62 jobs/min is wrong.
- Arrivals of 10 jobs/min: below every stage’s capacity → throughput = 10 jobs/min (equal to the arrival rate, not 12). Utilizations: A = 10/30 ≈ 0.333, B = 10/12 ≈ 0.833, C = 10/20 = 0.5
- Arrivals of 15 jobs/min: B’s load is 15/12 = 1.25 > 1 → long-run throughput saturates at about 12 jobs/min, and the backlog in front of B grows by about 3 jobs per minute.
- Doubling B with two parallel units of the same capacity gives B 24 jobs/min → the new bottleneck is C, and maximum throughput is 20 jobs/min.
11. Practice questions (4 original questions)
All four questions below were written for this article and are original. None is an IPA past exam question.
Question 1
At an M/M/1 counter, customers arrive at an average of 6 per hour and the service rate is 10 per hour. What is the mean time, in minutes, that a customer waits in the queue until service starts?
- A. 6 min
- B. 9 min
- C. 15 min
- D. 37.5 min
Answer: B
Calculation: ρ = 6/10 = 0.6, 1/μ = 6 min, W = 1/(10 − 6) = 0.25 hour = 15 min, Wq = ρ/(μ − λ) = 0.6/4 = 0.15 hour = 9 min. Check: Wq + 1/μ = 9 + 6 = 15 = W ✓
- A. 6 min is the mean service time 1/μ, not the waiting time.
- B. Correct. This is Wq, the time spent waiting in the queue.
- C. 15 min is the system time W, which includes service. This is the W vs Wq trap.
- D. 37.5 min is W = 15 min divided by 1 − ρ again (15/0.4). It applies the congestion factor twice.
Question 2
Jobs arrive at a print server (assume M/M/1) once every 50 seconds on average, and mean processing time is 40 seconds per job. Which statement is correct?
- A. Using an arrival rate of 72 per hour and a service rate of 1.5 per minute gives ρ = 48, so the system is unstable.
- B. ρ = 0.8, so the mean waiting time in queue Wq is 200 seconds.
- C. Because ρ < 1, no queue forms.
- D. ρ = 0.8, and the mean time from a job’s arrival until processing finishes, W, is 200 seconds.
Answer: D
Calculation (in seconds): λ = 1/50 per second, μ = 1/40 per second, ρ = 40/50 = 0.8. W = 1/(μ − λ) = 1/(0.025 − 0.02) = 1/0.005 = 200 s (= 40/(1 − 0.8)). Wq = W − 1/μ = 200 − 40 = 160 s. Lq = ρ²/(1 − ρ) = 0.64/0.2 = 3.2 jobs.
- A. This is a unit trap that mixes 72 per hour with 1.5 per minute. On the same base, 72 per hour ÷ 90 per hour = 0.8, which is stable.
- B. 200 seconds is W. Wq is 200 − 40 = 160 seconds.
- C. ρ < 1 only means capacity is sufficient on average. Random arrivals still form a queue (Lq = 3.2 jobs).
- D. Correct.
Question 3
A reservation system receives 120 requests per minute, but 20 per minute are rejected immediately at the entrance and never enter the system. Admitted requests stay an average of 3 seconds from admission to completion. Assuming long-run stability, how many admitted requests are in the system on average?
- A. 5
- B. 6
- C. 300
- D. 360
Answer: A
Calculation: λ_eff = 120 − 20 = 100 per minute = 100/60 per second, L = λ_eff × W = (100/60) × 3 = 5. The boundary is “from admission to completion.” Little’s law needs no distributional assumption, so it applies even when the system is not M/M/1.
- A. Correct.
- B. This uses 120 per minute = 2 per second, including rejected requests, and gets 2 × 3 = 6.
- C. This multiplies 100 per minute by 3 seconds without converting units (100 × 3).
- D. This multiplies 120 per minute by 3 seconds without converting units (120 × 3), combining two mistakes.
Question 4
In a serial processing system, every job passes through stage 1 → 2 → 3 in order. Each stage processes different jobs at the same time. Stage capacities are 1: 40 jobs/hour, 2: 25 jobs/hour, 3: 30 jobs/hour. Jobs arrive at 20 jobs/hour, with no loss, and the system is stable in the long run. What is the long-run average throughput?
- A. 95 jobs/hour
- B. 25 jobs/hour
- C. 20 jobs/hour
- D. About 10.2 jobs/hour
Answer: C
Calculation: bottleneck capacity = min(40, 25, 30) = 25 jobs/hour > arrivals of 20 jobs/hour → every stage is stable. In a stable lossless steady state, throughput = arrival rate = 20 jobs/hour. The bottleneck (stage 2) has utilization 20/25 = 0.8.
- A. This adds the capacities (40 + 25 + 30). Capacities of serial stages are not added.
- B. The bottleneck capacity of 25 jobs/hour is the upper limit on throughput. Only 20 jobs/hour arrive, so actual throughput does not reach 25.
- C. Correct.
- D. 1/(1/40 + 1/25 + 1/30) ≈ 10.2 jobs/hour is the value when only one job at a time is in the whole line (no pipelining). Here the stages work concurrently, so it does not apply.
12. Formula sheet
| Item | Formula / rule |
|---|---|
| Utilization | ρ = λ/μ (one server; with loss, λ_eff/μ) |
| Stability (M/M/1) | λ < μ (ρ < 1) |
| Mean service time | 1/μ |
| System time | W = 1/(μ − λ) = (1/μ)/(1 − ρ) |
| Waiting time in queue | Wq = ρ/(μ − λ) = λ/[μ(μ − λ)] |
| Mean number in system | L = λW = ρ/(1 − ρ) |
| Mean queue length | Lq = λWq = ρ²/(1 − ρ) |
| Checks | W = Wq + 1/μ, L = Lq + ρ |
| Little’s law | L = λ_eff·W, Lq = λ_eff·Wq (same boundary, long-run averages, same units) |
| Throughput (stable, lossless) | X = accepted arrival rate ≤ capacity |
| Serial stages | maximum throughput = minimum stage capacity |
13. Common traps
- Answering W when the question asks for Wq, or the reverse.
- Dividing λ per hour by μ per minute.
- Using the mean service time directly as μ (μ = 1/service time).
- Plugging ρ ≥ 1 into the formulas and writing a negative or infinite value as the “answer.”
- Thinking no queue forms when ρ < 1.
- Using the offered arrival rate, including rejected requests, in Little’s law.
- Pairing values with different boundaries, such as L (whole system) with Wq (queue only).
- Assuming throughput is always μ.
- Adding the capacities of serial stages.
- Interpreting the boundaries of response time or turnaround time differently from the question’s definition.
14. Final self-check
- I can say what 1/μ means, with its unit.
- Without notes, I can compute ρ, W, Wq, L, and Lq for λ = 12/hour and μ = 20/hour.
- I can check answers with W = Wq + 1/μ and L = Lq + ρ.
- I can explain the M/M/1 assumptions and what ρ ≥ 1 means.
- Before applying Little’s law, I habitually check the boundary, λ_eff, and units.
- I can explain that serial throughput is the smaller of the bottleneck capacity and the arrival rate.
- I can distinguish response time, turnaround time, and throughput, each in one sentence.
15. Review plan (1/3/7 days)
A simple self-run plan. It involves no tracking or data collection.
- Day 1: Cover the formula sheet and redo Example 1 from scratch, including the checks.
- Day 3: Redo the four practice questions, and explain out loud why each wrong option is wrong.
- Day 7: Change the numbers and write one question of your own (for example, λ = 8/hour, μ = 10/hour). Include one unit conversion and one bottleneck.
16. Syllabus mapping
- 大分類1:基礎理論/中分類1:基礎理論/2. 応用数学/(6)待ち行列理論
- 大分類2:コンピュータシステム/中分類4:システム構成要素/2. システムの評価指標/(1)システムの性能特性と評価/①システムの性能指標
17. Sources and references
- IPA, “応用情報技術者試験(レベル3)シラバス Ver.7.2” https://www.ipa.go.jp/shiken/syllabus/omgdg50000005kq5-att/syllabus_ap_ver7_2.pdf Checked: 2026-10-20
This article revised: 2026-10-20
The syllabus was used only as evidence for exam scope. All explanations, examples, and practice questions in this article were written independently, and no IPA past exam questions were used. This material has not been endorsed or reviewed by IPA.