Architecture Principles for Enterprise Software and Mobile Application Development

Architecture Principles for Enterprise Software and Mobile Application Development

Copyright: © 2023 |Pages: 20
DOI: 10.4018/978-1-6684-8582-8.ch001
OnDemand:
(Individual Chapters)
Available
$37.50
No Current Special Offers
TOTAL SAVINGS: $37.50

Abstract

When it comes to software or mobile application development, it is only possible to make it successful with the help of a good architecture and the principles that govern it. It has been found that applications that use the principles of architecture are good at scalability, maintainability, availability, interoperability, and so on. The development of mobile applications should be based on SOLID principles which leads to high-quality code without any additional effort on the part of the developer. The architecture process focuses on the design of both functional and non-functional requirements for a system. By designing the architecture of a system, one can gain a deeper understanding of the bigger picture of the system as a whole. Well-designed architecture and principles play a critical role in enabling developers to build scalable and high-quality applications.
Chapter Preview
Top

The Key Non- Functionalrequirements Are

Figure 1.

Non-functional requirements

978-1-6684-8582-8.ch001.f01

Availability

Availability refers to the likelihood of a user being able to access a specific system at any given moment. It can be quantified by calculating the percentage of successful requests or the percentage of time the system is operational during a specified period. For instance, users may have access to the system for 99% of the time in a month. Availability is a crucial business requirement, but it also necessitates estimating the reliability and maintainability of the system to define it. Employing Multi Cluster or Blue Green deployment ensures that the application is available at all times (Behera et al. 2022). In order to achieve high availability, a system must be designed with redundancy and fault tolerance. Various methods can be used to achieve this, including redundant hardware, software, and network connections; failover mechanisms can also be used. Automated testing and system monitoring can be used to measure availability. In order to identify areas for improvement, it is important to regularly monitor and measure availability (Behera,. 2023) (Behera et al. 2022).

A software system's availability is influenced by many factors, including its architecture, its scalability, and its ability to handle peak usage periods. Creating highly available software systems makes them more reliable, resilient, and valuable to their users. The availability of a software system affects its overall effectiveness and reliability. High-availability software systems are more likely to be adopted and used by their users, and to deliver the desired benefits and outcomes (Aviv, I. T. Z. H. A. K. et al. 2023)). High availability can improve the effectiveness, value, and effectiveness of software systems (Bass et al. 2003).

Complete Chapter List

Search this Book:
Reset