Home
TeraTech Website
Inside Information
About Us
Services
 
Sign Up | Login  

TeraTech Project Methodology

TeraTech uses modern software development practices to create high quality software that meets people’s real needs.

Development Process

TeraTech uses software development practices to improve your software quality including:

  • Wireframe prototyping [Fusebox]
  • HTML prototyping
  • Written business rules and requirements
  • Requirement walkthrough
  • Coding standards
  • Documentation standards
  • Peer code review
  • Unit testing and Integration testing
  • Acceptance testing
  • Deployment
  • Project management and Risk analysis
  • Project Plan
  • Qualification
  • ColdFusion


    Prototyping

    TeraTech has found that using wireframe and HTML prototyping is the key to successful software development because it allows the client to see the complete flow of the application before the coding is done. In addition, the HTML produced in the process is used in the development.

    Almost 70% of corporate software projects are abandoned or declared as failures. The key reason is that the client doesn’t see the application until after all the coding is done. It is only discovered at the end of the process that client and developer have failed to communicate. Prototyping makes it possible to see the application and how it is going to work before the hours of development and backend coding work are done. It is easy to make changes during prototyping; it is much harder and much more costly after development.

    The wireframe process is a powerful prototyping strategy that creates a clickable mini-app that has a corresponding wireframe page for each page the user will see in the real application. It explains what the page does and what links to other pages should appear. This is done completely in text. We have a little application that we created for this--very simple, but it creates a text database file and then reads it and displays information. Another component of prototyping is the mockup of the graphical interface and navigational tools. TeraTech utilizes Adobe Illustrator, Adobe PhotoShop, Macromedia Fireworks and other tools as appropriate to develop the design elements of the page.

    Business Rules and Requirements

    The business rules and requirements documents serve as the blueprint for the development of the application. These documents supercede all other communications oral or in writing, including documents, meeting notes and emails that were exchanged during the prototyping process. They are written as easy-to-read use cases for the application and form the integration and acceptance test plans used in later steps of the development process.

    Requirements Walkthrough

    TeraTech will walk through the prototype and use cases in a meeting with the client to confirm the application as planned will do what all the client stakeholders need. This is the last chance to fix any missing or incorrect screens and rules before application delivery. (Design problems identified after the signoff may be addressed in the enhancement phase after delivery). The client will signoff on the requirements and accompanying screenshots to formalize the approval of the prototype and business rules and requirements. This also signs off the acceptance test plan that will be used in accepting the application when it is completed.

    Coding standards

    TeraTech developers utilize a set of coding standards so that the code is easy to follow, is well organized, and can be readily understood by other developers.

    Documentation standards

    Careful and precise documentation during development is essential to making sure that software can be readily fixed and modified and is sustainable over the years. TeraTech documents code headers and code blocks in the source code and writes technical documentation outside the code to give future programmers a roadmap to the application.

    Peer code review

    TeraTech utilizes individual and group peer review as a means to ensuring that the code is complete and accurately implements the business rules and requirements. It also serves to enforce coding and documentation standards. It is our experience that bugs caught during code review are much less expensive to fix than ones caught during testing or actual program use.

    Unit testing and Integration testing

    The purpose of unit testing is to verify that the requirements are met for each screen and report in the application. Integration testing verifies that all the components of the application work together and that test use cases can be run through the whole application from beginning to end successfully. Testing is done on a staging server that duplicates as near as is practical the production server environment.

    Acceptance testing

    Acceptance testing is similar to integration testing but is done by the client to confirm that the application can perform all the agreed-upon use cases correctly. Acceptance testing is done on the staging server.

    Deployment

    Deployment is the copying of the application code and database from the staging server to the production server and the configuration of any items that are different between production and staging servers. If the staging server configuration and data have been carefully set up to match the production environment this should be a low excitement step.

    Project management and Risk analysis

    At all steps of the development process we track how much has been completed and how much time has been spent. This allows us to address any potential problem areas before they affect the successful outcome of the project. It also keeps the development effort on track to meet the estimated delivery date. We maintain a table of project risks and mitigations so that technical and human problems that are likely to arise during a project are monitored and dealt with proactively, thus reducing unpleasant surprises.

    Project Plan

    TeraTech proposes to use this approach on our project. We look forward to meeting with you and all appropriate staff to determine how we will work together to complete this application in a timely manner. In that meeting we will determine the assumptions, deliverables and milestones.

    Qualifications

    TeraTech has been offering custom programming services since 1989. Our staff of analysts and programmers are experienced at understanding client needs and managing projects successfully.

    In addition to our custom programming work, TeraTech produces programming tools for Basic and C. As a tools programming house we have close contacts with Microsoft and are in the Visual Basic beta program.

    Writing tools requires a greater level of skill than average programming to produce reliable, fast, readable and reusable code. Our programmers bring this same discipline to your project, so you can have confidence that the work we do for you will be completed with high quality code in a timely way.

    ColdFusion

    TeraTech has been a leader in ColdFusion consulting since version 1.5 was released in 1996. We have written many web database projects for Fortune 1000 companies and government agencies using ColdFusion and SQL Server, Oracle and Access. We have also done projects integrating mainframe data into the web. TeraTech runs the Maryland ColdFusion User Group and has organized eight national ColdFusion conferences.

    TeraTech’s president, Michael Smith, is a nationally known speaker and author on ColdFusion programming. He has puplished articles in ColdFusion Developer's Journal and CF Advisor, and is a contributing editor to Fusion Authority magazine.

    Next Step

    Contact TeraTech with your project ideas.
    Email [email protected]
    Phone 301-424-3903
    Fax 301-762-8185
    Web consulting request form

  •  
     
     © 2003 Association Insite
     published by TeraTech, Inc.
    Home | Articles | Testimonials | Development Process
    History | Vision | Talk with a representative
    800.447.9120 
    Contact Us 
    405 E. Gude Drive, Suite 207, Rockville MD 20850 • 301.424.3903 • fax.301.762.8185