1 open source software, OSS OSS OSS OSS OSS OSS OSS OSS Linux
3 I 10 2 11 2.1................................ 11 2.2.............................. 15 5 19 5.1 OSS.......................... 21 5.2........................... 24 9 27 9.1..................................... 27 9.2.................................. 28 9.3.................................. 29 9.4....................................... 32 10 35 10.1 OSS................................... 35 10.2.................................... 35 10.3.............................. 36 10.4....................................... 36 10.5....................................... 36 10.6.................................... 37 10.7................................... 38 10.8 JFreeChart..................................... 39 10.9................................ 39 10.10..................... 43
4 11 45 11.1............................... 45 11.2 MVC...................................... 45 11.3................................ 46 11.4............................... 47 11.5 DAO................................ 48 12 49 12.1................................... 49 12.2................................... 50 12.3..................................... 52 12.4................................... 53 12.5........................................ 54 II 57 12 OSS 59 12.1 OSS................................ 59 12.2 OSS..................................... 60 12.3 OSS.................................. 61 13 OSS 63 13.1.................................... 63 13.2................... 64 14 OSS 67 14.1 OSS................................. 67 14.2....................................... 67 14.3.................................... 69
5
7 2.1 ArgoUML.............................. 12 2.2 ArgoUML............................ 12 2.3........................ 13 2.4.......................... 13 2.5.............................. 14 2.6.......................... 15 2.7............................. 15 2.8................................ 16 2.9.................................. 17 2.10................................... 17 2.11................................... 17 2.12................................... 17 5.1 OSS............................... 20 9.1................................ 28 10.1 40 10.2 µ(t)............... 41 10.3 µ d (t).................... 41 10.4 MTBF MT BF C (t)...................... 42 10.5............................. 42 10.6........................... 43 10.7......... 44 11.1 MVC........................... 46 12.1................................. 50 12.2 /......................... 54
8 12.3 /....................... 55 12.4.............................. 55 12.5................................... 56 12.1 OSS............................... 60 12.2............... 60 14.1........................... 68
9 10.1 Fedora Core 7............. 40
10 I
11 2 UML N 2.1 UML Unified Modeling Language UML
12 2 2.1: ArgoUML 2.2: ArgoUML UML UML JUDE astah* community JUDE/Community ArgoUML ArgoUML URL Java http://argouml.tigris.org/ ArgoUML 2.1 2.2 UML ArgoUML
2.1. 13 2.3: test1 test2 2.4: UML ArgoUML New Activity Diagram 2.3 SwimLane 2.4 2.5 UML
14 2 2.5: ArgoUML New Sequence Diagram 2.6 2.7 2.8
2.2. 15 2.6: /test1 /test2 /test3 data (a) data (b) data (c) data (d) 2.2 2.7: [1] [ ] N (2.1) 2.9 2 2.10 R = 1 (1 0.9) (1 0.8) = 1 0.1 0.2 = 1 0.02 = 0.98, (2.2)
16 2 2.8: 2.11 R = 1 (1 0.9 0.8) = 1 (1 0.72) = 1 0.28 = 0.72, (2.3) 2.12
2.2. 17 2.9: 2.10: 2.11: 2.12:
19 5 OSS OSS OSS OSS V OSS OSS [2, 3] OSS
20 5 5.1: OSS EU OSS [4] OSS Android[5] BusyBox[6] OSS OSS 1 2 OSS [4] OSS OSS 1 OSS 5.1 5.1 OSS OSS OSS OSS Release
5.1. OSS 21 Candidate OSS 1 2 software reliability growth model SRGM [1] 5.1 OSS SRGM OSS, 1 SRGM [1] nonhomogeneous Poisson process NHPP NHPP {N(t), t 0} SRGM [1] Pr{N(t) = n} = {H(t)}n exp[ H(t)] (n = 0, 1, 2, ). (5.1) n! Pr{ } H(t) (0, t] N(t) NHPP SRGM OSS 1
22 5 SRGM OSS [7, 8] NHPP [1] (0, t] µ(t) µ(t) = 1 θ P ln[λ 0(θ P )t + 1] subject to (P θ) < 1 λ 0 t (0 < θ, 0 < λ 0, 0 < P < 1), (5.2) λ 0 θ 1 P NHPP t = 0 OSS t {S(t), t 0} ds(t) dt = λ(t)s(t). (5.3) λ(t)(> 0) t OSS OSS Gauss OSS λ(t) (5.3) ds(t) dt = {λ(t) + σγ(t)} S(t), (5.4)
5.1. OSS 23 σ (> 0) γ(t) Markov Gauss λ(t) t (5.4) Itô [9, 10] [11] ds(t) = {λ(t) + 1 2 σ2 }S(t)dt + σs(t)dω(t). (5.5) (5.5) S(0) = v Itô [9, 10] ( ) t S(t) = v exp λ(s)ds + σw (t), (5.6) 0 v (5.6) W (t) (1) W (t) Gauss. (2) W (t) E[W (t)] = 0, Var[W (t)] = σ 2 t, (5.7) (3) W (t). (4) Pr[W (0)=0]=1. OSS t 0 λ(s)ds = (1 exp[ αt]). (5.8) α (5.8) S OSS (5.8) (5.6) lim E[S(t)] =. (5.9) t
24 5 t stochastic differential equation SDE t E[S(t)] E[S(t)] = v exp ( t 0 ) λ(s)ds + σ2 2 t, (5.10) 5.2 NHPP SDE NHPP µ d (t) = dµ(t). (5.11) dt SDE S(t) ( t {exp(σ Var[S(t)] = E[{S(t) E[S(t)]} 2 ] = v 2 exp 2 λ(s)ds + σ t) 2 2 t) 1 }. (5.12) 0 mean time between software failures: MTBF MTBF t MTBF instantaneous MTBF: MTBF I MTBF cumulative MTBF: MTBF C NHPP SDE t MTBF 1 MT BF I (t) = dµ(t)/dt, (5.13) [ ] 1 MT BF I (t) = E, (5.14) ds(t)/dt
5.2. 25 1 MTBF t MT BF C (t) = µ(t), (5.15) [ ] t MT BF C (t) = E, (5.16) S(t) SRGM OSS
27 9 9.1 1996 IBM e-business e-business (Electronic Commerce EC ) e-business EC EDI [17] 1. B to B (Business to Business) ASP SaaS 2. B to C (Business to Customer) 3. C to C (Customer to Customer)
28 9 4. B to E (Business to Employee) 5. G to B/C (Government to Business/Citizen) ( ) A to A(Application to Application) B to B 9.1: 9.2
9.3. 29 [17] 9.3 [17] ( )
30 9 (DFD) [17] DFD DFD
9.3. 31 / (ER ) (Entity) (Relationship) (ER ) (CRUD) C( ) R( ) U( ) D( )
32 9 ( I/O ) 9.4 ( )
9.4. 33 / / /
35 10 10.1 OSS OSS OSS Web OSS OSS OSS 10.2 OSS Java
36 10 10.3 Windows jdk- -windows-i586-p.exe path path path ; path javac [ ] [ ] [ ] [ ] javac Linux Linux JRE JDK 10.4.zip http://sourceforge.net/projects/sratfoross/ oss.jar Windows oss.jar Mac Linux java -jar oss.jar 10.5 Estimation Results Based on Neural Network Estimation Results of Model Parameter Cumulative number of detected faults Instantaneous Fault Detection Rate Cumulative MTBF predicted Relative Error
10.6. 37 Estimation Results Based on Neural Network Estimation Results of Model Parameter φ, λ 0 P Cumulative number of detected faults Instantaneous Fault Detection Rate Cumulative MTBF MTBF predicted Relative Error 10.6 1. OSS 1 CSV Comma Separated Values 2.
38 10 3. 4. 5. 6. MTBF 7. 8. GUI 9. 1 Java 10. JFreeChart 11. 10.7 OSS 1. OSS 2. CSV 3. 4. MTBF
10.8. JFreeChart 39 5. 10.8 JFreeChart J2SE Java 2D API JFreeChart JFreeChart The JFreeChart Project Java 1.3 LGPL GNU Lesser General Public License OSS [?] JFreeChart 10.9 OSS Fedora 1 Fedora Core Linux Kernel [12] Fedora Core 7 FC7 Test 1 OSS FC7 10.1 data.csv Kernel (5.2) 10.1 Fedora Core Kernel Kernel 1 Fedora Red Hat Inc.
40 10 10.1: Fedora Core 7 Date Event 1 February 2007 Test1 Release 29 February 2007 Test2 Release 27 March 2007 Test3 Release 24 April 2007 Test4 Release 31 May 2007 Fedora 7 General Availability 10.1: Kernel-module-thinkpad Kernel-pcmciacs Kenrel-utils Kernel-xen-2.6 Kernel Kernel-module-thinkpad Kernel-pcmcia-cs Kenrel-utils Kernel-xen-2.6 (5.2) µ(t) 10.2 (5.11) µ d (t) (5.15) MTBF MT BF C (t) 10.3 10.4 10.5 10.5 2 16
10.9. 41 10.2: µ(t) 10.3: µ d (t)
42 10 10.4: MTBF MT BF C (t) 10.5:
10.10. 43 10.6: 10.10 Fedora Core FC6 FC7 FC6 92 t 0 92 2007 2 1 10.6 10.6 10.7 10.6 10.7 FC 7 6 14 19359.0 FC7 2007 2 1 120 5 31 2 OSS
44 10 10.7:
45 11 11.1,. GUI. / /.,. /,.,., ( ).,.. 11.2 MVC, Model, View, Model View Controller., Smalltalk GUI, J2EE.
46 11,. Model ( ). 11.1: MVC 11.3.,...,,...
11.4. 47, /BL/DAO/..,.. BL( )., BL. BL. BL. 11.4., ( ).,..
48 11 11.5 DAO,. ( ) DAO. ( ) ( ). BL..,,.
49 12 12.1 ( )..,..,.,,.,.,.,.
50 12,., ( ).,.,..,. 12.2. ( ), ( ).,.,..,. 12.1:
12.2. 51,. HatchuDaoImple.java. JSP. Tomcat JNDI DB <%@ page language= java %> <%@ page contenttype= text/html; charset=utf-8 %> <%@ page import= java.util.* %> <%@ page import= jp.co.knc.ossmc.common.util.* %> <%@ page import= jp.co.knc.ossmc.dao.* %> <%@ page import= jp.co.knc.ossmc.dao.factory.* %> <%@ page import= jp.co.knc.ossmc.exception.* %> <%@ page import= jp.co.knc.ossmc.model.* %> <%@ page import= jp.co.knc.ossmc.view.form.formbean %> <%@ page import= jp.co.knc.ossmc.view.form.odr.* %> <%@ page import= jp.co.knc.ossmc.view.form.rcv.* %> <%@ page import= jp.co.knc.ossmc.view.form.slp.* %> <%@ page import= jp.co.knc.ossmc.view.form.smt.* %> <%@ page import= jp.co.knc.ossmc.view.form.stk.* %> <html> <body> <% /** * */ JuchuDao jd1 = DaoFactory.getFactory(Constant.DAO TYPE).getJuchuDao(); Juchu j1 = jd1.getjuchudata( 4 ); jd1.close(); %> <div> <p> </p> <table> <tr> <th> </th> <td><%= j1.getjuchucode() %></td> </tr> <tr> <th> </th> <td><%= j1.getjuchustate() %></td> </tr> <tr> <th> </th> <td><%= j1.getjuchudate() %></td> </tr> <tr>
52 12 <th> </th> <td><%= j1.getjuchugaku() %></td> </tr> <tr> <th> </th> <td><%= j1.gettokuisakihatchucode() %></td> </tr> <tr> <th> </th> <td><%= j1.getshukkadate() %></td> </tr> </table> </div> <% /** * NO */ JuchuDao jd2 = DaoFactory.getFactory(Constant.DAO TYPE).getJuchuDao(); Juchu j2 = jd2.getjuchudata( 4 ); j2.setversionno(j2.getversionno()+1); // No boolean judge2 = false; try jd2.updatejuchudata(j2); catch(exception ex) judge2 = true; finally jd2.close(); %> <div> <p> NO </p> <%= judge2 %> </div> </body> </html> Tomcat,. 12.3.,.
12.4. 53 ( ).. DAO,. Service Action (DAO ) Tomcat,. 12.4,.,., ( ).,. Tomcat,.
54 12 12.2: / 12.5.,.,.,,
12.5. 55 12.3: / 12.4:.
56 12 12.5:
12.5. 57 II
59 12 OSS 12.1 OSS OSS OSS OSS 5.1 12.2 OSS Web OSS OSS
60 12 OSS 12.1: OSS 12.2: OSS 12.2 OSS OSS Firefox, Fedora, OpenOffice, Apache, Android, MySQL, Samba, Thunderbird, Sunbird, Chrome, BusyBox.
12.3. OSS 61 OSS Web OSS 20 OSS OSS OSS 12.3 OSS OSS GPL GNU General Public License LGPL GNU Lesser General Public License GPL BSD BSD X11 License Apache Software License Web 3 3 1 OSS 2 OSS
63 13 OSS EU OSS OSS OSS OSS OSS 13.1 OSS OSS [2, 3] OSS EU OSS [4] OSS Android[5] BusyBox[6] OSS OSS 1 2 OSS [4] OSS OSS 1 OSS OSS OSS
64 13 OSS 13.2 1 [1, 13, 14, 15, 16] Schick Wolverton(S-W) model: z k (x) = φ(n k + 1)x (N > 0, φ > 0; k = 1, 2,, N), (13.1) φ E[X k ] = 2(N k + 1)φ. (13.2) Jelinski Moranda(J-M) model: z k (x) = φ(n k + 1) (N > 0, φ > 0; k = 1, 2,, N), (13.3) E[X k ] = 1 φ(n k + 1). (13.4) Moranda model: z k (x) = Dc k 1 (D > 0, 0 < c < 1; k = 1, 2, ), (13.5) E[X k ] = 1. Dck 1 (13.6) Xie model:
13.2. 65 z k (x) = λ 0 (N k + 1) α E[X k ] = (N > 0, λ 0 > 0, α 1; k = 1, 2,, N), (13.7) 1 λ 0 (N k + 1). α (13.8) N : φ : D : c : λ : α :, 1, 1,, α 1,. OSS [7, 8] SRGM nonhomogeneous Poisson process NHPP SRGM OSS OSS
67 14 OSS 14.1 OSS OSS OS OSS OSS OSS OSS OSS OSS Android[5] BusyBox[6] OSS OSS OS Android[5] Linux TRON OSS OSS 3 OSS 14.2 OSS
68 14 OSS 14.1: OSS OSS 14.1 Android OS 14.1 OSS Android OSS OSS 14.1 OSS
14.3. 69 OSS 14.3 OSS OSS OSS OSS OSS OSS OSS OSS OSS OSS OSS OSS
71 IPA 3 OSS
73 [1],,,, 1994. [2] The Apache HTTP Server Project, The Apache Software Foundation, http://httpd.apache.org/ [3] Mozilla.org, Mozilla Foundation, http://www.mozilla.org/ [4],,, 2004. [5] Open Handset Alliance, Android, http://www.android.com/ [6] Erik Andersen, BUSYBOX, http://www.busybox.net/ [7],,,, vol J88 A no 7 pp 840 847, 2005 [8] Y. Tamura and S. Yamada, A Method of User-oriented Reliability Assessment for Open Source Software and Its Applications, Proceedings of the 2006 IEEE International Conference on Systems, Man, and Cybernetics, Taipei, Taiwan, Oct. 8 11, 2006, pp. 2185 2190. [9] L. Arnold, Stochastic Differential Equations Theory and Applications, John Wiley & Sons, New York, 1974. [10] E. Wong, Stochastic Processes in Information and Systems, McGraw Hill, New York, 1971. [11] S. Yamada, M. Kimura, H. Tanaka, and S. Osaki, Software reliability measurement and assessment with stochastic differential equations, IEICE Trans. Fundamentals, vol. E77-A, no. 1, pp. 109-116, Jan. 1994.
74 14 OSS [12] Fedora Project, sponsored by Red Hat. [Online]. Available: http://fedora.redhat.com/ [13] G.J. Schick and R.W. Wolverton, An Analysis of Competing Software Reliability Models, IEEE Trans. Reliability Engineering, SE 4 (2), pp. 104 120, 1978. [14] Z. Jelinski, P.B. Moranda, Software Reliability Research, in Statistical Computer Performance Evaluation, Freiberger, W.(ed.), pp. 465 484, Academic Press, New York, 1972. [15] P.B. Moranda, Event altered Rate Models for General Reliability Analysis, IEEE Trans. Reliability, R 28 (5), pp. 376 381, 1979. [16] M. Xie, On a Generalization of the J-M Model, Proc. Reliability 89, 5 Ba/3/1 5 Ba/3/7, 1989. [17] (1)IT- (http://e-words.jp/w/e-business.html)
75 2.1 http://creativecommons.org/licenses/by/2.1/jp/legalcode