• 제목/요약/키워드: Software Requirements Engineering Process

검색결과 191건 처리시간 0.026초

비기능적 요구사항을 지원하는 소프트웨어 개발 프로세스 (A Software Development Process Supporting Non-Functional Requirements)

  • 정효택;주상현
    • 정보통신설비학회논문지
    • /
    • 제9권1호
    • /
    • pp.13-18
    • /
    • 2010
  • As the importance of non-functional requirements has increased, many researchers have become interested in the software development process for non-functional requirements including the notation, modeling, and assessment of non-functional requirements. However, the characteristics of non-functional requirements are so sophisticated and there are many topics which have not been solved until now. In order to address one of the unsolved problems, we propose a systematic software development process to support the management of non-functional requirements. The process consists of six steps, each of which is composed of detailed activities. Using the proposed process, the non-functional requirements can be managed and modeled more effectively and systematically than previous ones.

  • PDF

소프트웨어 프로덕트 라인에서 체계적인 요구사항 변경 관리 방법 (An Approach to Managing Requirements Change Systematically in Software Product Lines)

  • 박지현;문미경;염근혁
    • 한국정보과학회논문지:소프트웨어및응용
    • /
    • 제32권12호
    • /
    • pp.1164-1177
    • /
    • 2005
  • 현재 소프트웨어 개발 공정이 복잡해짐에 따라 개발하는 소프트웨어의 요구사항 역시 복잡해지고 있으며 요구사항 관리에 많은 노력이 소요되고 있다. 그러나 소프트웨어의 요구사항을 처음부터 모두 정의하는 것은 사실상 불가능하며, 개발이 진행되면서 환경은 변하기 마련이다. 또한 요구사항 변경은 개발보다 많은 비용이 소요되므로 체계적인 변경 관리를 통해 변경에 민첩하게 대응하고 관리되어야 한다. 본 논문에서는 소프트웨어 프로덕트 라인에서 요구사항 변경 관리 프로세스를 기반으로 체계적인 요구사항 변경 관리 방법을 제시한다. 소프트웨어 프로덕트 라인(software product lines)에서 어플리케이션의 요구사항은 도메인 요구사항과 밀접하게 관련되어 있으므로 어플리케이션 공학(application engineering) 단계에서 요구사항 변경이 발생했을 경우 도메인 공학(domain engineering) 단계를 이용하여 변경을 분석하고 관리하는 방법을 제시한다. 이러한 일관된 변경 관리를 통해 변경 범위를 분석하고, 변경 대처방안을 제시함으로써 변경 처리 결정을 내리는데 도움을 주며 한번 요청된 변경이 완벽하게 처리되도록 도와주어 같은 변경의 반복 요청을 막을 수 있기 때문에 잠재된 변경 비용을 절약할 수 있다.

A DEVELOPMENT FRAMEWORK FOR SOFTWARE SECURITY IN NUCLEAR SAFETY SYSTEMS: INTEGRATING SECURE DEVELOPMENT AND SYSTEM SECURITY ACTIVITIES

  • Park, Jaekwan;Suh, Yongsuk
    • Nuclear Engineering and Technology
    • /
    • 제46권1호
    • /
    • pp.47-54
    • /
    • 2014
  • The protection of nuclear safety software is essential in that a failure can result in significant economic loss and physical damage to the public. However, software security has often been ignored in nuclear safety software development. To enforce security considerations, nuclear regulator commission recently issued and revised the security regulations for nuclear computer-based systems. It is a great challenge for nuclear developers to comply with the security requirements. However, there is still no clear software development process regarding security activities. This paper proposes an integrated development process suitable for the secure development requirements and system security requirements described by various regulatory bodies. It provides a three-stage framework with eight security activities as the software development process. Detailed descriptions are useful for software developers and licensees to understand the regulatory requirements and to establish a detailed activity plan for software design and engineering.

Safety-critical 소프트웨어 적용을 위한 소프트웨어 개발 절차 (A Software Engineering Process for Safety-critical Software Application)

  • Kang, Byung-Heon;Kim, Hang-Bae;Chang, Hoon-Seon;Jeon, Jong-Sun;Park, Suk-Joon
    • Nuclear Engineering and Technology
    • /
    • 제27권1호
    • /
    • pp.84-95
    • /
    • 1995
  • Application of computer software to safety-critical systems is on the increase. To be successful, the software must be designed and constructed to meet the functional and performance requirements of the system. For safety reason, the software must be demonstrated not only to meet these requirements, but also to operate safely as a component within the system. For longer-term cost consideration, the software must be designed and structured to ease future maintenance and modifications. This paper present a software engineering process for the production of safety-critical software for a nuclear power plant The presentation is expository in nature of a viable high quality safety-critical software development. It is based on the ideas of a rational design process and on the experience of the adaptation of such process in the production of the safety-critical software for the Shutdown System Number Two of Wolsong 2, 3 & 4 nuclear power generation plants. This process is significantly different from a conventional process in terms of rigorous software development phases and software design techniques. The process covers documentation, design, verification and testing using mathematically precise notations and highly reviewable tabular format to specify software requirements and software design. These specifications allow rigorous, stepwise verification of software design against software requirements, and code against software design using static analysis. The software engineering process described in this paper applies the principle of information-hiding decomposition in software design using a modular design technique so that when a change is' required or an error is detected, the affected scope can be readily and confidently located. It also facilitates a sense of high degree of confidence in the ‘correctness’ of the software production, and provides a relatively simple and straightforward code implementation effort.

  • PDF

A Document-Driven Method for Certifying Scientific Computing Software for Use in Nuclear Safety Analysis

  • Smith, W. Spencer;Koothoor, Nirmitha
    • Nuclear Engineering and Technology
    • /
    • 제48권2호
    • /
    • pp.404-418
    • /
    • 2016
  • This paper presents a documentation and development method to facilitate the certification of scientific computing software used in the safety analysis of nuclear facilities. To study the problems faced during quality assurance and certification activities, a case study was performed on legacy software used for thermal analysis of a fuelpin in a nuclear reactor. Although no errors were uncovered in the code, 27 issues of incompleteness and inconsistency were found with the documentation. This work proposes that software documentation follow a rational process, which includes a software requirements specification following a template that is reusable, maintainable, and understandable. To develop the design and implementation, this paper suggests literate programming as an alternative to traditional structured programming. Literate programming allows for documenting of numerical algorithms and code together in what is termed the literate programmer's manual. This manual is developed with explicit traceability to the software requirements specification. The traceability between the theory, numerical algorithms, and implementation facilitates achieving completeness and consistency, as well as simplifies the process of verification and the associated certification.

설계 요건 중심의 인간-시스템 인터페이스 개발 프로세스 (Design Requirements-Driven Process for Developing Human-System Interfaces)

  • 함동한
    • 대한안전경영과학회지
    • /
    • 제10권1호
    • /
    • pp.83-90
    • /
    • 2008
  • Development of human-system interfaces (HSI) supporting the interaction between human and automation-based systems, particularly safety-critical sociotechnial systems, entails a wide range of design and evaluation problems. To help HSI designers deal with these problems, many methodologies from traditional human-computer interaction, software engineering, and systems engineering have been applied; however, they have been proved inadequate to develop cognitively well engineered HSI. This paper takes a viewpoint that HSI development is itself a cognitive process consisting of various decision making and problem solving activities and then proposes a design requirements-driven process for developing HSI. High-level design problems and their corresponding design requirements for visual information display are explained to clarify the concept of design requirements. Lastly, conceptual design of software system to support the requirements-driven process and designers' knowledge management is described.

Your Opinions Let us Know: Mining Social Network Sites to Evolve Software Product Lines

  • Ali, Nazakat;Hwang, Sangwon;Hong, Jang-Eui
    • KSII Transactions on Internet and Information Systems (TIIS)
    • /
    • 제13권8호
    • /
    • pp.4191-4211
    • /
    • 2019
  • Software product lines (SPLs) are complex software systems by nature due to their common reference architecture and interdependencies. Therefore, any form of evolution can lead to a more complex situation than a single system. On the other hand, software product lines are developed keeping long-term perspectives in mind, which are expected to have a considerable lifespan and a long-term investment. SPL development organizations need to consider software evolution in a systematic way due to their complexity and size. Addressing new user requirements over time is one of the most crucial factors in the successful implementation SPL. Thus, the addition of new requirements or the rapid context change is common in SPL products. To cope with rapid change several researchers have discussed the evolution of software product lines. However, for the evolution of an SPL, the literature did not present a systematic process that would define activities in such a way that would lead to the rapid evolution of software. Our study aims to provide a requirements-driven process that speeds up the requirements engineering process using social network sites in order to achieve rapid software evolution. We used classification, topic modeling, and sentiment extraction to elicit user requirements. Lastly, we conducted a case study on the smartwatch domain to validate our proposed approach. Our results show that users' opinions can contain useful information which can be used by software SPL organizations to evolve their products. Furthermore, our investigation results demonstrate that machine learning algorithms have the capacity to identify relevant information automatically.

웹 기반의 요구사항 관리를 위한 프로세스 모델 설계 (A Design of Process Model for Web-based Requirements Management)

  • 황만수;민태홍
    • 한국컴퓨터산업학회논문지
    • /
    • 제4권4호
    • /
    • pp.517-522
    • /
    • 2003
  • 소프트웨어 개발환경이 대형화, 복잡화됨에 따라 개발 생명주기의 각 단계에서 발생하는 요구사항은 기술적, 관리적 측면에서 많은 영향을 받게 되었다. 따라서 본 연구에서는 요구공학과 CMM에서 제시하는 활동을 기반으로 완전성과 일치성을 가진 안정적인 요구사항의 생성 및 관리 등을 포함하는 총체적인 프로세스와 활동에 대한 공학적 접근을 제시하여 전체 소프트웨어 개발비용과 위험부담을 경감시키며 품질향상을 이룰 수 있도록 한다.

  • PDF

소프트웨어 요구공학에 대한 처리 시스템 정립 (An Establishment of the Process System for Software Requirements Engineering)

  • 이상운;최명복
    • 한국인터넷방송통신학회논문지
    • /
    • 제14권1호
    • /
    • pp.37-49
    • /
    • 2014
  • 본 논문은 지금까지 제안된 요구사항 공학과정을 체계적으로 분석하고 최적의 과정을 제안하였다. 세부적으로는 요구사항 추적관리와 기원을 살펴보고, 요구사항 명세서를 도출하는 다양한 출발점 (고객이 제시한 요구사항 명세서로부터, 요구사항 도출로부터, 문제분석으로부터, 비즈니스 모델링부터)을 고찰하였다. 또한, 이해 당사자 욕구 도출, 문제 분석, 비즈니스 모델링의 수행 우선순위에 대한 다양한 방법을 고찰하였다. 이들 결과로부터 "전산화 목표 파악, 비즈니스 프로세스 파악, 비즈니스 모델링, 문제분석, 이해당사자 욕구 도출, 시스템 특징 도출, 요구사항 도출, 요구사항 명세와 검증" 과정을 수행하는 것이 가장 체계적으로 요구사항 명세서를 도출하는 과정임을 제안하였다. 이 방법을 적용하면 개발단계에서 관리하면 개발단계에서의 요구사항 변경을 최소화 시키고 프로젝트 성공률을 향상시킬 수 있으며, 고객의 만족도도 향상시킬 수 있을 것이다.

개발방법론의 요구사항 관리를 개선하기 위한 요구사항 관리 프로세스 (A Requirements Management Process to improve the Requirements Management of Development Methodologies)

  • 신종철;구연설
    • 정보처리학회논문지D
    • /
    • 제9D권1호
    • /
    • pp.81-90
    • /
    • 2002
  • More than 50% of defects and errors in the software development projects are related to the requirements[14]. But the development methodologies can not provide enough supports to the requirements management and changes. In the real world, the requirements keep changing as the requirements at the early development phase are usually incomplete, the developer′s understanding of the problem will be constantly changed during the software process, and new requirements may emerge with the organizational and environmental changes. In this paper, a requirements management process that can be integrated into the development methodologies is proposed to extend the requirements management over the whole development life-cycle and to support the requirements changes at the design/implementation/test phases. To evaluate the proposed process, it was compared to the existing requirements managements processes and models, and examined through a integration test with a widely used development methodology "MaRMI" to show the expected improvements at each development phase.