Custom Software Development...

Solution Design

Most solution providers begin the design process with far less understanding of the environment into which their solution will be placed. This dramatically reduces their odds of succeeding. On the other hand, UDI enters the design phase of the project with specific and detailed knowledge of all aspects of the solution environment. The things that we know include:

  • Where the bottlenecks are in the processes being automated
  • The root cause of quality, waste and timing problems
  • Personality issues that may hinder a successful implementation
  • Important process elements that should not be altered by the solution
  • All the hardware and software that will be needed to make the solution function in your facility

Armed with this knowledge, UDI’s design professionals can begin designing a solution that is uniquely tailored to work in YOUR environment. Solutions can take a variety of forms. They may include one or more of the following elements:

  • Hardware components (barcode printers, barcode scanners, computers, communications equipment, etc.)
  • Canned software (database, warehouse management, RF data collection interface, data conversion, etc.)
  • Data conversion (convert data in existing applications into a new application)
  • Canned software configuration (set up of parameters, screens and reports)
  • Canned software customization (code modification to alter or add to standard functionality)
  • Custom software development

Because UDI assesses the existing technology, it is possible for us to offer a complete bill of materials for any solution. This includes any upgrades that may be required for existing equipment.

System documentation deliverables can take various forms, depending on the type of solution. Simple canned solutions may not require any design documentation beyond the “should-be” process flowcharts that illustrate how the technology will be integrated into the activities being automated. On the other hand, custom software designs will generally incorporate standard documentation forms. UDI uses two different approaches to software design:

  • Agile Modeling (also known as extreme programming or XP)
  • Traditional System Documentation

Agile Modeling

This approach is generally used for smaller projects that are less time-consuming. Documentation for these types of projects is less structured, relying heavily on meeting notes and handwritten sketches. The system will be prototyped based on UDI’s understanding of the requirements and then modified iteratively after successive client review cycles. This approach lends itself to an hourly type of billing strategy, as the scope of the project is not typically rigidly defined prior to the commencement of actual development. However, since the design effort is reduced and “melded” into the coding effort, it is possible for this approach to be more cost effective.

Traditional Sysem Documentation

This approach is used when projects are more complex and/or the client would like to have the scope clearly defined prior to actual development begins. UDI typically provides four elements of documentation:

  • Entity Relationship Diagrams
  • Business Rule Definition
  • Screen Mock-ups
  • Sample Report Outputs

These documents are subject to review and revision cycles until the design is solidified. Prior to proceeding with development, the client provides UDI with a written sign-off of acceptance of the design. Any requested deviations from this design after sign-off will trigger an engineering change order (ECO), which will be quoted on a case-by-case basis.

Software Development Capabilities

When the time comes to begin coding, UDI is prepared to deliver state-of-the-art, Web enabled solutions. Our application development team is versed in the latest Microsoft tools and techniques. Technologies include, but are not limited to:

  • C#
  • ASP.NET
  • MS Web Services
  • Visual Basic .NET
  • DHTML
  • Javascript

This means that you won’t be reengineering the software that UDI provides any time real soon. It also means that applications will function on a wide array of devices and operating environments. Code is developed in a modular fashion, so that it can be reused for other applications, thus saving valuable development time.

Software Testing

Testing is done in three phases:

  1. Developer testing – this is done as code is being developed and at the end of the development cycle by the developer. Each programmer will run through all program functions and check for basic functionality.
  2. In-house alpha testing – people in UDI’s support department perform this after coding has been completed. Both function and usage scenario testing are performed.
  3. On-site beta testing – this is the final stage of testing, which is performed by your end-user test team in the final operational environment of the system. Users test the application they way they will use it to ensure that it will operate correctly.
Skip Navigation LinksHome > Services > Custom Software Development

Recent...

Partners...

Partners