Showing posts with label Asynchronous. Show all posts
Showing posts with label Asynchronous. Show all posts

Monday, July 12, 2010

Asynchronous Process Management Success

One of the cornerstones of the People, Ideas & Objects “Technical Vision” is Asynchronous Process Management (APM). I have described this type of functionality as it relates to communications, as a phone call is synchronous, and a letter would be asynchronous. The letter provides the communicator time to interact more deeply and to contemplate the response more thoroughly. Applying this communications metaphor to Process Management is directly applicable.


In a recent post we discussed the scenario around the timing of the voting and implementation of a plan to increase natural gas production. Where the participants within a Joint Operating Committee were asked to vote on a prescribed course of action. The description in that post imputed the implementation of the plan would be immediate, during the virtual meeting. In the real world, there would need to be time for each participant to consider their decision. The ability for participants to take the time to think what their next action will be, and based on those actions, implement and complete the appropriate management of the earlier initiated process.

Technology has expanded significantly in the past ten years. Particularly with respect to having multiple threads and multiple cores of application processing. Simply defining when an applications process can be broken down into multiple steps is easily handled by the developer and today’s advanced compilers. The problem with this processing is that the timing of each operation is unpredictable and therefore the sequence of when the program will be completed is random. In the oil and gas situation where partners were voting on a proposal for further operations, those operations would not be able to be commenced until the voting was completed, or adequate votes in the affirmative were received.

Today, the software developer has tools that provide the ability to control the timing of dependent processing in the software. This opens the world of systems development to higher levels of performance, processing tasks in parallel shortens the processing time required, and allows for advanced Asynchronous Process Management such as the People, Ideas & Objects technical vision.

Society is put in peril when world oil production declines. There is evidence that the world's oil production has declined. Therefore the world needs to have the energy industry expand its production. To do so requires that we reorganize to enhance the division of labor and specialization within the industry. As has been proven, this reorganization could achieve far greater oil and gas production. Management of the industry is conflicted in expanding the output of the industry. The less they do, the higher the oil and gas prices and the better they appear to perform. This managerial conflict must be addressed and the performance of the industry unleashed. To do so requires the current management of the industry to fund People, Ideas & Objects and build the systems as defined in the Draft Specification. Please join me here.


Technorati Tags:

Sunday, May 17, 2009

More comments on the 36 hour work day.

Last year I noted the pace of development of this software's development was accelerated through what I called the 36 hour work day. A global application developed by the global oil and gas industry has the benefit of accessing more regions simultaneously. Earlier I wrote the following;

Lastly I want to add fuel to the fire of my adversaries by noting that the compression of time is something that will be implemented in this application. Instead of budgeting for four years, I think it can be done in two and half years to initial commercial release. (Maybe even less!). We are approaching a systems use that may start the day in Russia, China and India, move to the Middle East, Europe and then the United States. Users from these regions will be able to collaborate in an asynchronous manner. Hence providing for potentially a "day" of user driven development that totals 36 hours. 
The more that I have thought about this type of development, the more I have difficulty in recommending any other method. Software development has been, for at least a decade, a collaboration by individuals and groups that are scattered around the world. Many never meet, ever. Whether the development team is just outside the door to your office, or the other side of the globe. It makes no difference in the methods used to develop the applications. The Open Source model has proven time and again to be the superior means to develop software. 

Since I first wrote about this concept the main issue that I have focused on is the User / Developer interactions, and I have the following comments. The Draft, Preliminary, Detailed and Final Specifications aggregate the industries knowledge in the form of wiki's and globally accessible medium. Starting with the text of the Draft Specification, Users will build the detail, UML, diagrams, voice, picture and video mediums to express their understanding and needs of the system. As the Developers interact with the Users through these rich media, it matters not where the individuals, teams and groups are located. All will have the current understanding available to them, and more importantly the history of how these decisions, standards and specifications were determined. A rich, searchable environment that defines the key attributes of the innovative oil and gas systems necessary to support the innovative oil and gas producer. 

And it won't stop there. The code that is developed based on the Users specifications is accessible by the Developers and Users of the systems. This is done for a number of reasons, firstly to ensure that the systems are doing what is expected of them. The days of attaining assurance of the software vendors code accuracy and consistency. Assurance being attained by the size of the software developers balance sheet and cash balance I expect is over. These assurances don't provide any value in comparison to the variety and volume of eyeballs that can and will access the code the applications are derived from. Reading the code that makes up the application is reviewing the facts. Facts that Oracle and SAP don't provide for, I wonder why that is?

Tuesday, January 20, 2009

The Parallel Revolution

A YouTube video in which the presenter suggests that parallelism is the biggest computer science issue of the past 50 years. Whether that is true or not is a subject of much debate. Parallel processing has been around for almost 15 years and has been a bit of disappointment. A disappointment when we consider what is possible if parallelism could solve the problems the presenter is referring to.

The problem comes down to the speed at which the processor can do a job. The operating systems are not necessarily able to manage the priorities all of the traffic coming in for processing. When the process, particularly a business process, needs to be manage in a defined sequence over time, and particularly based on interactions by the user. There is no way in which to ensure that the sequence is taken in the proper sequence. 

This affects us in People, Ideas & Objects because we have chosen to make Asynchronous Process Management one of the four cornerstones of our Technical Vision. When we consider how the Joint Interest Billing process is completed between several companies represented in the Joint Operating Committee, we see the value in solving this problem and enabling this technology. 

The operating and capital costs of a well, facility or plant is distributed to the working interest owners on a monthly basis. In the Partnership Accounting Module of the People, Ideas & Objects application we introduce a number of new variables to make the process more effective in defining and distributing the costs incurred by all of the partners. The ability to identify and apply these new costs, on top of the innovative way it handles all costs, revenues and royalties, needs the Parallelism being discussed in this video. Various people within the firm are measuring and capturing these costs for distribution. This firm may be scattered across many geographical regions and time zones. The ability to have the process managed in sequence may take several weeks of moving from desk to desk in the paper chasing world. In the virtual world it can and needs to move much quicker. Some times things happen that have the necessary dependents not fully complete, and that would be necessary in terms of mitigating the time of all the associated processes. However, there is also a need to ensure that the process is not over-ridding previously made decisions and data in the system. The process needs to be parked if a critical aspect is needed before processing. 

Once this process is completed within the firm, it is then necessary to follow a similar process for the firms in the Joint Operating Committee. When you consider the number of costs, properties and firms within the industry you can see the complexity of this process needs to be handled in the appropriate sequence. 

Where are we in terms of resolving this problem. I would suggest we are very close to having the means at our disposal of defining the software to follow the process in this Asynchronous manner. Steve Jobs of Apple has claimed that he has solved this problem and will release the capability in the next version of their Operating System, named Snow Leopard. Java makes the management of the process possible, but a bit cumbersome. Future changes are with this idea in mind and will achieve resolution of this critical area at some point in the very near future. Making the People, Ideas & Objects application modules able to make the possibilities real, please join me here

Technorati Tags:

Wednesday, May 30, 2007

Adam Smith meets SMP

The title of this post will take you to an article that provides an interesting perspective on some of the actions that are occurring in the technology field. As I have discussed before, one of the theories that Adam Smith was responsible for was Division of Labor. Back in the 1700's Smith proved through re-organization of a pin factory that dividing the tasks amongst the employees produced significant externalities. (240 fold increase.) These externalities are the benefits associated with all economic growth. If you have economic growth it is fair to assume that someone has made an effective and further division of labor. Externalities are the benefits that produce financial returns above and beyond their costs. This theory of course has been proven many times.

The author of this article argues that the development of multi-core processors or Symmetric Multi-Processors is the further division of labor that will bring about externalities for future economic growth. Duh, well of course, but why didn't I think of that? Intel is currently selling quad-core multiprocessors. Sun Microsystem are shipping 32 core processors and are believed to be in the area of 128 core processors in their next chip. Intel claims to be able to provide future iterations that have a logarithmic volume of cores and hence performance.

The other piece of technology that makes Adam Smith so relevant today is part of the Technical Vision that I have developed here. That technology is Asynchronous Process Management or APM and it is a critical (for me) technology of the Java Programming Environment. Recall that processes are either synchronous, like a conversation or telephone call, or asynchronous like an email or letter. Asynchronous processes provide the user with the opportunity to consider their response at a time and a place that is optimal in terms of convenience and availability. To put a half completed Asynchronous process in a restful state, until such time as the user has responded is something that is inherently part of Java. For an oil and gas user think of the joint venture billing process as it travels through the various companies affected. How much of this processing can be asynchronous, and how much of the operational time of the joint venture billing process can be reduced? 90 days?

These technologies in the hands of the right developers will enable the producer to increase the division of labor. And as mentioned, have the operational time reduced in doing so. And receive the externalities that Adam Smith discovered at the pin factory. The producer's being the net benefactors of this division of labor and the user's being highly productive with minimal interruptions.

Technorati Tags: , , , ,