Software Engineering

Our Approach: Software Engineering at DeviceLab is a serious endeavor performed under IEC 62304, Software Lifecycle Processes. Following the Agile approach, we use rapid iterative design / review / code / test sprints. Evaluation of the deliverables with each sprint provides better visibility of the development progress with the Product Owner setting priorities and making decisions with the team.Skills:

    Specific skills present in the DeviceLab software team include:

  • Algorithm Development
  • Operating Systems
  • Data Mining
  • Programmable Logic
  • Embedded Systems
  • Real-time Systems
  • Software Integration
  • Firmware
  • System Architecture
  • Image & Signal Processing
  • System Controls
  • Machine Learning
  • System Requirements

Tools & Links: DeviceLab uses the latest development tools, and is experienced in a wide variety of platforms. We can do your medical data, mobile, and wireless projects as well as traditional medical equipment.

  • ASP.NET, MVC, WPF, Angular
  • C#, C (C++), Objective C
  • Java
  • OSX, IOS, Android
  • LabView (NI)
  • Web API
  • Linux
  • Xamarin
  • Microsoft and Windows Products

Testing: The difference between software for medical devices and commercial devices is that there’s a much higher tolerance for failure in commercial products. Things that are a nuisance in the office (like waiting for your laptop to reboot) can be life-threatening in medicine (like waiting for your defibrillator to reboot). Adhering to IEC 62304 means that we not only have requirements for what the software should do, but a test plan that lets us prove that it really does it. If software revisions are needed after product release, we have established processes to manage changes and validate them.

Manufacturing: Software is not a tangible thing, but it does need to reside on some sort of hardware, and the process by which it gets loaded is important to product quality. Our engineers will assure that this is done right in the prototypes and is properly transferred to the client or contract manufacturer.

Documentation: IEC 62304 also requires extensive software documentation, considerably above what’s typical for a commercial product. Examination of this documentation is a part of getting your product approved, and fixing deficiencies in that documentation can delay the start of validation testing or cause unnecessary retests. Software documentation is also important to maintain design intent when responsibility changes from DeviceLab to a CM or the client’s factory. Our documentation ensures that our code is understandable so that future changes can be easily and safely done.