BLOG

NEXT STEPS

Posts Tagged ‘Apache OFBiz’

OfBiz Invoice Processing Workflow Explained

Monday, July 18th, 2011

OfBiz-Invoice-Accounting

In this issue we’ll discuss Invoice statuses and the Invoice processing workflow supported in the Apache Ofbiz Accounting application. Like other business documents/objects in Ofbiz, Invoices are an important part of the broader Ofbiz system, and changes to its status have direct impact on General Ledger (GL), billing accounts, payments and other accounting functions. Of all statuses, the ‘Ready’ and ‘Paid’ status are unique in that they trigger GL transactions.

As you read this article please keep one very important thing in mind about Ofbiz, it’s designed and built to be fully customizable. Like most other workflows in Ofbiz, OOTB workflow for Invoice processing is very flexible and should be easy to use for most enterprises. If your business uses different statuses (and processing workflow), don’t worry, customizing workflow is very easy.

Now coming back to the Invoice status.

In-Processes: When an Invoice is created it’s always in ‘In-Process’ status. A user can add/edit invoice items and update other invoice attributes like billing party or due date, without impacting any other part of system. This is comparable to a ‘Work-In-Progress’ or ‘Draft’ status you might have used in other workflows.

Approved: Move an Invoice to ‘Approved’ status when you are done preparing (discuss and review), and the Invoice is ready to be finalized. Once in ‘Approved’ status an Invoice cannot be edited. In the event you need to make any updates to an Invoice, it needs to be moved to the ‘In-Processes’ status.

Sent: There’s little flexibility after an invoice is sent. An Invoice can be moved to ‘Sent’ status from ‘In-Processes’ or ‘Approved’ status. Given the flexibility, use of this status in Invoice processing workflow is open for interpretation. It can be used to support the “Sent for Approval” or “Sent to Customer” step in workflow. An Invoice in ‘In-Process’ status can be moved to “Sent” status to support the “Sent for Approval” step in workflow. Alternatively, we can Approve the invoice and then move it to ‘Sent’ status, marking it as “Sent to Customer.”

Ready: An Approved invoice can be moved to Ready status and is a very important step in workflow. Moving an Invoice into Ready status triggers the process of posting the Invoice to GL. What happens on the GL side of the system is governed by Organizations Accounting Preferences and the GL setup.

Paid: Somewhere between creating an Invoice and moving it into ready status, an organization may receive payment (for AR invoices) or send payment (for AP invoices). Once Payment is received (or sent) and applied to the Invoice, and the total amount of payment applications covers the Invoice grand total, the Invoice can then to be moved into Paid status. Moving the Invoice to Paid status triggers GL transactions. A valid status change after the Ready status is ‘Paid’, ‘Write Off’ or ‘Cancel’.

Write Off: If an accounting manager sets the invoice status as ‘Write Off’, then the Invoice becomes non-collectible in the system.

Canceled: An Invoice in ‘Ready’ status can canceled. Any Invoice cancellation event triggers the reversal of the related GL transaction entries and the Payment application, though the Invoice will remain in the system as non-editable.

- Anil

Anil Patel is Chief Development Officer at HotWax Media as well as an OFBiz project committer, PMC member, and active community contributor. He also studies karate! Anil will join other HotWax Media employees and advisors in periodically posting thoughts here related to OFBiz, eCommerce, ERP, and related topics.

Verified Agile Workflows and Processes

Monday, October 4th, 2010

October 4, 2010

verified agile workflow management system

Now that we’ve gone through the process of explaining the differences between standard Agile development methodologies and our custom workflow management system called Verified Agile, let’s dig into the different steps that we go through in order to be successful in this environment.

To kick off a project’s first iteration, we dig in on the requirements and create a number of Epics that encompass the entire set of information in contained in the requirements documentation.  If you are not familiar with an Epic it is simply a high level story used for capturing requirements that are often too complex or too large to estimate right away and will need to be detailed and broken down for estimation, planning and eventually implementation.  Once the first Epic is fully fleshed out, and the stories are defined, estimated and prioritized, we can start the process of planning and working through the stories in the next iteration.

As a side note, we do not try to get all Epics defined in one batch – that’s a bit too much like a waterfall process – it’s as iterative as the rest of the process and results in being able to put a working end to end system in front of the customer as early as possible.

As the stories are derived from the Epics and are ready for scheduling in the current iteration, we break down our stories into subtasks that can be easily assigned to different members of the team.  The Verified Agile process has the following steps once you’ve reached the scheduled story level:

    1. Analysis
    2. Acceptance Test Creation
    3. Design
    4. Development
    5. Technical Review
    6. Business Review
    7. Client Review

The steps take you through the process of understanding the story and ensuring that each and every base is covered.  Here is a bit more information on each of the subtask types:

Analysis:

This is an optional step that is there to bridge the gap that sometime exists between the story creation and the ability to build the acceptance test.  If the Epic breakdown is done very thoroughly, or the stories are of a lower complexity level, you almost never need this subtask.

Acceptance Test Creation:

The foundation of a test-driven development environment.  Here at HotWax Media, we build these before development in order to ensure that we are capture all of the nuances found in the story before we start development.

Design:

The other optional step that depends upon the complexity of the task.  Because we are focused on building enterprise application in Apache’s Open for Business, often times the description of the story and the acceptance test is all that we need to get started on development.  For more complex stories, we always perform this step to ensure that the code that is going to be written is following our best practices.

Development:

Self explanatory – where the implementation is executed.

Technical Review:

The first line of internal verification – did the implementation of this story match design in addition to our best practices?  These reviews are done by a team lead or expert reviewer which greatly increases the quality of our deliverables.

Business Review:

The second line of internal verification – does the workflow implemented match the acceptance test and business rules that were provided to us?  These review are done by a business analysts, technical project manager or account manager before it is put in front of the client.

Client Review:

The most import verification out there – does our output match the expectations of the customer?  If not, we start back at the beginning and go through all of the steps until the customer is satisfied.

Hopefully this overview of HotWax Media’s Workflows and Processes gives you insight into how we would approach your project and the steps that we put into place to ensure it’s success.  Next post I will go into more detail about how this all works in our tools and how that makes us prepared to guide your project to completion.

Tim Ruppert is Chief Operating Officer at HotWax Media, an OFBiz service provider, as well as an OFBiz project committer and active community member. Tim will join other HotWax Media employees and advisers in periodically posting thoughts here related to OFBiz, eCommerce, ERP, and related topics.

Enterprise E-commerce and SEO / PageRank

Wednesday, September 1st, 2010

Enterprise eCommerce SEO

September 1, 2010

HotWax Media is the leading provider of enterprise e-commerce websites running on Apache OFBiz. We build enterprise e-commerce systems for a variety of different types and sizes of businesses, from online costume retailers to mesh materials and cutting service providers. Our enterprise e-commerce systems offer all the bells and whistles: completely custom front end designs, great merchandising features (cross-sell and up-sell, feature-driven navigation, robust pricing and promotion creation, multi-channel sales, etc.), custom shopping cart and checkout, shipping integrations with FedEx, UPS, and USPS, inventory management (receiving, stock management), order management and customer service, and much more. When it comes to robust e-commerce features, the Apache OFBiz framework combined with our unparalleled enterprise ecommerce expertise at configuring, customizing and extending OFBiz features means that our clients can have just about any e-commerce feature that they can dream up.

But a successful e-commerce enterprise requires much more than a whiz-bang system.

Perhaps more important than the site design and features is the marketing strategy that drives your online sales efforts. Let’s assume that you have a product line that makes sense — you manufacture or purchase your high-quality products at wholesale with plenty of margin to run a profitable business given reasonable sales volume. You have a great enterprise e-commerce site with all the great design and site features you wanted. Now what?

SEO (search engine optimization) is the crucial ingredient in making your online sales efforts bear fruit. Simply put, the best product in the world will not sell online if your customers cannot find you.

Online marketing is a dynamic field full of smart, ambitious professionals. Some are wildly successful on your behalf, while others will take your money for nothing. Some are hard working and forthright, and others are shysters. Ask any online business leader and they will agree: there are many aspects for a business to consider as it markets itself online and some are much more straight forward than others.

Good page content? Check. Good file names, alt tags, page titles, meta tags? Check. Site map and robots.txt file? Check. Now how to measure performance while still having time to run your business?

For SMB owners, dollars generally represent the most meaningful method for measuring progress, of course, but there are other useful indicators that can help along the way. A great place to start is Google’s PageRank.

In their paper The Anatomy of a Large-Scale Hypertextual Web Search Engine, Sergey Brin and Lawrence Page describe PageRank as “a model of user behavior.” They elaborate as follows: “We assume there is a “random surfer” who is given a web page at random and keeps clicking on links, never hitting “back” but eventually gets bored and starts on another random page. The probability that the random surfer visits a page is its PageRank.” They go on to state that “…a page can (also) have a high PageRank if there are many pages that point to it, or if there are some pages that point to it and have a high PageRank. Intuitively, pages that are well cited from many places around the web are worth looking at.”

For SMB owners, the bottom line is that a well known page (quantified by random visits and pointers from other well known web pages) will have a higher page rank. This page, in turn, will return more prominently in search engine results than lesser known pages with similar content. Step 1, then, is to create pages with higher PageRanks than those of your competition!

How does one go about measuring and boosting PageRank?

Measuring PageRank is relatively easy. There are toolbars and websites readily available that will tell you the PageRank for any given URL. For example, PR Checker gives you a web page for checking PageRank, and Google Toolbar runs right along with your browser.

Boosting PageRank takes more work, and happens by getting other pages with high PageRanks to link to your page. (For example, you can submit your site to directories like Yahoo!, and list your products on sites like Amazon.) There are many tactics and techniques to be explored, but we will not cover them in detail here. As with the rest of your online marketing strategy, boosting PageRank takes time and consistent effort. It requires good planning up front, and ongoing work to maintain and improve. But if you master the basics and keep working at it, you will see results.

HotWax Media offers online marketing packages for enterprise e-commerce businesses. Contact HotWax Media today to learn more!

Mike Bates is CEO at HotWax Media and will join other HotWax Media employees and advisers in periodically posting thoughts here related to OFBiz, eCommerce, ERP, and related topics.
Mike Bates - OFBiz Expert

Pricing Enterprise E-commerce Services

Tuesday, July 6th, 2010

Enterprise-e-Commerce

The enterprise e-commerce space is broadly varied, and the boundaries constantly shifting. Features and capabilities only available to huge players just 10 years ago are now more affordable and available to SMBs around the world.

Sometimes just using the term ‘enterprise e-commerce,’ however, can be difficult or misleading. Is enterprise e-commerce the right term to use for a company with 10,000 SKUs, doing a few million dollars a year in online sales? In the event that they manage their suppliers, inventory, warehouse, and fulfillment using an integrated system, for example, I would say yes — this counts as ‘enterprise e-commerce.’ Although clearly no Amazon or Zappos, these companies and their systems take it far beyond the simple eBay auction or basic storefront.

At HotWax Media, we provide enterprise e-commerce consulting services. Our core services are based around Apache OFBiz, but we regularly find ourselves integrating with 3rd party systems like NetSuite, Endicia, and many others. One day it could be SAP with multiple users, and the next day it could be QuickBooks piloted by the business owner herself. The very nature of an enterprise e-commerce system suggests that the consulting services can be quite different from one client to the next, and we have certainly found this to be true. We can find ourselves building systems that are similar in fundamental intent for companies whose revenues are separated by two orders of magnitude.

So the question comes up, what is the right way to go about pricing these services? Constructive Cost Model? (http://en.wikipedia.org/wiki/COCOMO) Probably not. Simple menu of services with some attention to psychology? (http://bit.ly/NLo3V) That’s better because it is more easily understood by the client, but it is not always easy to do on our end.

In fact, when doing unique service projects, you might say that with a fixed price, someone always loses. (http://bit.ly/9E0bbP) Either the vendor pads the cost to cover any surprises, and he wins, or the vendor fails to anticipate (and build in money to cover) the surprises, and he loses. The only thing for certain is that those surprises will come up, and someone will have to pay for them.

The next option is straight hourly work. This should be great for the vendor, but can lead to problems of its own in terms of project and cost management. When vendors are working on a straight hourly arrangement, they have less incentive to plan. While the idea of paying the vendor for his time is fair and honest, hourly projects (that lack planning) can end up costing more than the customer originally planned, and the projects can look expensive in hindsight. When the project is complete, lacking adequate planning, the tendency is to look back and say “All they wanted was X and it cost them Y!?” The problem is that the curvy, flexible path made possible by the hourly arrangement is overlooked in that simple analysis. By the way, this happens all the time with contractors, attorneys, and everyone else who offers services for an hourly rate; it’s not just software developers.

So this brings me to my method of choice for pricing projects: fixed team project planning and pricing. This approach can allow for the best of both worlds. In practice this ends up looking a lot like phased pricing, except that the cost does not vary month to month (except by mutual agreement). Rather, the dedicated team comes at a predictable expense and works off of a well formed project plan. (The creation of the plan is paid work as well, and can be more or less detailed depending on the size of the project and the client’s preference.) Then, the flexibility that real life requires comes in the form of more or less work being completed in each month (or phase).

So we can say, “We have a list of 10 items. We can be very confident that we will complete 5 of them, somewhat confident that we will complete 7 of them, and only slightly confident that we will complete all 10 of them.” At the end of each month, we reassess our plan and make adjustments based team velocity and client priority, leveraging the things we have learned while working on the implementation.

In conclusion: we do a lot of deals each year, and our approach to pricing varies a bit job to job. But whenever possible, we like this fixed team approach. It gives the client and provider both a fair deal, and encourages all parties to plan responsibly. We encourage you to try it out; if you would like us to help you with your enterprise e-commerce project using our fixed team approach, give us a call today!

Mike Bates is CEO at HotWax Media and will join other HotWax Media employees and advisors in periodically posting thoughts here related to OFBiz, eCommerce, ERP, and related topics.
Mike Bates - OFBiz Expert

eCommerce Software Market Musing

Friday, May 28th, 2010

eCommerce Software Market
B2C Partners estimates the size of the total US market for online retail software last year to be $415 million. (http://bit.ly/NSzsg)) That seems too small to me.

B2C Partners uses the following method for arriving at their estimate:
$ 166 billion online revenue (2008)
A. x 3% of revenue for development & technology
B. x 50% of dev/tech for site improvement (v. support)
C. x 50% of eCommerce platforms third party (v. in-house)
D. x 33.3% of Year 1 costs on software (v. services to deploy)

(I have added the A. – D. line labels for ease of reference.)

Let’s start with A. — the percentage of revenue spent on software development and technology. According to B2C Partner’s very respectable sources (SORO Report 2007, Forrester Research and Shop.org) the range is actually 3% – 5%, and I suppose using 5% would have a large impact. In fact, it pushes that $415 million dollar market size up to over $690 million, which I like better.

Moving on to B., apart from the difficulty that sometimes comes with distinguishing between improvements and support, I do not see any big problems there.

When we get to C. and D., however, things start to get interesting. At HotWax Media we have an enterprise software services business that specializes in Apache OFBiz, which is a suite of open source enterprise e-commerce and ERP applications. As we have worked with a variety of businesses on many different types of projects over the years, we have found that some customers think of Apache OFBiz as a 3rd party platform, while others think of OFBiz as the root of their own in-house platform. Both concepts can work out great, and it generally depends on the client’s internal technology staffing as to whether the client’s behaviors are more inline with a traditional 3rd party platform project, or more what we would expect with a traditional in-house platform project. We regularly see projects that blur the line.

As OFBiz implementation experts, I suspect that this would have the effect of making the market relatively larger from our perspective (given that we could theoretically count revenue from the 50% who implement a 3rd party platform as well as the other 50% who use an “in-house” system). Great, we’ll take that extra $2 billion dollars in market opportunity!

Then there is the question of line D., which divides the software spend by 1/3 to differentiate between the cost of licensing versus services to deploy. Apache OFBiz is free and open source, so our service engagement customers do not need to think about it this way (nor do they need to sacrifice 1/3 of their year 1 budget on licensing fees). So for HotWax Media’s enterprise software implementation services business, we can really leave line D. out of the equation, since there are no licensing fees.

So when we add in the extra $2 billion to cover the 3rd party versus in-house distinction, and we refrain from pulling out the 33.3% to represent licensing fees, using the 5% of revenue number mentioned above, our enterprise e-commerce and ERP online retail software services market size is actually well north of $4 billion. (And that’s just in retail.) Quite a big difference from $415 million estimate with which we began.

I see a 3-part moral of the story:

1. a system has an advantage if it offers the client the options of in-house development or 3rd party reliance;

2. software that does not require a licensing fee can present a huge opportunity for increased returns on project investment; and

3. vendors that are well positioned to deliver implementation services on open source enterprise systems have a lot of budget to go out and win if they can make the case effectively to online retail business owners and corporate CIOs!

Author’s note: I realize that over the course of the post I have transitioned from “online retail software” market size to “online retail software services” market size, but I hope the transition was instructive in some ways, especially as it relates to the potential value in using open source software to reduce or eliminate licensing fees.

Mike Bates is CEO at HotWax Media and will join other HotWax Media employees and advisors in periodically posting thoughts here related to OFBiz, eCommerce, ERP, and related topics.
Mike Bates - OFBiz Expert