Component-Based Modeling for Information Systems Reengineering

Component-Based Modeling for Information Systems Reengineering

Malleswara Talla (Concordia University, Canada) and Raul Valverde (Concordia University, Canada)
DOI: 10.4018/978-1-4666-0155-0.ch004
OnDemand PDF Download:
List Price: $37.50


An Information System can be envisioned as a set of interdependent components that provide the intended services. The component based modeling serves as a tool for collecting requirements of an Information System in user perspective and business perspective at various stages of software development. The chapter presents a methodology for component based modeling and development of an Information System, starting from the requirements definition phase, arriving at candidate components and creation of final components and their interfaces. The methodology aims at clarifying the intricate details and usage of an Information System via business type models and use-case models. The chapter presents the interaction diagrams in order to describe interactions among objects in systems perspective, and context diagrams for reflecting upon the business domain. Finally, the chapter proposes component replacement as a methodology for system reengineering, and model-view-control framework for component refinement and evolution in order to achieve a reengineered information system that reflects upon current requirements in business domain. The reengineering techniques proposed in this chapter can be applied to legacy systems to turn them into a component-oriented reengineered system.
Chapter Preview

1. Introduction

Recent trend in systems engineering is component-based using the technologies such as Component Object Model (COM), Common Object Request Broker Architecture (CORBA), Easy Java Simulations (EJS), etc. A component-based model is an interconnected set of software components that collectively represent an information system. A component is a modular piece of software that provides a service. Components communicate via interfaces. Component-based software architecture allows system design in a pragmatic manner, either for developing a new system or reengineering an existing system via reverse engineering where needed. The reengineering of a system is actually examining and modifying the system that has been in-use for a long time, to improve it and turn it up-to-date in terms of business rules and system performance needs. Reverse engineering is proposed in (Landry Chouambe, Benjamin Klatt, and Klaus Krogmann, 2008) when the interfaces are not explicit or composite components are not supported in a system. An adaptive component model can be dynamic and evolve with the changing needs via adaptation to different execution contexts (Xin Peng, Yijian Wu, Wenyun Zhao, 2007). The component-based modeling offers an opportunity to speed up the systems development via Commercial Off-The-Shelf (COTS), Open Source, or In-House components readily available for inclusion during design stage (Pasquale Ardimento, Giovanni Bruno, Danilo Caivano, Giuseppe Visaggio, 2007). The component based modeling also promotes an incremental specification validation and runtime adaptability in a distributed component information systems (Nasreddin Aoumeur, Kamel Barkaoui, Gunter Saake, 2007). An information system is a computer application that efficiently processes, stores and relays information within an organization and across its customers, suppliers, and all other public relationship organizations. The component-based models are so flexible that these models can support dynamic decisions in concurrent via component selection and reuse at runtime (Biplav Srivastava, 2004). Likewise, component based modeling resulted in efficient system design, development, and reengineering.

This chapter presents a methodology for component-based modeling and development of an information system, starting from the requirements definition phase, identification of components and their interfaces. The methodology uses business type models and use case models for understanding the requirements and identifying the system components. A business type model is a conceptual map of all data and information of interest for the information system. A use Case model is a description of steps that reflect upon a usage scenario or a system feature with respect to a system user or actor. The component interaction diagrams describe the interactions among objects in the systems perspective, and context diagrams for reflecting upon the business domain. While design follows a well defined methodology, system reengineering is proposed via component replacement strategies, where complexity of components is analyzed for appropriate resizing of components. The same methodology can be used for reengineering legacy information systems where parts of legacy system features can be turned into new components or replaced with existing components.

Complete Chapter List

Search this Book: