分享
 
 
 

[原创]组件库管理系统的构成(英文)

王朝other·作者佚名  2006-01-10
窄屏简体版  字體: |||超大  

Component Library Management System IntroductionIndex

Component Library Management System Introduction. 1

1. Objective. 2

2. What is component library Management System.. 2

3. Architecture of Component Library Management System.. 3

3.1 Process. 4

3.2 Component Search Engine. 5

4. Summary. 5

Reference. 5

1. ObjectiveNowadays, we are not effective to reuse the existing codes to develop in the new projects. The most projects cause delay because this and that reason. If we can reuse the existing codes in the implement phase, we could reduce the coding defects, short the developing time and testing time and even short the internal design time.

In fact, most new projects can be built by the components from the old projects. But the components scatter the world sites. On most condition it is longer time to find an expected component among the components sea than the developer codes himself. But the new component exist more defects and risks than the certificated component. The worse condition is that the developer even doesn't know where he can search expected components. The most common components functions are saved in brains of the senior engineers but not in the hard disk.

In this article my objective is not to explain why we should reuse the components and how to make a component but to support how to manage a component library and how to make everyone recognize that he/she can retrieval expected components effectively in the component library and make everyone become a component provider of component library.

2. What is component library Management SystemApplication

Component 1

Component 2

C1.1

C1.2

Graphic 2.1 Components

Before I explain my component library management system, I have to explain a little what is component that I mean. The component is a reusable unit that can complete one function and an independent unit. The instance of component is not only codes, e.g. COM, Java Bean, but also reusable documents, graphics, design patterns and even frameworks. One component can contain other components. Two components can communicate each other. And every component has interfaces to Application.

In the component library one component instance include below sections:

Component modelComponent source codeComponent binary filesHelp documentsDevelopment documents. Unfortunately almost we cannot get all of them. We get more, more reusable the component is.

Component library is responsible to describe component, save it and provide the search method so that the component can be found quickly:

Description: as input section the description of component is complicated. It includes function, interface, method, property, national language, program language, platform, usage, quality level, restriction, performance, author, created info, public license and so on. It must be sure that each information is correct or the reuser cannot gain the expected component. So it is not just to force the component provider provide all information. The description function should have automation to get most information from component instance. Storage: components come from different projects, different providers with much different forms every day. The storage function should be strong enough to manage the thousands components. The storage function could save the component binary files, source code files, help files, document and description of the components. Retrieval: as output section the retrieval function is responsible to search components quickly and correctly. The retrieval function can be called search engine that provides different type of search method. We can imagine that when a reuser want to find a component that completes neuron network algorithm, he/she would like input “neuron network algorithm” in the function search. Of course it is not only. The reuser then chooses software environment “windows 2000” and chooses program language “C++”. It is clear now that the function searching is important and it should be a full-text searching engine like google. But to reduce the misunderstanding with reuser, the function searching should permit reuser to restriction the scope to window 2000 operation system and C++ language. Such searching can be a simple select sentence in the database. The found component should show reuser its interface, method, property, help, document and other info like author so that reuser can use it correctly and can contact author for help.

Are these three functions all of component library? Of course not. The reality proved the component library organized only three functions cannot be used popularly. The busy developers always forget inputting their components in component library. Even when they remember to do it, they would like inputting all of their components because it cost so much time. Why costs so much time for other people to reuse? The component library without components cannot be called a library. Otherwise the quality of component cannot be assurance.

So the component library should include other functions to solve above problems. Component Library Management System (I call it CLMS) is not one product or one independent product. CLMS is an integration development and management system. It integrates IDE, Model, Component Library and other powerful development tools. From application design phase to service in, CLMS exists everywhere.

3. Architecture of Component Library Management SystemThe architecture of CLMS is not independent; it depends on IDE like WSAD, Visual Studio, or

Delphi, model tools like rational rose, source code version control like CVS or VSS, storage database like DB2, Domino Notes, and component development process management like MS project 2000. The modules of CLMS itself contain component input/output module, component search index module, component search engineer, component storage module, component version control, component integration tool.

3.1 Process In fact, in most case component reuser is also a component provider. In one project when the plan is finished in a project, the design phase begins. According to the user requirement developer abstracts business component model and common component model using model tools, e.g. rational rose. The component model is searched in the CLMS by the search engine to match the similar existed component model. If existed, CLMS will return the component instance. The developer will take a short time to prove if the retrieval component is expected. If not exist, CLMS will save the component model and documents under document version control, it will also prepare for saving the future components source code and other sections. The components that retrieval may be not one expected component, but they are able to compose into one component that complete one function. At this case, component integration tool helps developer to produce component. In the internal phase, the developer begins to find business components and common components. When developer finish design phase, the coding phase begins. The developer has already known if the expected components exist in CLMS. In the coding phase, the developer as a component provider saves the component in CLMS when he/she finish it. Because the trace begins from the design phase, the most information of component has been known by CLMS and what the developer to do is just to push one button to submit the component source code and binary files to the CLMS. Just as the source code version control, In CLMS, component version should also be controlled. The following content will describe how to search component.

3.2 Component Search Engine

Component search engine is the core of CLMS. It enables to search components by providing properties, function sentence or even model graphic. The quantity of searching objects is huge and the content of searching is complicated. So it is necessary to use some algorithm to complete it.

There are three algorithms I would like to adopt to build engine. The first one is faceted classification to classify the component information that would reduce the scope of the full text searching. The second one is clustering analysis algorithm that complete the full text searching and build index for CLMS. The last one is self-organized mapping neural network algorithms that can also complete the full text searching and build index. How to combine these algorithm to search component have described in my paper [1] and my graduate thesis [2].

4. SummaryFor using CLMS to improve efficiency and reduce cost, we must remember reuse definition and we reuse anytime. CLMS follows developer every time in development project. The objective of CLMS is to make components saving and searching simple and easy and be shared for all of developers. To do it, CLMS cannot be an isolated product but a set of tools for developer using. CLMS may not only one in one company, but CLMSes should be able to communicate each other. CLMS should be an international tool without area boundary. All of developers should know and use CLMS. Whatever project managers or programmers should have authority to use, create components in the CLMS. Or it loses its meaning to exist.

2. What is component library Management SystemApplication

Component 1

Component 2

C1.1

C1.2

Graphic 2.1 Components

Before I explain my component library management system, I have to explain a little what is component that I mean. The component is a reusable unit that can complete one function and an independent unit. The instance of component is not only codes, e.g. COM, Java Bean, but also reusable documents, graphics, design patterns and even frameworks. One component can contain other components. Two components can communicate each other. And every component has interfaces to Application.

In the component library one component instance include below sections:

Component modelComponent source codeComponent binary filesHelp documentsDevelopment documents. Unfortunately almost we cannot get all of them. We get more, more reusable the component is.

Component library is responsible to describe component, save it and provide the search method so that the component can be found quickly:

Description: as input section the description of component is complicated. It includes function, interface, method, property, national language, program language, platform, usage, quality level, restriction, performance, author, created info, public license and so on. It must be sure that each information is correct or the reuser cannot gain the expected component. So it is not just to force the component provider provide all information. The description function should have automation to get most information from component instance. Storage: components come from different projects, different providers with much different forms every day. The storage function should be strong enough to manage the thousands components. The storage function could save the component binary files, source code files, help files, document and description of the components. Retrieval: as output section the retrieval function is responsible to search components quickly and correctly. The retrieval function can be called search engine that provides different type of search method. We can imagine that when a reuser want to find a component that completes neuron network algorithm, he/she would like input “neuron network algorithm” in the function search. Of course it is not only. The reuser then chooses software environment “windows 2000” and chooses program language “C++”. It is clear now that the function searching is important and it should be a full-text searching engine like google. But to reduce the misunderstanding with reuser, the function searching should permit reuser to restriction the scope to window 2000 operation system and C++ language. Such searching can be a simple select sentence in the database. The found component should show reuser its interface, method, property, help, document and other info like author so that reuser can use it correctly and can contact author for help.

Are these three functions all of component library? Of course not. The reality proved the component library organized only three functions cannot be used popularly. The busy developers always forget inputting their components in component library. Even when they remember to do it, they would like inputting all of their components because it cost so much time. Why costs so much time for other people to reuse? The component library without components cannot be called a library. Otherwise the quality of component cannot be assurance.

So the component library should include other functions to solve above problems. Component Library Management System (I call it CLMS) is not one product or one independent product. CLMS is an integration development and management system. It integrates IDE, Model, Component Library and other powerful development tools. From application design phase to service in, CLMS exists everywhere.

3. Architecture of Component Library Management SystemThe architecture of CLMS is not independent; it depends on IDE like WSAD, Visual Studio, or

Delphi, model tools like rational rose, source code version control like CVS or VSS, storage database like DB2, Domino Notes, and component development process management like MS project 2000. The modules of CLMS itself contain component input/output module, component search index module, component search engineer, component storage module, component version control, component integration tool.

3.1 Process In fact, in most case component reuser is also a component provider. In one project when the plan is finished in a project, the design phase begins. According to the user requirement developer abstracts business component model and common component model using model tools, e.g. rational rose. The component model is searched in the CLMS by the search engine to match the similar existed component model. If existed, CLMS will return the component instance. The developer will take a short time to prove if the retrieval component is expected. If not exist, CLMS will save the component model and documents under document version control, it will also prepare for saving the future components source code and other sections. The components that retrieval may be not one expected component, but they are able to compose into one component that complete one function. At this case, component integration tool helps developer to produce component. In the internal phase, the developer begins to find business components and common components. When developer finish design phase, the coding phase begins. The developer has already known if the expected components exist in CLMS. In the coding phase, the developer as a component provider saves the component in CLMS when he/she finish it. Because the trace begins from the design phase, the most information of component has been known by CLMS and what the developer to do is just to push one button to submit the component source code and binary files to the CLMS. Just as the source code version control, In CLMS, component version should also be controlled. The following content will describe how to search component.

3.2 Component Search Engine

Component search engine is the core of CLMS. It enables to search components by providing properties, function sentence or even model graphic. The quantity of searching objects is huge and the content of searching is complicated. So it is necessary to use some algorithm to complete it.

There are three algorithms I would like to adopt to build engine. The first one is faceted classification to classify the component information that would reduce the scope of the full text searching. The second one is clustering analysis algorithm that complete the full text searching and build index for CLMS. The last one is self-organized mapping neural network algorithms that can also complete the full text searching and build index. How to combine these algorithm to search component have described in my paper [1] and my graduate thesis [2].

4. SummaryFor using CLMS to improve efficiency and reduce cost, we must remember reuse definition and we reuse anytime. CLMS follows developer every time in development project. The objective of CLMS is to make components saving and searching simple and easy and be shared for all of developers. To do it, CLMS cannot be an isolated product but a set of tools for developer using. CLMS may not only one in one company, but CLMSes should be able to communicate each other. CLMS should be an international tool without area boundary. All of developers should know and use CLMS. Whatever project managers or programmers should have authority to use, create components in the CLMS. Or it loses its meaning to exist.

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有