answersLogoWhite

0


Best Answer

Maintainability

Software should be written in such a way so that it can evolve to meet the changing needs of customers. This is a critical attribute because software change is an inevitable requirement of a changing business environment

Dependability and security

Software dependability includes a range of characteristics including reliability, security and safety. Dependable software should not cause physical or economic damage in the event of system failure. Malicious users should not be able to access or damage the system.

Efficiency

Software should not make wasteful use of system resources such as memory and processor cycles. Efficiency therefore includes responsiveness, processing time, memory utilisation, etc.

Acceptability

Software must be acceptable to the type of users for which it is designed. This means that it must be understandable, usable and compatible with other systems that they use.

Usability

Software must be usable by the users for which it was designed
There are many attributes of good software. It should be user-friendly and the layout should flow smoothly. Furthermore, it should work well and without any glitches.

User Avatar

Wiki User

9y ago
This answer is:
User Avatar
More answers
User Avatar

Wiki User

15y ago

Software products can vary in different fields. One thing good software products maintain is updates, which encourages the user to use it more often. Updates also allow the company or organization to fix any bugs or errors present in their software

For example, anti-virus software generally comes with updates and a lot of them have trials as well so as to let the user experience the software without actually buying it.

Another major factor that plays in is price against quality. If you are delivering a high priced product to the consumer, it should reach that standard and quality which the user expects.

Apart from that, many software products have issues with product registration since most have product keys which get in the hands of others and let others get their hands on it without actually having to buy them.

This answer is:
User Avatar

User Avatar

Wiki User

11y ago

Great Software Design would have all these characteristics, but that's almost never possible. Some of them contradict each other, so often we have to make tradeoffs. Anyway, here's the list:

  • Minimal complexity - if your design doesn't let you safely ignore most other parts of the program when you're immersed in one specific part, the design isn't doing its job. This is also known as avoiding complexity.
  • Ease if maintenance - design the system to be self-explanatory. Wheter it's yourself or a maintainance programmer that's going to sit down and fix a bug in a couple of months time it'll be worth it.
  • Loose coupling - Loose coupling means designing so that you hold connections among different parts of a program to a minimum. This means; encapsulation, and information hiding [read] and good abstractions in class interfaces. This also makes the stuff easier to test, which is a Good Thing.
  • Extensibility - You can change a piece of the system without affecting other pieces.
  • Reusability - Designing the system so that you can use pieces of it in other systems.
  • High fan-in - This refers to having a high number of classes that use a given class. This is good, the opposite on the other hand …
  • Low-to-medium fan-out - Refers to how many classes a given class use. If a class have a high fan-out (Code Complete says this is more than 7 classes, I don't want to be that specific) this is often an indication of that the class may be overly complex. And complexity is bad, remember?
  • Portability - How easy would it be to move the system to another environment?
  • Leanness - I guess this could be compared to KISS. Voiltaire said that a book is finished not when nothing more can be added but when nothing more can be taken away. Extra code will have to be developed, reviewed, tested, and considered when the other code is modified.
  • Stratification - designing "in layers". Can you view "one layer" of the code without thinking about the underlying layer? An example giving in Code Complete is if you're writing a modern system that has to use a lot of older, poorly designed code - you would want to write a layer of the new system that is responsible for interfacing with the old code.
  • Standard techniques - this means using design patterns whenever it is appropiate to do so. This way, if you say to another coder "Here I use the Factory pattern" he will instantly know what you're talking about if he knows the pattern. You do not want to be one of those "valued employees" who only write code that the "valued employee" can understand
This answer is:
User Avatar

User Avatar

Wiki User

11y ago

software are :-

1) Operational Characteristics

2) Transition Characteristics

3) Revision Characteristics

What Operational Characteristics should a software have ?These are functionality based factors and related to 'exterior quality' of software. Various Operational Characteristics of software are :

a) Correctness:The software which we are making should meet all the specifications stated by the customer.

b) Usability/Learnability:The amount of efforts or time required to learn how to use the software should be less. This makes the software user-friendly even for IT-illiterate people.

c) Integrity : Just like medicines have side-effects, in the same way a software may have a side-effect i.e. it may affect the working of another application. But a quality software should not have side effects.

d) Reliability : The software product should not have any defects. Not only this, it shouldn't fail while execution.

e) Efficiency : This characteristic relates to the way software uses the available resources. The software should make effective use of the storage space and execute command as per desired timing requirements.

f) Security : With the increase in security threats nowadays, this factor is gaining importance. The software shouldn't have ill effects on data / hardware. Proper measures should be taken to keep data secure from external threats.

g) Safety : The software should not be hazardous to the environment/life.

What are the Revision Characteristics of software ?These engineering based factors of the relate to 'interior quality' of the software like efficiency, documentation and structure. These factors should be in-build in any good software. Various Revision Characteristics of software are :-

a) Maintainability : Maintenance of the software should be easy for any kind of user.

b) Flexibility : Changes in the software should be easy to make.

c) Extensibility : It should be easy to increase the functions performed by it.

d) Scalability : It should be very easy to upgrade it for more work(or for more number of users).

e) Testability : Testing the software should be easy.

f) Modularity : Any software is said to made of units and modules which are independent of each other. These modules are then integrated to make the final software. If the software is divided into separate independent parts that can be modified, tested separately, it has high modularity.

Transition Characteristics of the software :a) Interoperability : Interoperability is the ability of software to exchange information with other applications and make use of information transparently.

b) Reusability : If we are able to use the software code with some modifications for different purpose then we call software to be reusable.

c)Portability : The ability of software to perform same functions across all environments and platforms, demonstrate its portability.

Importance of any of these factors varies from application to application. In systems where human life is at stake, integrity and reliability factors must be given prime importance. In any business related application usability and maintainability are key factors to be considered. Always remember in Software Engineering, quality of software is everything, therefore try to deliver a product which has all these characteristics and qualities.

This answer is:
User Avatar

User Avatar

Wiki User

11y ago

All professional software should have are:

1. Maintainability - one of the critical attributes, the software should support customization to meet the changing needs of a company.

2. Dependability - software should not cause any loss to the company/client in the event of a system failure.

3. Efficiency - effecient use of resources available such as hardware utilization, response time, etc.

4. Usability/Acceptablity - should be compatible to the type of users that use this system

Four others might include :

5. Reusability - software code can be reused in other systems

6. Distributable/Portable - can it be distributable over a network, or is it operable on multiple platforms

7. Inter-operable - ability to integrate with other software systems

8. Security - should be secure enough so that the code/characterstics and/or data that the software supports should not be compromised.

This answer is:
User Avatar

User Avatar

Wiki User

9y ago

There are number of attributes that define quality software. A quality software must be easy to use and maintain. A quality software must meet all the requirement of customers.

This answer is:
User Avatar

User Avatar

Zilan

Lvl 4
3y ago

There are number of attributes that define quality software. A quality software must be easy to use and maintain. A quality software must meet all the requirement of customers.

cutt.ly/9jYefNf

This answer is:
User Avatar

Add your answer:

Earn +20 pts
Q: What are four important attributes that all professional software should have?
Write your answer...
Submit
Still have questions?
magnify glass
imp
Related questions

Four important attributes that all software processes should have?

essential and important attributes that every software product must contain are the following: 1) maintainability 2)dependiabilty 3) efficiency 4) usabilty


What are four important attributes that all software product should havesuggest four other attributes which may be significant?

important attributes are maintainability, dependability, performance and usability. Other attributes that may be significant could be reusability (can it be reused in other applications), distributability (can it be distributed over a network of processors), portability (can it operate on multiple platforms) and inter-operability (can it work with a wide range of other software systems). Decompositions of the 4 key attributes e.g. dependability decomposes to security, safety, availability, etc.


Should I try professional tax comparison software?

It is totally up to you whether you should try a professional tax comparison software. A lot of times it is just easier to go in person and do these because it is less confusing.


Can tax software help me even if I owe the IRS?

If you owe the irs you should contact a tax professional.


What attributes should Michael Jordan have?

Was Michael Jordan Attributes


What to look for in professional tax software reviews?

When looking for support for tax season, it is important to read professional tax software reviews. Here, one can find out what different options have to offer. When reading these reviews, one needs to pay attention to price, ease of use, and the included features. After all, software should make easier and not more difficult. Reading a range of reviews will no doubt help a person organize his or her finances come tax season.


What attributes should I consider when buying a new car?

A record for reliability should be your first concearn. It isalso important to make sure you can afford the payments and the insurance for the vehicle.


What does database monitoring software do?

Database monitoring software should monitor your software. It should also process the health of your pc and issue alerts for any issues that should arise.Database monitoring software makes sure important information on hard drives does not get accidentally deleted. It often also password protects data.


What are three reasons why every health care professional should develop good writing skills?

One very important reason a health care professional should develop good writing skills is communication! Communication is an important skill in the medical field.


What are your three main attributes?

You will probably have more than three attributes. However, you should choose the attributes that also relate well with the position for which you are applying.


What are the criteria for software acceptability to an institution?

before one can say that a software is acceptable, there has to have been first a consensus between the developers and the owners of the software. but on a general basis, some of these should be in place: 1. portable: the software should be able to run on different platforms (operating systems) 2. Easy to understand: the software should be designed in such a way that other programmers can view and understand the logic of the program 3. flexibility: the software should be flexible enough to withstand changes from the computer hardware. 4. the most important and most neglected is that the software should have adequate documentation.


Why is software important in a medical industry?

An electronic medical billing and records software are very much important in the medical industry nowadays. As technology arises, paper documents and databases should now have an organized system to keep them.