Thursday, December 19, 2013

what exactly business strategy is about

The first and important point of this post is:

“Every business needs a strategy in order to succeed!”

Does it sound obvious? Yes, I think to most of us… but there are still businesses operating without a realistic or sustainable strategy. Or they operate with a flawed strategy.

Sometimes the business strategy is reduced just to one piece of a complex puzzle. For example to Branding.

The right and clear strategy helps the companies to take the business where it should develop, and makes it possible to evaluate along the way, so changes can be made if needed.

So what I understand by “Business Strategy”?
I am considering a Business Strategy in three categories, what makes it easier to me:
  1. Formulation
  2. Implementation
  3. Evaluation

It does not make sense to jump into strategy in the middle; it has to be put together piece by piece.

Formulation is the first stage of Business Strategy. Sitting down and reviewing things about the current business and the development made so far. After I know the current situation, I can start to create the plans where I would like to be, and how long it will take me to get there.
At the end of this stage there is a plan for the company to achieve these stated goals.

After the first phase and with existing plan or strategy we can start with the Implementation of our strategy. We have to set aside money for the plan, choose people to be in charge of the plan, and decide exactly how to put the plan into place.

Often are also new training and organizing necessary, and the integration into the already existing processes of company.

Evaluation, is something executed on an ongoing basis throughout the duration of the particular strategy put into place. Depending on how well the plan is working, and is it bringing business closer to your stated goals, the things need to be modified in order to work better. The environment can change during this time, so that a further readjustment of the plan is necessary.

Tuesday, December 10, 2013

Scale Up Your Company

I think it is more than clear and obvious - unavoidable: In order to grow your company it has to change what it's doing now.

Every change means taking risks, but some changes are more risky than others. In situation you have a new product you would like to place in the market.

So you need to create a new message which will get your prospective customers to do something you want. Sort of campaign.

The business owner has to invest into the new message and for getting it out there before it could be known if it will have the desired impact. That is a huge risk right? At least I thought so...

But this is not entirely true.

You can limit your investment and don't pay for a full campaign before you know if it will be really successful.

How should it be possible?

Just split your campain process to three process steps:

-> pilot -> perfect -> scaling-up

This technique can be used for developing new products or services.

Pilot them by testing the concept and then the prototype with a few potential customers. Use their feedback as a retrospective to modify and evaluate your original idea.

After roll out it locally. In case of any unforeseen problems, you can perfect the new product/service by either shipping them back or getting support people out to customers relatively quickly and inexpensively.

Scale up by going for a national or international launch only after managing the risks by taking the first 2 steps.

And why am I writing about it? Because I have to face again and again situations where “pilot, perfect and scale up” process should have been used and wasn’t.

Tuesday, December 3, 2013

Continuous Delivery - software-architectural topics

In my last post about Continuous Delivery was the focus on the delivery process. However in this post we will concentrate on the software and the necessary architectural requirements.

So the central question is, how to deliver new functionality as a software many times during a day without adverse effects. How is it possible that companies like Facebook despite major projects with hundreds of developers can manage this?

The first step in the praxis should be the system redesign from a monolithic application towards to split into small pieces (functions, components).
The components are separated and the communication is possible just via a clear API, like for example REST.

The second step would be the redesign of the underlying database
Encapsulating the access logic in an interface promotes a service oriented design. A distinction is made between an Application Database, belonging to one application, and Integration Database, shared by different applications and systems.

Avoid Server-side Session State
If short-time information are stored in a local cache of the server then we are talking about Server-side Session State and as such there are the particular instance fails the session is gone. For example during a deployment of new software version to this server instance.
Stateless services enable  a downtime-free deployments.

Keep backward Compatibility
This point is not so easy and it is very complicated to guaranty the compatibility after each modification of the system. Actually this means that the new functionality is co-exists with the old one.

Design for Failure
No system has got 100 percent availability. More important for the enduser is the impact of not functioning component. If one specific function fails, it should not cause the failure of the whole system. 
This is very crucial for continuous delivery concept, otherwise the risk of failure and its impact would be enormous.

Schema-less Database
Changes on the structure of database or its migration are in most of the time very complicated and risky.  The clear advantage is coming with NoSQL databases, or with migration running inside of the application and not in separated database migration scripts. Such scripts last too long and the migration would be not possible in the real-time.

Overall, the goal should be to reach the "Shared-Nothing" Architecture.  This architecture is defined through no direct references between two or many systems which enables a horizontal scalability and release deployment without down-time.


Friday, November 29, 2013

Stop time travelling

I like to read web content in various languages, from different sources, to get inspired by creative authors around the world with a new idea for every day.

Some of you maybe know the blogger, angel investor and best-selling business book author James Altucher?

Thursday, November 28, 2013

Continuous Delivery - process and requirements

The timely implementation and delivery are essential when it comes to achieving the real customer satisfaction in the software segment. The existing release models have proved in practice to be too inflexible and cannot meet these new requirements. The concept of Continuous Delivery should help to solve this problem.

Continuous Delivery begins where continuous integration stops. Now the software will not only continuously built and tested, but also delivered.
The idea of the faster software delivery has been originated by internet companies. There is the biggest pressure of course.

For platforms like Facebook, Etsy und Flickr is the Continuous Delivery the way how they work day by day, or better "hour by hour".

There are two very important requirements for establishing of Continuous Delivery.
As first a modern agile development process like Scrum is necessary. The close cooperation and bigger responsibility of every team member are the key reasons.
As second the Continuous Delivery Process builds upon an established Continuous Integration process.

The implementation of this concept requires radical re-thinking of the developers.
The focus in Continuous Integration is on the developers, however in Contionous Delivery the focus is on the customers, or the users.

Between a successful build and the availability for the customer is unfortunately a release.

The new standard is based on an technical abstraction called  Deployment Pipeline. The Deployment Pipeline defines so called stages with a different number of action in each stage.

The Build-Artifacts may be created just once! (see the yellow arrow in diagram)
It is very important to be sure, in each environment is the same binary on testing. I could tell you so many examples from the praxis, where this simple rule has been ignored and causes a lot of problems and errors in deployment process.

The created artifacts are stored in a repository and will be forwarded (installed) on each environment from this ("single") repository.

Often is the installation in the productive environment triggered manually, so called "sign-off".

Agile Manifesto:
"Our highest priority is to satisfy the customer through early and continuous delivery of valuable software."

In this post are described the agile development process, automation and the requests connected with the organization.

But also the software product has to comply with certain requirements in respect of Continuous Delivery Standard. But about this in one of my next posts on this blog.

Wednesday, November 20, 2013

Discrete Event Simulation - identity and state

In this post I would like to address some aspects of reactive programming before we can get a deeper insight in this topic.

On of problematic areas of maximal approach of concurrency are functions and stateful objects. The world is normally described as a set of objects, some of which have state that changes over the course of time.
An object has a state if its behavior is influenced by its history.

Second interesting area is the Identity of an object and its change. The new problem of deciding whether two expressions are “the same”.
This property is usually called referential transparency specifying what is meant by “thesame”
Objects x and y are operationally equivalent if no possible test can distinguish between them.

So it is not so difficult to proof the difference of two objects, however it is not so easy to offer an infinite variety of solutions to prove otherwise.

As example we can use The Discrete Event Simulation interactive programing we could describe using “Digital Circuits”

Let’s start with a small description language for digital circuits.
A digital circuit is composed of wires and of functional components.
Wires transport signals that are transformed by components.
Usually We represent signals using Boolean true and false.

The base components (gates) are:
  • The Inverter - whose output is the inverse of its input.
  • The AND Gate -  whose output is the conjunction of its inputs.
  • The OR Gate -, whose output is the disjunction of its inputs.

Other components can be constructed by combining these base components.
The components have a reaction time (or delay), i.e. their outputs don’t change immediately after a change to their inputs

All we have left to do now is to implement the Simulation trait.
The idea is to keep in every instance of the Simulation trait an agenda of actions to perform.
The agenda is a list of (simulated) events .
Each event consists of an action and the time when it must be produced.
The agenda list is sorted in such a way that the actions to be performed.  First are in the beginning.

State and assignments make our mental model of computation more complicated.
In particular, we lose referential transparency.
On the other hand, assignments allow us to formulate certain programs in an elegant way.

Example: Discrete Event Simulation.
  • Here, a system is represented by a mutable list of actions.
  • The effect of actions, when they’re called, change the state of objects and can also install other actions to be executed in the future.

Monday, November 18, 2013

Splunk - the swiss army knife of big data

What is it?

Splunk Inc. is a vendor of a solution to monitor, search, analyze, visualize and act on massive streams of real-time and historical machine data.

The solution is widely in use by more than 4,800 enterprises in over 85 countries. The added value of the usage Splunk software is to gain operational intelligence that informs business and customer understanding, improves service and up-time, reduces cost and mitigates cyber-security risk.

Enterprises’ IT systems and infrastructure contain websites, applications, servers, networks, sensors, mobile devices and similar - All of them generate massive amounts of machine data.

The machine data can be turned into valuable insights with help of Splunk.

Sunday, November 17, 2013

Mixed conclusion after BITKOM event “Trendkongress 2013”

This week at 13.11. took place , theTrendkongress 2013 of the German IT and telecommunications industry BITKOM in Berlin. More than 800 guests attended the event .

The chosen location was wonderfully fitted to the entire atmosphere . Two main issues I have identified for me personally - start-ups and innovation in Germany.

Thursday, November 14, 2013

Low interest rates and the risks involved

Since the last financial crisis , there is only one strategy of central banks - low interest rates. In Europe, however , the Governing Council must make monetary policy for the entire euro area , not just for individual countries.

As the current economic situation it is different in the countries of the Euro - Fed is anything but boring.

Monday, November 11, 2013

We talk about the day after tomorrow

On November 13, 2013 in Berlin the BITKOM Trendkongress will be held under the motto "create.innovate.grow", a fascinating conference all about the future of the digital economy. Global players and start-ups, politics and economics talk about the trends of tomorrow.

I am very happy to have the opportunity to participate at the conference this year. It gives me the opportunity to talk with interesting people, I always wanted to meet personally, about the current trends and various aspects for future business developments.

In addition to high-profile keynote speakers, I am looking forward to a program of interactive workshops and a marketplace with innovative technologies and products.

By broadcasting the live stream of a video-conference, people who cannot attend the conference can watch the proceedings over the Web.

My posts and messages during the conference can be followed closely via twitter @lumirb and #BTK2013

Sunday, November 10, 2013

Duties of a CEO

As probably everybody knows, the term CEO means Chief Executive Officer. One of the C-level positions in the senior management team of a company.

But what actually is the main function of a CEO? From my point of view there are these three main duties:

I. Develop  a common Vision
II. Create and embody the company Culture.
III. Intercept Entropy.

Wednesday, November 6, 2013

What is Reactive Programming?

In the recent years the application requirements have changed dramatically. For the system integration based on cloud computing technologies, the change is more then obvious.

A few years ago a large application was built by tens of servers, used gigabytes of data, the response time was counted in seconds and the offline maintenance has been accepted.

Available technologies in cloud computing area have changed the rules. Applications are running cross the platforms from mobile devices to cloud-based clusters. We are talking about thousands of servers, using petabytes of data, with expected response times in milliseconds without any downtime.

A new system architectures have evolved to let developers conceptualize and build applications and frameworks that satisfy today’s demands - Reactive Applications.

Wednesday, May 22, 2013

Eindeutiger Trend zu Cloud Based Integration (CBI)

B2B-Kommunikation, mit seiner ursprünglichen Form von EDI-Nachrichten, ist die älteste und leider die am wenigsten flexible Form der Integration zwischen Systemen und verschiedenen Unternehmen. Viele Unternehmen betreiben B2B-Gateways im klassischen Lizenzmodell ("On-Premise") oder im Rahmen von abgeschlossenen Managed-Service-Verträgen für "ihre eigene B2B-Hub Instanz."

Und wie ist dieser Einsatz zu bewerten in Hinblick auf die zukünftige Marktentwicklung?

Tuesday, May 7, 2013

Threaded vs. Evented Concurency

In the time of cloud computing the question raises at our company about the exposed well-defined backend services. In the current architecture, the services spend most of their time calling other services and waiting on I/O. In the common praxis most server technologies rely on a thread pool to handle I/O. In the business integration area we are confronted with very high traffic environments and processes.

Typical usage of the thread pools can be hard to manage. Big thread pools cause a lot of overhead and small thread pools may get exhausted if there is a spike in latency or traffic.

There are two general approaches –Threaded and Evented

Monday, April 29, 2013

Smart Data – Know thyselves!

The term “Big Data” we can find everywhere - in technical literature, different discussions and marketing prospects. But what does it really means for private user, public sector and companies?

Big Data remembers on the new technology for which the problems have to be found.

Wednesday, April 24, 2013

The Great Gold Crash

In the face of the current single day fall in the gold prices I have to ask a question after the sense of all this...
For no apparent reason the gold prices have plunged more than $100 an ounce in a day?!

Actually I compared the basic principles of the financial, derivatives, futures markets and stocks with the rules of casino games. But after the current events and developments in gold prices I am not sure, if there are any "rules".
During my MBA study I have learned a lot about the principle of arbitrage and the dynamic of the market that should guaranty the fair prices on the markets.

So the questions are:
"What is the "real" and "fair" gold price?"
"And why the gold prices crashed now?"

Wednesday, February 27, 2013

The future of Cloud-Based Services

What are the advantages of cloud-based services, especially in the global business?
What are the coming innovative scenarios and key issues?

© 2013 proaxia consulting 

Monday, February 25, 2013

Hiring a product manager

Source: via Lumir on Pinterest

Without product management the organization would get along fine, at least for a while. On the other hand without engineers, sales people or designers nothing would get built, sold and the product would look like crap.

BUT in the long run a great product management usually makes the difference between winning and losing products and companies. Product management is a sort of mixture of engineering, design, marketing, sales, business development and much more.

Wednesday, February 20, 2013

Feedback Cycles important for Product Development

Actually already at new born babies we can see the passion for feedback cycles. The baby get bored very fast, if there is no feedback on its action. With an action it causes an effect and if there is no feedback loop then it is not interesting anymore…

The same behavior we can see also at our customers when they evaluate a product. The feedback loops play a critical role in the decision phase and distinguish between successful and unsuccessful products (services).

Wednesday, February 13, 2013

In the long run we are all dead

I think, it is the most known Keynes‘s statement. He wrote this in his in 1923 in his work “Tract on Monetary Reform
The whole quote would sond „Now, in the long run this is probably true… But this long run is a misleading guide to current affairs. In the long run we are all dead”

Keynes was complaining about the “classical” economics, that is, the ideas of the economists before him who believed that the market, if unhampered after a recession, could reduce or eliminate the unemployment associated with the business cycle.

Monday, February 11, 2013

Building up marketing capabilities

Our company is currently dealing with design and development of self-service platform based on cloud-based services. The technical background of this new platform is clear and the first milestones have been achieved…

But the essential question is how to communicate widely the benefits of this online platform to the potential customers. Therefore, and in order to take the next step of negotiating with interested clients, a successful marketing strategy has to be developed.

“In my opinion everybody in the organization is a member of the marketing department.”

How services live forever in the Cloud

The self-service cluster-based service (CBS) is becoming more and more popular. For the CBSs vendors it is therefore all the more important to have a comprehensive reliable concept that, in addition to preventive protection measures, also contains methods for back-up and disaster recovery.

In this post I would like to concentrate on one aspect of the cloud-based infrastructure – cluster management.

Cluster management addresses the complexity of handling a dynamic, large-scale system with many servers. Such systems must handle software and hardware failures, setup tasks such as bootstrapping data, and operational issues such as data placement, load balancing, planned upgrades, and cluster expansion.