• Title/Summary/Keyword: Software Architecture Life-Cycle

Search Result 35, Processing Time 0.03 seconds

An Extensive Model on Essential Elements of Software Architecture (소프트웨어 아키텍처의 구성요소에 대한 포괄적 모델)

  • Koh, Seok-Ha
    • Journal of Information Technology Applications and Management
    • /
    • v.19 no.2
    • /
    • pp.135-147
    • /
    • 2012
  • Software architecture, as a blueprint for the system, should provide a robust foundation for design, implementation, and maintenance, for communication and documentation, and for reasoning about important system properties. Software architecture plays a central role during the whole software life-cycle. There are so diverse definitions of the software architecture, however, and there is no common agreement about what software architecture is. Examining 27 'published' definitions of software architecture, we synthesize an extensive model on the essential elements of software architecture, which consists of components, interaction among components, well-formed structure, reasons, and various perspectives. Further, we explore the possibility of unifying diverse software architecture definitions into a software architecture life-cycle model.

Purposes, Results, and Types of Software Post Life Cycle Changes

  • Koh, Seokha;Han, Man Pil
    • Journal of Information Technology Applications and Management
    • /
    • v.22 no.3
    • /
    • pp.143-167
    • /
    • 2015
  • This paper addresses the issue how the total life cycle cost may be minimized and how the cost should be allocated to the acquirer and developer. This paper differentiates post life cycle change (PLCC) endeavors from PLCC activities, rigorously classifies PLCC endeavors according to the result of PLCC endeavors, and rigorously defines the life cycle cost of a software product. This paper reviews classical definitions of software 'maintenance' types and proposes a new typology of PLCC activities too. The proposed classification schemes are exhaustive and mutually exclusive, and provide a new paradigm to review existing literatures regarding software cost estimation, software 'maintenance,' software evolution, and software architecture from a new perspective. This paper argues that the long-term interest of the acquirer is not protected properly because warranty period is typically too short and because the main concern of warranty service is given to removing the defects detected easily. Based on the observation that defects are caused solely by errors the developer has committed for software while defects are often induced by using for hardware (so, this paper cautiously proposes not to use the term 'maintenance' at all for software), this paper argues that the cost to remove defects should not be borne by the acquirer for software.

Contextual Models of Business Application Software Architecture

  • Koh, Seokha;Ji, Kyoung-Sook
    • Journal of Information Technology Applications and Management
    • /
    • v.20 no.3
    • /
    • pp.1-18
    • /
    • 2013
  • Software architecture is the blueprint for a software system and should provide consistent guidelines for design, implementation, and maintenance throughout the entire lifecycle of the system. Components, interactions between the components, well-formed structure, reasons, and various perspectives reflecting various stakeholders' concerns changing through the phases of software lifecycle are the key elements of software architecture. The architect identifies and engages the stakeholders, understands and captures stakeholder's concerns including those regarding life cycle, and lets the concerns reflected in the architecture. To do so, architect should take into consideration various contextual elements regarding the system too. We make an extended list of the elements, especially those of business application software architecture, that the architect should take into consideration and construct a model of the relationships between the elements.

A Software Architecture Life Cycle Model Based on the Program Management Perspective : The Expanded Spiral Model (프로그램 관리 관점에 기반을 둔 소프트웨어 아키텍처 생애주기 모델 : 확장된 나선형 모델)

  • Koh, Seokha
    • Journal of Information Technology Applications and Management
    • /
    • v.20 no.2
    • /
    • pp.69-87
    • /
    • 2013
  • The expanded spiral model in this paper consists of five processes of architecture design, architectural construction, architectural maintenance, operation, and architectural management. The former four processes are executed alternatively, while the latter architectural management process is executed continuously interacting with the other processes during the whole life cycle of the system. The expanded spiral model provides a conceptual framework to sort discussions of architectural degeneration into those of product-oriented processes and those of management processes, making it possible to incorporate the models and body of knowledge about project and program management especially those of Project Management Institute, into discussions of architectural degeneration. A good architecture decomposes the software-intensive system into components mutually interacting in a well-formed structure. The architecture design process and the architectural construction process together create the object system with well-designed architecture. The architectural maintenance process prevents the implemented architecture deviate from the designed architecture. The architectural management process monitors the changes of requirements including architecturally significant requirements, supports the other processes to be executed reflecting various perspectives of stake-holders, and creates and documents the reasons of architectural decisions, which is considered as a key element of the architecture.

Basic Design of Software for Environmental Life-Cycle Assessment of Electric Motor Unit(EMU) (전동차 환경 전과정 평가(LCA)를 위한 소프트웨어 기본설계)

  • Kim Yong-Ki;Lee Jae-Young;Moon Kyeong-Ho;Mok Jai-Kyun;Eun Jong-Hwan
    • Proceedings of the KSR Conference
    • /
    • 2005.11a
    • /
    • pp.1033-1038
    • /
    • 2005
  • As a global effort to conservate the environment, life cycle assessment(LCA) which considers the environmental impact through the life cycle of a product, from acquiring of resources to scrapping, has been actively applied. The LCA is a tool to calculate quantitatively the environmental impacts caused by products or services through their life cycles. The list of numerous data should be analyzed, stored and conducted in order to assess the environmental impacts. Therefore, it is necessary to develop a software for LCA, which can perform the interpretation as well as the environment impact assessment to execute the analysis of such a large number of data effectively. At this time, for the existing some kinds of general LCA softwares, the information about all of input and output should be fed directly and the conclusion is deduced by linking to the database from the public authorized organizations. That makes it possible to evaluate the environmental grades accurately, but it is too slow and difficult for general users to operate and applied it into an electric motor unit(EMU). Therefore, in this research, the basic model was designed, which is based on construction of database structure of the software and organization of architecture, to develop an advanced software for EMU according to user and purpose of it by benchmarking of domestic and international softwares. The result of this study would be applied to develop the LCA software in the future.

  • PDF

A Study on the Effects of ICT Infrastructure Cost on Information System Life Cycle (정보시스템 수명주기에 인프라가 미치는 영향관계에 대한 연구)

  • Moon, Heoungkeun;Kim, Jeongho;Lee, Seogjun;Park, Sungsik
    • Journal of Information Technology and Architecture
    • /
    • v.10 no.3
    • /
    • pp.323-334
    • /
    • 2013
  • There are many studies on the project planning, project management and quality management. The cost of the new project takes only 20% of system's lifetime resource and the costs of the maintenance and infrastructure take more than 80%, so the study on the maintenance is much more important than the study on the new project. There has been many studies on the economic life cycle of the system using it's maintenance cost, but no studies on it's infrastructure cost. This paper provides how we can adapt infrastructure cost, which takes more than 40% of system's life cycle cost, to the economic life cycle of the system and its effects on the system's economic life cycle.

Designing Software Architecture for Reusing Open Source Software (오픈 소스 소프트웨어 재사용을 위한 소프트웨어 아키텍처 설계)

  • Choi, Yongseok;Hong, Jang-Eui
    • Journal of Convergence for Information Technology
    • /
    • v.7 no.2
    • /
    • pp.67-76
    • /
    • 2017
  • Along with shortening the life cycle of software utilization and supporting various types of user functions, the importance of software architecture development has been emphasized recently. If a software architecture is developed flexibly and reliably for expansion to support new functionality, it can quickly cope with new market demands. This paper proposes an architecture design method based on design recovery of open source software to reuse the software in the development of sustainable software system. When using open source software to develop a software system based on software architecture, we can develop a software system rapidly and also can improve the reliability of the system because we use the already proven open source software in the development.

Architecture Design to Reuse SNMP Agent Software (SNMP에이전트 소프트웨어의 재사용을 위한 구조 설계)

  • Gwon, Yeong-Hui;Kim, Yeong-Jip;Park, Ae-Sun;Jo, Eun-Gyeong;Gu, Yeon-Seol
    • The Transactions of the Korea Information Processing Society
    • /
    • v.7 no.6
    • /
    • pp.1803-1809
    • /
    • 2000
  • With the wide usage of the Internet, there use of pre-developed software is becoming important more and more in the development of various communication software. In this paper, the architecture to reuse the communication software is proposed. It is applied to the development of MIB-II system group of SNMP agent software for reusing. If Communication software is developed using this architecture, the software development life cycle will be abridged and the development cost will be reduced.

Requirements on a computer bank of knowledge Alexander S.Kleschev and Vasiliy A.Orlov

  • Kleschev, Alexander S.;Orlov, Vasiliy A.
    • Proceedings of the Korea Inteligent Information System Society Conference
    • /
    • 2001.01a
    • /
    • pp.249-255
    • /
    • 2001
  • Different kinds of information are used when solving tasks that arise in the life cycle of an applied knowledge based system (KBS). Many of these tasks are still under investigation. Their solving methods are often researched independently of each other due to complexity of the tasks. As a result, systems that realize these methods turn out to be incompatible and therefore could not be used together in the lifecycle of a KBS. The following problem arises here: how to support the full life cycle of a KBS. This paper introduces a class of computer knowledge banks that are intended to support the full life cycle of KBSs. Primary tasks that arise in the full life cycle of a KBS are analyzed. The architecture of a knowledge bank of the introduced class is presented, including an Information Content, a Shell of the Information Content and a Software Content. General requirements on these components are formulated on the basis of the analysis. These requirements depend on the current state of understanding in the life cycle of KBSs.

  • PDF

Product Line Development Process for Mobile Software based on Product Line (프로덕트 라인 기반의 모바일 소프트웨어 개발 프로세스)

  • Kim Haeng-Kon;Son Lee-Kyeong
    • The KIPS Transactions:PartD
    • /
    • v.12D no.3 s.99
    • /
    • pp.395-408
    • /
    • 2005
  • Ubiquitous computing spans a very broad range of technologies and needs very complicated user's requirements. There are many scenarios and technologies involved in ubiquitous computing. We need new software development tools and methodology to meet the requirements. A software product line is one of promising new technology for it. A software product line is a set of software intensive systems that share a common, managed set of features satisfying the specific needs of a particular market segment or mission and that are developed from a common set of core assets. Software architecture-based development is the exploration and maturation of the role of software architecture in the product line life cycle. In this thesis, we identify the foundational concepts underlying software product lines and the essential activities to develop the mobile application systems. So, we define, design, and implement the Mobile Application System Architecture(MASA) that includes the development process for applying into mobile business domain and encompass scoping and gathering requirements for the Product line based on Component Based Development(CBD).