We Design, Develop and Deliver… On Time, On Budget. Guaranteed.
There are many way your company can use OSR’s services. But when it comes to ensuring the technical robustness and performance of your solution, having OSR design and develop your solution is as close to a sure bet as you’ll get. Working with clients to architect, design, and implement a Windows kernel-mode solution is a core competency at OSR. While we’re grateful for our recognition as a training provider, or as the face of The NT Insider and the resources at OSR Online, it’s our experience and expertise in Windows kernel-mode solutions that have been driving client successes worldwide.
We specialize in the custom design and development of
- Device drivers
- Filter drivers of all types
- File system minifilters
We’re well known for “doing what’s really hard” on Windows, and making it work the right way. Whether your need to…
- support an old device in a new version of Windows
- collect data from a particularly difficult or demanding device
- make it easy and super-efficient for your user-mode devs to collect data about and track what’s happening on a Windows system for security analysis, tracking, and malware interdiction
- track changed blocks on the local disks (change block tracking, or CBT) for a cloud-based backup scheme or to allow you to “roll back” the state of a given volume
- create a usable and secure package the manages the use of USB devices, with custom definable policies
- implement a transparent, on-access, encryption mechanism as part of a data loss prevention (DLP) project
- or fulfill many other hardware-related or software-related goals
…we’ve probably successfully delivered a project similar to what you need done. Ask us!
We’re particularly proud of our expertise in the Windows storage stack, from the file system minifilter level, through the volume manager, through the disk class driver, and all the way to the storage adapter.
We’re the developers that HP, Dell, Intel, Amazon, Red Hat, Seagate, Sophos and (yes, even) Microsoft rely on for high quality, on-time, delivery when it really matters. Check out our list of clients or Check out a few of our recent projects. Talk to us to find out what these companies already know.
So, how does it work? Easy – it all starts by contacting us with a specific need. Get in touch with our business team via phone or email and give us some background to go on. No need to come to us with a proposed solution. In fact, it’s best to tell us what you’re trying to accomplish and let us suggest how to your goals might best be accomplished within the confines of the Windows OS architecture.
The solution we design and implement for you will be the product of our team approach. A team of multiple experienced OSR engineers will collaborate to meet the needs you describe to us. We find that multiple experienced viewpoints almost always yield a better solution than just one clever person looking at a problem alone. Another advantage to this approach is that you’re never relying on just a single person to deliver your project. Yet, you’ll always have a single point of contact with whom you’ll work (and who you can hold accountable for your project’s progress!).
Every project we undertake is tailored to meet the requirements of a particular client. Even the process we follow is customized to meet your needs. This is a key feature that separates us from the “software houses” and “contract programming firms.” However, the typical process we follow for custom development projects most often looks something like this:
In this phase, OSR’s engineering team reviews existing requirements or specifications, or works with the client to develop this material. The goal of this phase is to ensure both parties understand the requirements of the solution to be built. Some clients come to us with fully documented requirements. Others bring us just a few ideas in their head. Depending on our involvement, this phase could cost you absolutely nothing, or could involve a fee to research and document requirements. Once we’re all reading from the same page and have a clear set of requirements to work from, it’s off to the Design Phase.
During this phase of the project, OSR authors a high level design for the solution based on the requirements previously agreed upon. The goal of this phase is to describe enough of the design to ensure the requirements can be met, and to limit implementation risk. The design phase typically includes a discussion of the anticipated development issues, reviews of the pros and cons of design alternatives to meet requirements, a recommendation of a particular design, and a detailed description of the design and various distinct components to ensure a thorough understanding of the project. All good here? Then on to Implementation.
Now, with the risk of the project lessened by our advance work in the Requirements and Design phases, a clear path is set for creating the implementation. Here, we set specific milestones for clients (typically Alpha, Beta and Final), providing time for validation on the client side before moving on to the next deliverable. Where applicable, each release to a customer will include high quality and well-documented source code and relevant components required to build and test the solution, as well as release documentation that provides the status of the current release. Upon delivery of the Final milestone, we work with customers through a warranty period to ensure their satisfaction with the software.
Once the solution code has been written, tested, and accepted by the client, OSR can optionally complete the process of Windows Certification. If you choose this option, the OSR test team will undertake the (usually lengthy) process of running the tests specified in the Windows Hardware Certification Kit (HCK) and even submitting the results to Microsoft, if desired, on the client’s behalf.
Information Transfer Phase
We’re full service here, so while we could just dump some source code on you with a “good luck” pat on the back, our preference is always to make sure our clients are maximally prepared to take control of the project. Adding an Information Transfer phase can help. Here, clients have several options to consider, from full Design and Logic manuals, to onsite training (using the completed solution as the prime example), to on going maintenance and support on an annual basis. The point is, if you don’t end the project with a full awareness and competency of how to integrate, maintain and enhance it, you’re not being left in a very good position at all.