robustness

Ubiquitous computing and magnetic interference

Imagine the radio of a car, does the electro magnetic fields through which the car goes through, have interference in the processing? It's easy to understand that a strong field can corrupt data. But what about the data under processment? Can it also be changed? If so how could you protect your code against this? (without electrial prot...

How do you evaluate reliability in software?

We are currently setting up the evaluation criteria for a trade study we will be conducting. One of the criterion we selected is reliability (and/or robustness - are these the same?). How do you assess that software is reliable without being able to afford much time evaluating it? Edit: Along the lines of the response given by KenG, t...

Best Practices for Robustness

I just came across this question about initializing local variables. Many of the answers debated simplicity/readability vs. robustness. As a developer of (remotely deployed) embedded systems, I always favor robustness and tend to follow several seemingly conflicting rules: Handle every error to the best of your ability in a way that ...

How do you manage external dependencies for your application?

There are many types of external dependencies. Interfacing with external applications, components or services (e.g. Outlook to send emails, TWAIN or WIA for scanning, ActiveX objects and Web services for various purposes, and so on). What is your strategy for making sure that your application is robust, and can run even when such extern...

Converting a filepath to a url securely and reliably

I'm using php and I have the following code to convert an absolute path to a url. function make_url($path, $secure = false){ return (!$secure ? 'http://' : 'https://').str_replace($_SERVER['DOCUMENT_ROOT'], $_SERVER['HTTP_HOST'], $path); } My question is basically, is there a better way to do this in terms of security / reliabilit...

Do you accept interfaces as constructor parameters?

Does Krzysztof's recommendation apply to constructors? If so, how do you implement it properly? We recommend using Collection, ReadOnlyCollection, or KeyedCollection for outputs and properties and interfaces IEnumerable, ICollection, IList for inputs. For example, public ClassA { private Collection<String> strings; publi...

Robust WCF service

What is the best way to ensure service robustness to prevent a service becoming unavailable, if it does become unavaliable is there a way of restarting the service? thanks in advance. ...

How to build a distributed robust linked list on several computers on the net?

I was thinking about building a program that use a raid(disk) like algorithms. If one computer dies. The next will step in. In it's place. And it need to scale from 1 - 1000 computers. I need some advice. What the name of the algorithms I'm need to learn? At one point I thought it was possible to build it on top of git. ...

Must web apps support back button?

I did a system test on a new ASP.NET app. I encountered several exceptions when using the BACK button in my browser (IE 7). I stated in a review-record that the web-app must support the use of a BACK button (or at least handle it gracefully with for example session-time out warnings). The teamlead did not agree with me as he stated that...

How do I make this regex more general, sometimes it works and sometimes it doesn't

I have the following regex that I am using in a java application. Sometimes it works correctly and sometimes it doesn't. <!-- <editable name=(\".*\")?> -->(.*)<!-- </editable> --> Sometimes I will have whitespace before/after it, sometimes there will be text. The same goes for the region within the tags. The main problem is that name...

Message Queue OSS

Is there a robust OSS alternative to enterprise products like MSMQ? I had a little research and found: Apache ActiveMQ (wiki) RabbitMQ (homepage) However, I can't tell if they are robust enough for implementation. Please share your thoughts about these products, or add some to the list. ...

How to verify external resources are available

How do you verify the state of the environment for a system without drastically increasing the scope of the system? I'm working on a system which talks to some remote servers. For example, it connects to a server and grabs logs of MyApp that ran on that server. These remote servers use a multitude of operating systems and are "manually"...

Still need checksum in application protocol when tcp/ip already has it?

I am designing an application protocol, and i am wondering if i still need include checksum in the protocol since tcp/ip already has checksum. what's your opinion? ...

Robust Code framework?

I hate writing code that makes my software more solid. This is something the framework should have done! So, is anybody aware of a code "enhancing" utility that solidifies the code? If I had to create something like this myself, it would work as follows: When you're compiling your code with a Debug flag, it would auto-magically add "sol...

Fail Fast vs. Robustness

Our product is a distributed system. The modules I work on are fairly new, quite rigorous, well tested. They were developed with recent best practices in mind. Other modules can be considered as legacy software. While I'm vigilant about everything that happens within modules I'm responsible for, I'm under constant pressure to work with ...

Atomic file copy under .NET

I am building a server app that copies files using System.IO.File.Copy(...) function. My files can be rather large, therefore, it has a fair chance that if the machine crashes, it happens during copying. After restarting the service, I should be able to pick up the copy tasks and continue. How can I detect if a copy has been successfull...

[Java] How to measure robustness?

I am working on a thesis about meassuring quality of a product. The product in this case is a website. I have identified several quality attributes and meassurement techniques. One quality attribute is "Robustness". I want to meassure that somehow, but I can't find any useful information how to do this in an objective manner. Is there...

How can I find out which version of emacs introduced a function?

I want to write a .emacs that uses as much of the mainline emacs functionality as possible, falling back gracefully when run under previous versions. I've found through trial and error some functions that didn't exist, for example, in emacs 22 but now do in emacs 23 on the rare occasion that I've ended up running my dotfiles under emacs ...

How can I programmatically tell if a caught IOException is because the file is being used by another process, without resorting to parsing the exception's Message property?

When I open a file, I want to know if it is being used by another process so I can perform special handling; any other IOException I will bubble up. An IOException's Message property contains "The process cannot access the file 'foo' because it is being used by another process.", but this is unsuitable for programmatic detection. What is...

Robust LINQ to XML query for sibling key-value pairs

(First post, please be gentle!) I am just learning about LINQ to XML in all its glory and frailty, trying to hack it to do what I want to do: Given an XML file like this - <list> <!-- random data, keys, values, etc.--> <key>FIRST_WANTED_KEY</key> <value>FIRST_WANTED_VALUE</value> <key>SECOND_WANTED_KEY</key> <value>SECOND_W...