• Title/Summary/Keyword: Software architecture

Search Result 1,978, Processing Time 0.028 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.

A study on the Maturity Appraisal Model of Software Architecture (소프트웨어 아키텍처의 성숙 평가 모델에 관한 연구)

  • Kim Kyung-Hee
    • Journal of the Korea Society of Computer and Information
    • /
    • v.10 no.6 s.38
    • /
    • pp.167-176
    • /
    • 2005
  • The software architecture is an essential part of a software-intensive system. In addition, the architecture evaluation is a very important process and a cheap way to avoid a software disaster. This article introduces a new method to evaluate architecture by maturity levels. Maturity Models which are about software and software process, have gained wide scale acceptance over the last decade. We are applying these techniques to the software architecture and propose SW(Software Architecture Maturity appraisal Model). SAMM consists of six-levels. We expect that our maturity model SAMM describe the requirements that any architecture must have in order to improve its software architecture design and constitute a proven architecture within which to manage the improvement efforts. We can reduce our effort to design architecture, have a guideline to construct the high qualify architecture with SAMM, and evaluate architecture and make architecture level.

  • PDF

Fundamental Principles for Software Architecture Design (소프트웨어 아키텍처 설계의 근본 원리들)

  • Kang, Sungwon
    • Journal of Software Engineering Society
    • /
    • v.23 no.4
    • /
    • pp.125-139
    • /
    • 2010
  • This paper first examines the notion of software and the importance of software development and then presents twelve fundamental principles for software architecture design as the key enabling technology for effective software development. This paper divides design steps into four groups, i.e. analyzing the problem, deciding architecture modeling methods, architecture design process and architecture evaluation. Then it identifies the principles within and across the various steps of software architecture design and explains their roles.

  • PDF

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.

UML based Documentation for GLORY Software Architecture (UML을 응용한 GLORY 소프트웨어 아키텍처의 표현)

  • Kung, Sang-Hwan
    • Journal of the Korea Academia-Industrial cooperation Society
    • /
    • v.10 no.8
    • /
    • pp.1970-1976
    • /
    • 2009
  • It is more emphasized on the software architecture recently, as the scale of a software becomes huge and the need of the software management becomes more dynamic. Software architecture is a representation of structures of software framework just like the blueprint of building architecture. In order to describe software components and their relationships accurately and entirely, software architecture is documented in some different views, by using of modeling tools. UML(Unified Modeling Language) is a software modeling tool recently used for documentation of software and as well as software architecture. Nevertheless, what we have to agree with is that UML is not easy to use and its standard changed continuously. And also the documentation with UML is found some burden because of its difficulties in learning and using. This inconvenience enforces us to purchase and use commercial tool for UML. The study introduces the architecture views refined from 4+1 Views for architecture design and shows how to represent architecture views for software architecture. Especially, we simplifies UML diagrams for the purpose of focusing on architecture views and facile manipulation. At the end, we add the evaluation on the refined architecture views as well as refined UML diagram.

A Software Architecture Cost Estimation Method to Support Architecture Evaluation with Consideration of Cost (비용을 고려하고 아키텍처 평가를 지원하는 소프트웨어 아키텍처 비용 추정 기법)

  • Choue, Si-Ho;Lee, Jun-Ha;Park, Soo-Yong
    • Journal of KIISE:Software and Applications
    • /
    • v.37 no.2
    • /
    • pp.95-103
    • /
    • 2010
  • Improving the competitiveness of software products in the market involves procuring the means to design software architecture that deliver qualities necessitated by stakeholder requirements within allocated budget, thereby improving the cost-effectiveness of the end product. Currently, software architecture evaluation methods are used to predict and review qualities inherent in software architecture designs and to choose a candidate architecture that delivers desired qualities. Existing software architecture evaluation methods, however, fail to address the cost considerations dependent on the architecture chosen for product implementation. In this paper we suggest a cost estimation method for software architecture which adapts the cost drivers in the software cost estimation model COCOMO II to support cost estimation during architecture evaluation. The suggested method can be performed in coordination with existing software architecture evaluation efforts and supplements existing architecture evaluation techniques with guidelines for identifying and evaluating cost drivers in candidate software architectures without incurring extra overhead. The accuracy of the cost estimation using the suggested method is verified through application of the method to the architecture candidates used in RPS (Robot Patrol System), a surveillance embedded system.

A Software Architecture for URC Robots using a Context-Aware Workflow and a Service-Oriented Middleware (상황인지 워크플로우와 서비스 지향 미들웨어를 이용한 URC 로봇 소프트웨어 아키텍처)

  • Kwak, Dong-Gyu;Choi, Jong-Sun;Choi, Jae-Young;Yoo, Chae-Woo
    • The Journal of Korea Robotics Society
    • /
    • v.5 no.3
    • /
    • pp.240-250
    • /
    • 2010
  • A URC, which is a Ubiquitous Robot Companion, provides services to users in ubiquitous computing environments and has advantage of simplifying robot's hardware and software by distributing the complicated functionality of robots to other system. In this paper, we propose SOWL, which is a software architecture for URC robots and a mixed word of SOMAR and CAWL. SOWL keeps the advantages of URC and it also has the loosely-coupled characteristics. Moreover it makes it easy to develop of URC robot software. The proposed architecture is composed of 4 layers: device software, robot software, robot application, and end user layer. Developers of the each layer is able to build software suitable for their requirements by combining software modules in the lower layer. SOWL consists of SOMAR and CAWL engine. SOMAR, which is a middleware for the execution of device software and robot software, is based on service-oriented architecture(SOA) for robot software. CAWL engine is a system to process CAWL which is a context-aware workflow language. SOWL is able to provide a layered architecture for the execution of a robot software. It also makes it possible for developers of the each layer to build module-based robot software.

Study for Confirmation of Configuration Component of Architecture Interaction (소프트웨어 연동을 위한 아키텍처간의 구성요소 확인에 관한 연구)

  • Lee, Eun-Ser
    • KIPS Transactions on Software and Data Engineering
    • /
    • v.5 no.10
    • /
    • pp.471-476
    • /
    • 2016
  • Software architecture is depend on software quality for in the design phase. Architecture interoperability have a effect in the software quality. As a result, the software quality will deteriorate. Therefore, we are need to check that configuration component for a flexible architecture and quality in the architecture. In this paper, we are suggest that configuration component of the architecture interaction.

Bridging the Gap: Follow-up Strategies for Effective Software Architecture Implementation

  • Abdullah A H Alzahrani
    • International Journal of Computer Science & Network Security
    • /
    • v.24 no.7
    • /
    • pp.1-10
    • /
    • 2024
  • Software architecture are High-level design decisions shaping a software system's components, structure, and interactions. It can be a blueprint for development, evolution, and ongoing maintenance. This research investigates the communication practices employed by software architects and developers to ensure adherence to the designed software architecture. It explores the factors influencing the selection of follow-up methods and the impact of follow-up frequency on successful implementation. Findings reveal that formalized follow-up procedures are not yet a ubiquitous element within the software development lifecycle. While electronic communication, particularly email, appears to be the preferred method for both architects and developers, physical and online meetings are utilized less frequently. Interestingly, the study suggests a potential confidence gap, with architects expressing concerns about developers' ability to faithfully implement the architecture. This may lead to architects providing additional clarification. Conversely, while most developers reported confidence in their software knowledge, overly detailed architecture documentation may pose challenges, highlighting the need for architects to consider alternative communication strategies. A key limitation of this study is the sample size, restricting the generalizability of the conclusions. However, the research offers valuable preliminary insights into the communication practices employed for architecture implementation, paving the way for further investigation with a larger and more diverse participant pool.