Leading Companies to Optimization & Profitability via Managed Projects

Software Engineering Methodology

At Pinnacle, Software Engineering practices are a fundamental part of our development efforts. Be it web application development, database development, or general Windows interface development, we apply the latest Software Engineering practices to all of our development efforts.

Our development starts with a Needs Assessment where we ascertain the nature of the problem. We begin by talking with your staff, your management, and your clients where appropriate. The goal of this phase is two-fold. First, we want to understand the true nature of the perceived problem. Second, we want to make sure that we are devising a solution that fits and will successfully solve the problem.

Another aspect of the Needs Assessment is the building of a development team. Because we believe client involvement is a critical aspect of a successful project, the team will usually include members of your staff, and can even include client representatives. Occasionally, if the expertise is not already in-house, we bring in additional expertise through our partner organizations. Our goal is to build the best team for the job, with the skills necessary to make the project a success.

Once the Needs Assessment has been completed, and work is to move forward, we begin the Design Phase. During this time, we develop basic design elements, such as the look of the application, a skeletal structure of the application, or even simple story boards to illustrate the application’s flow. Once the basic design has been approved, Pinnacle moves into a phase of Detailed Design. It is here that the appropriate development platform is chosen, key portions of code logic are developed, and simple “on-paper” software testing gets underway.

Throughout Development, specific deliverables are made available. These documents act as reference points and provide guidance throughout the project. Additionally, these deliverables give you a firm sense of what is being developed, how it’s being developed, and why. With your signoff on these documents, we know that your expectations and our development efforts are a matched set.

After careful planning and design, Implementation begins. Code is written, revisions are made to design documents, “true” testing occurs, and the application grows. As milestones are reached, Pinnacle communicates these with you through status meetings where new areas of functionality are demonstrated and feedback is solicited.

As the project nears completion, beta Testing can begin. We release the product to key groups of users who can test the core functionality of the application in a production environment. These users provide valuable input on usability, key application features, and yes, even bugs. This phase of development sees the largest number of testing plans, including automated testing plans. These test plans are part of the deliverables, and can be used in regression testing. Finally, the application is Released to the full user base.

A key element to any successful project is the Project Manager. The Project Manager sees the project through from Needs Assessment to Release, and is your primary point of contact at Pinnacle. Effective Project Management is the key ingredient to Pinnacle’s success in software development. The Project Manager is responsible for communicating with the client, building the team, development estimations, resource scheduling, risk management, and quality-assurance. Pinnacle invests heavily in its Project Managers, and in providing them with the resources they need to successfully fulfill your needs in a timely and efficient manner.

Efficient processes, good management, attention to detail, and putting your needs first allow us to provide you with the software applications you need to run your business. For more details about our software development practices, please Contact Us.