As a Web development and Java consultant, iSeries programmers and managers often ask me: "What is the best way to get started?" This tip offers some advice to project managers and is based on my experience building dozens of production WebSphere applications.
Tip 1: Pick your project
You should also make sure that your users will be happy with a browser/HTML-based user interface (UI). Browser interfaces are not as rich as desktop applications, so make sure your users understand that. For example, browser applications typically don't support drag and drop.
Get help if you need it
If you don't have the luxury of picking a small application and need to develop a larger more critical application, you should consider getting help. There are many professional services organizations you can tap for assistance, including the company I work for. Here are some of your choices for heavy-duty Java and WebSphere needs:
|IBM Global Services||$200+ / hour||Many of their consultants are good but expensive. You also need to be aware that many of them may not know the iSeries, since even within IBM the iSeries remains a secret. Click here for more information.|
|IBM Custom Technology Center (Rochester)||$175+/hour||This IBM group specializes in the iSeries. I have worked with many of them, and they are very knowledgeable. Click here for more information.|
|Various IBM Business Partners||$50 - $250/hour||IBM has a site that you can search: Business partner search|
|Hire experienced employee||$50,000 - $150,000 yearly||Most skilled Java/WebSphere employees will require compensation in the range specified. Some pointers to the two most popular sites are shown below: (DICE and Monster)|
|Interns||$10 - $30/hour||Most universities teach Java. You may want to leverage student knowledge. Interns also allow you to find future talented employees without making the commitment. Observing an intern over a period of time (three to 12 months) is a much better gauge of performance than a 30-minute interview for a professional hire.|
Use DICE and Monster
Other useful tools available include Web sites such as www.dice.com and www.monster.com. These sites provide the ease of placing a job posting with specifics on potential employee qualifications and certification. Starting at $305 for 30 days, DICE will post your position to millions of qualified IT personnel. Monster's cost starts at $365 for 60 days with discounts provided for multiple postings. If you don't want to weed through all potential applications or e-mail, you may also buy the rights to view certain resumes instead of posting a job. The cost of this is around $400.
Get help with graphics
AS/400 programmers (including me) often struggle when designing graphical user interfaces. We are skilled in accessing data, concurrency, and business rule validations, not Photoshop and graphics. If you find it difficult making applications look decent check out Elance. This site offers a multitude of illustration, animation, logo creation and many other creative services for those of us who are not so artistic.
Tip 2: Take small steps
After you have secured your resources you should divide your project into small subprojects or "use cases." A "use case" is a functional item that your application performs and is a common term used in object-oriented programming. For the first few use cases, you should go through the whole process of development, deployment and testing. Get the application in front of the users and get their feedback. This does several things for you:
- Identifies issues early
- Identifies what you don't know so you can react
- Provides management with visible progress
- Provides a tangible base to build from
Tip 3: Force documentation and quality control
Most developers hate to document and test. Your application code base can quickly grow in size, and with multiple developers debugging issues becomes more difficult. It is easy for one developer to create a bug that another developer has to spend many hours or days tracking down. The larger the team, the more you should have unit test plans in place and require testing procedures at the unit code basis. You should also have requirements adequately documented. To play devil's advocate, ask yourself what happens if:
- Your key developer quits for a better job
- Your key domain expert is hit by a train
- You bring on a new developer
You should expect and be ready to handle situations such as those.
WebSphere application development involves bringing together many resources -- some technical, some personnel. I hope these tips provide "food for thought" as you kick off your projects.
About the authors: Paul Holm is a former IBM-Rochester WebSphere, Java, and DB2 developer/consultant. He specializes in helping iSeries RPG shops develop Web-based applications. Paul is currently a lead architect for the "WOW" product, which is Query/400 and DFU for WebSphere (aka WebSphere on steriods). Paul can be reached at firstname.lastname@example.org.
Nicole Jensen is a project and business management specialist for PlanetJ Corp. She leads various WebSphere related initiatives, including business partner relationships and account management.