scholarly journals Designing and developing service-oriented software with respect to fundamental object-oriented principles

2014 ◽  
Author(s):  
Διονύσιος Αθανασόπουλος

Στην παρούσα διατριβή προτείνουμε τεχνικές για τη σχεδίαση και την ανάπτυξη υπηρεσιο-κεντρικού λογισμικού (service-oriented software) με βάση θεμελιώδεις αρχές αντικειμενοστρέ-φειας (fundamental design principles). Υπηρεσιοκεντρικό είναι το είδος του λογισμικού τοοποίο χρησιμοποιεί ως βασικά δομικά συστατικά του (components) μονάδες λογισμικού, πουέχουν σχεδιαστεί και αναπτυχθεί από τρίτους παρόχους λογισμικού. Αυτά τα δομικά συστατικάείναι γνωστά ως υπηρεσίες (services) και συνήθως προσπελάσσονται από το υπηρεσιοκεντρικόλογισμικό διαμέσου του διαδικτύου (Web) χρησιμοποιώντας την τεχνολογία των υπηρεσιώνδιαδικτύου (Web-service technology). Οι θεμελιώδεις αρχές αντικειμενοστρέφειας είναι ένασύνολο από οδηγίες σχεδίασης και ανάπτυξης αντικειμενοστρεφούς λογισμικού των οποίωνη παραβίαση δημιουργεί προβλήματα συντήρησης του λογισμικού. Στην παρούσα διατριβή,αυτές οι αρχές οργανώνονται σε δύο ομάδες: (α) τις αρχές σύμφωνα με τις οποίες το λογισμικόπρέπει να αναπτύσσεται με βάση δομές αφαίρεσης (abstractions), και (β) τις αρχές σύμφωνα μετις οποίες το λογισμικό πρέπει να αναπτύσσεται με βάση μικρά και συνεκτικά δομικά συστατικά(cohesive components).Όταν αυτές οι σχεδιαστικές αρχές παραβιάζονται, τα προβλήματα συντήρησης του υπηρεσιο-κεντρικού λογισμικού είναι απροσδόκητα και πιο συχνά σε σχέση με την περίπτωση του αντικει-μενοστρεφούς λογισμικού. Aυτό οφείλεται στην ιδιαιτερότητα του υπηρεσιοκεντρικού λογισμι-κού που σχετίζεται με το γεγονός ότι κάθε βασικό δομικό συστατικό του δεν ανήκει στον ιδιοκτή-τη του, αλλά απλά χρησιμοποιείται από το λογισμικό. Η παρούσα διατριβή διαιρείται σε δύοτμήματα. Το πρώτο τμήμα ασχολείται με την εφαρμογή της πρώτης ομάδας σχεδιαστικώναρχών στην περίπτωση του υπηρεσιοκεντρικού λογισμικού, και το δεύτερο τμήμα ασχολείταιμε την εφαρμογή των αρχών της δεύτερης ομάδας.Για την εφαρμογή της πρώτης ομάδας αρχών, προτείνουμε ότι το υπηρεσιοκεντρικό λογισμι-κό πρέπει να αναπτύσσεται με βάση αφηρημένες υπηρεσίες (abstract services). Ωστόσο, στηνπράξη, αφηρημένες υπηρεσίες δεν είναι διαθέσιμες. Έτσι, προτείνουμε μία μέθοδο εξόρυξης(mining) αφηρημένων υπηρεσιών από ένα σύνολο υπαρχόντων υπηρεσιών. Η προτεινόμενημέθοδος βασίζεται σε έναν αλγόριθμο σύγκρισης και συσχέτισης υπηρεσιών (service matching).Δεδομένου ότι τα δεδομένα εισόδου και εξόδου των λειτουργιών των υπηρεσιών (service operations)είναι πολύπλοκες XML γραμματικές (XML schemas), προτείνουμε έναν αποτελεσματκό(effective) και αποδοτικό (efficient) αλγόριθμο σύγκρισης τέτοιων γραμματικών.Η προτεινόμενη μέθοδος εξόρυξης αφηρημένων υπηρεσιών συγκρίνει υπηρεσίες με δύοτρόπους: (i) προοδευτικά σε ζευγάρια (incremental pair-wise) ή (ii) περισσότερες από δύουπηρε-σίες ταυτόγχρονα (holistic). Συγκρίνοντας αυτούς τους δύο τρόπους εξόρυξης αφηρημέ-νων υπηρεσιών, τα πειραματικά αποτελέσματα έδειξαν, ότι ο πρώτος τρόπος είναι πιο αποδοτι-κός αλλά λιγότερο αποτελεσματικός σε σχέση με το δεύτερο τρόπο.Για την εφαρμογή της δεύτερης ομάδας αρχών, προτείνουμε μία μέθοδος διάσπασης (decomposition)μίας υπηρεσίας σε μικρότερες και πιο συνεκτικές υπηρεσίες. Για να υπολογίσουμετη συνεκτικότητα μίας υπηρεσίας, προτείνουμε τρεις εναλλακτικές μετρικές. Η πρώτη μετρική,που εφαρμόζεται στα μηνύματα των λειτουργιών υπηρεσιών (message-level metric), βρίσκεισχέσεις μεταξύ των λειτουργιών που έχουν παρόμοια δεδομένα εισόδου και εξόδου. Η δεύτερημετρική, που βασίζεται στην ανταλλαγή μηνυμάτων μεταξύ των λειτουργιών υπηρεσιών (conversation-levelmetric), βρίσκει τέτοιες σχέσεις ώστε τα δεδομένα εξόδου μίας λειτουργίας να είναιπαρόμοια με τα δεδομένα εισόδου μιας άλλης λειτουργίας. Η τρίτη μετρική βρίσκει σχέσειςμεταξύ λειτουργιών των οποίων τα ονόματα χαρακτηρίζονται από όρους (terms), που ανήκουνσε παρόμοια θεματικά πεδία (domain-level metric). Αποτιμώντας την αποτελεσματικότητα καιτη χρησιμότητα της προτεινόμενης μεθόδου σε πραγματικές υπηρεσίες διαδικτύου, τα πειραματι-κά αποτελέσματα έδειξαν, ότι η μέθοδος μπορεί να βελτιώσει τη συνεκτικότητα μία υπηρεσίαςδιασπώντας την σε μικρότερες και πιο συνεκτικές υπηρεσίες. Επίσης, τα πειραματικά αποτελέ-σματα έδειξαν, ότι όταν η προτεινόμενη μέθοδος συνδυάζεται με την τρίτη μετρική, τότε ηαποτελεσματικότητα της μεθόδου είναι υψηλότερη σε σχέση με τους συνδυασμούς της μεθόδουμε τις άλλες δύο μετρικές.

2018 ◽  
Vol 15 (4) ◽  
pp. 45-60
Author(s):  
Negar Abbasi ◽  
Ali Moeini ◽  
Taghi Javdani Gandomani

Identification of web service candidates in legacy software is a crucial process in the reengineering of legacy systems to service oriented architecture. Researchers have proposed various automatic and semi-automatic methods for this purpose, some of which have proved to be quite efficient, but there are still certain gaps which need to be addressed. This article discovers the strengths and weaknesses of previous methods and develops a method with improved service candidate identification performance. In this article, service identification is considered as a search and optimization problem and a firefly algorithm is developed accordingly to give high-quality solutions in reasonably short times. A filtering method is also developed to remove excess modules (false positives) from the algorithm outputs. A case study on a legacy flight reservation system demonstrates the high reliability of the outputs given by the proposed method.


2011 ◽  
Vol 20 (04) ◽  
pp. 357-370 ◽  
Author(s):  
D. PAULRAJ ◽  
S. SWAMYNATHAN ◽  
M. MADHAIYAN

One of the key challenges of the Service Oriented Architecture is the discovery of relevant services for a given task. In Semantic Web Services, service discovery is generally achieved by using the service profile ontology of OWL-S. Profile of a service is a derived, concise description and not a functional part of the semantic web service. There is no schema present in the service profile to describe the input, output (IO), and the IOs in the service profile are not always annotated with ontology concepts, whereas the process model has such a schema to describe the IOs which are always annotated with ontology concepts. In this paper, we propose a complementary sophisticated matchmaking approach which uses the concrete process model ontology of OWL-S instead of the concise service profile ontology. Empirical analysis shows that high precision and recall can be achieved by using the process model-based service discovery.


2013 ◽  
Vol 760-762 ◽  
pp. 1708-1712
Author(s):  
Ying Fang Li ◽  
Ying Jiang Li ◽  
Yan Li ◽  
Yang Bo

At present, as the number of web services resources on the network drastically increased, how to quickly and efficiently find the needed services from publishing services has become a problem to resolve. Aiming at the problems of low efficiency in service discovery of traditional web service, the formal concept analysis ( FCA) is introduced into the semantic Web service matching, and a Matching Algorithm based semantic web service is proposed. With considering the concept of limited inheritance,this method introduces the concept of limited inheritance to the semantic similarity calculation based on the concept lattice. It is significant in enhancing the service function matching in practical applications through adjust the calculation.


2008 ◽  
Vol 2 (2) ◽  
pp. 1-46 ◽  
Author(s):  
Seung Hwan Ryu ◽  
Fabio Casati ◽  
Halvard Skogsrud ◽  
Boualem Benatallah ◽  
Régis Saint-Paul

Author(s):  
Anton Michlmayr ◽  
Florian Rosenberg ◽  
Philipp Leitner ◽  
Schahram Dustdar

In general, provenance describes the origin and well-documented history of a given object. This notion has been applied in information systems, mainly to provide data provenance of scientific workflows. Similar to this, provenance in Service-oriented Computing has also focused on data provenance. However, the authors argue that in service-centric systems the origin and history of services is equally important. This paper presents an approach that addresses service provenance. The authors show how service provenance information can be collected and retrieved, and how security mechanisms guarantee integrity and access to this information, while also providing user-specific views on provenance. Finally, the paper gives a performance evaluation of the authors’ approach, which has been integrated into the VRESCo Web service runtime environment.


2009 ◽  
Vol 50 ◽  
Author(s):  
Jérémy Besson ◽  
Albertas Čaplinskas

In the last decade the component technologies have evolved from object-oriented to serviceoriented ones. Services are seen as utilities based on a pay-for-use model. This model requires providing and guaranteeinga certain Quality of Service (QoS). However, QoS and even a service itself can be defined and understood in many different ways. It is by far not obvious which of these approaches and in what extent they should be used when developing service-oriented software systems. This paper analyzes the notion of QoS namely from this point of view.


Sign in / Sign up

Export Citation Format

Share Document