Hidden costs of software product

15
The Hidden Cost of a Software Project Aviram Eisenberg, CEO, Ignite

Transcript of Hidden costs of software product

Page 1: Hidden costs of software product

The Hidden Cost of a Software Project

Aviram Eisenberg, CEO, Ignite

Page 2: Hidden costs of software product

Ignite - Who We Are

A Software Development Management companyExpertise in Project ManagementExpertise in SW Development methodologies & tools

Agile/Scrum/XP/KanbanLean Software DevelopmentTOCCustomized flavor

Expertise in Global Delivery modelsDistributed developmentOffshore development (Eastern Europe)

Expertise in Project DeliveryTurn-key, dedicated teams, ODC, BOT

Page 3: Hidden costs of software product

A Typical SW Dev Project

30609012018024030042045048051054057060063066069081084087097010000

2

4

6

8

10

12

14

Team Members Over Time

Page 4: Hidden costs of software product

Maintenance time

Two main activitiesBug fixing

Enhacements

Page 5: Hidden costs of software product

Cost Breakdown

Cost of Maintenance/SupportCost of training

Cost of enhancementOO/Reusable code

Modular Architecture

Technology selection

Cost of upgradeProject vs. Product orientation

Migration path

Cost of acceptance

Page 6: Hidden costs of software product

Cost Breakdown

Cost of production bugsIdentification costs

Direct losses

Loss of reputation

Loss of future deals

Page 7: Hidden costs of software product

Trainability

The product competence to east the cost of training

Usability!Product documentationContextual helpCommunity & ForumsWebinarsTraining courses

Page 8: Hidden costs of software product

Supportability

Product competence to ease the cost of supportMonitoring/AlertingRemote AccessStatus collection toolsCommoditizationVirtualization and Cloud computing Live Chat

Page 9: Hidden costs of software product

Upgradability

Avoid Project approach (unless its well-paid)Incremental migration pathModular migration pathMulti-station distributionAutomatic distribution (though not common in Enterprise software)Silent upgradeSeamless upgradeFallback!

Page 10: Hidden costs of software product

Acceptability

A Product competence to reduce acceptance costsTest Automation

Smoke testingSanity testingRegression testing

Well defined flow/scriptsHot fixes/selective replacementReasonably reduced acceptance test environments

Page 11: Hidden costs of software product

Tracability

Product competence to detect anything that happened in the software flowMain purpose – detect production bugs

Trace objectsTrace function pointsSelective turn on/offTimestampingObject signingStats/counters

Page 12: Hidden costs of software product

Auditability

A product competence to detect what happened in the systemDetect admin errorsDetect malicious actsLog all admin actionsUndo mechanism

Page 13: Hidden costs of software product

Robustness

Identify hang scenariosWatchdog/heart bitTimeout mechanismsAvoid synchronous mechanisms

Clean garbage before reload

Avoid data lossAsynchronous retriesPersistency

Use traffic gatewaysQueue sizeRTT latency

Page 14: Hidden costs of software product

Other Topics

VulnerabilityData ProtectionHigh AvailabilityPerformance Scalability