Open Source Tools for Collaborative Systems ...

3 downloads 611 Views 132KB Size Report
Keywords: open source, tools, collaborative systems, hierarchization, ranking algorithm. 1. ... to other social networks, like the network of scientific collaborations.
Open Source Science Journal

Vol. 2, No. 2, 2010

Open Source Tools for Collaborative Systems Hierarchization Cristian CIUREA Economic Informatics Department, Academy of Economic Studies, Bucharest, Romania [email protected]

Abstract: The present paper focuses on the hierarchization of collaborative systems based on open source tools. In this paper are described and implemented criteria in order to calculate the rank of each collaborative system. There are analyzed the collaborative banking information systems and a ranking algorithm is proposed based on normalization and aggregation. Keywords: open source, tools, collaborative systems, hierarchization, ranking algorithm.

1. Open source tools In the current knowledge-based society there are many categories of software products and many types of information systems. The information systems, in which the agents work together in order to achieve a common objective, are named collaborative systems. The collaborative informatics systems represent, from the implementation viewpoint, software entities that are developed during a life cycle process that starts with the problem analysis and ends with the implementation of a fully functional software system [1]. Science led the development in practice of many collaboration systems, founds in almost all activity fields. Numerous examples of collaborative systems can be found in fields like: banking, medicine, military and aviation. Some of the applications inside a collaborative information system are open source. With the widespread use of the internet and the growth of web-based applications, there are also a lot of hybrid forms of software available, but not really open source [2]. Open source tools are web browsers, like Mozilla Firefox, software tools for research needs, like Ottobib, Spreeder, and SpellJax, for learning and brainstorming, like XMind and FreeMind [2]. In [3] are presented open source tools provided by Hewlett Packard, such as: - Freeware CD is to provide OpenVMS customers with easy access to public domain software and free internal HP software and tools; - IDL Compiling Library is an open source, free software library used for creating trees of CORBA Interface Definition Language files; - Majordomo, which automates the management of internet mailing lists; - Stunnel, that allows to encrypt arbitrary TCP/IP connections inside a Secure Sockets Layer connection from an OpenVMS system to another machine; - Kerberos is a network authentication protocol designed to provide strong authentication for client/server applications by using secret-key cryptography. In the development of open source software, the participants are distributed amongst different geographic regions, so there is need for tools to aid participants to collaborate in source code development. Open source tools like mailing lists and instant messaging provide means of internet communications between developers [4].

19

Open Source Science Journal

Vol. 2, No. 2, 2010

In the recent years that open source tools have gained popularity among all types of users, from individuals or small enterprises to large corporate organizations [5]. A particular characteristic of open source applications is that these applications can be integrated with other applications and within an information system. Starting from this idea, a collaborative system is represented by a lot of open source applications, interrelated and interconnected. All the information systems from a bank are collaborative systems, because they require the cooperation, communication and coordination of many software applications in order to achieve a common goal. Open source communities are closer to the internet and communication networks than to other social networks, like the network of scientific collaborations. A well-defined interplay between the overall goals of the community and the underlying hierarchical organization play a key role in shaping its dynamics [6]. For many organizations, the open source software is centered on value creation. Here it is not only costs, which are saved, but especially benefits from reliability, flexibility and a higher degree of innovation capability, which have become the center of motivation for open alternatives [7].

2. Hierarchy of the collaborative banking systems The collaborative banking system is a system with high complexity, with a large number of components and a large variety of links between them. The banking system is collaborative by its organization and definition. In a bank the collaboration it is at all structural levels. From organizational point of view, there is collaboration between departments, but also between central bank and its branches. In the figure 1 is presented a collaborative banking environment and its components:

Fig. 1. Example of collaborative banking environment

20

Open Source Science Journal

Vol. 2, No. 2, 2010

In the example from figure 1, the external users can access the bank accounts through an internet banking server, which is connected with the core banking system. The messages from the internet banking server will be received by the core banking only if they pass two security levels. If a message does not have the correct credentials and certificates, then it will be considered a fraud tentative and it will not be received by the core banking. The internal users can access the core banking without using the internet banking server, but they must pass also through the security levels. Other components of the collaborative banking environment are the transaction processing server and the electronic payments server. The subjective hierarchization of a certain bank is made by a client depending on: bank’s promotions, bank’s location and other person’s opinion on that bank. The customer makes an image of the bank, based on the information gathered over the time and based on the experiences that he endured in the relation with it. The collaborative elements that could appear in the subjective hierarchization of a bank are: - friendly interface of the simulation loan application; - how the bank officials deal with customers; - the diversity of operations carried out online; - the duration of a transaction; - payment facilities offered by banks. Considering two banks, noted by X and Y, and an individual who gather information during a period of time about them, the situation presented in table 1 could occur: Table 1. Subjective hierarchy of two banks SCORE Hierarchy criteria BANK X BANK Y Friendly applications interfaces 80 90 Way to welcome the customers 100 70 Online operations diversity 90 80 Duration of waiting in line 50 70 Payment facilities offered 100 100 Novelty and transparency 80 70 Efficient communication with the counsellors 90 80 Respect for clients

40

50

Rapidity in serving Maximum efficiency of the counsellors

50

70

60

70

TOTAL SCORE

740

750

21

Open Source Science Journal

Vol. 2, No. 2, 2010

The result of the subjectivity hierarchization of the two banks shows that according to the individual’s perception, bank Y is better than bank X. In order to determine which collaborative system is the best, from the point of view of open source applications that contain, for each application need to be identified the quality characteristics to give a set of ranks for the intended open source software. In [8] is presented an Analytical Hierarchy Process to find the most appropriate open source software product based on its intended features. The collaborative systems are classified in many categories and there are a lot of criteria for collaborative systems classification. After the criterion field of application, collaborative systems are classified in: collaborative functional systems, collaborative micropayment systems, collaborative planning systems, collaborative tagging systems, collaborative writing systems, and collaborative medical systems [9]. Based on the organization criteria, the collaborative systems are classified into the following: - linear systems, case in which the subsystems interact in both ways, the initial inputs are represented by I1, while the final outputs are On; at intermediate levels, the outputs of the k-1 subsystem are, in fact, the inputs of the k system; - tree systems, in which the messages are being exchanged between the activities in a hierarchical way; from the second level the message will reach the zero level only if it will pass through level one; a message of the base level, represented by the root of the tree, will only be propagated to the activities situated on the next lowest level; from this level, the message will be sent to the activities represented by the child nodes situated on level one; - network systems, which include nodes that have corresponding competences and fluxes in all the adjacent nodes; the messages flow is made in all the directions, without being imposed any restriction; in such a system, all the nodes are interconnected, while all the activities are interdependent; in an ideal hierarchy, every member of the organization is connected to someone else in the organization, and so the connectedness score is defined as 1 for a connected graph [10]. The majority of the collaborative systems with network structure can be found in the banking and production field.

3. An algorithm for hierarchization based on normalization and aggregation The problem of choosing the best collaborative banking system by taking into consideration more criteria is a problem of multi criteria selection [11]. Two banking collaborative systems are considered, meaning Bank 1 and Bank 2, for which are calculated the following quality criteria: C1 – complexity; C2 – reliability; C3 – portability; C4 – maintainability. Based on the data given by the two collaborative systems, through the SMSC application – Software for the Collaborative Systems Metrics, the values presented in table 2 were obtained:

22

Open Source Science Journal

Vol. 2, No. 2, 2010

Table 2. The values of the qualitative characteristics for two collaborative systems Quality characteristics Bank 1 Bank 2 C1 – complexity

842

962

C2 – reliability

950

980

C3 – portability

700

250

C4 – maintainability

850

900

On the purpose of identifying an aggregate indicator associated to the qualitative characteristics, the values of the importance coefficients attached to the four characteristics are being established. Based on the previous analysis and on the dependence study regarding the C1, C2, C3, C4 characteristics and on the speed of obtaining the results, there have been identified the values of the importance coefficients, as they are listed in table 3. Table 3. The values of the shares ad to the quality characteristics Quality characteristics Shares C1 – complexity 0.3 C2 – reliability

0.2

C3 – portability

0.4

C4 – maintainability

0.1

Each quality characteristic analysed has a function associated. This function can lead to the choosing of the most efficient level. The identification of this function has a great importance in a direct comparison of the feature levels for two or more collaborative systems. In table 4, the minimum and the maximum values associated to C1, C2, C3 and C4criteria are presented: Table 4. The minimum and the maximum levels associated to the criteria Quality characteristics MIN MAX C1 – complexity

842

962

C2 – reliability

950

980

C3 – portability

250

700

C4 – maintainability

850

900

Having different criteria, normalization is necessary to determine an aggregate indicator that describes a collaborative system with a value associated aggregated values directly comparable with other collaborative system. Normalized value, NVCi, corresponding to the Ci criterion, is determined in the following way::

NVCi =

VCi max − VCij VCi max − VCi min , where:

VCi max – the maximum value of Ci criterion; VCi j – the value of Cj, different from Ci; VCi min – the minimum value of the Ci criterion. 23

Open Source Science Journal

Vol. 2, No. 2, 2010

Table 5 summarizes the normalized values corresponding to the four characteristics: Table 5. The normalized values of the characteristics Quality characteristics Bank 1 Bank 2 C1 – complexity

1

0

C2 – reliability

1

0

C3 – portability

0

1

C4 – maintainability

1

0

An aggregate indicator, IA, can be achieved based on the following formula: 4

IA = ∑ NVCi * pi i =1

, where: NVCi – t normalized value of Ci criterion; pi – the share associated to Ci. Table 6 presents the values of the aggregate indicator for the two collaborative systems: Table 6. The values of the aggregate indicator Quality characteristics Bank 1 Bank 2 C1 – complexity

1

0

C2 – reliability

1

0

C3 – portability

0

1

1 0,6

0 0,4

C4 – maintainability Aggregate indicator

Based on the obtained values for the aggregate indicator, the hierarchy of the two collaborative bank systems is made. As it can be seen from the table 6, Bank 1 is better than Bank 2.

4. Conclusions Collaborative systems have become an important research topic of the knowledge society, most activities performed by people related to this area. Any human activity is best achieved when people work together to achieve a common goal. Collaborative systems are efficient and achieve results accurately and completely if they work the way they are designed to. There are several approaches related to identifying ways the elements of a corporate hierarchy so that the outcome of the hierarchy to be accepted by more people. The ranking criteria should be stable. The changes of a criterion lead to a different hierarchy. In time, the criteria it is filtered and stabilized. Criteria are stabilized as it appears that their rankings made based on accurate and they do not lead to absurd situations. Scores given to each criterion of a rating scale credit applicant remain fixed until the bank decides to

24

Open Source Science Journal

Vol. 2, No. 2, 2010

increase or reduce the lending rate risk or withdraw until a specific appropriation from the list of products offered by the bank.

Acknowledgements This article is a result of the project POSDRU/6/1.5/S/11 „Doctoral Program and PhD Students in the education research and innovation triangle”. This project is co funded by European Social Fund through The Sectorial Operational Programme for Human Resources Development 2007-2013, coordinated by The Bucharest Academy of Economic Studies, project no. 7832, Doctoral Program and PhD Students in the education research and innovation triangle, DOC-ECI.

References [1] C. Ciurea, “Life Cycle of Collaborative Systems,” Open Source Science Journal, Vol. 2, No. 1, 2010, ISSN 2066–740X. [2] J. Gordon, 69 Free or Open Source Tools For Students, 2009, Available at: http://www.onlinecollege.org/2009/01/22/free-or-open-source-tools-for-students/ [3] http://h71000.www7.hp.com/opensource/opensource.html [4] http://en.wikipedia.org/wiki/Open-source_software [5] J. Timofte, “Intrusion Detection using Open Source Tools,” Revista Informatica Economică, No. 2(46) / 2008, pp. 75-79. [6] S. Valverde and R. V. Sole, Self-organization and Hierarchy in Open Source Social Networks, Available at: http://www.santafe.edu/media/workingpapers/06-12-053.pdf [7] D. Richter, H. Zo and M. Maruschke, “A Comparative Analysis of Open Source Software Usage in Germany, Brazil, and India,” 2009 Fourth International Conference on Computer Sciences and Convergence Information Technology, IEEE Computer Society, 2009. [8] R. E. Al-Qutaish, M. I. Muhairat, and B. M. Al-Kasasbeh, “The analytical hierarchy process as a tool to select open source software,” Proceedings of the 8th WSEAS international Conference on Software Engineering, Parallel and Distributed Systems, Cambridge, UK, February 21 - 23, 2009. [9] C. Ciurea, “Collaborative Free Software Development,” Open Source Science Journal, Vol. 1, No. 2, 2009, ISSN 2066–740X. [10] K. Crowston and J. Howison, Hierarchy and centralization in Free and Open Source Software team communications, Available at: http://citeseerx.ist.psu.edu/viewdoc/ download?doi=10.1.1.60.470&rep=rep1&type=pdf [11] I. Ivan and C. Boja, Empirical Software Optimization, Revista Informatica Economică, No. 2(34), 2005, pp. 43-50.

25

Open Source Science Journal

Vol. 2, No. 2, 2010

Author Cristian CIUREA has a background in computer science and is interested in collaborative systems related issues. He has graduated the Faculty of Economic Cybernetics, Statistics and Informatics from the Bucharest Academy of Economic Studies in 2007. He is currently conducting doctoral research in Economic Informatics at the Academy of Economic Studies. Other fields of interest include software metrics, data structures, object oriented programming in C++ and windows applications programming in C#.

26