Download presentation
Presentation is loading. Please wait.
1
www.itu.dk 1 Portability Hohmann Chapter 6
2
www.itu.dk 2 The Perceived Advantage of Portability By supporting multiple platforms, we can address new markets –Not necessarily, building a good solution on one platform is better than building mediocre solutions on many (an exception seems to be midrange software) By supporting multiple platforms, we demonstrate that we can meet customers individual needs –Customers want platform specific features, portability moves in the other direction!
3
www.itu.dk 3 Real Motivation for Portability Developers think writing portable code is cool –Reality is that it is hard and tedious One or two key customers demanded different solutions –Search for customers within target marked
4
www.itu.dk 4 Key Cost Factors of Portability 1.Training developers and QA 2.Purchasing hardware 3.Testing time (the matrix of pain) 4.The complexity of managing multiple release cycles A good rule of thumb: it is easier to justify a portable technology like a DB than an application
5
www.itu.dk 5 Techniques Helpful for Making Portable Applications Use an interpreted language Use standards-based persistent storage (XML, ansi SQL) Use XML for communication between subsystems Make business logic portable: not buried within system specific resources Closer to user means less portable. GUIs hard! Avoid hiding the power of a specific platform
6
www.itu.dk 6 The Matrix of Pain: market driven configuration matrices Toy Example –5 operating systems on two platforms Unix: Solaris 2.7, Solaris 2.8 Windows: NT 3.5.1, NT 4.0, XP –2 Web servers: Apache, IIS –2 browsers: Netscape, IE –4 DBs: Oracle 8i, Oracle 9i, SQLServer 7.0, SQLServer 2000 5x2x2x4 = 80 configurations Problem: QA can cover 10 times less
7
www.itu.dk 7 Step 1: Remove Invalid Configurations Solaris 2.6Solaris 2.7NT 3.5.1NT 4.0XP ApachePC IISNA PC NetscapePC IENA PC Oracle 8iPC NSPC Oracle 9iNSPCNSPC SQLServer 7NA PC SQLServer 2000NA NSPC Total valid configurations (39) 12416 PC = Possible configuration, NS = Not supported, NA = Not Applicable
8
www.itu.dk 8 Step 2: Rank-Order Configurations Make prioritization based on which configurations: –Are actually installed in the field –Are used by the largest most profitable customers –Are going to be most heavily promoted –Are most easily supported! Use color coding: must test, should test, would like to test Or weights
9
www.itu.dk 9 Step 2: Rank-Order Configurations Use Pareto Chart to analyze the distribution of customer configurations Adopted from: www.isixsigma.com C1 C2 C3 C4 C5
10
www.itu.dk 10 Step 2: Rank-Order Configurations Solaris 2.6Solaris 2.7NT 3.5.1NT 4.0XP Apache110.20.50.3 IIS0.80.50.7 Netscape110.2 IE0.8 1 Oracle 8i10.50.1 Oracle 9i0.50.3 SQLServer 710.50.2 SQLServer 20000.10.5 Total valid configurations (29) 124166
11
www.itu.dk 11 Step 3: Make Final Cut Solaris 2.6Solaris 2.7NT 3.5.1NT 4.0XP Apache√√√ IIS√√√ Netscape√√√ IE√√√ Oracle 8i√√√ Oracle 9i√√ SQLServer 7√√ SQLServer 2000√ Total valid configurations (14) 12182 53% revenue from Solaris. Consider all 3 configuration NT 3.5.1 phasing out, only one configuration NT 4.0 Most important configuration, but SQL output identical Orthogonality
12
www.itu.dk 12 Step 3: Make Final Cut Solaris 2.6Solaris 2.7NT 3.5.1NT 4.0XP Apache√√√ IIS√√ Netscape√√√ IE√√√ Oracle 8i√√√ Oracle 9i√√ SQLServer 7√√ SQLServer 2000√ Total valid configurations (14) 12142 Removing IIS. Still the relative most important
13
www.itu.dk 13 All Pairs Assume n variables with two values How many configurations? –2n–2n Simple upper bound on the number of distinct pairs? –(2n) 2
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.