Sanjay's blog containing technical and self development articles

IT Srategic Consultant & Agile Project Manager

Bhubaneswar, Orissa, India. Contact for FREE mentoring


Previous topic

Agile Rapid Application Development

Next topic

Simple free tools to boost your productivity


SocialTwist Tell-a-Friend

Millions of links for your website - absolutely FREE!

As Featured On EzineArticles

December 17, 2009 View as slides

Enterprise IT Planning

In old days, the world was disconnected. There was not much scope for innovation in business, and hence people were satisfied with slow and static business processes, which never changed.

Today things are different. With the advancement in technology, now you have numerous options to experiment on your business.

But, forget about implementing new ideas - you cannot even manage existing processes promptly unless you have a dynamic application software platform in place.

ERP systems are ideal for automating the core business needs, but some of their disadvantages make them quite inadquate to handle today’s organizations. These are some of the disadvantages of ERP systems:

  • To have smart business processess, all employees, customers and vendors of an organization should have individual login IDs. But in ERP systems it becomes quite costly to provide individual IDs to all.
  • In ERP systems, it is quite costly to accommodate new requirements or requirement changes
  • ERP developers are very costly to hire

Hence, ERP is fit only for core needs, but infeasible for workflow and other vital needs.

That’s why, typical organizations have many supporting applications in place in addition to a core ERP system. These supporting systems prolifirate over time, and hence remain hetrogeneous. The used technologies would be legacy, propriety or complex. Maintaining and enhancing these become a costly affair. It becomes difficult to get economical man-power and support for these systems.

What is the solution? Choose a single platform wherever possibe. Slowly, keep migrating your legacy systems onto this.

I recommend choosing Java. Specifically, the following stack:

  • Frameworks: Struts 2, Spring, JPA, Hibernate
  • Database: MySQL
  • Development Tools: Eclipse, Maven
  • Configuration management: Subversion (SVN)
  • Project management and bug tracking: Trac
  • Testing: JUnit, Selenium
  • Operating System: Linux (Ubuntu)

Why Java

Java is the most popular platform today. There are many mature quality open source frameworks and tools on Java such as Struts 2, Spring and Hibernate. As Java is formally taught in many courses such as MCA and BE, you get readymade man-power quite economically. Java being on top in job market, students are highly interested to build their career in Java. So, freshers get ready to work as trainee with quite nominal salary.

Using latest Java frameworks and tools like Struts 2.1, Spring, Eclipse, Maven, Applications can be developed and maintained quite rapidly to meet instant business needs. Using these, the development process is enjoyable and effortless. Requirement changes can quickly be incorporated.

Using quality frameworks and tools on Java, you get vendor, man-power, cost and time freedom.

Go open source

Also, instead of developing everything from scratch, you can opt for mature opensource or free applications. For example, trac is a must have wiki for any enterprise and Freemind is an essential planning tool for a manager.

Use tmail

Not all workflows can be computerized in any organization. Hence, many ad hoc workflows are handled using email, phone or fax. tmail is quite effective in these scenario.

Conclusion

Shrewd use of IT can take you anywhere in todays world. Let me know if you or your organization needs any kind of further help.

Click here if you want to view or download a detailed presentation on this topic.

Post all your queries, suggestions or feedbacks here.
Reach me at skpatel20 (hotmail).