simplicable technology guide
capabilities of enterprise software
The 27 Capabilities of Enterprise Software
posted by John Spacey, May 12, 2011
What is the difference between low and high quality enterprise software? What is the difference between modern and legacy software?
There are 27 basic capabilities of software that help to measure the maturity and quality of software:
1. UsabilityEase of use and learnability.
2. AccessibilityDegree of availability to as many people as possible.
3. Security VulnerabilitiesSecurity vulnerabilities in the software such as bugs or design flaws.
4. SecurabilityThe ability to enforce permissions for operations and resources.
5. StabilitySoftware uptime.
6. OpennessTransparency of source code, architecture, design, APIs, interfaces, standards and documentation.
7. InteroperabilityThe ability to interact and exchange information with other software.
8. Standards ComplianceCompliance with established norms, customs, conventions, agreements, processes, practices and methods. Standards may be in the business, technical or regulatory domain.
9. FunctionalityWhat the software can do.
10. AccuracyThe precision or correctness of computed values, estimates and predictions.
11. CredibilityThe trustworthiness and expertise of the organization responsible for creating and maintaining the software.
12. RelevanceThe degree to which the software satisfies a need or desire.
13.UbiquityThe popularity of the software.
14. OperabilityThe complexity, costs and risks associated with operating the software.
15. DeployabilityHow easy it is to install the software and deploy updates.
16. RobustnessThe ability of software to cope with errors. Robust software handles errors in a controlled fashion and continues to operate normally. Also known as fault-tolerance or graceful degradation.
17. ResiliencyHow easily the software recovers from a disaster.
18. MaintainabilityHow easily defects and design flaws can be fixed.
19. ExtensibilityThe ability of the software to be extended in the future. Extensible software provides effective hooks and mechanisms for adding new capabilities.
20. ReusabilityThe degree to which segments or components of the software can be used to build something new.
21. TestabilityHow easily the software can be tested.
22. TraceabilityThe ability to determine the chronological history of events and data access. Important for audits and security.
23. PerformanceSoftware speed — how quickly the software can reply to requests under a particular workload.
24. ScalabilityThe ability of software to handle higher loads when allocated more resources.
25. MultitenancyA single instance of software that can be shared by multiple tenants.
Multitenant systems provide virtual partitioning of data and configuration. Often the user interface and functionality of the software can be customized for each tenant.
26. MobilityAccessible from many locations using a variety of devices (mobile devices, public terminals etc..).
27. SimplicityThe overall complexity of the software — simple software has a lower total cost of ownership.
A guide to information security including cheat sheets, best practices and checklists.|
Recently on Simplicable
posted by Anna Mar
Modern technology customers and industry insiders are faced with a constant stream of change. Human ability to adapt to this pace of change is remarkable.
posted by Anna Mar
Enterprise architects are leaders. They're near the top of the technical food chain in any organization. As leaders, there are a lot of people in the organization EAs can help.
posted by Anna Mar
When your organization looks internally for a new CIO there are four usual suspects.
posted by John Spacey
A guide to enterprise software that covers a wide variety of critical enterprise tools.