• Nie Znaleziono Wyników

2. UOGÓLNIENIE DOŚWIADCZEŃ METODYCZNYCH W ZAKRESIE OCENY SKALOWALNYCH SKŁADNIKÓW OPROGRAMOWANIA

2.1. Metody i techniki wspomagające dobór i ocenę składników COTS

2.2.1. Synteza dostępnych pojęć

Spośród dostępnych metodologii oceny oprogramowania zostały zidentyfikowano 38 z nich. W poniższym zestawieniu zostały uwzględnione metodologie zaprezentowane przez Jeanrenaud i Romanazzi171 (1994), Kontio i in.172 (1995), Morisio i Tsoukias173 (1997), Tran

171 Jeanrenaud J., Romanazzi P., Software Product Evaluation: A Methodological Approach, In Proceedings of the 2nd International Conference on Software Quality Management, 1994.

172 Kontio J., Chen S., Limperos K., Tesoriero R., Caldiera G., Deutsch M., A COTS Selection Method and Experiences of Its Use, Twentieth Annual Software Engineering Workshop, Greenbelt, Maryland 1995.

173 Morisio M., Tsoukias A., Iusware: a methodology for the evaluation and selection of software products, IEE Proceedings-Software Engineering, Vol. 144 (3), 1997.

174 Tran V., Liu D.B., A Risk-Mitigating Model for the Development of Reliable and Maintainable Large-Scale COTS Integrated Software Systems, Proceedings of the Annual Reliability and Maintainability Symp. 1997.

175 Maiden C.N., Ncube A.M., PORE: Procurement-Oriented Requirements Engineering Method for the Component-Based Systems Engineering Development Paradigm, 2nd International Workshop on Component-Based Software Engineering, Los Angeles, USA 1998.

176 Feblowitz M.D., Greenspan S.J., Scenario-Based Analysis of COTS Acquisition Impacts, Requirements Engineering, Vol. 3 (3/4), 1998.

177 Lai V.S., Truebloodb R.P., Wong B.K., Software selection: a case study of the application of the analytical hierarchical process to the selection of a multimedia authoring system, Information & Management, Vol. 36, 1999.

178 Merad S., Lemos R., A Game Theoretic Solution for the Optimal Selection of Software Components, Technical Report, No. 68, Department of Computing Science, University of Newcastle, UK 1999.

179 Jung H.W., Choi B., Optimization models for quality and cost of modular software systems, European Journal of Operational Research, Vol. 112, 1999.

180 Kunda L., Brooks D., Applying Social-Technical Approach For Cots Selection, 4th UKAIS Conference, University of York 1999.

181 Ochs M.A., Pfahl D., Chrobok G., Nothhelfer-Kolb B., A COTS Acquisition Process: Definition and Application Experience, Proceedings of the 11th ESCOM Conference, Shaker, Maastricht 2000, ss. 335-343.

182 Teltumbde A., A framework for evaluating ERP projects, International Journal of Production Research, Vol. 38(17), 2000.

183 Lawlis P., Mark K., Thomas G., Courtheyn T., A Formal Process for Evaluating COTS Software Products, IEEE Computer, Vol. 34 (5), 2001.

184 Alves C., Castro J., CRE: A Systematic Method for COTS Components Selection, XV. Brazilian Symposium on Software Engineering (SBES), Rio de Janeiro, Brazil 2001.

185 Sedigh-Ali S., Ghafoor A., Paul R., Software Engineering Metrics for COTS-Based Systems, IEEE Computer, Vol. 34(5), 2001.

186 Morera D., COTS Evaluation Using Desmet Methodology & Analytic Hierarchy Process, PROFES 2002.

187 Lai V.S., Wong B.K., Cheung W., Group decision making in multiple criteria environment: A case using the AHP in software selection, European Journal of Operational Research, Vol. 137, 2002.

188 Maiden N., Kim H., Ncube C., Rethinking process guidance for Software Component Selection, LNCS 2255, Dean J.C., Gravel A. (red.), Springer- Verlang, New York, 2002.

189 Comella-Dorda S., Dean J.C., Morris E., Oberndorf P., A process for COTS Software Product Evaluation, Proceedings of ICCBSS, February 2002, Orlando, Florida USA 2002.

190 Chung L., Cooper K., Defining Goals in a COTS-Aware Requirements Engineering Approach, System Engineering, Vol. 7, No.1, 2004.

191 Gregor S., Hutson J., Oresky C., Storyboard Process to Assist in Requirements Verification and Adaptation to Capabilities Inherent in COTS, In Proceedings of the International Conference on COTS-Based Software Systems 2002, LNCS Vol. 2255, 2002.

192 Cavanaugh B. P., Polen S. M., Add Decision Analysis to Your COTS Selection Process, The Journal of Defense Software Engineering, April 2002.

193 Leung H. K. N., Leung, K. R. P. H., Domain-Based COTS-Product Selection Method, In Proceedings of Component-Based-Software Quality, LNCS Vol. 2693, 2003, ss. 40- 63.

194 Carney D., Place P.R.H., Oberndorf P., A Basis for an Assembly Process for COTS-Based Systems (APCS), SEI Technical Report. CMU/SEI-2003-TR-010, 2003.

195 Boehm B., Port D., Yang Y., WinWin Spiral Approach to Developing COTS-Based Applications, EDSET-5, Oregon 2003.

196 Sahay B.S., Gupta A.K., Development of software selection criteria for supply chain solutions, Industrial Management & Data Systems Vol. 103(2), 2003.

197 Erol I., Ferrell W.G., A methodology for selection problems with multiple, conflicting objectives and both qualitative and quantitative criteria, International Journal of Production Economics, Vol. 86, 2003.

198 Wei C., Wang M., A comprehensive framework for selecting an ERP system, International Journal of Project Management, Vol. 22, 2004.

199 Colombo E., Francalanci C., Selecting CRM packages based on architectural, functional, and cost requirements: Empirical validation of a hierarchical ranking model, Requirements Engineering, Vol. 9 (3), 2004.

200 Carvallo J.P., Franch X., Grau G., Quer C., COSTUME: A Method for Building Quality Models for Composite COTS-Based Software Systems, In Proceedings of the 4th International Conference on Quality Software (QSIC 2004), IEEE Computer Society, Braunschweig, Germany, September 2004.

48 (2005), Wanayama i in.203 (2005), Mohamed, Ruhe i Eberlein204 (2007), Fan Ye i Tim Kelly205 (2004 ), Ayala206 (2008), Wanyama i Far207 (2008) oraz Li Jiang, Armin Eberlein, Behrouz H.

Far i Majid Mousavi208 (2008).

Poniższy schemat przedstawia propozycję uszeregowania wybranych metodologii w zależności od stosowanej techniki oraz jej dalszej ewolucji. Poszczególne metodologie zostały usystematyzowane chronologicznie z uwzględnieniem etapów ewolucji oprogramowania COTS (Rys. 2.8.). W przypadku kilku metodologii istniała możliwość przyporządkowania do kilku kategorii, przy czym w zestawieniu został uwzględniony najbardziej dominujący czynnik.

Na podstawie tego opracowania można wyznaczyć ogólny schemat rozwoju procesu oceny oprogramowania COTS, wyszczególniając jego najważniejsze etapy. Jako podstawową strukturę rozwoju oprogramowania można wskazać metodologię zaproponowaną przez Kontio w 1995 roku (OTSO). Na podstawie OTSO przeprowadzane były dalsze doświadczenia metodyczne dotyczące rozwoju powielarnych składników oprogramowania. Wielokryterialne metody wspomagania decyzji oparte na relacji przewyższania zostały wykorzystane m.in.

w 1997 roku przez Morisio i Tsoukias (IUSWARE). Proces oceny oprogramowania COTS oparto w kilku metodologiach na zastosowanie technik inżynierii wymagań (ang. Requirements Engineering). Dodatkowo uwzględniono wpływ czynników socjotechnicznych na końcową ocenę produktu. Najnowsze metodologie oceny oprogramowania kładą nacisk na szczegółowe dopasowanie procesu oceny do preferencji decydenta i w wymiarze praktycznym wykorzystują w tym celu screenshot’y czy diagramy przypadków użycia. Dodatkowo możliwe jest przenoszenie niezgodności pomiędzy poszczególnymi atrybutami, uwzględnienie wymagań niefunkcjonalnych, metod optymalizacyjnych czy teorii zbiorów rozmytych. Wszystkie zastosowane czynniki mają na celu jak najdokładniejsze dopasowanie procesu oceny do wymagań klienta, co ma przełożenie na wybór oprogramowania, które w najwyższym stopniu spełniałoby postawione przed nim wymagania. Pomiędzy poszczególnymi metodologiami występują zależności wynikające z zastosowania niekiedy takiej samej, zbliżonej bądź zmodyfikowanej przez poprzedników metody oceny. Ewolucja procesu oceny oprogramowania kierowana była poprzez rozwój dostępnych narzędzi oceny, ewolucję nowych technologii i potrzebę wysuwaną przez przedsiębiorstwo w związku z jego rozwojem, a także rozwojem narzędzi informatycznych przez nie stosowanych. W przypadku niektórych metod i technik oceny, rozwinięcie uprzednio stosowanych metod następowało nawet po upływie kilku lat.

Najnowsze metodologie proponują zastosowanie metod hybrydowych lub połączenie kilku technik do wyboru i oceny systemów.

201 Cil I., Alpturk O., Yazgan H.R. A new collaborative system framework based on a multiple perspective approach: InteliTeam, Decision Support Systems, Vol. 39, 2005.

202 Wei C.C, Chien C., Wang M.J., An AHP-based approach to ERP system selection, International Journal of Production Economics, Vol. 96, 2005.

203 Wanyama T., Far B.H., A Multi-Agent Framework for Conflict Analysis and Negotiation: Case of COTS Selection, Transactions of the Institute of Electronics, Information and Communication Engineers: Special Issue on Software Agent and its Applications – Vol. E88-D, No.9, September, 2005, ss. 2047-2058; Wanyama T., Far B.H., Towards Providing Decision Support for COTS Selection, In Proceedings of the Canadian Conference on Electrical and Computer Engineering (CCECE '05.), 2005, ss. 908-911.

204 Mohamed A., Ruhe G., Eberlein A., Decision Support for Handling Mistmatches between COTS Products and System Requirements, In Proceedings of the International Conference on COTS-Based Software Systems (ICCBSS 2007), Banff, Canada, 2007.

205 Fan Ye, Tim Kelly, COTS Product Selection for Safety-Critical Systems, Lecture Notes in Computer Science, Vol. 2959, 2004, ss.53-64.

206 Ayala C., Systematic Construction of Goal-Oriented COTS Taxonomies, In Proceedings of the 3rd Doctoral Consortium at the 18th Conference on Advanced Information Systems Engineering (CAISE 2006).5-9 June 2006, Luxembourg 2006.

207 Wanyama T., Far B.H, An empirical study to compare three methods for selecting COTS Software Components, International Journal of Computing and ICT Research, Vol. 2 No. 1, June 2008.

208 Jiang L., Eberlein A., Far B.H., Mousavi M., A methodology for the selection of requirements engineering techniques, Software System Model (2008), Springer-Verlag 2007.

49 Rys. 2.8. Ewolucja metod oceny powielarnych składników oprogramowania. Źródło: Opracowanie własne na podstawie209.

209 Gungor Sen C., Baracali H., A brief literature review of enterprise software evaluation and selection methodologies: a comparison in the context of decision – making methods, In Proceedings of 5th International Symposium on Intelligent Manufacturing systems, May 29-31, Istanbul, Turkey 2006;

Maiden C.N., Ncube A.M., PORE: Procurement-Oriented Requirements Engineering Method for the Component-Based Systems Engineering Devel-opment Paradigm, 2nd International Workshop on Component-Based Software Engineering, Los Angeles, USA 1998; Morisio M., Torchiano M., Definition and classification of COTS: a proposal, Accepted at ICCBSS, Orlando (FL) February 4-6, 2002; Torchiano M., Selected literature on COTS products, INCO project – Internal Report, Rev. 6-9/3/2001; Ayala C., Systematic Construction of Goal-Oriented COTS Taxonomies, In Proceedings of

50 Na podstawie przeprowadzonej analizy wybranych metodologii oceny COTS, można wskazać, że ocena systemów bardzo często bazowała na metodzie hierarchicznej analizy problemu (AHP) Saaty’ego210. Znalazła ona zastosowanie w takich metodologiach jak: OTSO (Kontio)211, MAS (Lai i in.)212, STACE (Kunda i Brooks)213, CAP (Ochs i in.)214, Morera215, Teltumbde216, Colombo i Francalanci217, Wei i Wang218 (Rys. 2.9.). W literaturze przedmiotu jako podstawę ewolucji metod wyboru i oceny oprogramowania wskazuje się najczęściej na omówioną już metodologię OTSO i to ona przyjmowana jest jako podstawa do dalszych badań nad oceną i selekcją składników COTS. Od 2005 roku szersze zastosowanie miały nowopowstające metody, będące połączeniem uprzednio stosowanych technik, stanowiące tym samym autorski model oceny.

Rys. 2.9. Zastosowanie metody AHP w procesie oceny oprogramowania przez wybrane metodologie.

Źródło: Opracowanie własne.

Warto jednocześnie wskazać, że inne metodologie wsparły również proces wyboru i oceny oprogramowania COTS na wielokryterialnej analizie decyzyjnej. Uściślając zastosowanie znalazły metody używające relację przewyższania (np. Electre). Podejście takie zostało wykorzystane m.in. w metodologiach: IusWare (Morisio i Tsoukias)219, PORE (Maiden i Ncube)220, Cil i in.221, SCARLET (Maiden, Kim, Ncube)222, WinWin Spiral model (Boehm)223 (Rys. 2.10.).

Rys. 2.10. Zastosowanie metody MCDA w procesie oceny oprogramowania przez wybrane metodologie.

Źródło: Opracowanie własne.

Analizując pozostałe metodologie wskazać należy, że proces oceny oprogramowania COTS posadowiono również na zastosowaniu algorytmu heurystycznego. Przykłady stanowią tutaj

the 3rd Doctoral Consortium at the 18th Conference on Advanced Information Systems Engineering (CAISE 2006), 5-9 June 2006, Luxembourg 2006;

Wanyama T., Far B.H., An empirical study to compare three methods for selecting COTS Software Components, International Journal of Computing and ICT Research, Vol. 2, No. 1, June 2008.

210 Saaty T.L., Multicriteria Decision Making: The Analytic Hierarchy Process, RWS References 200 Publications, Pittsburgh, PA. 1990.

211 Kontio J., Chen S., Limperos K., Tesoriero R., Caldiera G., Deutsch M., A COTS Selection Method and Experiences of Its Use, Twentieth Annual Software Engineering Workshop, Greenbelt, Maryland 1995.

212 Lai V.S., Truebloodb R.P., Wong B.K., Software selection: a case study of the application of the analytical hierarchical process to the selection of a multimedia authoring system, Information & Management, Vol. 36, 1999.

213 Kunda L., Brooks D., Applying Social-Technical Approach For Cots Selection, 4th UKAIS Conference, University of York 1999.

214 Ochs M.A., Pfahl D., Chrobok G., Nothhelfer-Kolb B., A COTS Acquisition Process: Definition and Application Experience, Proceedings of the 11th ESCOM Conference, Shaker, Maastricht 2000, ss.335-343.

215 Morera D., COTS Evaluation Using Desmet Methodology & Analytic Hierarchy Process, PROFES 2002.

216 Teltumbde A., A framework for evaluating ERP projects, International Journal of Production Research, Vol. 38(17), 2000.

217 Colombo E., Francalanci C., Selecting CRM packages based on architectural, functional, and cost requirements: Empirical validation of a hierarchical ranking model, Requirements Engineering, Vol. 9 (3), 2004.

218 Wei C., Wang M., A comprehensive framework for selecting an ERP system, International Journal of Project Management, Vol. 22, 2004.

219 Morisio M., Tsoukias A., Iusware: a methodology for the evaluation and selection of software products, IEE Proceedings-Software Engineering, Vol. 144 (3), 1997.

220 Maiden C.N., Ncube A.M., PORE: Procurement-Oriented Requirements Engineering Method for the Component-Based Systems Engineering Development Paradigm, 2nd International Workshop on Component-Based Software Engineering, Los Angeles, USA 1998.

221 Cil I., Alpturk O., Yazgan H.R., A new collaborative system framework based on a multiple perspective approach: InteliTeam, Decision Support Systems, Vol. 39, 2005.

222 Maiden N., Kim H., Ncube C., Rethinking process guidance for Software Component Selection, LNCS 2255, Dean J.C., Gravel A. (red.), Springer- Verlang, New York, 2002.

223 Boehm B., Port D., Yang Y., WinWin Spiral Approach to Developing COTS-Based Applications, EDSET-5, Oregon 2003.

51 następujące metodologie: scenario – based technique (Feblowitz i Greenspan)224, RCPEP (Lawlis i in.)225, Sedigh - Ali i in.226, CDSEM (Jeanrenaud i Romanazzi)227 (Rys.2.11.).

Rys. 2.11. Zastosowanie algorytmu heurystycznego w procesie oceny oprogramowania przez wybrane metodologie. Źródło: Opracowanie własne.

W pozostałych metodologiach wspierających selekcję i ocenę składników COTS występuje znaczące zróżnicowanie pod względem istniejącego podłoża metodycznego. Łączenie poszczególnych metod i technik oraz zastosowanie metod heurystycznych powoduje, że coraz trudniej wskazać jest ich uogólnione założenia. Dodatkowo, zdecydowana większość z przedstawionych metod bazuje na rozwiązaniach opartych na autorskim modelu oceny bądź zawiera rozwiązania hybrydowe (Rys. 2.12.).

Rys. 2.12. Zastosowanie pozostałych metod w procesie oceny oprogramowania przez wybrane metodologie oceny COTS. Źródło: Opracowanie własne.

2.2.2. Wnioski

W rozważaniach ujęto 38 metodologii powstałych w przedziale od 1994 do 2008 roku.

Dokonana analiza miała za zadanie uszeregować metody wskazując czynniki dominujące uwzględniane w procesie oceny jak też ich hierarchizację dla potrzeb podjęcia końcowej decyzji dotyczącej zakupu danego rozwiązania przez decydenta. Należy zaznaczyć, że pomiędzy analizowanymi metodologiami występują znaczące różnice odnośnie wyboru metody wspomagającej ocenę oprogramowania. Wskazane powyżej technologie wspomagające procesy decyzyjne powinny zostać wykorzystane w sposób adekwatny do specyfiki rozważanego

224 Feblowitz M.D., Greenspan S.J., Scenario-Based Analysis of COTS Acquisition Impacts, Requirements Engineering, Vol. 3 (3/4), 1998.

225 Lawlis P., Mark K., Thomas G., Courtheyn T., A Formal Process for Evaluating COTS Software Products, IEEE Computer, Vol. 34 (5), 2001.

226 Sedigh-Ali S., Ghafoor A., Paul R., Software Engineering Metrics for COTS-Based Systems, IEEE Computer, Vol. 34(5), 2001.

227 Jeanrenaud J., Romanazzi P., Software Product Evaluation: A Methodological Approach, Proceedings of the 2nd International Conference on Software Quality Management, 1994.

52 problemu decyzyjnego (przykładowo postać strukturalizacji zbioru kryteriów czy warunki pewności, ryzyka bądź niepewności).