Continue to Site

Eng-Tips is the largest engineering community on the Internet

Intelligent Work Forums for Engineering Professionals

  • Congratulations waross on being selected by the Eng-Tips community for having the most helpful posts in the forums last week. Way to Go!

Software engineering...standards and practices

Status
Not open for further replies.

rotw

Mechanical
May 25, 2013
1,143
Hello,

Can someone throw some light on what are the codes/ specifications which are the most typical and authoritative in the field of software engineering?

I realize this is a vast subject/discussion and I would like to tentatively narrow it down. So what I have in mind is try to identify a set of standards which forms a baseline of requirement upon which any software can be engineered in a structured way and to quality. For instance, I suspect that to validate/ test a software - like any industrial product, and qualify that software for exploitation, you would need to set some acceptance criteria (a criteria that relates to the "use" - just to be clear here).

While doing some internet review, I came across this (as starting point):
ISO/IEC 9126-1 Software Product Quality Model
ISO 9241 - in particular part 11 which covers the "usability"

The above seems to apply irrespective of the size, type of the software, etc. Instead this seems to address the quality of the user experience.

What do you suggest? would the standard listed above be seen as something "over the top"?
Can you share some information based on your experience?

Thanks in advance


 
Replies continue below

Recommended for you

As far as I am aware, there is no one standard for quality of software. Certain industries have specific guidelines, and tools exist to try and meet them. For example, for safety-critical code, MISRA-C/C++ was developed to provide a basic set of rules that should be followed when programming in C/C++... but there is no law that states these guidelines must be followed.

Dan - Owner
URL]
 
IRstuff,
Thanks very much for the references.
By the way, what do you mean by "supposed" industry standard, can I infer that this is on the paper - in the field, implementation is another story?

 
I just meant that while the IEEE has intended it to be an industry standard, and has incorporated ISO/IEC 12207:1995, whether a particular company follows the standard is another matter altogether, as it is not mandatory, as it might be if it were for a military contract

TTFN (ta ta for now)
I can do absolutely anything. I'm an expert! faq731-376 forum1529 Entire Forum list
 
Where you might look is the Software Engineering Institute (SEI), the bunch that brought us CMMI.

Software development is much more difficult to validate. While a sky scraper can be analyzed by seeing that each floor can support those above it, software could allow a loose toilet handle in the penthouse to destroy the foundation and bring it all down.

The most promising techniques are white-board walk-throughs and fuzzing, where random inputs are applied to functions to see how or if they fail.

From SEI:

Work Areas

Acquisition Support
Cyber-Physical Systems
Measurement & Analysis
Performance & Dependability
Pervasive Mobile Computing
Process & Performance Improvement
Risk Management
Security & Survivability
Smart Grid
Software Architecture
Software Product Lines
System of Systems
Ultra-Large-Scale Systems

 
Thanks this was insightful (and also painful -edit: in the sense of opening a pandora´s box, probably unnecessarily)..
Maybe should stay away from the whole concept of "standard" ; probably something like "guidelines" or even "rules of thumb" would be more appropriate.

 
Haven't yet worked at (or known anyone who worked at) a company who follows any form of standard (such as the IEEE) for software development. I'm going to take a wild guess and say that will hold true throughout the rest of my career. It's difficult to standardize something that is so fluid in the real world.

Dan - Owner
URL]
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor