GDPR Architects Executive Summary Architects Plans Testing

DevOps Editors
Introduction
The DevOps goal is to improve the communication and cooperation between the development and the infrastructure teams. Sadly, nothing is mention about the infrastructure needs for other departments' teams such as Sales, Marketing, Credit, Treasury, etc. These teams have web presence and run third party and customized software tools. Building Intelligent DevOps Editor with "Turn Key" features requires that we must have a good handle on all the details of running infrastructure team (provider) and their clients. To have "Turn Key" features, we must address the needs of our editor end-users. "Turn Key" features would reduce if not eliminate any or all the interfaces between the infrastructure team and their clients. We also need to leverage Virtualization in building virtual networks.

Our Intelligent DevOps Editor - "Turn Key" Software
Software tools are bought "as is" from vendors, build-in-house, outsourced to consultants or combination of buying, building and outsourcing. Most institutions such big banks or insurance companies are not in the business of building software, but they still have several development and testing departments. The same thing can be applied to infrastructure. Customization and support of these software tools may run into several issues such as cost, time and changing technologies. These institutions would be under the mercy of the needed support from their software vendors and consultants.

In-house tools have very high risks if they are not well designed, tested and documented. Therefore, our approach is to build a well designed, well tested and well documented software tools.

Our approach is to use Object Oriented Design with Virtualization to build our Intelligent DevOps Editor.

Object Oriented Design (OOD)
Object Oriented Design (OOD) can be used to build a virtual structured environment. It would be composed of manageable objects. Our OOD Virtual Model (see the link of Building Using OOD web Page) would make it easy to:

       • Structure and size
       • Build
       • Copy
       • Clone
       • Modify
       • Test
       • Inherit
       • Move around


Also such virtualization can be created as a running prototype, or we can build software programs as a model virtualizer similar to ones that are used in building airplanes, big buildings or high-rises. Such a program(s) can be created as a way to give estimates, be part of the planning as well as test other criteria without building anything. For more information on our virtual OOD approach see the following link:

       "http://crmdatafarm.com/BuildingUsing_OOPage.html"

Image #1 is a simple representation of how Virtual Servers and Virtual Servers Container can be implemented. Infrastructure teams can work with a software vendor to develop their own unique and customized software tool with GUI interfaces. This would be used to automate building Virtual Servers and Virtual Servers Containers.


Virtual Server and Container
Image # 1

Figure #1 gives a graphic representation of building Object Oriented Servers and Server Containers. The Application Server Container is a virtual object which has other virtual servers as virtual objects. An Application Server Container may have a virtual web server such as Tomcat, a firewall software as virtual server and virtual File Transfer Server such as FTP. The same thing can be applied to the Database Server Container with virtual FTP server, Oracle virtual server or any third party software running as a virtual server within the Database Server Container.

With such server virtualization, then automation and customization can be implemented. Such automation can produce an infinite number of virtual servers and containers. These virtual servers can be created, customized, installed, duplicated, cloned, deleted or cut/paste into and out of any network or virtual network.

The Concept of "Turn Key"
Turn Key of or involving the provision of a complete product or service that is ready for immediate use.

The goal of our Intelligent DevOps Editor is eliminate the communication and the cooperation issues between the Infrastructure team and their clients such as the development team. Our Editor provides a GUI interface for any team to create any server type and software installation for their infrastructure needs. They simply use an interactive-user-friendly GUI interface (see Image #2) to fill out all specification parameters. Our Editor parses their requests and runs a number of checks which include resource, security requirements, time of delivery and the team access and resource privileges. It may requires further questions, ID and permission privileges. It would grant the team's request with a un-shaded GUI "Build" button which would be clicked to start in real-time building of all their requested infrastructure servers and software. They would also be able to run a number build-in tests to insure their approval.

With the same GUI interface, teams can save, save as, delete, clone, inherit previous builds, and other options. Roll Back can be easy as build one of the previous saved version or setting.

The backend of our editor has a number of software components which would build in real-time all the infrastructure components and their tests.

A number of statistical software components run to help with updating and evaluating the editor performances.

Our Intelligent DevOps Editor
What is a software editor?
In general, an editor refers to any program capable of editing files. Good examples are image editors, such as Adobe Photoshop, and sound editors, such as Audacity or for text editor such as Microsoft Word or WordPerfect.

What is a DevOps Editor?
The best answer is to present a picture or image and Image #2 is our Editor's markup or prototype for audience to examine. The editor features are covered in the DevOps Editor GUI Interface section.

How can we build such an Intelligent DevOps Editor?
The key feature of our editor is Intelligence. Intelligence here is not Artificial Intelligence, but developing intelligence software. We communicate with gurus of development and infrastructure, and try to pick their brains. We build a number of processes and tasks mimicking these gurus handling and approaches. We rearrange these processes and tasks in order to be able to translated them to code and a running software. With the computer processing speed, thousands if not hundreds of thousands of processes and options can be performed on the input data in seconds. These processes add to intelligence of our editor.

The following are the steps and processes which would include the analysis, architect-design and development, testing and documenting of building our editor. It also includes running statistics for improving our editor and its performance:

       • Interview all the gurus of every business unit and pick their and turn their expertise into processes
       • Research other companies and competitors for building networks
       • Figure what the outside world is doing
       • Create a set of questions and answers that would be asked the end-users
       • Interview the end-users and figure out what is nice to have and have to have
       • Document best practice for build a virtual server
       • Research best automated virtual server builder software-tools in the market
       • Run a number of statistics to find out frequent settings built by each department
       • Build a number of default setting and values
       • Create a number of automated tests for each virtual server setting
       • Run a number of statistics to find most errors and how they would be handled
       • List all possible misc handling processes
       • List all possible exceptions and errors handling processes
       • Build a number of script, tests and templates which can be used in our build
       • Estimate the cost of building the editor
       • Brainstorm the editor with the team and management

The above steps and their output are our editor architect-design-development-testing specs. We would build the editor markup and prototype and test them with end-users feedback. A "Beta" version should be developed and tested with end-users feedback.

DevOps Editor GUI Interface
To make our Intelligent DevOps Editor concept easier to understand, we may need to present a picture. We are presenting a markup or a running prototype with a GUI interface for our audience to examine. Image #2 is our editor prototype and also a link to an HTLM page which would popup for our audience to play with and see our editor's features. For further clarification, we are presenting a summary of some of our editor' features or functionalities.

Intelligent DevOps Editor Prototype
Image # 2

Intelligence:
Check previous section which covers Intelligence: "How can we build such an Intelligent DevOps Editor?"

Input Data:
Our Editor's users would enter all the required data which would be stored into Java arrays and objects. Our Editor's backend processes would cross reference the data looking for errors, duplicate values, out of range values or any red flags. It would prompt the users for corrections and what is doable.

Check List:
Users can click the "Check List" button to make sure that all the required data are entered.

Test, Clone and Build:
Users have the option to test their input data and see if our editor can create a running target environment. They can "Save" or "Save as" the entered data and settings. They can import from other previously built environments. The difference between "Clone" and "Save as" is "Save as" saves the input data, and "Clone" on the other hand would save the running environment with all its updated settings and scripts. As for Build option, our editor would build the target environment for immediate use in real-time. Such running environment can be cloned as well a saved.

Default Settings:
Our Setting is not just a random settings, but we would be using the history of each department (development, credit, Sales, etc) infrastructure features, settings and issues. Project name and ID would identify which department is using our editor. Based on which department is using our editor, the default setting would be automatically loaded into the editors. Each department would have its unique default settings. The default setting will change as technologies, users demands and Changes Requests.

Documentation:
To us documentation is very critical to our running environments. Documentation can help in tracking and finding errors, issues and trends. It can also aid in building statistic which would be used to make our Intelligent editor more intelligent and dynamic. To automate documentation, we build two documentation sections:

       • Build-in Templates: which would be filled out by the users.
       • Free Hands: where users to give their own document and feedbacks.

Users' free hands would be periodically checked for how we can improve our editor.

Management:
Management is another critical part of running and managing these target environments. Again, we have two management sections:

       • Management Processes: which would help managers perform their expected tasks.
       • Free Hands: where managers give their own document and feedbacks.

Managers' free hands would be periodically checked for how we can improve our editor.

Online Help Doc and Recommended Settings:
Our Editor users can be anyone from any department. Users may or may not be network or web savvy, nor expected to experts on infrastructure requirement. Online Help Doc and Recommended Settings are the documentation of how to build the required environments with examples and the default settings. We would also provide tutorials and training for departments team members.

Target Environment Software Components and Environment Settings:
Users may use the default setting or change them to their needs. The documentation for the online help and setting are for users to utilize in figuring out their environment needs.

Testing:
Testing is very critical in building error free environments. There is auto testing and manual testing. Manual testing is an option for users to test their own unique scenarios. Our Editor would not allow any Building unless auto testing or manual testing are completed.

Our Intelligent Infrastructure Editors
What is already done - Our Intelligent Infrastructure Editors
We recommend that our viewers visit our CRM Data Farm site and checkout our Post Office Project's Intelligent Infrastructure Editors for Building, Migration and Testing Data Centers.

For Our Intelligent Infrastructure Editors see the following links on our CRM Data Farm site:

       http://crmdatafarm.com/
       http://crmdatafarm.com/OO_DataCenters.html
       http://crmdatafarm.com/BuildingUsing_OOPage.html
       http://crmdatafarm.com/MigrationUsing_OOPage.html
       http://crmdatafarm.com/TestingUsing_OOPage.html

Pros and Cons
Our ICM architect is not small project nor easy to implement. Our Intelligent DevOps Editor is a tough sell to any company.

Pros:

       • Makes ICM's goal of building intelligent data services a reality
       • Remedies the communication and cooperation
       • Can be used by other departments not just the development
       • Sets the stage for more intelligent and futuristic approaches
       • Helps in building data centers and reduces the cost of building and migration

Cons:
       • Needs a good grasps on subject matter
       • Needs dedicated teams of analysts, architects and developers
       • It will be a hard sell to management



       Facebook Facebook Facebook Facebook Facebook
About us Contact Site Map Support Privacy Terms All rights reserved