You are here

Patterns for Enterprise Application Design and Development

Download pdf | Full Screen View

Date Issued:
2017
Summary:
Designing and developing enterprise applications is a complex and resource intensive process, as it often must address thousands of requirements. At the same time, the software architecture of most enterprise applications at their core have many features and structures in common. Designers from different teams do not normally share design elements because of the competitive and proprietary nature of development, and enterprise applications design and development teams end up re-inventing the wheel when tackling a new product. My objective is to formulate new design patterns for enterprise application architectures that assist software architects with reusable solutions to improve design quality and productivity. I achieve this by presenting seven patterns, each providing a solution to a specific challenge or a problem that is common to many enterprise applications. The Business Object Pattern provides a generic approach to design extensible Business Objects and their frameworks for enterprise applications. The pattern covers a number of concepts, including the Dynamic business object, the Static business object, constraints for validity, editability, and attribute visibility, as well as the mechanisms for workflow. The Business Object Life Cycle Pattern introduces the concept of stages which comprise a business object’s life cycle, and their relation to the business object’s integrity during that life cycle. The Simple Change History Pattern provides a concept of enforcing record keeping of the owner and date of the last change performed on a given business data object. The Business Data Object Versioning Pattern offers a solution by introducing a new version of a given business data object which allows for preservation of the original data. The Change History Record Pattern defines a solution for cases when there is a need to capture detailed information about the changes performed on a given business object, such as who made the changes, when, and what changes were made. The Permission Based Granular Access Control Pattern offers a basic approach for access control to objects and their attributes. Finally, the Money Object Pattern offers a language neutral approach to internationalization and globalization of business applications which require multi-currency capability. It is hoped that applying these patterns will provide many advantages, ranging from quicker delivery times to a more reliable software, and ultimately help achieve a systematic approach to designing and building complex enterprise applications.
Title: Patterns for Enterprise Application Design and Development.
170 views
52 downloads
Name(s): Rubis, Ruslan, author
Cardei, Ionut E., Thesis advisor
Florida Atlantic University, Degree grantor
College of Engineering and Computer Science
Department of Computer and Electrical Engineering and Computer Science
Type of Resource: text
Genre: Electronic Thesis Or Dissertation
Date Created: 2017
Date Issued: 2017
Publisher: Florida Atlantic University
Place of Publication: Boca Raton, Fla.
Physical Form: application/pdf
Extent: 155 p.
Language(s): English
Summary: Designing and developing enterprise applications is a complex and resource intensive process, as it often must address thousands of requirements. At the same time, the software architecture of most enterprise applications at their core have many features and structures in common. Designers from different teams do not normally share design elements because of the competitive and proprietary nature of development, and enterprise applications design and development teams end up re-inventing the wheel when tackling a new product. My objective is to formulate new design patterns for enterprise application architectures that assist software architects with reusable solutions to improve design quality and productivity. I achieve this by presenting seven patterns, each providing a solution to a specific challenge or a problem that is common to many enterprise applications. The Business Object Pattern provides a generic approach to design extensible Business Objects and their frameworks for enterprise applications. The pattern covers a number of concepts, including the Dynamic business object, the Static business object, constraints for validity, editability, and attribute visibility, as well as the mechanisms for workflow. The Business Object Life Cycle Pattern introduces the concept of stages which comprise a business object’s life cycle, and their relation to the business object’s integrity during that life cycle. The Simple Change History Pattern provides a concept of enforcing record keeping of the owner and date of the last change performed on a given business data object. The Business Data Object Versioning Pattern offers a solution by introducing a new version of a given business data object which allows for preservation of the original data. The Change History Record Pattern defines a solution for cases when there is a need to capture detailed information about the changes performed on a given business object, such as who made the changes, when, and what changes were made. The Permission Based Granular Access Control Pattern offers a basic approach for access control to objects and their attributes. Finally, the Money Object Pattern offers a language neutral approach to internationalization and globalization of business applications which require multi-currency capability. It is hoped that applying these patterns will provide many advantages, ranging from quicker delivery times to a more reliable software, and ultimately help achieve a systematic approach to designing and building complex enterprise applications.
Identifier: FA00004966 (IID)
Degree granted: Dissertation (Ph.D.)--Florida Atlantic University, 2017.
Collection: FAU Electronic Theses and Dissertations Collection
Note(s): Includes bibliography.
Subject(s): Dissertations, Academic -- Florida Atlantic University
Enterprise application integration (Computer systems)
Software architecture--Development.
Software Design.
Application software--Design.
Patterns.
Held by: Florida Atlantic University Libraries
Sublocation: Digital Library
Links: http://purl.flvc.org/fau/fd/FA00004976
Persistent Link to This Record: http://purl.flvc.org/fau/fd/FA00004966
Use and Reproduction: Copyright © is held by the author, with permission granted to Florida Atlantic University to digitize, archive and distribute this item for non-profit research and educational purposes. Any reuse of this item in excess of fair use or other copyright exemptions requires permission of the copyright holder.
Use and Reproduction: http://rightsstatements.org/vocab/InC/1.0/
Host Institution: FAU
Is Part of Series: Florida Atlantic University Digital Library Collections.