assembled with other components through its interfaces
[4].
Fig. 3 shows a program built with components. Utili-
ties of program are provided by client1 and client2.
Client1 connects to component1 through interface1 to get
service; client2 connects to component2 through inter-
face2_2 to get service. Component2 also provides service
for component1 through its interface2_1.
Because a software component is a self-contained
computer code and it just communicates with out-side
objects through its interfaces. So, when using a compo-
nent, we have no need to know how it operates in-side
and actually, we can not know this if the component is
from a third-party. This stands for the ease to use and the
high security of software component.
If customers use a component-based program, they
will have a chance of upgrading or updating the program
by themselves by replacing existing components with
new components but the same interfaces. This work does
not affect operation of the other components. By this
way, we can also do for our software products. This
stands for the openness and the reuse of the programs
which are constructed from components.
A software component also is self-deployable comput-
er code. It can be installed and executed independently of
other components. So, when providing service for other
objects, it plays a role of server and the objects using its
service are clients. In Fig. 3, component1 is server of
client1 and it is a client of component2. Component2 is
server of client2 and component1. With the good support
of .NET platform, components can execute as servers in
different computers, they can easily interact remotely to
each other [2]. The program consisting of components
running in different computers is called distributed appli-
cation. This kind of program is used for giving solution
for distributed (complex) systems. This also stands for
the openness of component-oriented software.
All characteristics: easy use, high security, openness,
reuse, conquering complexity make component-oriented
programming better than other programming techniques
before it (structured programming, object-oriented pro-
gramming,…).
4. DESIGN PATTERNS
Design patterns were concerned first in [8] for object-
oriented programming and the original implementations
were presented in C++ and Smalltalk. As the useful of
them, there are many new patterns which are applied to
other programming techniques such as component-
oriented programming and implemented into many other
programming languages [9] such as: Visual Basic, C#,
Java, etc. A design pattern is defined in “a generalized
solution to a commonly occurring problem” [3].
Design patterns are found by experienced developers.
They used to face the problems which are similar to each
other many times. The solution for the problems is gen-
eralized and formalized to create a design pattern. Thus,
design patterns are experiences in software engineering.
If we find suitable design patterns for our architecture,
they can help us a stable architecture and short time in
design.
5. COMPONENT-ORIENTED ARCHITECTURE
FOR SCADA SOFTWARE
The benefits of component-oriented programming de-
scribed in section 3 give us the motivation of designing
component-oriented architecture for SCADA system to
overcome the limits of existing SCADA systems. A real-
time design pattern can be applied to make the architec-
ture to be stable and more suitable with distributed real-
time systems. The “component-based architecture” pat-
- 上一篇:PID控制器仿真英文文献和中文翻译
- 下一篇:模具制造加工英文文献和中文翻译
-
-
-
-
-
-
-
浅析中国古代宗法制度
巴金《激流三部曲》高觉新的悲剧命运
g-C3N4光催化剂的制备和光催化性能研究
江苏省某高中学生体质现状的调查研究
中国传统元素在游戏角色...
现代简约美式风格在室内家装中的运用
上市公司股权结构对经营绩效的影响研究
C++最短路径算法研究和程序设计
NFC协议物理层的软件实现+文献综述
高警觉工作人群的元情绪...