Results 1 to 6 of 6
Like Tree3Likes
  • 1 Post By kneitzel
  • 1 Post By JosAH
  • 1 Post By gimbal2

Thread: How do software enterprises develop robust applications?

  1. #1
    Zarah is offline Senior Member
    Join Date
    Mar 2014
    Posts
    286
    Rep Power
    6

    Default How do software enterprises develop robust applications?

    When we write code, we write exception handlers for exceptions which might be thrown. In those handlers, we do stuff like e.printStackTrace(), e.getCause(), e.getErrorCode() etc. etc.

    And we have to deal with so so many exceptions.

    But I was just wondering about the applications from software enterprises. Even the small ones hardly fail. How do they manage to develop applications which are so robust?

  2. #2
    kneitzel is offline Senior Member
    Join Date
    Feb 2014
    Posts
    447
    Rep Power
    6

    Default Re: How do software enterprises develop robust applications?

    Hi,

    just a few points that get into my mind:
    - First of all you do not simply do things and catch exceptions. You test if something is possible or not before trying it. So you have checks in code which check if a File is really there, if it can be read or written, ....
    - If something fails, then you think about a backout plan. You was unable to save a file? What does this mean? Is there a useful reaction to it? (e.g. a text editor could display a save as dialog because the original file couldn't be written.)
    - You really do tests! That starts with so called Unit Tests and continues with Coded UI Tests. That way the developers can be quite confident that a change didn't break the system. But that is not the end. Before a release is done, the product will be fully tested by a test department.
    - You never ever have code that just someone wrote quickly. Before code goes into the product there are qualit checks e.g. Code Reviews.

    So you have a different view on it. It is no longer a quick small tool that is written. It is a product. It needs much more e.g. a package so that it can be installed easily on target platforms or some things are much more important e.g. technical details must be hidden (A user does not want to see a stacktrace! They want to see some information like: "Unable to write the file: permission denied!". So you can put Stacktraces and exception details into a logfile but not on the user screen!)

    In general it is nothing magic. They do the same stuff that you already do. They just take care of more things. But they are not alone and work in a bigger team with a lot of assistance (e.g. designers, testers, ...)

    With kind regards,

    Konrad.
    Zarah likes this.

  3. #3
    JosAH's Avatar
    JosAH is offline Moderator
    Join Date
    Sep 2008
    Location
    Voorschoten, the Netherlands
    Posts
    14,422
    Blog Entries
    7
    Rep Power
    28

    Default Re: How do software enterprises develop robust applications?

    Note that managing exceptional circumstances (catching Exceptions) is part of the design process; you don't just design your code as if everything runs as it's supposed to do, but you also design how, where and when your code handles all those nasty Exceptions; without lettting paranoia take over, i.e. if you can't handle an Exception, let it pass by and let something else handle it; if you know the caller of your code can handle Exceptions but not the one thrown at your code, catch the Exception and throw another one to your caller; etc. etc. designing and implementing exception handling is an artform.

    kind regards,

    Jos
    Zarah likes this.
    Build a wall around Donald Trump; I'll pay for it.

  4. #4
    gimbal2 is offline Just a guy
    Join Date
    Jun 2013
    Location
    Netherlands
    Posts
    5,114
    Rep Power
    12

    Default Re: How do software enterprises develop robust applications?

    Quote Originally Posted by Zarah View Post
    But I was just wondering about the applications from software enterprises. Even the small ones hardly fail. How do they manage to develop applications which are so robust?
    1) invest enough in the people building it
    2) invest enough in the development process
    3) invest enough in quality control

    Its not a rule what you say though, there is hardly any tool or program out there that doesn't need a whole slew of patches after release.
    Zarah likes this.
    "Syntactic sugar causes cancer of the semicolon." -- Alan Perlis

  5. #5
    Zarah is offline Senior Member
    Join Date
    Mar 2014
    Posts
    286
    Rep Power
    6

    Default Re: How do software enterprises develop robust applications?

    Thank you very much for the great insights!

  6. #6
    milovan is offline Senior Member
    Join Date
    Jan 2011
    Location
    Belgrade, Serbia
    Posts
    311
    Rep Power
    9

    Default Re: How do software enterprises develop robust applications?

    Actually, catching exceptions is a great way to make robust applications (benefit of try/catch mechanism in java). If something goes wrong in the code without try-catch block, the program will fail for sure. If something goes wrong in try block, you still have a chance to do something in catch block...

Similar Threads

  1. Replies: 2
    Last Post: 12-09-2013, 10:12 AM
  2. robust programs
    By dntcheatme in forum New To Java
    Replies: 6
    Last Post: 05-03-2011, 09:54 PM
  3. UML, robust code, structure questions
    By mac in forum New To Java
    Replies: 2
    Last Post: 12-23-2009, 12:06 AM
  4. how to develop struts applications in eclipse
    By suresh254597 in forum Web Frameworks
    Replies: 1
    Last Post: 11-07-2009, 07:54 PM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •