Software engineering
RSS:
Publications
Comments

9 steps to a hassle free and effective software development project

By ExecutiveBrief Staff

Has your company developed entirely new software or added to software already in use throughout the organization and found the process cumbersome, frustrating, and sometimes not living up to expectations or meeting organizational goals?  If so, the solution to a smooth and effective development program may be as easy as staffing a well-qualified project manager and adopting a proven development process.

For any software development or other project initiative your company may be considering, it is critical to have in place and practice a set of effective and proven guidelines to ensure project success and delivery of the expected results:  taking into consideration the role and responsibilities of a well-qualified project manager, knowledge of important business and financial aspects, and a step-by-step process that all contribute to the solid foundation and implementation of an effective project plan. 



Developing a Practical Approach: The Role of the Project Manager

When undertaking a software development project, the first element to consider is the establishment of a comprehensive yet practical approach to the initiative that ultimately will lead to a successful end result.

The in-house project manager has a key role in ensuring each phase of the project is carried out as planned.  The project manager is responsible for considering the potential risks involved with the project and how to avoid and resolve them, establishing and maintaining momentum throughout the project, ensuring individual project team member tasks are assigned appropriately and carried out according to specifications, and successfully addressing and resolving any conflicts that may arise during the length of the development project.

A well-qualified project manager is able to address what may seem to be an overwhelmingly complex process by developing an organized approach where the process is broken down into manageable individual tasks and understanding how to keep those involved in the project dedicated to the ultimate goal of meeting and even exceeding the expected end result.

If the project manager dedicates the necessary time, effort, and resources to the preparation of an efficient, comprehensive, and practical approach, then the project team may progress with ease and confidence as they deliver on their individual tasks, having a solid foundation and strategic framework at the outset. Far too often, however, failures with such projects are the result of not only a poorly executed plan, but one that ultimately lacked the fundamental elements of a well-though-out approach rooted in adequate preparation and commitment from the project manager and project team.

Designing a strategic plan means taking into consideration all aspects that can contribute to success or potential failure.

Embarking on the Initiative: Key Steps to Consider

With a comprehensive approach and a competent project manager in place to guide the new software development initiative, there is another important element your organization may find helpful as you embark on the project: establishing specific steps that can be followed to project completion that are based on proven industry experience in such a project environment.

Following are a set of practical guidelines to approach a software development project, established by two university professors and business consultants with specialized expertise in the computing, engineering, and general business environments.

Dr. Gordon Scott Gehrs is an adjunct instructor at the Illinois Institute of Technology (IIT) and a business consultant for the Jules F. Knapp Entrepreneurship Center at IIT. Dr. Dorota Huizinga is associate dean of the College of Engineering and Computer Science and a professor in the Computer Science Department at California State University, Fullerton, as well as a frequent business seminar speaker, a business consultant, and co-author of Automated Defect Prevention: Best Practices in Software Management.

Read on for nine key steps to consider as you embark on a software development project.

Step #1: Conduct Feasibility Analysis  

According to Dr. Gehrs, a critical first step is to interview stakeholders in order to uncover whether a specific need exists, identify this exact need, and determine whether the proposed project can feasibly deliver the expected software development. “Many times, this is the point at which an ROI study will be carried out in order to determine project costs and benefits,” says Dr. Gehrs.

Step #2: Analyze and Determine Requirements 

When it comes to the next step of determining requirements, Dr. Gehrs believes a proper analysis should consist of interviews with end users and others who will be associated with the new software system. In addition, a thorough review and a keen understanding of user documents, business rules, and processes are keys to determining appropriate and necessary features and functionality. This is a valuable and significant step in the development process and the point at which such deliverables as those documents outlining the scope of the project and those detailing the software product requirement will be produced.

Dr. Huizinga notes the importance of having the minimum technology infrastructure in place before beginning a software project, which include:

• Desktops for development with an advanced integrated development environment suite. 

• A server with a configuration management system for document tracking and version control. 

• A staging server for integration testing and a production server for deployment of the final product. 

• A requirement/task/defect tracking tool. 

• An automated build system. 

• A regression testing tool. 

• An automated reporting system.

“ Investing in the proper infrastructure is essential and will pay back quickly,” asserts Dr. Huizinga. There are three key elements the proper infrastructure provides:

• Product and project visibility 

• Automation of repetitive and mundane tasks 

• Facilitation of collaboration

Step #3: Consider Industry Best Practices  

When defining a software development process, consider proven industry best practices. Dr. Huizinga recommends a good, customized Agile process with emphasis on pictorial documentation both for requirements and technical documentation. It is important to follow a standard template and all activities should be traceable through a requirements/task/defect tool and shared document repository.

Step #4: Design 


mosaic image maker . direct payday lenders