With advancements in technology in an already highly competitive market place, manufacturers must be very diligent in selecting both vendors and talent that represent the products they’re creating and the development goals they wish to achieve. When it comes to products with embedded software and firmware, selecting a trusted partner can be a precarious process. Vendors claiming to provide high quality services and hold vast experience have been known to disappoint, despite excessive costs associated with their service. Furthermore, other options that provide services at lower costs may turn out to deliver a false economy as their quality is erratic, or their ability to consistently meet requirements is lacking. So, how does one determine the best partner for their software engineering and development needs; that is the partner that can provide the lowest total cost with high quality and sensitivity to deadlines? Whether you have or have not experienced the trial and error of this process, consider the criteria below when evaluating your potential software development partner.


1. Varied Expertise

Many software engineering firms confine themselves to one particular industry, for example, solely working with medical devices or only having experience in the automotive industry. As technology matures, the software created to drive that technology must become more advanced in itself. Keeping up with this continual change while only serving one industry places firms at a disadvantage as they don’t benefit from the advances experienced in more progressive industries. A recent article on the Medical Device and Diagnostic Industry (MDDI) publication is now calling for medical device vendors to possess “a broader range of experience.” Rather than commissioning vendors with medical device experience alone, the publication is recommending that manufacturers seek vendors with a combination of experience, including military and industrial work. This makes sense as military technology, industrial devices, and medical devices all require high levels of precision and quality as life and property are on the line. A single serious oversight can put millions of dollars in product or worse, a human life, at risk. Ensure your software partner possesses the proper experience to fulfill each of your requirements with commensurate quality and the foresight to minimize risk of failure.


2. Credentials

Certifications are not a sole factor but still an excellent indicator as to the level of care and quality with which a software partner delivers its services. Your credentialing requirements may differ depending upon the industry in which you are involved; however, one standard remains relevant across many verticals, The International Organization for Standardization’s ISO 9001. Below this standard is discussed as well as a specific standard for medical device manufacturers.
Recently, new versions of these standards have been implemented to enhance risk-based thinking within the certified organization and effect additional improvements. For interested readers there is much written on the differences between the 2008 version and 2015 version of ISO 9001 and the differences between the 2003 version and 2016 version of ISO 13485. These ISO standards were (and still are) focused on increasing efficiency and improving customer satisfaction. When evaluating your software partner, consider the following certifications and whether the potential vendor has chosen to transition to their newer versions.

i. ISO 9001:2015 – Quality management
This standard is based on several quality management principles including a strong customer focus, the motivation and implication of top management, the process approach and continual improvement. Using ISO 9001:2015 helps ensure that customers get consistent, high-quality products and services which, in turn, brings many business benefits. Engineering firms that are ISO 9001 certified have demonstrated a set of processes and procedures that incorporate design controls and delivery methods that help ensure what you ask of them is what you receive. To achieve such certification, companies must undergo a thorough auditing process that examines many facets of their business, not just direct service delivery.

ii. ISO 13485: 2016 – Medical devices – Quality management systems – Requirements for regulatory purposes, is an internationally recognized standard that sets out the requirements for a quality management system specific to the medical device industry. Safety and quality are non-negotiable in this industry as life depends on the proper operation of these devices. Software development companies that choose to be certified to this standard are choosing to embrace the stringent regulatory requirements at every step of the software development life cycle. In addition to the general regulatory requirements, there are many other standards that ISO 13485 implies a certified company must comply with. For software development firms this means demonstrating their quality management processes, best practices in software development, and ensuring their outputs allow their customers to follow best practices in everything they do as well.


3. Standards & Capabilities

We’re recommending searching for organizations with a defined development structure and processes as opposed to those without. Routine Standard Operating Procedures (SOPs) allow companies to manage performance and increase efficiency by means of replication through standard pathways utilized in daily performance of duties. From a client perspective, this is valuable in terms of quality control as well as speed of development. With defined processes, your software development partner should be well-versed in the software development methodology they employ, as well as experienced in the product standards to which they commit to develop. Different industries must develop their products to various standards and as a paying client, you should strive to find a partner that is experienced in development towards that standard. While at first it may seem to take more time to adhere to these standards, this will ultimately lessen your product’s development time and therefore increase your speed to market.

i. SIL – A concept often employed in industrial applications, the Safety Integrity Level (SIL) to which a product is developed is determined via a procedure called Risk/Process Hazard Analysis (PHA). It identifies all the hazards of a process and estimates the risks inherently involved and determines if that risk is tolerable/acceptable. Risks that are deemed unacceptable when determining their likelihood and/or severity of occurrence must be mitigated. Firms that understand SIL, by nature, understand risk based development and are more likely to provide cost-effective, high quality software development services for industrial products.

ii. FDA Regulations – Developing software to meet FDA regulations and criteria is critical when creating a medical device or pharmaceutical system that operates or is sold in the US. In terms of medical devices, your software partner should be experienced in developing designs and documents that are later submitted to the FDA as part of a package to receive a pre-market authorization or pre-market notification clearance (the process to achieve the latter is also referred to as 510(k)). Ideally, this partner should have experience in developing software for various medical device classes, not only the class of your device. This will ensure your device’s software development process will be streamlined and seamless when presented to and evaluated by the FDA.

iii. FMEA – Your software partner should practice Failure Mode and Effects Analysis (FMEA), an increasingly important component to software development, especially in mission- and safety-critical projects. FMEA is a methodology used to identify potential problems or failures within the project and predict the resulting effect on the system/device. This early risk mitigation process will recognize adverse events before they occur, determining the failure’s severity and likelihood of occurrence.


4. Client-centric

Finding a partner that is easy to work with is just as crucial as the above criteria. Accessibility, transparency, and open communication are all characteristics that you want to gain when hiring a software development partner. The ability to work with a dedicated team of engineers that thoroughly understand your project’s requirements will ensure your project is developed at an increased pace. With a client-centric development team, your project will get the attention and quality it needs to come to life. Open communication and transparency on the project’s status will allow your project to move through the software development life cycle with ease. This ideally includes frequent written status reporting, transparent cost accounting, and honest estimates of effort with appropriate caveats at the start of a project. Should something not go according to plan (and no amount of planning can completely eliminate this risk) bad news should be delivered as soon as it is known and it should be done with clarity and accountability.


5. Flexibility

A final factor in a successful client/vendor relationship is flexibility. It all starts at the project estimation stage in which you ask your potential software development partner to project their costs for the job. Perhaps you have a very tight budget but can appropriately constrain and define your project’s scope. A flexible software partner should be able to work with you on a fixed price basis. If absolute speed to market and flexibility on scope is more of a priority to you, a vendor that is flexible and can provide reasonable estimates and work on a time and materials basis will likely add the most value to your project. Perhaps, between different phases of a project, one model works better than the other, talk to your potential vendors about the possibility of varying these options as it suites your needs. In addition to flexibility with pricing, flexibility with code changes can be even more valuable. A vendor that can easily adapt and make changes either in a fixed-price model or time and materials model, will ultimately add value to the project in terms of cost and time savings. Furthermore, when working in either payment model, if your software partner’s development methodology allows them to create code that is easily built upon and scalable, then your code will be relevant for the long-haul. This flexibility is invaluable as you strive to make the most of your long-term budgets and vision for your products.

 

In summary, evaluating software development partners can be uncertain and cumbersome; however, do your due diligence and select the most appropriate vendor for your project. Figure out what characteristics are most important to you and vet several vendors against your “vendor wish list”. Make sure their software development methodology will ensure your project will be completed on time, on target, and on budget. Choosing the right software partner will not only deliver the best services for you, but will add value to your company.

 


No Comment

You can post first response comment.

Leave A Comment

Please enter your name. Please enter an valid email address. Please enter message.