Ideas for successful software projects

By Andres Jaimes

- 2 minutes read - 376 words

This article describes some ideas on getting a successful software development process.

A successful project:

  • Depends on the expertise of the team. Don’t try to push many new technologies to a project. It will be difficult for the team to get acquainted with them and deliver a quality project. Small steps are the best.
  • Depends on the level of communication. Enforce communication among the team members. Even if they are working remotely. Make sure they have the right tools for chatting and video conferencing.
  • Depends on the degree of delegation to take decisions. Don’t try to guess what your customers want. On custom solutions it’s probable they have a pretty clear idea of wht they want. Involve them. Let them participate in the process.
  • Depends on whether they have direct contact with the customer or not. Let your developers ask questions to the project shareholders. It will give them a clearer idea of what the customer is looking for.
  • Depends on whether the project has been planned or not. Document ideas, meetings, mock-ups. Create links and make them available to everyone in the project. Create a document of requirements and keep it updated.

Things that may affect the process or its final result:

  • Lack of experience in technologies
  • Lack of testing UI mock-ups with internal users and customers
  • Missing requirements or constantly changing them
  • Short deadlines
  • Price tag very low. This point and the previous one can get the team to work extended hours, get them tired and deploy a low quality project.
  • Communication issues among team members. Local and overseas.
  • Working on different time zones.
  • If an overseas team works on something for which they have a wrong concept, then by the day when you see it, it may already be too late to undo it.
  • Questions/answers between overseas and local team may take about a day to get solved. Sometimes even more.
  • Poor decision making. Involve the customer. Involve those who should know the answer.
  • Ambiguity in decisions. Be crystal clear on what you expect.
  • Lack of human resources. Like no software analyst to define a process.
  • Endless meetings with few decisions at the end. Yes, I’ve been to 5 hour meetings from where we come out with no answers and even more questions.