Service Orientation and the Quality Indicators for Software Services Jaroslav Kral, Michal Zemlicka...
-
Upload
merilyn-madlyn-eaton -
Category
Documents
-
view
212 -
download
0
Transcript of Service Orientation and the Quality Indicators for Software Services Jaroslav Kral, Michal Zemlicka...
![Page 1: Service Orientation and the Quality Indicators for Software Services Jaroslav Kral, Michal Zemlicka Department of Software Engineering Faculty of Mathematics.](https://reader035.fdocuments.in/reader035/viewer/2022070412/56649e3f5503460f94b30290/html5/thumbnails/1.jpg)
Service Orientation and the Quality Indicators for Software
Services
Jaroslav Kral, Michal Zemlicka
Department of Software Engineering Faculty of Mathematics and Physics, Charles University Prague
![Page 2: Service Orientation and the Quality Indicators for Software Services Jaroslav Kral, Michal Zemlicka Department of Software Engineering Faculty of Mathematics.](https://reader035.fdocuments.in/reader035/viewer/2022070412/56649e3f5503460f94b30290/html5/thumbnails/2.jpg)
Main issues
• What specification design principles imply good user and engineering properties of service-oriented software systems (SOSS).
• Consequences of SOSS for users (user top management inclusive), IT management, IT marketing, and software development
• Consequences for the education of software experts
![Page 3: Service Orientation and the Quality Indicators for Software Services Jaroslav Kral, Michal Zemlicka Department of Software Engineering Faculty of Mathematics.](https://reader035.fdocuments.in/reader035/viewer/2022070412/56649e3f5503460f94b30290/html5/thumbnails/3.jpg)
The concept of Service-orientation
Service orientation is a crucial software engineering paradigm. It is a challenge as well as an issue.Service orientation is not limited to web services and Internet.There are service-oriented software systems having different user and engineering properties..
![Page 4: Service Orientation and the Quality Indicators for Software Services Jaroslav Kral, Michal Zemlicka Department of Software Engineering Faculty of Mathematics.](https://reader035.fdocuments.in/reader035/viewer/2022070412/56649e3f5503460f94b30290/html5/thumbnails/4.jpg)
Software paradigm
A generally applicable philosophy, tools, methodology, best practices, experiences, and success stories
enabling effective solutions of tasks/projects in some
area of software development.
Observation. Paradigms are difficult not only to develop, but also to accept. Acceptance is a long term process
![Page 5: Service Orientation and the Quality Indicators for Software Services Jaroslav Kral, Michal Zemlicka Department of Software Engineering Faculty of Mathematics.](https://reader035.fdocuments.in/reader035/viewer/2022070412/56649e3f5503460f94b30290/html5/thumbnails/5.jpg)
Attributes of service orientation
• System architecture is a virtual p2p network of autonomous components behaving like services in a mass service systems– Autonomy – a component/service works properly as
a stand alone application if its inputs are filled (it can de developed autonomly)
• The services are integrated as black boxes, i.e. their interfaces only are known – The interfaces can be data or message oriented
![Page 6: Service Orientation and the Quality Indicators for Software Services Jaroslav Kral, Michal Zemlicka Department of Software Engineering Faculty of Mathematics.](https://reader035.fdocuments.in/reader035/viewer/2022070412/56649e3f5503460f94b30290/html5/thumbnails/6.jpg)
Variants of service oriented systems
1. Alliances. The comunication partners must be at the beginning of the communication looked for.
– E-commerce
2. Confederations. The services know each other. The communication parners need not be looked for.
– E-government– IS of decentralized enterprises– Support of SCM, and CRM – Manufacuring support systems, ….
![Page 7: Service Orientation and the Quality Indicators for Software Services Jaroslav Kral, Michal Zemlicka Department of Software Engineering Faculty of Mathematics.](https://reader035.fdocuments.in/reader035/viewer/2022070412/56649e3f5503460f94b30290/html5/thumbnails/7.jpg)
Properties of Confederations
• Appropriate for large organizations• Partners are known – dialogs can be tuned• Many techniques can be applied• Predecessors are known from history• Middleware can be adapted to particular needs
We shall discuss mainly the case of confederations
![Page 8: Service Orientation and the Quality Indicators for Software Services Jaroslav Kral, Michal Zemlicka Department of Software Engineering Faculty of Mathematics.](https://reader035.fdocuments.in/reader035/viewer/2022070412/56649e3f5503460f94b30290/html5/thumbnails/8.jpg)
Batch predecessors of SOSS
COBOL systems were the first systems having the structure of the network of autonomous applications
communicating via datastores
![Page 9: Service Orientation and the Quality Indicators for Software Services Jaroslav Kral, Michal Zemlicka Department of Software Engineering Faculty of Mathematics.](https://reader035.fdocuments.in/reader035/viewer/2022070412/56649e3f5503460f94b30290/html5/thumbnails/9.jpg)
Experience
• The case Y2K has shown that there were COBOL systems used for years without any maintenance (enterprises had no COBOL programmers able to modify applications routinely in use)
• Incremental development• Many generally usable applications, e.g.
report generators, data filters, …
![Page 10: Service Orientation and the Quality Indicators for Software Services Jaroslav Kral, Michal Zemlicka Department of Software Engineering Faculty of Mathematics.](https://reader035.fdocuments.in/reader035/viewer/2022070412/56649e3f5503460f94b30290/html5/thumbnails/10.jpg)
Online systems, firstly in soft real-time systems
• Autonomous permanently active application
• Equipped by sockets connecting them to a middleware
• Crucial role of the application interfaces• Middleware can use quite different
technologies (message passing or common data, Internet or local networks)
![Page 11: Service Orientation and the Quality Indicators for Software Services Jaroslav Kral, Michal Zemlicka Department of Software Engineering Faculty of Mathematics.](https://reader035.fdocuments.in/reader035/viewer/2022070412/56649e3f5503460f94b30290/html5/thumbnails/11.jpg)
Structure of a modern SOSS
Middleware Service G G Service
Service G
UC
UC
Old service interface
System interface 1
System interface 2
Physical (black) and logical (yellow, blue) views
UC – service providing user interface
log
![Page 12: Service Orientation and the Quality Indicators for Software Services Jaroslav Kral, Michal Zemlicka Department of Software Engineering Faculty of Mathematics.](https://reader035.fdocuments.in/reader035/viewer/2022070412/56649e3f5503460f94b30290/html5/thumbnails/12.jpg)
User oriented interfaces – quality drivers
SOSS is stable if service interfaces are not varying.User oriented interfaces tend to be
– Declarative – Not changing– Coarse grained – not too many messages per action– Understandable for users – they can be easy involved into system
development
Such interfaces enhances engineering qualityThey are not easy to achieve, need not be SOAP based.
Sometimes message passing, sometimes data oriented
![Page 13: Service Orientation and the Quality Indicators for Software Services Jaroslav Kral, Michal Zemlicka Department of Software Engineering Faculty of Mathematics.](https://reader035.fdocuments.in/reader035/viewer/2022070412/56649e3f5503460f94b30290/html5/thumbnails/13.jpg)
Data oriented interface
Data orientation is typical for „intelligent“ collaborations (management level)
![Page 14: Service Orientation and the Quality Indicators for Software Services Jaroslav Kral, Michal Zemlicka Department of Software Engineering Faculty of Mathematics.](https://reader035.fdocuments.in/reader035/viewer/2022070412/56649e3f5503460f94b30290/html5/thumbnails/14.jpg)
Middleware via a database
Enterprise
Scheduler FMS
FMS manager
Database
![Page 15: Service Orientation and the Quality Indicators for Software Services Jaroslav Kral, Michal Zemlicka Department of Software Engineering Faculty of Mathematics.](https://reader035.fdocuments.in/reader035/viewer/2022070412/56649e3f5503460f94b30290/html5/thumbnails/15.jpg)
Message passing is dominant in operation level
of service oriented systems
Messages can be easily redirected.It can be used as a powerful development
tool (prototyping, requirements specification,definition of business
processes).
![Page 16: Service Orientation and the Quality Indicators for Software Services Jaroslav Kral, Michal Zemlicka Department of Software Engineering Faculty of Mathematics.](https://reader035.fdocuments.in/reader035/viewer/2022070412/56649e3f5503460f94b30290/html5/thumbnails/16.jpg)
Engineering advantages
• Easy integration of legacy systems and third party product
• Incremental development, Pareto 80-20 rule applicable - usable system early available
• Implemetation details hidden and localized• Modifiability, reusability, etc• Agile development can be used in large
systems
![Page 17: Service Orientation and the Quality Indicators for Software Services Jaroslav Kral, Michal Zemlicka Department of Software Engineering Faculty of Mathematics.](https://reader035.fdocuments.in/reader035/viewer/2022070412/56649e3f5503460f94b30290/html5/thumbnails/17.jpg)
Virtual prototyping in a soft real-time system
Control logic Middleware Drivers
Controlled system
log
User interface
Redirected 1
Simulator
Redirected 2
Prototyping via user interface provided there are not too many messages
![Page 18: Service Orientation and the Quality Indicators for Software Services Jaroslav Kral, Michal Zemlicka Department of Software Engineering Faculty of Mathematics.](https://reader035.fdocuments.in/reader035/viewer/2022070412/56649e3f5503460f94b30290/html5/thumbnails/18.jpg)
Virtual prototyping in SOSS
Implemented service
Service not implemeted yet
log
User interface
Redirected
MiddlewareImplemented service
Implemented service
![Page 19: Service Orientation and the Quality Indicators for Software Services Jaroslav Kral, Michal Zemlicka Department of Software Engineering Faculty of Mathematics.](https://reader035.fdocuments.in/reader035/viewer/2022070412/56649e3f5503460f94b30290/html5/thumbnails/19.jpg)
Practical experiences with a flexible manufacturing system designed as
SOSS• Results over expectations at low as well as at management
level, general satisfaction• Although an island of automation it survived several ERP
systems• The systems was 25 years used without maintenance• Is about to be retired, the reason is that the production type
(gearwheels) is not needed anymoreSimilar observations for all SOSS the authors
and their friends have took part in
Achievable generally via service orientation!!
![Page 20: Service Orientation and the Quality Indicators for Software Services Jaroslav Kral, Michal Zemlicka Department of Software Engineering Faculty of Mathematics.](https://reader035.fdocuments.in/reader035/viewer/2022070412/56649e3f5503460f94b30290/html5/thumbnails/20.jpg)
Paradigm shiftService orientation is becoming the leading paradigm of software development. The reasons are
– global systems needed and technically feasible– progress of development techniques
Service orientation is not generally understood and accepted. This issue will take years to be resolved (compare the the history of object orientation).The process of the acceptance of SO can be fastened by involving people having experience with soft real-time (e.g. manufacturing) systems
![Page 21: Service Orientation and the Quality Indicators for Software Services Jaroslav Kral, Michal Zemlicka Department of Software Engineering Faculty of Mathematics.](https://reader035.fdocuments.in/reader035/viewer/2022070412/56649e3f5503460f94b30290/html5/thumbnails/21.jpg)
Service orientation and education of software
expertsNot only a deep and narrow computer knowledge
– User-oriented interfaces developers must understand user knowledge– IT graduates underrate users– IT gradutes dislike non computer (empirical) knowledge– IT graduates dislike SW engineering (e.g. Reusability)
Can be called as hacker syndrome
Difficult to cure (real-life projects cannot be developed in lectures)
![Page 22: Service Orientation and the Quality Indicators for Software Services Jaroslav Kral, Michal Zemlicka Department of Software Engineering Faculty of Mathematics.](https://reader035.fdocuments.in/reader035/viewer/2022070412/56649e3f5503460f94b30290/html5/thumbnails/22.jpg)
How to prevent hacker syndrome• Enough noncomputer lessons from very
beginning of the study• The noncomputer lessons should include the
exercises on empirical inference (data analysis)
• The empirical evaluation using very elementary statistical tools should be included in early computer science, software engineering, or programming lectures (when to stop testing, error prone components, quality of programmers, …) to prevent the development of the hacker syndrome
![Page 23: Service Orientation and the Quality Indicators for Software Services Jaroslav Kral, Michal Zemlicka Department of Software Engineering Faculty of Mathematics.](https://reader035.fdocuments.in/reader035/viewer/2022070412/56649e3f5503460f94b30290/html5/thumbnails/23.jpg)
Variants of software architectures
Software technique Area of application
Service orientation (possibly partly)
Manufacturing control level: CIM components, real time
systems
Object orientation (possibly supported by e.g. UML, MDA)
Monolithic enterprise level: middle management, divisions of an international enterprise, highly centralized organizations
Service orientation desirable, necessary
Global (world-wide) enterprise level: international
enterprises, state administration ...
Service-orientation necessary, B2B
World-wide business: some health network services, coalition of car vendors, e-business, etc
![Page 24: Service Orientation and the Quality Indicators for Software Services Jaroslav Kral, Michal Zemlicka Department of Software Engineering Faculty of Mathematics.](https://reader035.fdocuments.in/reader035/viewer/2022070412/56649e3f5503460f94b30290/html5/thumbnails/24.jpg)
Quality indicators
• Crucial quality indicators– p2p, peers – large black boxes, – User oriented interfaces– User services as peers– White boxes – services –message routers and
tranformers• Desirable properties, crucial for some systems
– Internet and web-services– XML
![Page 25: Service Orientation and the Quality Indicators for Software Services Jaroslav Kral, Michal Zemlicka Department of Software Engineering Faculty of Mathematics.](https://reader035.fdocuments.in/reader035/viewer/2022070412/56649e3f5503460f94b30290/html5/thumbnails/25.jpg)
Conclusions
Service orientation has the potential to convert software into a true hi-tech engineering product (no Warranty Disclaimer).
As a paradigm being new for the majority of software developers it must overcome thinking barriers and prejudicesces. It will be a long-term process.
Good practices, specification, modeling, and development tools must be developed yet. An example is the development starting from service interfaces
Service orientation implies changes in the education