With Java becoming a de facto language for implementing scalable and interoperable solutions, the J2EE framework is becoming the backbone for most mission-critical systems that possess a Web-based user interface, such as corporate portals, knowledge management, e-commerce, and supply chain management systems. Since more than half of all mission-critical projects fail to deliver their expected benefits, and the J2EE framework is beginning its journey to a more customer-oriented focus, the stakes to ensure success are high. In general, even though most IT projects fail due to management-related issues as opposed to technical problems, every aspect of a failed project, including the employed technology, somehow becomes tainted with a negative shroud.
In spite of this, the employment of a simple project assessment checklist will ensure that most J2EE projects that have the potential to fail are either saved or terminated before they begin. The following list is a well-observed and industry-accepted IT project checklist, which you can use to check the health of your J2EE project before it actually begins. Every J2EE project must have
Every J2EE project of mission-critical nature must have a nominated executive sponsor or project champion, who is aligned with the mission of the project and has a significant stake in the success of the business. The sponsor should be immediately responsible for executive decisions that directly affect the delivery of the project; for example, maintaining focus on why the project is being done in the first place. The sponsor must also be able to cultivate adequate funding and dedicated resources from the organization.
There should always be a process in place to easily find a replacement sponsor and bring that person up to speed on the project mission and business values.
A Business Case
In essence, all J2EE projects are business projects; they all need a business motivation to exist. J2EE projects must be conceived and implemented with a constant eye towards how they will affect the organization's bottom line. Most business cases must include
Rationale for the J2EE project
Objectives and benefits
Metrics for measuring its ROI
Scope and limitations of the project
Analysis of the risks of the project
A Steering Committee
The steering committee is typically a group of people who are the stakeholders of the project. They are the ones that actually release funds and make decisions to either continue or pull the plug on the project.
A Core Project Team
A core project team needs to be created, representing both the business and IT worlds. The members, including a qualified project manager, should be identified with an estimate of the time and duration of their involvement.
Before the project manager is assigned, he must be able to demonstrate a successful record of accomplishment on comparable projects, as the project manager is the lead resource on the core project team.
Many enterprises have no formal processes for evaluating the skills of their project managers and the respective training they have or need to receive. Also, mechanisms are lacking to enable project managers to share their success or failure attributes with other project managers. Some people are gifted with project management skills. However, when these skills are lacking, training or pursuing a project management certification from the Project Management Institute is the best place to start. For more information on the Project Management Institute, please visit http://www.pmi.org.
If you have a $10 million project, don't put it in the hands of someone who has never managed a $50,000 project.
An Industry-Proven Software Dev.elopment Methodology
There has to be a proven systematic and holistic approach to the overall process of analyzing, designing, and constructing high-quality J2EE components for maximum reuse potential. Such an approach must include processes throughout the project to ensure that components meet their business requirements and are quality-assured.
Compliance to a moderately rigorous methodology can improve productivity by at least 20%.
An Effective Project Plan
It is the responsibility of the project manager to develop a project plan that details the first phase of the project, with possible outlines to subsequent phases. This initial plan must adhere to the methodology selected to develop the J2EE solution.
Project management activities should include the following:
Define the requirements for the project
Plan, measure, and assess the project lifecycle
Budget and manage costs
Estimate and allocate project staff appropriately
Ensure a mechanism for fluent inter-project communication
Negotiate and manage external resource contracts
Assess and manage risks weekly, with an emphasis on project size, business requirements, skills, and technologies
Manage scope through change management
Motivate team members
Project reports that focus on what milestones have been achieved and which still remain
Provide financial reports to the steering committee
There needs to be a defined approach to collecting and specifying requirements that embraces the selected software development methodology. The requirements must be clear and focused on meeting the business objective of the project, and not render themselves to misinterpretation.
The processes will need to be formally established to manage changes to the project team personnel, any additional features that may be required, and functionality requests. Properly established processes will prevent any risks to the delivery date or the budget.
Changes to the project team personnel lead to additional costs, since new personnel will have to be brought up to speed on the project, or will have to undergo training to be productive.
In order to illustrate measurable benefits within a short time frame, the project must be broken down into manageable value-driven milestones. The duration between each milestone will be driven by how quickly the target business objective is prone to change.
The role of the project manager is to develop a skills gap analysis based upon the skills required for the success of the project, as compared to the project resources available.
This exercise will clearly indicate how qualified the project resources are, how much training is required, and how many experienced consultants will be needed to augment the project.
It is a wise practice to set aside any monies for training in case the project goes over budget and additional funding for training is unavailable.
Project Motivation and Incentives
It is extremely important to ensure that everyone involved in a J2EE project is equally motivated toward delivering a successful solution. Hence, it is essential to ensure there is an appropriate reward mechanism in place that will inspire and provide continuous motivation to the project team members.
It is becoming very noticeable in most organizations that technical people of similar skills, and who work at a similar pace, are being grouped together to form task teams. This approach allows people who are properly motivated to either work together on critical aspects of the project to ensure delivery, or to augment groups where motivation, inspiration, or just a helping hand is required to ensure delivery of a specific milestone.