{"title":"Modular web service design for agility and maintainability with unity container","authors":"Indu Sofat, A. Mathrani, C. Scogings, Bo Li","doi":"10.1109/ICDMAI.2017.8073521","DOIUrl":null,"url":null,"abstract":"A key design consideration in software development is that models must be strongly cohesive yet be loose coupled to ensure reusability and maintainability for future deployments. Practice experiences can show how repeatable design concepts are represented and how new service offerings are developed within service-oriented architectures in a flexible manner. A web service architecture configuration (applied by an Australia-NZ car rental car company using distributed database architecture) is described in this paper. We demonstrate how flexibility can be incorporated in the design when new run-time dependencies are injected with version updates. The paper demonstrates the application of two object oriented principles — Inversion of Control and Dependency Injection — with the Microsoft .Net Unity Container libraries. The Unity Container pattern brings agility and ease in testability with a loosely coupled modular design. The paper contributes to design areas of service modularization and shares insights on how practitioners customize service architectures with new service dependencies.","PeriodicalId":368507,"journal":{"name":"2017 International Conference on Data Management, Analytics and Innovation (ICDMAI)","volume":"36 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2017-02-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2017 International Conference on Data Management, Analytics and Innovation (ICDMAI)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ICDMAI.2017.8073521","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0
Abstract
A key design consideration in software development is that models must be strongly cohesive yet be loose coupled to ensure reusability and maintainability for future deployments. Practice experiences can show how repeatable design concepts are represented and how new service offerings are developed within service-oriented architectures in a flexible manner. A web service architecture configuration (applied by an Australia-NZ car rental car company using distributed database architecture) is described in this paper. We demonstrate how flexibility can be incorporated in the design when new run-time dependencies are injected with version updates. The paper demonstrates the application of two object oriented principles — Inversion of Control and Dependency Injection — with the Microsoft .Net Unity Container libraries. The Unity Container pattern brings agility and ease in testability with a loosely coupled modular design. The paper contributes to design areas of service modularization and shares insights on how practitioners customize service architectures with new service dependencies.
软件开发中的一个关键设计考虑是,模型必须具有很强的内聚性,但又必须松耦合,以确保未来部署的可重用性和可维护性。实践经验可以显示如何表示可重复的设计概念,以及如何在面向服务的体系结构中以灵活的方式开发新的服务产品。本文描述了一个web服务体系结构配置(由一家使用分布式数据库体系结构的澳大利亚-新西兰汽车租赁公司应用)。我们将演示如何在版本更新中注入新的运行时依赖项时将灵活性纳入设计中。本文演示了两个面向对象原则——控制反转和依赖注入——在Microsoft . net Unity容器库中的应用。Unity容器模式通过松散耦合的模块化设计带来了敏捷性和易于测试性。本文对服务模块化的设计领域做出了贡献,并分享了从业者如何使用新的服务依赖来定制服务体系结构的见解。