Software Engineering Consultancy

Ridge Solution’s experience in the many and various aspects of Software product development and technology across a variety of business domains places us in a very good position to help out other software engineering teams when they may need a little extra help every now and again.

 

Areas where we have been useful in the past include:

Design and Specification Review – Sometimes a fresh pair of eyes and different perspective can make all the difference at the all important planning stage.

Software Performance Analysis and Optimisation– We have quite a lot of experience in getting a high level of both time and resources performance from software systems. If possible performance considerations should be built in at design time, but a lot can normally be done to improve the performance of exisiting systems.

Dealing with Legacy Systems – Inter-working with Legacy Systems can be especially challenging but can rarely be avoided, developers normal dislike this aspect of their work. Ridge Solutions has a lot of experience of working with and interfacing to Legacy Systems. We have ‘come out the other side’ and now quite enjoy it.

Expert Trouble Shooting – Every now again a big problem comes along, and just at the worst time too! Often the cause can be very elusive and confound the development team, we have had considerable success in tracking down and fixing such problems.

Facilitating Outsourcing– More and more software development activities are being outsourced and off-shored this puts extra demands on the specification and communication of the project’s requirements and design. We can help to ease this transition.

 

So if you feel that our Software Engineering consultancy service could be of use to you, please feel free to call or email us.

Software Design

Good software design is the cornerstone of any software development initiative – if done well it greatly increases a project’s chance of success.  We have learned by experience that design is just as important for small software tasks as it is for large projects – it performs the just same function in both cases.

We offer a wide range of software design services.  We carry out Software Design for our clients either as part of a development project or as a stand alone design service.  Here is a summary of what we offer:

Requirements Elicitation & Analysis – During this important stage we determine, document and analyse the project’s requirements.  We liaise with all of the project stakeholders in order to get as full an understanding of the requirements as possible.  Secondary requirements which may arise due to performance considerations and the like are also considered.   Test strategies are designed to validate the requirements.  The requirements feed directly into both of the following design tasks:

Architectural Design – In some cases, depending on the scale of the project, it may be necessary to carry out a high-level or architectural design.  As well as designing the software system at a high level of abstraction; various technology, protocol and software tool options will be evaluated and chosen.  For smaller projects, this stage may not be necessary.

Detailed Design – This design task involves determining how each of the individual project requirements will be realised through software, it leads directly to coding.

Rapid Prototype– ‘Ivory Tower’ design is rarely very successful, we like to develop a real working prototype as early as possible in the software design and development cycle so that we can validate our design and gain insights on how to improve it.  The prototype evolves with the design and vice versa.

Design Review –  We offer a design review service. It is often very useful to get another pair of eyes to check over and validate an existing design before development resources are committed.  The earlier potential problems (or opportunities) are spotted the better.

 

Please Contact us to chat about out how we can help you with any aspect of your Software Design requirements.

XML Design & Programming

XML and its related standards and technologies have become central to many of today’s software development activities. We spend a lot of time working with XML and offer a full set of XML design and development services – we usually carry out XML development part of a wider software development project but we are also happy to undertake standalone XML design & development tasks.

 

Here is a summary of what we do:

 

XML Format Design & Documentation – Good design is central to the success of any XML initiative, extra attention at this stage can pay major dividends further down the line.  Expressing this design and resulting format using XML Schema iron-clads the design decisions and can make subsequent programming easier via automation.

 

XML Processing – Reading and writing XML, Integrating XML into a new or exisiting application using: C++, C#, VB, Java, PHP, Perl, Action Script 3, etc.

 

XML Transformation & Filtering – Converting XML data into another format, using XSL & XSLT

 

 

Please Contact us to chat about out how we can help you with any aspect of your XML requirements.

About

Ridge Solutions was established in 2006 with the aim of providing expert software development and engineering services to our clients within Ireland and abroad.

Ridge Solutions was formed by Kevin Godden, a consulting software engineer, who has more than 14 years experience in all aspects of software development in a wide variety of business domains.  Kevin holds a degree in Computer Engineering from Trinity College Dublin (BA BAI) and is a Chartered Engineer (CEng MIEI).  Ridge Solution’s mission is to provide the best software combined with traditional Engineering professionalism and excellence.

If you would like to discuss how we can help you with your software development needs – please feel free to Contact us.

Languages, Tools and Technologies

Ridge Solutions believes that there is no one ‘best’ language, tool or technology, instead the best choice is the one that best fits the job at hand. However, here are some that tend to crop up time and time again:

 

Programming Languages – C, C++, C#, Java, VB6, Perl, Assembly language

 

CMS – Drupal, WordPress, Expression Engine.

eCommerce – osCommerce, Magento. 

Desktop UI Development – .NET, MFC.

Mobile Development – .NET Compact Framework, J2ME.

Databse – Microsoft SQL Server, mySQL.

XML – XML Schema, XSLT & XSL, XPath, DOM, SAX.

Scripting – Perl, Bash, VB Script, Java Script.

Graphics Programming – OpenGL, OpenGL Shading Language, Direct Draw.

UML – Rational Rose, Visio.

Test – nUnit, Rational Robot.

Version Control – Subversion, Microsoft Visual Source Safe, Rational Clearcase.

Mathematical Analysis – Mathlab.

Web Development – .ASP .Net, PHP, Flash/AS3.

Ridge BLOG

BLOG

Contact

To find out more about how we can help you with your software development needs, please feel free to contact us either by email or directly by telephone.

Email: info@ridgesolutions.ie

Phone:       087 2236429
Address:    43 Churchgate, Wicklow Town, Co. Wicklow.

Clients & Projects

Here are some of our previous clients along with details of the work that we carried out for them:

 

MVD Ltd. – an Irish Machine Vision Solution provider that delivers industrial optical inspection systems and services to their clients in multiple industries including the pharmaceutical and brewing industries.

 

We designed and implemented a general purpose Machine Vision software framework on which MVD  can quickly and efficiently build new custom vision systems to their clients’ specifications.  The software framework was designed using standard object oriented framework techniques and was implemented in C++.  Some of the project’s notable design considerations included providing:

 

Support for the speedy development of custom Vision Systems to allow MVD to quickly deliver inspection solutions with as much code reuse as possible.

 

Support for multiple connected cameras of different types.

 

Support for line-scan as well as area-scan cameras.

 

Support for concurrency both in image acquisition and processing to allow MVD to easily take advantage of multi-core hardware platforms.

 

 

 

Visible Chain Technologies Ltd. – a recent  hi-tech startup that provides software for optimising Bills of Materials (BOMs) in complex manufacturing environments.  We designed and developed them a product prototype.  The product’s optimisation algorithms aim to restructure the BOM in order to reduce Lead Time and Working Capital Expenditure.  It was implemented as a Web Application using C# and ASP .NET with MS SQL Server as the DBMS.

 

 

 

 

 

Agilent Technologies, Ireland– Agilent Technologies Ireland design and sell Automatic Optical Inspection (AOI) systems.  Their systems visually inspect printed circuit boards (PCBs) as they pass down the production line.  They use a robot to move a digital camera over the PCB; the camera takes many digital images, Image Processing & Machine Vision techniques are then used to analyse the images and check for defects and the like.  Ridge Solutions provided consultancy on various aspects of Agilent’s Software Development including:

 

We designed and Implemented the software additions for Agilent’s New PCB Inspection Product – the sj5000 (Launched in 2007), the software was implemented in C++ and VB6.

 

We implemented a new Multi-Threaded Bar Code Reader module with USB connectivity with the aim of allowing the connection of many Bar Code readers to the AOI system without requiring hardware modifications.  The module was implemented in C++. 

 

We enabled Automatic Conveyor Width Adjust for ‘Line Whispering’, this allowed the AOI system to aumatically re-tool when the type of board being manufactured changed, Implemented in C++.

 

We developed a new Inspection Results Reporting System, the system was implemented using C# on the .NET Framework.

 

We provided Expert Trouble-Shooting for some extra sticky problems such as some hard to trace and very rarely occuring glitches with RS232 communications and with real-time image acquisition from the CMOS digital camera.

 

 

 

 

 

 

Brothers Gonna Work It Out Ltd.– an Irish creative media company asked us to develop a data driven web based content management system for use with their clients’ web sites. The system was implemented in Adobe Flash with ActionScript 3 (AS3) and PHP, it uses XML to store the content and its associated meta data. One of the project’s main design considerations was to design & implement a ‘general’ data storage format and API that could be quite easily be reused by the client on future projects.

 

 

Content Management System 

 

 The CMS system was deployed as part of the Electric Picnic ’08 and Palmer Whelan & Associates websites.

 

 

 

Pride Design – Pride Design is an Award Winning Irish web design and e-commerce house. We have collaborated on a number of web and e-commerce projects, including handling the technical aspects of setting up, securing and testing osCommerce web shops and delivering CMS solutions using drupal.  Web sites with which we have helped Pride includes Cully & Sully’swebsite which won the 2007 Golden Spider “Best FMCG website” and “Grand Prix”.

 

 

 

Acoustic Images Ltd.– we designed and developed a fully featured PDA based remote control for the Turtle Beach AudioTron MP3 Hi-Fi separate. It communicated with the AudioTron over WiFi via HTTP, and was implemented in C# using the .NET Compact Framework.

 

 

 

Shevlin Technologies Ltd. (now Dyoptyka Ltd.) – Dyoptyka is an Irish technology start-up that is working on introducing Dynamic Optics (AO) technology to the projector and personal display industries.  At the heart of their technology is an electro-mechanical deformable mirror which can very quickly  change its optical properties in response an an electrical stimilus.

 

We performed the functional deisgn and specification of a real-rime ‘mirror controller’ to control the deformabable mirror, we implemented an associated sofware driver, API set and user interface.  The mirror controller was programmed via a USB connection.

 

 

We developed some novel techniques for performing real-time video processing using an NVIDIA Graphical Programming Unit (GPU).  Using these techniques we were able to perform real-time pixel based ‘depth’ filtering on a rendered video stream of 1600×600 pixel frames at 120 frames per second.  Implemented in C++ using the OpenGL Shading Language (GLSL) and OpenGL.

Services

The software services that we offer fall into three categories, click on a category to find out more.

 

 

We believe that the secret to the development of successful software lies in focusing on the need that gave rise to it in the first place, we try not to just get all caught up and lost in the process of creating that software. This is why we are as happy and proud to work on a Perl script as we are designing and implementing a large complex system; although the technical scope may be smaller, very often the client’s need is just as pressing.

 

 

 

Tools, Languages & Technologies

 

We are not zealous proponents of one software language, tool or technology over another – we simply use the most appropriate for the job at hand. In some cases this choice many be mandated by the client, while in others the choice will be made in order to achieve a ‘best fit’ with the overall project requirements. We believe it is possible to carry out high quality software engineering irrespective of the choice of software language and tools, we do not simply prefer one over the other, however here are a few that we often work with…

 

 

 

Please Contact us to find out how we can help you your Software Development needs.

Welcome