Equivalence — when two different streams are the same thing
15
VI.
Composition — decomposing real software-project cash flows
20
Discussion, homework, questions
10
Part OneCash flow diagrams03
Part — One
I
Before you compute a cash flow, you should be able to draw it.
"The cash flow diagram is to the financial engineer what the free-body diagram is to the mechanical one." — after Park, Contemporary Engineering Economics
§ I · DiagramsLecture Four
§ IWhat & why04
Working definition
A cash flow diagram is a picture of money in time.
A cash flow diagram (CFD) plots every receipt and every payment of a project on a single time axis, distinguishing each by sign, magnitude, and timing.
It is the bridge between a narrative ("we'll pay $100K up front, then receive $40K a year for four years") and a computation (PV, FV, NPV, IRR).
A CFD does not solve the problem. It makes the problem solvable by forcing every ambiguity onto the page.
Time, in discrete periods 0, 1, 2, … , n. Period 0 is "now."
Forces you to choose a period (month vs. year); all rates must match it.
Arrows up
Cash into the decision-maker (revenue, savings, salvage).
Visual sign convention — green / positive.
Arrows down
Cash out (cost, payment, investment).
Visual sign convention — red / negative.
End-of-period rule
Unless stated otherwise, every cash flow occurs at the end of its period.
An "annual" cash flow at year 1 means month 12, not month 0.
Continuous and beginning-of-period conventions exist (annuity-due, continuous compounding) — we will name them when we need them.
§ I · Diagrams05 / 31
§ IReading a diagram06
A first picture
A small software project, drawn in full.
$100K invested up-front; $40K of net cash flow returned each year for four years. From the investor's perspective.
Cash flow diagram · investor's perspective · annual periods
Naive total: −100 + 4·40 = +$60K — looks like a win.
At i = 10%: PV of inflows = $126.79K; PV of outflow = $100K; NPV ≈ +$26.79K.
§ I · Diagrams06 / 31
§ ICommon pitfalls07
What goes wrong
Five mistakes that quietly invalidate a CFD.
Mixing perspectives mid-problem — half the arrows are the customer's, half the vendor's.
Mixing periods — monthly cash flow on a yearly rate. The factor will silently lie.
Including sunk costs — past payments belong in history, not in the diagram.
Ignoring opportunity cost — using your own time "for free" because no cash changes hands.
Mis-timing the first cash flow — an annuity-due at t = 0 looks the same on paper as an ordinary annuity at t = 1, but they differ by a factor of (1+i).
When in doubt: write the perspective and the period at the top of the diagram. Two extra words save a wrong answer.
§ I · Diagrams07 / 31
Part TwoUniform series08
Part — Two
II
The first shape: the same number, every period.
Mortgages, leases, salaries, SaaS subscriptions — the world is full of uniform series.
§ II · Uniform seriesLecture Four
§ IIFour factors09
A is the constant cash flow at each period 1 … n
Four directions, four factors.
Factor
Reads as
Formula
Used to
P / A
Present value of a uniform series.
\( P = A \cdot \dfrac{(1+i)^n - 1}{i\,(1+i)^n} \)
Price a stream of equal future payments today.
F / A
Future value of a uniform series.
\( F = A \cdot \dfrac{(1+i)^n - 1}{i} \)
Project a savings plan or sinking fund.
A / P
Annual equivalent of a present sum.
\( A = P \cdot \dfrac{i\,(1+i)^n}{(1+i)^n - 1} \)
Convert a loan into level payments.
A / F
Annual equivalent of a future sum.
\( A = F \cdot \dfrac{i}{(1+i)^n - 1} \)
Set aside equal amounts to hit a target.
P/A and A/P are reciprocals; F/A and A/F are reciprocals. Memorise one of each pair.
§ II · Uniform series09 / 31
§ IIWhere it comes from10
A 60-second derivation
P/A is just a geometric series in a smart disguise.
Discount each of the n equal payments of A back to today:
Step 1 — sum of discounted payments
\( P = \displaystyle\sum_{t=1}^{n} \dfrac{A}{(1+i)^t} \)
Step 2 — factor and sum the geometric series
\( P = A \cdot \dfrac{1 - (1+i)^{-n}}{i} = A \cdot \dfrac{(1+i)^n - 1}{i\,(1+i)^n} \)
Why this matters
The formula is not arbitrary — it's the closed form of n single-sum PVs.
As n → ∞, the factor collapses to 1/i — the price of a perpetuity.
As i → 0, the factor collapses to n — undiscounted total.
Both limits are useful sanity checks on any spreadsheet answer.
§ II · Uniform series10 / 31
§ IIWorked example · P/A11
Pricing a stream — P/A
What is a $1,500/month rental promise worth today?
A landlord receives $1,500 at the end of each month for the next five years (60 months). The opportunity cost of capital is 9% per year, compounded monthly — so i = 0.75% per month.
\( P \approx 1500 \cdot 48.173 \approx \$72{,}260 \)
What the answer tells you
The undiscounted total is $90,000 (60 × $1,500) — the time-value gap is $17.7K, about 20%.
If a buyer offers $70K cash today to take over the lease, the landlord should refuse — the stream is worth more.
At i = 0 (no time-value), the same stream is worth $90K; the gap is entirely the cost of waiting.
Always check that i and the period of A are in the same unit. Mixing kills the answer.
§ II · Uniform series11 / 31
§ IIWorked example · A/P12
Sizing a payment — A/P
Lump-sum server vs. monthly cloud bill.
A team can buy a server outright for $60,000, or pay a hyperscaler monthly for the same compute. At 9%/yr over a 3-year life, what monthly bill would make the two equivalent?
Any cloud bill below $1,908/month makes leasing cheaper than owning, ignoring everything else (depreciation, maintenance, salvage).
A real comparison would add: power, ops, scaling head-room, optionality — we will layer those in Lecture 11 (Build / Buy / Reuse).
§ II · Uniform series12 / 31
Part ThreeArithmetic gradient13
Part — Three
III
When the same number becomes the same increment.
Maintenance costs that creep up by $5K every year are the canonical arithmetic gradient.
§ III · Arithmetic gradientLecture Four
§ IIIThe shape14
A constant additive step
An arithmetic gradient adds G every period.
A pure arithmetic gradient · base 0 · step G
A pure arithmetic gradient starts at zero at period 1, grows by a constant G each period, and is rarely a stream you actually receive in isolation — almost always you see it added to a uniform series baseA1.
§ III · Arithmetic gradient14 / 31
§ IIIP/G and A/G15
Two factors, two uses
Price the tilt — or convert it to an equivalent uniform.
P / G — present value of a pure arithmetic gradient
"A flat series of AG per period is worth the same as a gradient stepping by G."
For a stream that starts at A1 at period 1 and grows by G per period, the PV is the sum of two pieces: a uniform series of A1 (use P/A) plus a pure gradient of G (use P/G).
§ III · Arithmetic gradient15 / 31
§ IIIWorked example16
Rising maintenance cost
Year 1: $20K. Then $5K more every year, for six years.
A legacy system costs $20K to maintain in year 1, and that cost grows by $5K per year through year 6. At i = 8%, what is the PV of the maintenance burden?
Decompose: uniform $20K base + pure gradient G = $5K
\( P \approx \$92{,}460 + \$52{,}615 \approx \$145{,}080 \)
Why this matters for software economics
Almost every long-lived system has a creeping maintenance gradient — the codebase ages, dependencies decay, the team rotates. Quoting only year-1 cost ($20K) understates the lifetime burden by more than seven times.
A 60% increase in year-1 cost over six years is roughly an 8%/yr arithmetic gradient on $20K base — not unusual in practice.
§ III · Arithmetic gradient16 / 31
Part FourGeometric gradient17
Part — Four
IV
When the same number becomes the same percentage.
Inflation, SaaS price escalators, salary bands, AI token spend — the modern economy runs on geometric gradients.
§ IV · Geometric gradientLecture Four
§ IVThe shape18
A constant proportional step
A geometric gradient grows by a constant factor (1+g).
Geometric gradient · base A1 · rate g per period
In a geometric series, each period's cash flow is (1+g) times the previous. g > 0 is a ramp; g < 0 is a decay (declining licence renewal, for example).
The growth exactly cancels the discount: each year's PV is the same constant.
Mnemonic: define i* = (i − g)/(1 + g), then a geometric stream with growth g and rate i is just a flat stream with rate i*. P/A with i* gives the answer.
§ IV · Geometric gradient19 / 31
§ IVWorked example · SaaS20
The syllabus problem
A SaaS subscription growing 10% per year, for five years.
Year-1 payment $24,000; annual price escalator g = 10%; discount rate i = 9%; term n = 5. What is the PV of the five-year payment stream?
Effective rate i* = (0.09 − 0.10) / 1.10 ≈ −0.91%. P/A factor for n = 5 at i* ≈ −0.91% ≈ 5.139; times $24K × (1/1.10) ≈ $112K. Close to the closed form, modulo rounding.
Vendor's framing vs. customer's truth
The vendor quotes "$24K with a modest 10% annual increase" — the customer commits to a stream whose undiscounted total is $146.5K, and whose PV at 9% is $111K. Both numbers are real, and only the diagram reveals the gap.
§ IV · Geometric gradient20 / 31
Part FiveEquivalence21
Part — Five
V
Two streams are equivalent when they share the same PV at the same rate.
Every financial decision in this course is, at root, an equivalence statement.
§ V · EquivalenceLecture Four
§ VDefinition22
The central principle
Equivalence is what gives "worth the same" a precise meaning.
Two cash-flow streams X and Y are equivalent at interest rate i if
\( PV_i(X) = PV_i(Y) \)
Equivalence is — in this strong sense — the only meaningful definition of "same value" between two streams that occur at different times.
Three properties
Rate-dependent. Equivalence at 5% is not equivalence at 10%.
Symmetric & transitive. If X ≡ Y and Y ≡ Z (at the same i), then X ≡ Z.
Additive. If X1 ≡ Y1 and X2 ≡ Y2, then X1+X2 ≡ Y1+Y2.
Additivity is what makes decomposition (Part VI) work.
§ V · Equivalence22 / 31
§ VWorked example23
A lump sum vs. an annuity
$10,000 today — or $2,400 a year for five years?
Discount rate i
PV of $10K today
PV of $2,400 × 5 yrs
Which wins?
0%
$10,000
$12,000
Annuity
4%
$10,000
$10,683
Annuity
6.40%
$10,000
$10,000
Equivalent
8%
$10,000
$9,582
Lump sum
12%
$10,000
$8,651
Lump sum
The two streams are equivalent at exactly one rate: i ≈ 6.40%. Below it, the annuity is worth more; above it, the lump sum is. The rate is the deciding fact.
§ V · Equivalence23 / 31
Part SixComposition24
Part — Six
VI
Real cash flows aren't clean — but they're always a sum of clean pieces.
§ VI · CompositionLecture Four
§ VIThe toolkit25
Every cash flow is a sum of these four
Four shapes, all the financial world.
Single sum
One payment, one period. Up-front investment, salvage value, one-time bonus.
Factor: P/F, F/P
Uniform series
The same amount, every period. Subscriptions, loan payments, salaries.
Constant proportional step. SaaS escalators, inflation, exponential growth or decay.
Factor: closed-form (1+g)/(1+i)
Decomposition rule — by additivity of equivalence: split the stream into clean pieces · price each at the same i · sum the PVs.
§ VI · Composition25 / 31
§ VIWorked example · SaaS contract26
An enterprise software contract, decomposed
Three shapes, one PV.
Year 0: implementation fee of $30K. Years 1–5: base subscription of $48K, with annual escalator g = 6%. Year 3: one-time professional-services credit of +$10K. i = 9%.
Piece
Shape
Factor
PV at i = 9%
Implementation at t=0
Single sum (outflow)
P/F × 1
−$30,000
Subscription, A₁=$48K, g=6%, n=5
Geometric gradient (outflow)
closed form
−$201,690
PS credit at t=3
Single sum (inflow)
P/F, 9%, 3
+$7,722
Total contract PV (customer's perspective)
−$223,968
Same numbers, different framing: the vendor's "$30K + $48K/yr (with a small 6% increase)" pitch is a present-day commitment of roughly $224K. That is the number that belongs in the comparison with the in-house alternative.
§ VI · Composition26 / 31
§ VICheat sheet27
One slide to carry forward
The factor map.
Convert
From
To
Factor
Formula
Single → PV
F at t=n
P at t=0
P/F
1 / (1+i)n
Single → FV
P at t=0
F at t=n
F/P
(1+i)n
Uniform → PV
A × n
P
P/A
[(1+i)n−1] / [i(1+i)n]
PV → Uniform
P
A × n
A/P
i(1+i)n / [(1+i)n−1]
Uniform → FV
A × n
F
F/A
[(1+i)n−1] / i
FV → Uniform
F
A × n
A/F
i / [(1+i)n−1]
Arith. gradient → PV
0, G, 2G, … ,(n−1)G
P
P/G
[(1+i)n−in−1] / [i²(1+i)n]
Geo. gradient → PV
A1, A1(1+g), …
P
closed form
A1·[1−((1+g)/(1+i))n] / (i−g)
Allowed on the final exam: one A4 cheat sheet, written by you. This table is a reasonable first draft.
§ VI · Composition27 / 31
DiscussionThree prompts28
Open floor — 10 minutes
Three questions for the room.
Recall one financial commitment from your own life — a loan, lease, subscription, salary band. Which of the four shapes does it fit? Was that shape transparent at the time you signed?
In a software project you have worked on, where did the cash flows depart from a clean pattern — a support spike at month six, a license renegotiation at year two, a sudden cloud bill? How would you have decomposed it in advance?
Why might a vendor prefer to quote a geometric ramp rather than a lump sum, even when the equivalent PVs are identical? What does the answer say about how budgets — not finance — actually get decided?
Discussion28 / 31
HomeworkDue Lecture 529
Homework 04 — due Sunday 7 June, before class
Decompose, then price.
Decomposition. For each of three real-world cash-flow patterns — (a) a front-loaded data-migration project, (b) a ramping SaaS subscription with a $5K loyalty rebate in year 3, (c) a declining license-maintenance contract — draw the cash-flow diagram, identify the shapes, and write the PV expression as a sum of standard factors. Numerical PV not required.
Equivalence. Solve the four equivalence problems on the handout. For each, draw both streams, state i, and show the equivalence at that rate (or compute the rate at which they become equivalent).
Reflection (½ page). Choose one decomposition above and explain — in plain English — how the diagram would change the way the decision-maker should talk about the contract internally.
Submit as a single PDF to /submissions/HW4/<your-name>.pdf. Late: −10%/day, three-day max.
Homework 0429 / 31
RecapOne sentence30
Every project cash flow is some combination of single sums, uniform series, arithmetic gradients, and geometric gradients; once you can decompose, you can price — and once you can price, you can prove equivalence.
— the whole lecture, in one line
Lecture Four · Recap30 / 31
EndLecture Four31
&
Questions & conversation.
Dr. Zhijiang Chen Software Engineering Economics · Summer 2026 frostburg-state-university.github.io/bju