I just completed a 2 day class in Agile Development aimed at Product Managers.  While I have a good understanding of the concepts and practices of Agile Development, it is always a good idea to validate what you know (or think you know).  Also it helps to understand how others are using the processe and what issues and concerns they have.

What surprised me was that some people look to the Agile Development methodology as the 'cure all' or panacea for their devleopment woes.  No development methodology can make a disfunctional organization functional.

Cloud Hype and Reality

| | Comments (0) | TrackBacks (0) |

Cloud computing is "in" - and actually with the latest price change from Amazon it is becoming a bit more real.

I signed up with Amazon, installed the Java tools, created my own image, changed it via Windows Remote Desktop, saved that image and re-started that image - in half a day.  Far easier than I thought - just another half day to install database, application, etc.  As they have nice Java interfaces for the operations, I think that the entire process can be automated (or you could use the Management Console).

Realistically, the Amazon Elastic Compute Cloud (EC2) is just an alternative to dedicated hosting - but rather than paying for 24h/day, you pay just for the time you have your instance up.  You still need to maintain the operating system, application, configure firewalls, implement a back-up strategy - the tasks which are included in a Software-As-A-Service (SAAS) model.  Main benefit is that you can select from quite a few starting points, Amazon Machine Images (AMIs) - from several free Linux O/S as well as Windows or commercial vendors (Oracle, RedHat, IBM, JBoss, Compiere, ...) combining convenience and license payment.

We will be using it for our automated build with one instance and one instance per configuration for regression and load testing and are "burning" currently max 2 hours per day for the 3 configurations (4 planned).  As these tasks are not essential, delays and non-availability is not an issue.  As these are test instances, we just load the image, run it and remove it - no need to save as we are starting the tests always from a clean install. 
As you know, persistency is "a bit" of an issue as you need to create a new AMI for any change to your configuration.  If the instance crashes, you are back to the last saved image - only S3 storage is persistent.  For 24/7 production use, you must solve external database backup and recovery.  You might want also to save certain log files externally.

Agile ERP Development

| | Comments (0) | TrackBacks (0) |

When exposed to the German education system, you'll pick up the importance of methodology and planning.  In the Business Administration classes, we learned how important it is to do your strategic planning (10+ years) and operational (2+ years).  OK, in the late 70s the world turned a bit slower.  So when introduced to the presessors of RUP (Rational Unified Process), a heavy top-down, big-bang approach seemed very sensible.  Well, it worked (somehow) and I thought I just have to improve my planning skills and spend days with Rational Rose trying to get the full round-trip to work.

When starting Compiere in 1999, I know I had to do something else.  Especially with Open Source, the traditional Big Bang approaches did not seem to work.  So, I thought, I have to start "without a methodology".  After a while, we managed to publish stable daily releases and incorporated feedback very quickly.  Initially users and customers were concerned about using the daily releases in production, but our track record was persuasive. So, it became standard procedure to use a daily build in production, especially if an important bug fix /improvement was made available.

One day, a friend told me that "our agile approach" was working nicely.  I was surprised that what we did had a name - so looked it up and was astonished to find the pricipals I was living actually written down. Happy to have found a name for what I was practicing for quite a while, I signed the Agile Manifesto in early 2002  

Agile ERP Implementatation

| | Comments (1) | TrackBacks (0) |

For some time the 'buzz' in development is Agile (aka Extreme) development.  Its basic concept is that this method of development promotes project management processes that encourage frequent inspection and adaptation, a leadership philosophy that encourages team work, a set of engineering best practices that allow for rapid delivery of high-quality software, and a business approach that aligns development with customer needs and company goals.  What is these same concepts and ideals were applied to the implementation process for an ERP application?

Would this work for all ERP applications?  Frankly, No.  The application would need to be flexible and allow the user to make changes to the basic set up parameters at any time.  How else can you make adapations? 
By its design, Compiere is ideal for using this methodology for implementation.

One challenge when creating an application or an extension to an application is making it easy for a new user to use and for existing users to learn new tasks.  Compiere's Application Dictionary is a powerful tool as it is the engine that dynamically creates your user interface. 

The functionality available in the Application Dictionary allows you to create these types of applications with very little additional effort. The main features are found in Elements, Context, Table and Column and Window, Tab and Field.

Find recent content on the main index or look in the archives to find all content.