Retrologic Systems Retrologic Systems Retrologic Systems
RetroGuard for Java Obfuscation
  RetroGuard  |  CAPTCHA  |  Contracting  |  Resellers  |  Contact

Retrologic Software Consulting Process

Retrologic Systems' Contracting and Development Methodology

Our goal is to provide high quality custom software and accommodate change within a clearly defined development process.

Client Benefits:

  • Immediate progress on your critical project: finding, hiring, and orienting a new employee can take months and is very expensive. Retrologic Systems is ready to apply our expertise to your project today.
  • Accountability: you will deal with a single point of contact who is directly responsible for your project.
  • Accommodating change: our clearly-defined software development process allows the implications of change on schedule and cost to be made clear, enabling the client to make well-informed decisions about project changes at any point in the development cycle.
  • A fresh perspective: even if you decide to develop your project internally, consider consulting us early in the design phase. Our experience and external perspective could make all the difference in the quality and success of your internal project.

Contracting process:

  • [1-2 days] Initial contact with client, and discussion of project and its requirements.
  • [1 week] Preparation of contract and the project-specific contract appendix, briefly stating the project requirements, proposing a schedule, and proposing a cost estimate. Billing is on an hourly time-&-materials basis, with a renegotiable project cap.
  • [1-4 weeks] Specification milestone: Develop a detailed functional specification for the project, prototyping as necessary to minimize technical unknowns.
  • [project dependent timeframe] Code development milestones: Detailed design and implementation of the software resulting in a scheduled deliverable. The development should be broken into milestones of around a month, so that the client has regular deliveries of the software and can provide feedback and request changes during the process.
  • [4-6 weeks] Follow-up period: After each code delivery, and for a period after the code development is complete, provide follow-up with the client to ensure any bugs are fixed and change requests can be scheduled.

Development Principles:

  • Use languages and technologies that are suited to the project, while considering the client's staff skill-set so that they can maintain the software effectively upon delivery.
  • Design the software to be:
    • configurable - the software's behavior and appearance can be customized using configuration scripts and stylesheets;
    • extensible - through the provision of documented software interfaces, the software can be extended by the client's staff.
  • Issue regular status reports to the client.
  • Provide software documentation using the appropriate standard ("pod" for Perl, "javadoc" for Java, etc.). To the greatest extent possible, the code will be self-documenting through careful choice of function and variable identifiers.
  • Develop unit tests for each software module, to be run and tested for success automatically. Also provide integration and system tests that exercise groups of modules and the software as a whole. The enables defects to be found and fixed early in the development process.
  • Track change requests and bug reports in a defect-tracking database, so that issues are never overlooked. Verified bugs will have test-cases developed so that, once fixed, any recurrence of the problem will be immediately identified.
 Copyright © 1998-2007 Retrologic Systems. retroguard | captcha | contracting | resellers | site map | contact
 All rights reserved. site terms | privacy policy