Http://www.microsoft.com/china/msdn/library/archives/technic/develop/explant.asp
Transplant existing information systems to component chemical architecture
Dave Stearns, Program Manager
Visual Basic discussion group
Introduction
Logic multi-layer architecture and physical distributed architecture
Procedure for logic multi-layer architecture entity distributed architecture transplantation
Logical Design Entity Design Next: Component Sharing
The possibility of obtaining reuse is a general source is a scrap consolidated a list of available components list ownership version control management plan vertices: all components development
Component directory subordinate tracking all related views
Introduction A three or multi-layer information system architecture is that it can focus on some "information" processing work, on the other hand, for most information technology experts, it is also understanding and understanding this A good opportunity for new technology potential. However, the staff of information technology often leave some of the fact that some of the facts in their live information system products, such as the concept of "component", or continuing under the hunching pressure in most products This is also the case, even if they know (these systems), as the extension of the use period has already had problems. This report will discuss this topic and will provide some practical recommendations, not just to make existing systems, multi-layer structure; on the other hand, how to develop concepts Conversion of some information technology to a new program development realm of "components". The logical multi-layer architecture and entity distributed architecture must first understand the difference between the logical multilayer architecture and the entity distributed architecture before starting discussion. Understanding the logical multi-layer architecture and an entity distributed system will help to illustrate the pathway of the transplanted existing system, sustainable system enhancement, and this does not produce a lifetime learning process. The design of a logical multi-layer architecture is a logical multi-layer architecture is to work according to logic, which can be divided into three unique service areas: User Services, Business Services, and Data Services. This regional separation method allows developers to introduce abstract elastic layers between databases and user programs. Each layer is responsible for different working tasks, when combining them together, it will become a condensation, partner system, and have elastic, rugged, and growing expansion. "Data Service" is mainly responsible for the configuration and normality of the data. Below we are typically described in the database, the data service needs to include all storage procedures, including basic data access, such as a customer's search component, etc. The work processed by the data service is more general, such as: maintaining the normality of data, restoring, and maintaining data intact consistency, not in the data actually executing any particular transaction rules. In addition, "Business Services" can be responsible for establishing business rules. They "repair and maintain data integrity" in the data service, but they have added a function of actually implementing application business rules. The typical business service example components include: tax calculations, which use useful business data, such as customer, product, order, or authorized contract, etc., and use business functions such as faxes and phones. Although "Business Services" is invisible, because they can be independent of business rules, the business rules can be often updated frequently. These "Business Services" can make the user's work content data, or when doing computing and other applications, it can fully utilize business rules. "User Services" in the information system is visible. These services are displayed to the user and allow the user to operate the data, and can link together with the business service through business rules to confirm and generate the required data. Model of "User Services" is, for example, the message displayed on the form, control, graphics, and screen. The benefits of these services are well known, because they are not in the range of this report, and more about the multi-layer design advantages are not described here. For more information on multi-layer design advantages, see the file set in Visual Basic 4.0 to 6.0 Enterprise Edition, where The application example ﹞ on the establishment of the client and the server is recorded. In this system of reactive business, the above functional feet can bring more maintenanceability, hierarchical, and growth. These levels are basically distinguished by logic, and those services will be classified by those when actually operated.
It must be noted that the concept can be posted in the "specific layered" design where all services that can be performed here can be stored. That is, this approach allows sharing and reuse of all components design technology. It is an attractive advantage in system development component. This advantage means that you will no longer need to go deep into the world, The benefits of multi-layer design can be obtained. Entity Distributed Architecture When a system is logically divided into several layers, it will be differentiated by components. Components are an OLE project that provides a collection of OLE automation interfaces that allow any OLE automation user application reuse. This component is compiled in binary format, and the parcel package is applied, and finally uses components to present user interfaces. Components can be shared for many clients, allowing reuse, and can be developed in any computer language that supports OLE automation servers. Components The following is generated in three ways on the client: internal process server, external process server, or remote server. "Internal Process Server" is dynamic linking DLL ﹞, and uses the same process and location space in the client application. "External Process Server" is in the client application, using different processes and location spaces. "Remote Server" is executed on a fully separated machine, and the CPU and system resources of other machines are performed when executed. Each of the above options has its excellent disadvantages, and each component in the system can select different distributed modules. The Internal Process Server is between the client and the server side, the ideal high efficiency reuse component mode. They can be quickly loaded, and since the same location space is occupied, the speed is faster when it is passed to the client application or transmits data from the client application. It is naturally due to their same for the client's application, and they must be on the same machine, but the update components have potential difficulties. Built internal process services in Visual Basic must also perform client programs in the same thread, but in this way, they cannot synchronize the client program code. If internal process services are created in Visual C , you can generate multiple threads such as background. "External Process Server" is a component concept that requires applications that require clients in the threads, or threads. Although these servers will reduce the loading speed, transmitted from one address space to another when transmitting data between the client and the server, will delay. However, external process automation servers still feasibility because the external process server can easily use the components to be used like an independent application. And they are executed in its own thread, which is a thread that is different from the client application. At this time, the external process server can use the timer to match the background or can perform asynchronous work. "Remote Server" is also feasible because they are executed in different processes different from client applications, and remote servers can also perform client applications on a completely different machine. This is a very powerful feature, just as it allows you to download from many functions of powerful servers from a wide range of functions, especially the Internet in a wide area network or an Internet. The object that calls or executes the "Remote Server" is the slowest in the above three methods, and the data transfer and function calls are also the slowest in the three. However, when the function is executed in the remote machine, the client's CPU will be able to release system resources to allow other work. Fortunately, Visual Basic's class modules are completely independent. But they will be confused and will allow you to waste time to learn which of the most suitable systems, usually we need to try repeatedly and move classes between internal processes, external processes, and remote servers.
There is a good news that the client program and server-side program do not need to be contacted when moving classes between entity distributed modules. In fact, client applications do not have to be used at any time, even when the developer can move, move the component from the external process server to the remote server, and vice versa. This configuration can set this condition independently, and its purpose is to make it easier to transplant existing systems into a multi-layer architecture.
The steps of transplantation are as described above. In the real world, the Information Technology team continues to drive, maintains and enhances existing systems, but they also learned to extend their service life, depending on how to transplant these systems to a multi-layer architecture or It is a system based on distributed components. In the next section, some practical recommendations will be discussed, and there is a detailed discussion on how to develop existing systems towards multi-layer architecture, but do not have to completely disassemble the current projects. Logical design is first to do "logical design system" when preparing a three-level architecture. However, for those methodologists may feel pain and deepen, but this is the basic steps to establish a component base system. The logical design is made based on the theory of methodologists, may be helpful, but it does not need a strict process, and you don't need to do too much service or consideration to these processes. There is a relationship between the entity of the component and the final configuration of the component. This project is to confirm the actual entity in the system and understand how they interact between them. The entity is usually part of a heavy work because it has the ability to process the recent implementation, and can confirm which transactions are related. The aforementioned technique exceeds the scope of this article, the next section will provide some suggestions, so that you know how to build first, and how to spend a little time to make your system components. Keep in mind that the logical system is growing and will update and improve with the development of the system. It is not like a project team to design a perfect design in the first time, and even if there are some cases, it still maintains its perfection. The logical design must continue and gradually increase. As the system is generally, the incidence of transplantation will be more slower after the system components. Where to start, once you have determined that there are multiple users, you should decide which "Business Service" and "Data Services" in the system should be built first. However, for many systems, this is an actual problem. When the system is fully turned into components, the entire project is not possible to stand at any time. However, for VB / OLE server technology, you can increase the degree of system components, and you can move some components from it to the event allowed. The first step is to establish a low-level component in the system. From this, it is understood that the so-called "low-level assembly" refers to a component that is used throughout the system and provides an operating system expandability. As your data access component, login service, send message, and network services, there are also components such as telephone integration services and status management services, which are not limited to your project because they can be used throughout the system. Most systems have the same low-level requirements. Of course, for other items, the functions of these components are also very attractive. For example, a component allows your application to write to NT event logs, and may be used by other applications. Relatively, when you begin to remove other components in an existing system, these components will require a low-level service, especially before forming the high-level assembly, must have the presence of low-level components. Next steps To build these services, they will be pair in the client application, and a separate address space is available, or a different machine on the entity is helpful. Examples of these services include: credit card verification, fax program long-term operation, and report line generation programs. The OLE server can be in the same process in the client application, or in a separate process, or in actually separated; when the internal process server in the CPU performs very fast and easy operation, they will be in the same The application is called in the thread. The external process server will call the application at a slower rate, but they can be performed on their respective address space and execution, such as: Allow background work, memory protection, etc. In addition, in a remote example, the operation can also be assigned to two CPUs.
Using component chemical services, it can complete long-term operations (such as reporting line generation procedures), or in external process servers and remote servers, special hardware support (such as credit card verification, fax, etc.) can be improved. The overall performance of the system is permitted when the background program is executed or executed on another machine, allowing the application to continue. Like this complex asynchronous process, it will be great in the long-term calculation. When these two components are started, a component will be able to gradually convert the existing information system into a component-based three-layer architecture system in a circular period of many projects. The original application is disassembled or rewritten, but there is a lot of cost, but developing a component or when two project loops are used, can be recovered by the system. However, if you try to completeize an existing system is quite dangerous, and will cause the user's anxiety to fail, and may cause errors due to the lack of experience in the project team. Relatively, if there is a gradually evolved process, this team will gradually obtain experience, and in a timely manner, the reinforcing part is added to the system, and this steady-stable way is our proposed method. Entity Design When you have "determined which services need to be established", your team must focus on "components' entity design". Use this basic unit in VB to establish a server with a class module. Each class module defines a template (template) for the new object of the client application, or you can create the same object in other class modules. This class defines a collection of properties and methods. Of course, each class should also maintain its own properties when executed, but it can be implemented using a method of sharing. In VB, class modules are fully stand-alone, even a DLL file or an exe file on a remote machine, which can be performed as placed on the client. As a developer, you can choose to store these classes in any way, not only the class module can, but even some client programs need to modify changes or specialization for specific development work. When a existing system is transplanted into a three-tier architecture, it must not only make all object components (exe and dll), but they can be placed in the main time when developing modules for their own services. In executing the program or the DLL, even separated the exe even in the execution, if the system is required, then put it back in the main inward program. This portability presents the independence of the program code and the entity configuration, as this is the basic principle of distributed systems. Some actual recommendations will be discussed in the next section, discuss how to create classes in VB, and how to distribute them into components. Each system has its needs, can be done by experience, will consider all aspects of the problem when designing class and components. The creation of classes and components is composed of one or more components in each of your systems. An object class is defined by a set of properties and methods, and these elements are combined to define an interface. The interface of this class is very important and is a contract with a class with an outside world. Design a good interface, a must-have skill for the class, and it is an art from a certain point of view. Design a good interface, you must forget the internal operation, imagine that you are a user in the Microsoft application interface, this way is called user-defined, what we think is user-defined, or wizard, will help us use those classes to solve the problem. Or let the user clearly know how to operate. By defining these user-defined, general requirements can be defined, and the classes that can be determined to make them intuitive and easy to use.
If you write a sample program from a user-defined angle, you will find various tips in the design interface, such as what is the basic component that is lost in your interface, or the possibility that you need your definition assistance method, To make your operating interface more affinity. You have to help you design the user interface with user views, not to be considered by easy design classes. Let the class collection more natural, or you can easily use the general user interface you defined, these goals are worth effort. There are two elements in your user interface properties and methods. In the OLE server, attributes are operated in a small "method", as we know, attribute get / set programs), in Visual Basic, if a data member is a public member, VB will actually generating class program example, a developer with similar attributes declared in the class program: Private m_sFirstName As StringProperty Get FirstName () As StringFirstName = m_sFirstNameEnd PropertyProperty Let FirstName (sNewValue As String) If IsValidName (sNewValue) Thenm_sFirstName = sNewValueElseErr.Raise vbObjectError 1, _ "myserver.customer", _snewvalue & "is not a valid name!" End IFEND Property then uses properties in the client program code, as shown below: DIM Cust As New CustomerCust.FirstName = "Dave" text1.text = Cust.FirstName When the client program code gives the firstName a new value, the VB program code is executed, allowing you to check the validity of the value or do any required action. This feature gives you the best two data members, which directly exposes client program code, but in the client program code, it shows out if they operate together with a class of data. When the allowed program code is executed, the data you have assigned is valid, or it is delayed until you need to take out the data. The property program is also a very convenient tool for operational read-only properties or only write properties. For example, suppose you want to create a customer object, you want only one customer ID attribute in the database system, but will not allow anyone to change this property. Based on the way, you must define a get attribute process, but do not include the list property process. The program looks a bit similar to the following programs: private m_nid as longproperty get id () as longid = m_nidnd property's is read-only! Client can refer to the following program code: Dim Cust As New CustomerCust. ID = 5Visual Basic will automatically know that this is not a Let property process, or when the client wants to compile or in the program, they will receive an error message. Because attributes can be operated by way, naturally there is a problem, that is when using methods, when do you use properties? There is no hard and fast rule, but in general, attribute is the status information of an object now, but the method is used to present an object.
Retroprove to VBX's era, developers use various event properties because VBX controls do not have the method properties, and many VBX developers are also in which this is also a cause. This clarity example represents the method, and now with the OCX and OLE servers, there should be no reason to operate attributes. However, like background colors, foreground colors, layout forms, and arrangements are a good example of a property control, because they represent the status of the control, and put them in the control, which is not implied. In the OLE server, there are some very good attribute examples: phone numbers, user names, passwords, and versions. Each of this shows the central concept of an object, which will remain in two ways, when an action is executed in the object, setting these properties will not imply. In order to increase the distinguishing property and method, the developer also needs to calculate the parameter incoming method, the OLE server can define the selectable or how much parameters of each method, and the item that can be selected can be stored several lines. Client program. Please refer to the following example: DIM conn as new connectionconn.username = "Dave" conn.password = "letmein" conn.server = "sqlserver" ConnNect () can generate one for user names, passwords, and servers Clear interface, but it requires more program code, so that you can reach common situations (connect a database). Use the selected parameters, the same program code can be decomposed into: DIM CONN AS New ConnectionConn.connect ("SQLServer", "Dave", "Letmein") This interface can define different content to the user name, password, and server name, but Client developers can create a connection method in parameter information. If the OLE server performs an external process that connects the client, or even across the machine, the second program code example will be able to execute more quickly, and each content setting will be transferred from the client to the server, which will result in four two-way transmission. Not a two-way transmission in the second example. Once you have created content and methods in the class, they will be able to check in the Visual Basic object browser. The object browser will find all the categories in accordance with your current project, and any class will refer to the VB's reference dialog. This will make your server almost automatically archive, and if your own methods and content are not self-definition, VB allows you to define a short description string in each of the contents and methods in each class. By filling in this information, you can help others use your own category, and this short description string will be compiled into your own class and compile them into your own server, which allows users to use them, but not to file Or indicate that the file will be lost or unaffected. To define a string for your content and method, start an object browser, then select your own project in the Link Library / Project dialog box and select your own class in the Category / Module list box. The method / content list box will display all available methods and content in the class. Once any item is selected, the prototype or content of the method will display a short description string with the button. To define these short description strings, you can select the Options ... button and fill in the narrative form. In addition to this short description string, you can also define a documentation and description text ID, if you need to fill out other information.
When you click the "?" Button on the lower left corner of the dialog, the object browser can use this information to start WinHelp. Note The Object Browser lists the acquisition and allowable methods of different contents for the current item, and the "[Sub]" or "[Function]" volume label in the method is last added. Once you use the OLE server EXE or DLL, the client using this class will be able to see each content, and this method will not appear on the end. A class's content form has three parts, it must be set for each class. This content name can be set to any new name. This name will be added to the entire domain name, and you can use "DIM X AS NET Name>". If you want to display in the current EXE or DLL, the public content should be set to TRUE. If this class is only used for components, the content should be set to false. This example content will be implemented in the release option, we will discuss this in the next paragraph. Before the release of the component, the Visual Basic module is placed separately, and your publishing model service can be completely separated from logic and interface design. The allocation model does not change since the client or server source changes so that you can adjust your operating system after it is expanded, and it will be adjusted when a database begins to generate. The following describes what the controversy can be used as the component to be determined, what is the best option to be constructed first for the components. Once a class is created, it can remind the client project, or move it to an internal process Automatic Management Server (DLL), an external process Auto Server (EXE) or a remote auto server (located on other machines). The type of components will often dominate the types you choose and the strength and weakness of each option. The internal process server is the fastest during execution and can naturally work like your application. They are small and can be easily activated, and when they perform them at the same time, the speed of exchange data between the client and the server will be very fast and valid. Start by two service integrated development environment, the first type, generally usually used the most application of all applications, which is preferred to internal process servers. There are two examples here, when the server is required to execute the thread from the client and have another processing space, or when the server can execute a separate application, there is an external process server in the client machine. necessary. If your service can't meet these needs, it should have a built-in internal process server. However, it is very important to get a new benefit of an external process server. When they activate slowly, large scale and client applications have slower data exchange speeds, they provide non-synchronization possible, which can be done in the background or parallel. The exchange of services is only a small part in the amount of data, but performing a lengthy job should not stop the client's application in the current work, which is a good way for an external process server. For example, if you have established a FTP file transfer queue service, it will be able to create an external process server to copy files on a remote machine on an Internet in the background. The client application can call a method in the server called getFile, transmit the name of the remote machine, the name of the remote file, the file name used by the machine machine. The server will be added to its queue requirements by the client application and processed in another thread to allow for the file to continue working when the file is transmitted in their local machine. If you select a service to an external process server and add a function to the machine of different entities on the client, execute server program code in a different CPU, allowing maximum amount of parallelism, and perhaps Specifies the hardware mode of the server.
For VB4, remote automation is a new feature, and OLE automation is also an exciting progress. When it has more complex settings than an external process, the source code code will still be as accurate, and one server can move back and forth in the machine without reconstructing the server or client. The service is beneficial to the designated hardware, the service longer or complex work will not be in trouble, the client machine will be another nice choice for the remote server. For example, a service that generates a large number of reports in the Excel spreadsheet form, or a service that sent faxes in the fax machine to send faxes, should be uninstalled by the client machine, the work directory exceeds the work queue execution work. plenty of time. Using a remote server can also allow you to focus on hardware's specified ways, such as one or more server-side fax machines or modems exclude the hardware required to each client machine. When an external process or a remote server is created, you can also have the ability to specify the type of each class. If all specific class instances are executed in one processing space and a thread, or if each class should be performed in the process space in the thread it own, it can easily determine the real type. Obviously, there are benefits for reducing costs for each option. Creating procedures and threads require time, and will consume memory, once the instance of each class will be executed independently together, and allow parallel to process, especially when the machine has multiple CPUs. When using instances and processors, there may be many variations on the entity type, which can be described in the Detail of the White Paper Remote Automation in Rick Hargrove and the planned distribution applications in Visual Basic 4.0. Once an automation server is created, you can use them on the client's application, and when they are class files in the project, create a reference in the new server in the new server in the reference dialog. The quote list will be registered in the automation server of the operating system, and it will be automatically registered when you create your own automation server in VB. You can use a simple check box to check if your server name has the name location of all server objects, and allow you to build objects, just as: Define customer set custom = New Customer's reference variables in Visual Basic's reference variables are important. In VB 3.0, all declarations are "Object", but in VB4.0, you should declare these variables in a specific form, such as "Customer". When "Cust" variable declares this type "Customer", VB will automatically read the type programs in the server, syntax check method, and use ownership to call the object in the client program code, and call it to the server virtual role. In the case, the implementation method and ownership access can achieve the fastest effect.
The next stage: shared components transplant one application to the three-layer structure, and the first phase is to create an enterprise-wide information operating system according to the component. Establish components that can be used multiple times, which contains the goals of users, business and data services, so you can access these components throughout your organization, reuse inter-operating system, which is a data settings that take into account business rules. However, in the next step of this process, some components in the unfixable project will be shared. In view of the transplantation is a three-tier structure of a three-tier structure, the shared component will make more project management techniques. Each information technology group is committed to obtaining an event for component reuse. In this article, some of the disciplines will be provided, as well as the actual advice to process when you start reusing components in your project. The possibility of reuse despite most developers say that reuse program and components are a good thing, but actually repeatedly re-written functions. And although most project managers realize that the development of reusable components will help reduce the development time required for future projects, but ridiculous is often the final closure, still choosing to tell developers to stop "development". The only way to achieve real reuse and component development is to create a "reuse" culture in an organization's work. The information technology group is such a common culture, it is a low-key methodology. If there is no 50 necessary descriptions and project recovery, it is no chaos, but the program code generated by the developer needs more. Some concerns can be reused. Obviously, in the end of reuse this culture, it is not only required to break the balance, and the method of these project structures is also changed. Developing a reusable component is just like developing a small product, the component should be developed, tested, corrected, and publishing phases, if needed, there should be a document with a document or even localization. Product customers are other reused applications, as in most products, once new versions are released, the component should be upgraded at any time. Due to this reason, it often needs to establish a project team to completely focus on the development of reusable components in a business solution. The general source is scrapbook when reused components, from current to use the binary DLL or EXE, or by a development department across the project inter-item scrap program code can be beneficial. For reuse, scrapbooking seems to be a wayproof method, and at the beginning, it can help reuse cultural builds. However, for a long time, the clipboard code will not generate an information operating system that relies on components, such as the upgrade will make the component that will not automatically inherit the application of the scrap resource. If a development department can reuse components in binary levels, corrections and upgrades, this will have direct benefits for applications, although it has no effect on the establishment between applications and components. This correlation will produce plan issues discussed below, but if managed, there will be better partnerships between sectors. What is the next step? When you decide the binary form of the shared component, what is the next step? It is another component that needs to be reused in another development department. When you create an automated server on the Visual Basic, the built-in library built into the component will contain a list of all classes in the component, and all the contents and methods of these classes. If you use an object browser to add a short description string, browse with your own class, an overview of the display, which is also a way to help potential users. This is very helpful for most users, and many new projects have a reusable component. Visual Basic also allows you to explain the files with components and describe the contents of each category identification flag (ID), method, and components.
If the instruction file appears on the user's machine, they can open these classes using the object browser and learn more about the details of the class and how to use. Many tools also make the production documentation is very easy, allowing the component group to provide a very rich file. Metrophic files are created as RTF files, and component components can provide online instructions and files printed by the same file source. A good reusable component should include a simple text file, a file list, a file list, a personal or alias that can be linked to more information, creating the language used by this project (if localized) and Related information required for any group of business facilities components. A component may have a long usage, its durability far exceeds its creator's estimate, it must have other groups of recreation to obtain information. Please remember that the components should be regarded as a small product, and the components should be included in the software products purchased. Ownership of ownership component concept is very critical, especially the number of creation of components and reuse in development of other projects. If a development department cannot access the source code and reuse a binary component, they must have a clear owner, and once they encounter bugs, problems, or when they need to enhance the components. For this reason, it makes it difficult to develop components in general project sectors, even make the department of the development component will not exist in the future, or in other projects, it is too complicated. The establishment of the component team can clearly own components and treat them as small products. When trying to use components or encounter problems, they can provide the help from the development department. If there is no clear ownership, the component will never reuse in the binary form, which cannot be sure that once they encounter the damage to the component, it can get the wrong repair, or have new features in the future. Version Control When a component team receives a bug report, or when the team adds new features to the component, the version control problem will appear. Using version control, it does not associate the source code version control (of course it is still important), but is associated with component version control, this is a more difficult problem. Once you have created an interface on the component, you can't change the content or feature of the interface, and you will not prevent the application to use the old version of the assembly. Visual Basic provides a feature to help you solve this problem, you can activate this feature by setting the "Compatible OLE server" in the Project Options dialog box. Developers should set the version content of the closest server to the file name and complete it. Visual Basic will warn developers if you try to change the class interface, which will destroy existing applications. The components created using Visual Basic will automatically mark the version number of the third part of the third part. This number can set the Make EXE or Make Ole DLL dialog box by selecting the "Options" button: the first part of the version number is version of the "Major". This section marks the changes in the components every primary update release version. What constitutes a major distribution version? A new major release should include meaningful concepts, the new component should be incompatible with the old version of the client, and the binary file of the component name should also be changed. Binary is not enough is that the old version of the client application needs to recompile for new components, which means that one or more or more methods on one or more classes changes. In Microsoft Add a suffix indicating the main version number in our DLL file, such as VBRUN300.DLL. When the main version is changed, the file name is also changed, for example VB40032.dll. Among them, "32" is used to identify a 32-bit DLL that is changed from 16-bit version, but it does not need when it is only 32 bits. The second part version is the secondary version number. The subtrial version is used to indicate a subtle function to the component, but do not need to recompile the existing client.
If a new method is added to the interface, or a series of error corrections and re-released, the version number will increase. The new component secondary version should be compatible with the old client binary, which means that a new version of the component can be re-released and can be used to overwrite the existing version. However, many developers also contain secondary version numbers in the file name of the component, just like the main versions, so that users can have different applications at the same time. The third part of the version number is the revision number. This version of the number is increasing in each created component, and each revised component (as long as it is not changed), it should be compatible with other version binary. This means that component version 1. 0 1 should be replaced by component version 1. 0 2, without recompiling client applications. When selected "Compatible OLE server", Visual Basic will ensure that the component is binary, and will issue a warning when you try to destroy it. If you choose to break the binary compatibility, you should update the primary version number and change the component file name. To automatically increase the school booking number, you can select the "Auto Increment" checkbox in the dialog when you choose to create an EXE or DLL. The management plan once you start sharing components, the planned problem will be generated quickly. When a development team rely on other team components, the client project plan will be attached to the component plan, which will of course cause risk. Due to this reason, component project managers can never underestimate this issue, and how many components can be delivered for a certain period of time. Commitment to too much will lead to the latency of the client application plan, and will result in many other splits that are attached to the component plan. More and more components are created for reusable, and the dependence between components and applications have become larger. Every planned manager has a very central and core role and should not be underestimated. This is another example of a team and project administrator to focus on an example of a reliable component team, and some must play a role in coordinating each component in each client plan. When a client project is not possible to complete a component in a planned time, a work plan is important at this time when it is exceeded by the role or field of the component. In these conditions, in addition to making the work of each aspect, the functionality of the component must be clearly positioned with the client, and in these cases, the client development department may need to do some additional work, even It may be included in the work that will be returned to the component later.
Vertex: Development of all components A reuse component culture will be established. Once implemented, organizations can enter all components development phases, new features need to be placed in the application and share with other projects . A perceived awareness, the transfer of the focus will not occur, it may take several years to create components, as well as the concept of mainstream reuse. If the team is trying to grow in this direction, there will be some disputes such as large-scale component development. We will make a short discussion on the following part. Directory components are always coming to any organization, so they have lost knowledge about reusable components. If an organization can try to encourage component reuse, they must be the concentration points of these component directories, allowing developers to find components suitable for them, so that developers do not need to write the same new files as existing components. Component management applications, including Visual Basic Enterprise, provides a solution for a directory component problem. Component administrators maintain a component database (whether this unit or the SQL Server shared) and allows a manager to classify different classes of components. Developers can quickly determine the components they are interested in using the component manager filtering capabilities and choose to install these components on their computer. Component Manager allows developers to view all classes and events, each method, and content in special components. Using component manager, developers can also see a list of associated files or components. When the developer chooses to install the component, these files also copied the same component to the developer's machine, all instructions, Word documents, profiles, or any kind of files can be automatically installed together to each Table client computer. In these hundreds of possible components, searching, classification, and screening are very important. Through the component manager, a manager can define the types of each class in each library and can interact with components of each medium class in the library. For example, the BooksaleServer component can be associated with the "Basic Concepts" and "Data Access" values, which is located in the "Sample Type" class, just as "Jet / DAO" is in the "Technology" class. Once these associations have been established, developers can use classes to filter the components they want to find. Developers can also perform organized search by entering, in the "NEXT SEARCH" form. The subordinate tracking is except for these components, but also needs to track the components. When sharing some components, the component sector should continue to track their clients to know what is existing. However, when the component production and reuse increases, and when the project uses the central directory search available component, the ability to manually track the dependence in the component is almost impossible. When a component adds a feature, it needs to know what application is associated with it, so you can retrore these new components and publish these components to them. In general, these organizations will use a compatible operating system so that you can continue to track the dependence of these components. Visual Basic does not have any tools currently available to access these relationships, but there are many third parties with a compatible solution, and many organizations can also write their own solutions. In many cases, certain tools can be used to track the dependence between components.