CSC444F'05 Lecture 13 1
The Software Vendor Business Environment
CSC444F'05 Lecture 13 2
The Software Vendor’s Business
• Make money from– Providing software and related services
• Software– Must satisfy a need or a want in a market that is
• Big enough• Is willing to pay enough
to pay the costs + re-invest + profit
– Licensed (not sold) + maintenance• Bulk discounts• Negotiable prices
– Follow-on revenues are key• Maintenance, Upgrades, Consulting, New related products, ...• Software is quite “sticky”
– Cost of acquisition
– Need to ensure sold software is used
» Not “shelfware”
CSC444F'05 Lecture 13 3
Software Vendor Structure
• Shareholders– Owners of the company.– All profit and value increase accrue to them– They elect the Board– True for publicly traded or privately traded companies
Chief Executive
Board of Directors
Shareholders
Marketing Sales Client Services Software Development Finance/Administration
Executive Team
CSC444F'05 Lecture 13 4
Software Vendor Structure
• Board of Directors– Represent the shareholder’s interests– They appoint the officers of the company– Will advise the CEO– Responsible for company acting lawfully
Chief Executive
Board of Directors
Shareholders
Marketing Sales Client Services Software Development Finance/Administration
Executive Team
CSC444F'05 Lecture 13 5
Software Vendor Structure
• Chief Executive Officer– Appointed by the Board– In charge of running the company day-to-day
• By coordinating the activities of the Executive Team
– Commits to financial targets (revenue growth / profitability)
Chief Executive
Board of Directors
Shareholders
Marketing Sales Client Services Software Development Finance/Administration
Executive Team
CSC444F'05 Lecture 13 6
Software Vendor Structure
• Executive Team– VP’s and “C-Level” officers hired and assembled by the CEO
– In charge of running the company day-to-day
– Meet regularly to coordinate activities and to set strategy
– Functional responsibilities + corporate responsibilities
Chief Executive
Board of Directors
Shareholders
Marketing Sales Client Services Software Development Finance/Administration
Executive Team
CSC444F'05 Lecture 13 7
Marketing
• Product Management– Defining what products/services the company will sell at what price
– Preparing collateral materials for partners and sales
– Coordinate the release activities
– Key area
Marketing
Product Management
Marketing Communications
Business Development
CSC444F'05 Lecture 13 8
Marketing
• Marcomm– Communicating with the external world
– Advertising, press releases, - generate “buzz”
– Experts not at product (see prod mgmt) but at knowing how to reach people with a message
– Lead generation to feed sales pipeline
Marketing
Product Management
Marketing Communications
Business Development
CSC444F'05 Lecture 13 9
Marketing
• BusDev– Developing new business opportunities
– New channels to market
– New geographies
– New partnerships
Marketing
Product Management
Marketing Communications
Business Development
CSC444F'05 Lecture 13 10
Chief Executive
Board of Directors
Shareholders
Marketing Sales Client Services Software Development Finance/Administration
Executive Team
CSC444F'05 Lecture 13 11
Sales
• Responsible for achieving the revenue number.
• Sales models:– High-level direct sales
• Identify decision makers with budget, chase them down, negotiate terms, close
– Dialing-for-dollars• Dial out to big lists assembled by marketing
– Channel sales• Sell indirectly via other organizations
• Paid via base + commission– May not be profit based
– Therefore need strong sales management
CSC444F'05 Lecture 13 12
Sales Process
• Sales “pipeline” or “funnel”,E.G.,– Leads
– Qualified opportunities
– Short-listed
– In negotiations
– Close
• Sales management maintains pipeline– Attaches estimated close date, sale value, and probability of close to
predict future revenues
– Keeps the pipeline filled
• Uses a CRM system
CSC444F'05 Lecture 13 13
Chief Executive
Board of Directors
Shareholders
Marketing Sales Client Services Software Development Finance/Administration
Executive Team
CSC444F'05 Lecture 13 14
Client Services
• Pre-sales support– Technical help for the sales group
– Implementation project planning pre-sales
• Onboarding / Implementation– Ensuring a customer starts using the software
• Account Management– Ensuring customers are happy
– Mining to see if they need additional software/services
• Customer Support– Help desk
CSC444F'05 Lecture 13 15
Chief Executive
Board of Directors
Shareholders
Marketing Sales Client Services Software Development Finance/Administration
Executive Team
CSC444F'05 Lecture 13 16
Finance & Admin
• The mechanics of establishing and reporting against budgets
• Spending controls– Purchase requisitions. Purchase orders, signing limits, ...
• Taxes
• Financing– Leasing arrangements– Cash management– Investments
• Funding– IPO’s– Private investments– Investor relations
• Administration– Human resources– Office management– Internal IT
CSC444F'05 Lecture 13 17
Chief Executive
Board of Directors
Shareholders
Marketing Sales Client Services Software Development Finance/Administration
Executive Team
CSC444F'05 Lecture 13 18
Software Development
• Profit center:– “I will spend more and make more and come out ahead”
• Highly measurable results• Sales, marketing, consulting
• Cost center:– “I will spend more and produce more and better software”
• How do you measure this?– What is “more”
– What is “better”
– How much is reasonable to spend?
• Software Development is a cost center• Need to argue the case for budget in a different way
CSC444F'05 Lecture 13 19
Management of the Software Organization
• Downwards– Managing the software organization itself
• Outwards– Managing the relationships and interactions with other departments
• Upwards– Communicating and relating upwards in the organization
• Externally– Relating to customers, partners, and suppliers
• Need to be good at all 4, not just the first.• Need to understand the business you are in, not just the technical
part, or you will fail.
CSC444F'05 Lecture 13 20
Proposals
• If money is needed for an initiative, you must ask for it in a productive manner.
– Not just state a need, expecting money to flow, and then having an “I told you so attitude” if not forthcoming.
• Managers with budget control would be irresponsible if they allocated money on ill thought out initiatives
• Will require a written proposal.
• It’s a management role to translate vague needs into concrete budget.– E.g., staff might say “we really need to do distributed builds to cut down compile
times” – cannot go to a budget request with that alone– Manager should be aware of the chances of getting something like that done (by
being plugged into the current fiscal situation of the company)– Manager must coordinate turning this into a concrete proposal– Manager must sell the proposal
CSC444F'05 Lecture 13 21
Contents of a Proposal
• Expected benefits– How this project will achieve them
• Monetary costs– Capital (hardware / software)
– Consulting
– Initial and ongoing
– Timing of cash expenditures
• Staff time– Initial and ongoing
– Who
• Timelines– Milestones
• Alternatives considered– Other approaches
– Which systems considered / costs / functionality
CSC444F'05 Lecture 13 22
Closing on a Proposal
• Manager will want to discuss how to trim costs from the proposal
• Need to be flexible– E.g., trading off a production-grade server for a workstation
• Will probably need to go back to vendors to have another discussion on trimming costs
• Should not spring proposals on senior management out of the blue.– Ideally, will first have a ballpark figure for the project as a bogey in the
budget.
– If not, must build support for the concept gradually• Get support from other execs as well• May not be possible...
CSC444F'05 Lecture 13 23
Corporate Financials
• Corporations usually have cash available at all times, but may not be willing to spend it.
• Important financial measures are:– Revenues
• Yearly, year-on-year• Quarterly, compare same quarter across years• Monthly
– Profit• Revenues less cost• As a percentage of revenues• Yearly is most important
• Profitable businesses are typically valued at a multiple of revenues• Demonstrate consistent performance
– Year-over-year
– Quarter-over quarter
– Month-to-month
CSC444F'05 Lecture 13 24
Budgets
• Before the start of each fiscal year, the executive will go through a budget exercise:– Sales will forecast revenues
– Each department will forecast costs
– Each department’s cost budget will be backed by a written business plan
– CEO will balance the budget
– Departments will do a round 2 of the business plans
– CFO will finalize detailed budgets
CSC444F'05 Lecture 13 25
Capital v.s. Operating• Capital expenditures
– Not salaries or consulting– Hardware, big ticket software
• Can pay for it with cash up-front, but full value does not show up as a cost immediately.
– Get benefit over a 3 year period– Will depreciate the assets– (Because can sell them at any time)
• Can finance these purchases– E.g., leases– Therefore do not need cash if corporation is in good financial shape
• E.g., growing quickly
• E.g., $12,000 server– Goes into the cost budget as
• Year 1: $4000• Year 2: $4000• Year 3: $4000• Year 4: fully depreciated
CSC444F'05 Lecture 13 26
Cost Versus Baseline
• Hire an employee at a $48,000 salary– If hire on July 1, 2005
• Will be a cost of $24,000 in 2005• Increasing the baseline budget by $48,000 for 2006
• Consultants are more flexible in this regard– If not on a committed project with sunk costs
CSC444F'05 Lecture 13 27
Software Development Annual Business Plan
• Introduction– Mission, products under maintenance, new products being worked on– Accomplishments in the past year– Self-assessment of process maturity– Areas for further improvement
• Baseline Budget– The baseline spending if no new initiatives undertaken
• Will already be higher than last year’s budget owing to new hires arriving mid-year
– Baseline staffing ratios– How/where the baseline is being spent
• Organizational Structure• New initiatives summary
– Broken out by area of focus
• New initiatives detail• E.g. bp98
CSC444F'05 Lecture 13 28
Summary
1. Source Code Control
2. Defect / Feature Tracking
3. Reproducible Builds
4. Automated Regression Testing
5. Release Planning
6. Feature Specifications
7. Architectural Control
8. Effort Tracking
9. Process Control
10.Business Planning
Do all these things, and you’re doing well.
CSC444F'05 Lecture 13 29
Thank You!
Now go forth and produce software!