• Title/Summary/Keyword: Software Requirements Engineering Process

Search Result 196, Processing Time 0.022 seconds

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

  • Jung, Hyo-Taeg;Joo, Sang-Hyun
    • Journal of The Institute of Information and Telecommunication Facilities Engineering
    • /
    • v.9 no.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 (소프트웨어 프로덕트 라인에서 체계적인 요구사항 변경 관리 방법)

  • Park, Ji-Hyeon;Moon, Mi-Kyeong;Yeom, Keun-Hyuk
    • Journal of KIISE:Software and Applications
    • /
    • v.32 no.12
    • /
    • pp.1164-1177
    • /
    • 2005
  • As the software development process becomes complicated, software requirements become complicated, too. Many efforts are needed in requirements management. It is impossible to define all requirements of software at first, and the development environment changes as project is gone. As the cost of requirements change management is much more than development cost, the changes should be controled immediately through systematic change management. In this paper, I suggest a method to manage requirements change systematically based on the change management process in software product lines. The requirements change at the application engineering process is analyzed and managed using the domain engineering process because the application requirements are customized from the domain requirements in software product lines. Such the consistent change management helps to make decisions about changes by change impact analysis and alternative solution design. Through this method, the potential change costs can be saved because same change requests are not repeated by controlling the change requests completely.

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
    • /
    • v.46 no.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.

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

  • Kang, Byung-Heon;Kim, Hang-Bae;Chang, Hoon-Seon;Jeon, Jong-Sun;Park, Suk-Joon
    • Nuclear Engineering and Technology
    • /
    • v.27 no.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
    • /
    • v.48 no.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 (설계 요건 중심의 인간-시스템 인터페이스 개발 프로세스)

  • Ham, Dong-Han
    • Journal of the Korea Safety Management & Science
    • /
    • v.10 no.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)
    • /
    • v.13 no.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 (웹 기반의 요구사항 관리를 위한 프로세스 모델 설계)

  • 황만수;민태홍
    • Journal of the Korea Computer Industry Society
    • /
    • v.4 no.4
    • /
    • pp.517-522
    • /
    • 2003
  • As the Software development condition is changed into enlargement and complex, requirements generated in each step of Software development life cycle has important effects on the technique and management area. In this thesis, We propose so engineering approach for effective and systematic process and activities including Requirements acquisition and management based on activities proposed with Requirements Engineering and CMM that my special emphasis is putted on Software qualify improvement through the reduction of software development cost and danger.

  • PDF

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

  • Lee, Sang-Un;Choi, Myeong-Bok
    • The Journal of the Institute of Internet, Broadcasting and Communication
    • /
    • v.14 no.1
    • /
    • pp.37-49
    • /
    • 2014
  • This paper proposes a optimal process after analyzing the existing papers of software requirements engineering process. In analyzing it examines requirement pursuit management and origin, and considers a variety of starting points that draw requirement documents. Also, this paper considers carefully the multiple methods of stakeholder needs, problem analysis, processing priority of business modeling. From the analyzed result this paper proposes the best method that draws systematically the requirement documents. The proposed method can minimize the requirement changes, draw the higher project success ratio, and satisfy the customer.

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

  • Sin, Jong-Cheol;Gu, Yeon-Seol
    • The KIPS Transactions:PartD
    • /
    • v.9D no.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.