SlideShare ist ein Scribd-Unternehmen logo
1 von 30
ahead of one’s time
Academic and
Commercial software
Development
Similarities and Differences
Tom van Ees
 CTO Davinci Products
Experience
 29 years in software
development
 Specialties: product innovation,
software development and
solution architecture
Introduction speaker
Introduction
Davinci
Introduction of the topic
Types of software and software solutions
Customer
Decision making factors for buying software
Buying software - what matters but often stays under cover
Decision makers vs. end users
Sales demo vs. daily experience
Software
How to make sellable software
How to look at software and the solution
What does matter - functionality vs. look & feel
Customer awareness - customer needs vs. technical aspects
Tools, libraries, plugins - help vs. restraints, make vs. buy
Developer - what you should keep in mind
First time right
Things you should always keep in mind (security, performance, scalability, etc.)
Being specialized or try to know all – interdisciplinary
Agenda
IT organization founded in 1991 with over 180 employees
Based in Amsterdam (HQ) Hilversum, Barneveld, Antwerpen (B),
Bratislava, Žilina (SK)
Davinci Consultancy
Davinci Products
Products: Document analysis, Process Automation, Data
Quality, Mortgage Fraud Detection
Davinci Ventures
Introduction
What is the difference between software development in an
academic setting and software development in a commercial
setting?
What does it take to be able to sell software once and what does
it take to be able to sell software many times?
What is the role of developers in this and what will be required
of them?
Questions of the day
Types of software... Bespoke vs. Product
Bespoke
You make a detailed design together
with one customer what the
software should do for that
customer and you discuss the exact
infrastructure in which it should run.
You determine a price and you build
and you get paid. As easy as it
sounds, this is a difficult process.
Product
You make a detailed design, trying to
imagine what all customers in your
market want and what different
infrastructures they use. You invest
upfront, you build and you hope that
you earn enough to make a profit
(hockey-stick effect).
Types of software... Simple vs. Complex
Algorithmitically Simple
Personal DVD administration
Algorithmitically Complex
Data analysis, Document analysis,
process planning
15-5-2014 7
Infrastructurally Simple
Limited amounts of data, limited
number of users, limited security
requirements, limited performance
requirements and limited
robustness requirements
Infrastructurally Complex
1000’s of concurrent online users,
10’s millions of records in database,
sensitive data and the requirement
of sub second respons times and a
system that must never fail.
Types of software... End User oriented or topic oriented
End User oriented
It is assumed that the software is
built for/adjusted to the end user
Topic oriented
It is assumed that the end users
adjusts to the software.
Types of software... Simple task vs. Complex task
Simple task
One screen to enter the car
registration number of every car that
passes.
Optimized for that one task, limit the
number of keyboard presses to an
absolute minimum
Complex task
Evaluate all documents a customer
sends to you in terms of correctness
and potential fraud
Give full flexibility to look at the
problem from all directions,
compare things, make notes etc.
Similarities and Differences
Academic Commercial Davinci
Bespoke/Product Bespoke Both Both
Algorithmic complexity High to very
high
Low to medium Low to very
high
Infrastructural complexity Low to High Low to High Mid to High
User/Topic Oriented Topic User User
Simple/Complex tasks Complex Usually Simple Complex
CUSTOMER
The people who decide to buy software are not the people who
will use the software day in day out, 8 hours a day.
Those decision taker needs to be convinced during the pre sales
(RFI, RFP, demo) phase
The end-user needs to be convinced every day from the day
software is installed until they retire, get another job or force the
organization to buy from your competitor
The decision takers and the end-users together are the
CUSTOMER
Who is the customer?
How do organizations buy software products?
RFI to long
list
Reduction
to short
list
Demo RFP Evaluate Negotiate Decide Implement
People who decide: Decision making unit (DMU)
 The problem owner
 The money owner
 The IT manager
 They all need to be satisfied!
 They all have contradictionary demands!!
 They all try to enforce their own demands!!
How do organizations buy software products?
Key question areas
Problem Owner
 Does the software do what I need it to do?
 Could I do it myself? (even if they are never going to use it themselves)
 Is it easy to use?
 Can it fit the way we are working or want to work?
 Is it efficient, flexible?
 Is it spectacular?
Money Owner
 Is there a cheaper solution?
 How can I negotiate cost reductions?
IT Manager
 Does it run on my DBMS, my OS?
 Do I need to train people?
 Do I need to buy more products or can I stick to one product?
 How much effort to manage the product?
 How do I integrate it with other systems?
 Do I have previous experience with this vendor?
 How is support organized?
How do organizations buy software products?
Adoption of software (artist impression)
Adoption
Demo
Actual use
Major bug
Min. Adoption
Level
New Release
Customer does not understand how the software works
Does not run on preferred infrastructure
Demo does not demonstrate what customer wants to see
 Typo’s, unlogical layout, unlogical application structure, technical
terminology
 Too technical, too nerdy
 Unable to translate customer daily practice into the demo
 Not understanding the customer’s business
Unclear cost-benefits ratio
 Why does this software cost so much?
Major dissatisfiers for the DMU
SELLABLE SOFTWARE
Be always absolutely, totally customer aware: designer,
developer, sales, support
It is not just functionality, the looks are as important
Offer very good functionality using mainstream technology
Deliver frequent new releases with relevant improvements
What is not on this list: Software architecture
How to make sellable software?
You (the developer) are not the role model for the end-user
For every user type invent one or more personas
 With a name, an age, a gender, a photograph
 With an education level
 With a certain amount of experience
 With a certain atttitude towards work
 With certain objectives in life/work
Check whether the personas are realistic
Even if the development organization does not use personas, you can do it in
a very informal way
 Your father, mother, uncle, neighbour
And with every decision you take, think about how each persona would
decide and how each persona would be impacted.
Customer aware: personas
Personas
During a demo the aesthetics are as important as the
functionality, because not all functionality will be seen during
the demo. But the looks of the application is in the face of the
customer all the time.
Aesthetics is not only colors, layout and dimensions. It is also
about elegance of use and the way the software models reality
Looks and aesthetics
Innovation vs. Costs vs. Fitting the customer as a
glove (ref. Treacy & Wiersema).
Innovation
 Always be ahead of the competition, research, vision:
define the market
Costs
 Always have the lowest price for the same
functionality
Customer fit:
 Bespoke development, highly configurable
Functionality
Have new releases available like clock work in
order to keep the adoption level high
 Product road map
 Product release train
Release Management
DEVELOPER
We build this cool application in ‘Befunge’ with a distributed file
system for the data which we put in morse code.
While the IT manager just wanted an application that runs on
the Microsoft stack or the java stack with a relational database
(SQLServer or Oracle or DB2).
Mainstream technology
Software Architecture is important for you and your organization
(continuity), less so for the customer!!!
Building software in a commercial setting means that the less effort is
required and the less mistakes are made, profits will be higher
But focusing on costs only does not produce sellable software
Use best practices in order to solve similar problems
“When we had burned all money, we had a very beautiful
software architecture and a kick-ass database, but a very
crude user experience. Then we went out of business”
Developer: Cost of development
Some quality aspects are difficult to realise.
 Complex algoritms will always contain mistakes and need
to be tested extensively and improved. That is totally ok.
Some quality aspects are very easy to realise (First time right)
 No typo’s, decent screens, informative feedback
 Basic database performance aspects (proper logical and
physical modelling)
 By definition Implementation of standard security best
practices
Developer: Quality awareness
Java/.net with relevant frameworks
Databases and data modelling
XML
Script languages
Relevant java frameworks
Security related frameworks
etc
“If your only tool is a hammer, all your problems start to
look like nails”
Maslow
Use the tools that best fit the problem and do not become a
one-trick pony, given for whom you are building software
Developer: tools of the trade
Thank you

Weitere ähnliche Inhalte

Was ist angesagt?

BRD Best Practices
BRD Best PracticesBRD Best Practices
BRD Best Practices
Yev Ioffe
 
W JAX Performance Workshop - Organisational Antipatterns
W JAX Performance Workshop - Organisational AntipatternsW JAX Performance Workshop - Organisational Antipatterns
W JAX Performance Workshop - Organisational Antipatterns
Alois Reitbauer
 

Was ist angesagt? (20)

BRD Best Practices
BRD Best PracticesBRD Best Practices
BRD Best Practices
 
Improving software economics - Top 10 principles of achieving agility at scale
Improving software economics - Top 10 principles of achieving agility at scaleImproving software economics - Top 10 principles of achieving agility at scale
Improving software economics - Top 10 principles of achieving agility at scale
 
Aligning Product and Software Design
Aligning Product and Software DesignAligning Product and Software Design
Aligning Product and Software Design
 
SE chapter 5
SE chapter 5SE chapter 5
SE chapter 5
 
Improving software economics
Improving software economicsImproving software economics
Improving software economics
 
Agile Requirements Engineering Practices: An Empirical Study
Agile Requirements Engineering Practices: An Empirical StudyAgile Requirements Engineering Practices: An Empirical Study
Agile Requirements Engineering Practices: An Empirical Study
 
Passion For Excellence
Passion For ExcellencePassion For Excellence
Passion For Excellence
 
Innovate presentation
Innovate presentationInnovate presentation
Innovate presentation
 
The Extreme Programming (XP) Model
The Extreme Programming (XP) ModelThe Extreme Programming (XP) Model
The Extreme Programming (XP) Model
 
Power bi proof of concept
Power bi proof of conceptPower bi proof of concept
Power bi proof of concept
 
EclipseCon '08 - Lessons Learned from an Enterprise RCP Application
EclipseCon '08 - Lessons Learned from an Enterprise RCP ApplicationEclipseCon '08 - Lessons Learned from an Enterprise RCP Application
EclipseCon '08 - Lessons Learned from an Enterprise RCP Application
 
Slowing down to Speed up: Agile & Technical Debt - SGPRG 2015
Slowing down to Speed up: Agile & Technical Debt - SGPRG 2015Slowing down to Speed up: Agile & Technical Debt - SGPRG 2015
Slowing down to Speed up: Agile & Technical Debt - SGPRG 2015
 
Mca5020 advanced software engineering-de
Mca5020   advanced software engineering-deMca5020   advanced software engineering-de
Mca5020 advanced software engineering-de
 
What is agile model
What is agile modelWhat is agile model
What is agile model
 
W JAX Performance Workshop - Organisational Antipatterns
W JAX Performance Workshop - Organisational AntipatternsW JAX Performance Workshop - Organisational Antipatterns
W JAX Performance Workshop - Organisational Antipatterns
 
Analysis & Business Requirements
Analysis & Business RequirementsAnalysis & Business Requirements
Analysis & Business Requirements
 
Introduction to Extreme Programming
Introduction to Extreme ProgrammingIntroduction to Extreme Programming
Introduction to Extreme Programming
 
The Business Analyst Role on Agile Projects
The Business Analyst Role on Agile ProjectsThe Business Analyst Role on Agile Projects
The Business Analyst Role on Agile Projects
 
Rdv internet
Rdv internetRdv internet
Rdv internet
 
Enterprise Application Developement - PristineSofts Technology
Enterprise Application Developement - PristineSofts TechnologyEnterprise Application Developement - PristineSofts Technology
Enterprise Application Developement - PristineSofts Technology
 

Ähnlich wie Tom van Ees - Academic and Commercial software Development

Ähnlich wie Tom van Ees - Academic and Commercial software Development (20)

Better Software Keynote The Complete Developer 07
Better Software Keynote  The Complete Developer 07Better Software Keynote  The Complete Developer 07
Better Software Keynote The Complete Developer 07
 
Better Software Keynote The Complete Developer 07
Better Software Keynote  The Complete Developer 07Better Software Keynote  The Complete Developer 07
Better Software Keynote The Complete Developer 07
 
COSE ESB Presentation
COSE ESB PresentationCOSE ESB Presentation
COSE ESB Presentation
 
Introducing the Development Director
Introducing the Development Director Introducing the Development Director
Introducing the Development Director
 
Chapter 14
Chapter 14Chapter 14
Chapter 14
 
Product Management Essentials
Product Management EssentialsProduct Management Essentials
Product Management Essentials
 
Consulting
ConsultingConsulting
Consulting
 
A Quick Guide to No Code Platforms
A Quick Guide to No Code PlatformsA Quick Guide to No Code Platforms
A Quick Guide to No Code Platforms
 
Bridging the Gap Between Business and Development (OOP'07 Keynote)
Bridging the Gap Between Business and Development (OOP'07 Keynote)Bridging the Gap Between Business and Development (OOP'07 Keynote)
Bridging the Gap Between Business and Development (OOP'07 Keynote)
 
How to choose appropriate technology for product development
How to choose appropriate technology for product developmentHow to choose appropriate technology for product development
How to choose appropriate technology for product development
 
Agile or how to break donw barriers
Agile or how to break donw barriersAgile or how to break donw barriers
Agile or how to break donw barriers
 
Good-to-Great with AQUENT presentation - Koen van Niekerk
Good-to-Great with AQUENT presentation - Koen van NiekerkGood-to-Great with AQUENT presentation - Koen van Niekerk
Good-to-Great with AQUENT presentation - Koen van Niekerk
 
Lean web solutions with WordPress [English version]
Lean web solutions with WordPress [English version]Lean web solutions with WordPress [English version]
Lean web solutions with WordPress [English version]
 
Software Development Company in Delhi – Team IHA LLP
Software Development Company in Delhi – Team IHA LLPSoftware Development Company in Delhi – Team IHA LLP
Software Development Company in Delhi – Team IHA LLP
 
Top Tips for eDiscovery Software Demo iControl ESI
Top Tips for eDiscovery Software Demo iControl ESITop Tips for eDiscovery Software Demo iControl ESI
Top Tips for eDiscovery Software Demo iControl ESI
 
How to become a great developer
How to become a great developerHow to become a great developer
How to become a great developer
 
IoT Product Design and Prototyping
IoT Product Design and PrototypingIoT Product Design and Prototyping
IoT Product Design and Prototyping
 
Enterprise Devops Presentation @ Magentys Seminar London May 15 2014
Enterprise Devops Presentation @ Magentys Seminar London May 15 2014Enterprise Devops Presentation @ Magentys Seminar London May 15 2014
Enterprise Devops Presentation @ Magentys Seminar London May 15 2014
 
Software engineering
Software engineeringSoftware engineering
Software engineering
 
How to efficiently build great products in a startup
How to efficiently build great products in a startupHow to efficiently build great products in a startup
How to efficiently build great products in a startup
 

Mehr von Davinci software (6)

Samuel Hopko & Daniel Rajčan - Cloud Computing
Samuel Hopko & Daniel Rajčan - Cloud ComputingSamuel Hopko & Daniel Rajčan - Cloud Computing
Samuel Hopko & Daniel Rajčan - Cloud Computing
 
Viliam Ganz - Domain Specific Languages
Viliam Ganz - Domain Specific LanguagesViliam Ganz - Domain Specific Languages
Viliam Ganz - Domain Specific Languages
 
Michal Hitka - Craft conference
Michal Hitka - Craft conferenceMichal Hitka - Craft conference
Michal Hitka - Craft conference
 
Peter Kobes - What you should know about a professional Software Company
Peter Kobes - What you should know about a professional Software CompanyPeter Kobes - What you should know about a professional Software Company
Peter Kobes - What you should know about a professional Software Company
 
Ladislav Božek - Čo možno neviete o Java platforme
Ladislav Božek - Čo možno neviete o Java platformeLadislav Božek - Čo možno neviete o Java platforme
Ladislav Božek - Čo možno neviete o Java platforme
 
Peťo Rybár - Rest
Peťo Rybár - RestPeťo Rybár - Rest
Peťo Rybár - Rest
 

Kürzlich hochgeladen

+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
Health
 

Kürzlich hochgeladen (20)

Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdfPayment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
 
Chinsurah Escorts ☎️8617697112 Starting From 5K to 15K High Profile Escorts ...
Chinsurah Escorts ☎️8617697112  Starting From 5K to 15K High Profile Escorts ...Chinsurah Escorts ☎️8617697112  Starting From 5K to 15K High Profile Escorts ...
Chinsurah Escorts ☎️8617697112 Starting From 5K to 15K High Profile Escorts ...
 
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
Exploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdfExploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdf
 
Pharm-D Biostatistics and Research methodology
Pharm-D Biostatistics and Research methodologyPharm-D Biostatistics and Research methodology
Pharm-D Biostatistics and Research methodology
 
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
The Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdfThe Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdf
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
 

Tom van Ees - Academic and Commercial software Development

  • 1. ahead of one’s time Academic and Commercial software Development Similarities and Differences
  • 2. Tom van Ees  CTO Davinci Products Experience  29 years in software development  Specialties: product innovation, software development and solution architecture Introduction speaker
  • 3. Introduction Davinci Introduction of the topic Types of software and software solutions Customer Decision making factors for buying software Buying software - what matters but often stays under cover Decision makers vs. end users Sales demo vs. daily experience Software How to make sellable software How to look at software and the solution What does matter - functionality vs. look & feel Customer awareness - customer needs vs. technical aspects Tools, libraries, plugins - help vs. restraints, make vs. buy Developer - what you should keep in mind First time right Things you should always keep in mind (security, performance, scalability, etc.) Being specialized or try to know all – interdisciplinary Agenda
  • 4. IT organization founded in 1991 with over 180 employees Based in Amsterdam (HQ) Hilversum, Barneveld, Antwerpen (B), Bratislava, Žilina (SK) Davinci Consultancy Davinci Products Products: Document analysis, Process Automation, Data Quality, Mortgage Fraud Detection Davinci Ventures Introduction
  • 5. What is the difference between software development in an academic setting and software development in a commercial setting? What does it take to be able to sell software once and what does it take to be able to sell software many times? What is the role of developers in this and what will be required of them? Questions of the day
  • 6. Types of software... Bespoke vs. Product Bespoke You make a detailed design together with one customer what the software should do for that customer and you discuss the exact infrastructure in which it should run. You determine a price and you build and you get paid. As easy as it sounds, this is a difficult process. Product You make a detailed design, trying to imagine what all customers in your market want and what different infrastructures they use. You invest upfront, you build and you hope that you earn enough to make a profit (hockey-stick effect).
  • 7. Types of software... Simple vs. Complex Algorithmitically Simple Personal DVD administration Algorithmitically Complex Data analysis, Document analysis, process planning 15-5-2014 7 Infrastructurally Simple Limited amounts of data, limited number of users, limited security requirements, limited performance requirements and limited robustness requirements Infrastructurally Complex 1000’s of concurrent online users, 10’s millions of records in database, sensitive data and the requirement of sub second respons times and a system that must never fail.
  • 8. Types of software... End User oriented or topic oriented End User oriented It is assumed that the software is built for/adjusted to the end user Topic oriented It is assumed that the end users adjusts to the software.
  • 9. Types of software... Simple task vs. Complex task Simple task One screen to enter the car registration number of every car that passes. Optimized for that one task, limit the number of keyboard presses to an absolute minimum Complex task Evaluate all documents a customer sends to you in terms of correctness and potential fraud Give full flexibility to look at the problem from all directions, compare things, make notes etc.
  • 10. Similarities and Differences Academic Commercial Davinci Bespoke/Product Bespoke Both Both Algorithmic complexity High to very high Low to medium Low to very high Infrastructural complexity Low to High Low to High Mid to High User/Topic Oriented Topic User User Simple/Complex tasks Complex Usually Simple Complex
  • 12. The people who decide to buy software are not the people who will use the software day in day out, 8 hours a day. Those decision taker needs to be convinced during the pre sales (RFI, RFP, demo) phase The end-user needs to be convinced every day from the day software is installed until they retire, get another job or force the organization to buy from your competitor The decision takers and the end-users together are the CUSTOMER Who is the customer?
  • 13. How do organizations buy software products? RFI to long list Reduction to short list Demo RFP Evaluate Negotiate Decide Implement
  • 14. People who decide: Decision making unit (DMU)  The problem owner  The money owner  The IT manager  They all need to be satisfied!  They all have contradictionary demands!!  They all try to enforce their own demands!! How do organizations buy software products?
  • 15. Key question areas Problem Owner  Does the software do what I need it to do?  Could I do it myself? (even if they are never going to use it themselves)  Is it easy to use?  Can it fit the way we are working or want to work?  Is it efficient, flexible?  Is it spectacular? Money Owner  Is there a cheaper solution?  How can I negotiate cost reductions? IT Manager  Does it run on my DBMS, my OS?  Do I need to train people?  Do I need to buy more products or can I stick to one product?  How much effort to manage the product?  How do I integrate it with other systems?  Do I have previous experience with this vendor?  How is support organized? How do organizations buy software products?
  • 16. Adoption of software (artist impression) Adoption Demo Actual use Major bug Min. Adoption Level New Release
  • 17. Customer does not understand how the software works Does not run on preferred infrastructure Demo does not demonstrate what customer wants to see  Typo’s, unlogical layout, unlogical application structure, technical terminology  Too technical, too nerdy  Unable to translate customer daily practice into the demo  Not understanding the customer’s business Unclear cost-benefits ratio  Why does this software cost so much? Major dissatisfiers for the DMU
  • 19. Be always absolutely, totally customer aware: designer, developer, sales, support It is not just functionality, the looks are as important Offer very good functionality using mainstream technology Deliver frequent new releases with relevant improvements What is not on this list: Software architecture How to make sellable software?
  • 20. You (the developer) are not the role model for the end-user For every user type invent one or more personas  With a name, an age, a gender, a photograph  With an education level  With a certain amount of experience  With a certain atttitude towards work  With certain objectives in life/work Check whether the personas are realistic Even if the development organization does not use personas, you can do it in a very informal way  Your father, mother, uncle, neighbour And with every decision you take, think about how each persona would decide and how each persona would be impacted. Customer aware: personas
  • 22. During a demo the aesthetics are as important as the functionality, because not all functionality will be seen during the demo. But the looks of the application is in the face of the customer all the time. Aesthetics is not only colors, layout and dimensions. It is also about elegance of use and the way the software models reality Looks and aesthetics
  • 23. Innovation vs. Costs vs. Fitting the customer as a glove (ref. Treacy & Wiersema). Innovation  Always be ahead of the competition, research, vision: define the market Costs  Always have the lowest price for the same functionality Customer fit:  Bespoke development, highly configurable Functionality
  • 24. Have new releases available like clock work in order to keep the adoption level high  Product road map  Product release train Release Management
  • 26. We build this cool application in ‘Befunge’ with a distributed file system for the data which we put in morse code. While the IT manager just wanted an application that runs on the Microsoft stack or the java stack with a relational database (SQLServer or Oracle or DB2). Mainstream technology
  • 27. Software Architecture is important for you and your organization (continuity), less so for the customer!!! Building software in a commercial setting means that the less effort is required and the less mistakes are made, profits will be higher But focusing on costs only does not produce sellable software Use best practices in order to solve similar problems “When we had burned all money, we had a very beautiful software architecture and a kick-ass database, but a very crude user experience. Then we went out of business” Developer: Cost of development
  • 28. Some quality aspects are difficult to realise.  Complex algoritms will always contain mistakes and need to be tested extensively and improved. That is totally ok. Some quality aspects are very easy to realise (First time right)  No typo’s, decent screens, informative feedback  Basic database performance aspects (proper logical and physical modelling)  By definition Implementation of standard security best practices Developer: Quality awareness
  • 29. Java/.net with relevant frameworks Databases and data modelling XML Script languages Relevant java frameworks Security related frameworks etc “If your only tool is a hammer, all your problems start to look like nails” Maslow Use the tools that best fit the problem and do not become a one-trick pony, given for whom you are building software Developer: tools of the trade