• Title, Summary, Keyword: software engineering

Search Result 9,738, Processing Time 0.072 seconds

Evaluation on the Relationship between Software Engineering Level and Schedule Deviation in Software Development (SW 공학수준과 SW 프로젝트 납기성과와의 관계)

  • Kim, Seung-Gweon;Ko, Byung-Sun
    • Journal of Information Technology Services
    • /
    • v.10 no.4
    • /
    • pp.191-204
    • /
    • 2011
  • Recently, many software companies are trying to improve the software quality and project outcome with more costs and efforts in development time. In the software convergence and integration environments, it is required efforts to gain high quality of software. In other words, it is required to utilize software engineering knowledge and technology for higher software quality and better software project productivity. The Software development productivity can be varied by software process capability according to building a framework for software development, selection and use of appropriate technology, human resource management. Software process capability will influence software project outcome which is the general opinion. This study provides empirical evidence about software engineering efforts and investment approach to lead software project performance. We measured the software engineering efforts by SW engineering level and analyzed the corelation between software engineering level and schedule deviation. And, we verified that this performance is affected by the size of software company. As a result, software process capability is important to build a infrastructure and develop systematically software project. The higher software engineering level can lead to improved software project performance.

A Study on the Software Test Case Development using Systems Engineering Methodology (시스템엔지니어링 방법론을 적용한 소프트웨어 테스트 케이스 개발에 관한 연구)

  • Salim, Shelly;Shin, Junguk;Kim, Jinil
    • Journal of the Korea Society of Systems Engineering
    • /
    • v.14 no.2
    • /
    • pp.83-88
    • /
    • 2018
  • Software has become an integral part of almost any system, triggered by the ever-growing demand for automation and artificial intelligent throughout engineering domains. The complexities of software-centric systems are also increasing, which make software test efforts become essential in software development projects. In this study, we applied systems engineering methodology in generating software test cases. We found out the similarities between requirements analysis and traceability concept of systems engineering and test specification contents of software test. In terms of acceptance test, software test cases could be considered as validation requirements. We also suggested a method to determine test order using a SysML modeling tool.

Software Reliability of Safety Critical FPGA-based System using System Engineering Approach

  • Pradana, Satrio;Jung, Jae Cheon
    • Journal of the Korea Society of Systems Engineering
    • /
    • v.14 no.2
    • /
    • pp.49-57
    • /
    • 2018
  • The main objective of this paper is come up with methodology approach for FPGA-based system in verification and validation lifecycle regarding software reliability using system engineering approach. The steps of both reverse engineering and re-engineering are carried out to implement an FPGA-based of safety critical system in Nuclear Power Plant. The reverse engineering methodology is applied to elicit the requirements of the system as well as gain understanding of the current life cycle and V&V activities of FPGA based-system. The re-engineering method is carried out to get a new methodology approach of software reliability, particularly Software Reliability Growth Model. For measure the software reliability of a given FPGA-based system, the following steps are executed as; requirements definition and measurement, evaluation of candidate reliability model, and the validation of the selected system. As conclusion, a new methodology approach for software reliability measurement using software reliability growth model is developed.

Design and Implementation of Web-based Software Engineering Tool for Robot (웹 기반 로봇 소프트웨어 공학 도구 설계 및 구현)

  • Hong, Chang-Ho;Park, Hong-Seong
    • Journal of Institute of Control, Robotics and Systems
    • /
    • v.17 no.9
    • /
    • pp.908-915
    • /
    • 2011
  • As the requirement of user for robot functionality, the function and interface for controlling the robot system is more sophisticated and complicated. Accordingly development process of robot is more complicated and it takes much longer time to develop a robot system. Software development using project management tool is more important in software engineering because of the complexity of software, especially robot system. This paper proposes SEED (Software Engineering Equipment for Development), which is a web-based and integrated software engineering tool to provide independent tools for robot software development. SEED includes the document management tool, the software configuration management tool, the software testing tool on developing robot software and provide a functionality of collaborated and remote development due to WEB-based operations.

Machine Learning Frameworks for Automated Software Testing Tools : A Study

  • Kim, Jungho;Ryu, Joung Woo;Shin, Hyun-Jeong;Song, Jin-Hee
    • International Journal of Contents
    • /
    • v.13 no.1
    • /
    • pp.38-44
    • /
    • 2017
  • Increased use of software and complexity of software functions, as well as shortened software quality evaluation periods, have increased the importance and necessity for automation of software testing. Automating software testing by using machine learning not only minimizes errors in manual testing, but also allows a speedier evaluation. Research on machine learning in automated software testing has so far focused on solving special problems with algorithms, leading to difficulties for the software developers and testers, in applying machine learning to software testing automation. This paper, proposes a new machine learning framework for software testing automation through related studies. To maximize the performance of software testing, we analyzed and categorized the machine learning algorithms applicable to each software test phase, including the diverse data that can be used in the algorithms. We believe that our framework allows software developers or testers to choose a machine learning algorithm suitable for their purpose.

Software Climate Change and its Disruptive Weather: A Potential Shift from "Software Engineering" to Vibrant/Dynamic Softology

  • Ghani, Imran;Jeong, Seung Ryul
    • KSII Transactions on Internet and Information Systems (TIIS)
    • /
    • v.10 no.8
    • /
    • pp.3925-3942
    • /
    • 2016
  • Like natural climate change on the planet earth, the climate in software development environments is also changing (fast). Like the natural weather, the software environment is also disruptive. As the climate experts alert and suggest taking necessary measures to overcome certain challenges to make this earth a safer and comfortable living place, likewise this article also alerts the relevant stakeholders of software craftsmanship about the dynamic challenges that traditional Software Engineering (SE) with purely "Engineering mind-set" is not capable to respond. Hence, some new thoughts to overcome such challenges are shared. Fundamentally, based on the historical evidences, this article presents the authors' observation about continuous shift from traditional "Engineering-based" software development approaches to disruptive approaches - "Vibrant Softology". The authors see the cause of this shift as disruptive transformational force, which is so powerful that it is uncontrollably diminishing the "Engineering-based" approach from software development environments. The authors align it with climate change analogy. Based on this analogy, the authors feel the need to theoretically re-coin the notion of SE to some new term; perhaps Vibrant/Dynamic Softology (VS or DS). Hence, the authors suggest "a new (disruptive and dynamic) way of thinking is required to develop software". It is worth mentioning that the purpose of article and this new theory is not to disparage the notion of software engineering altogether, rather the aim is to highlight the importance of transformation from SE to its next level (perhaps VS/DS) due to the emerging needs in the software craftsmanship environment.

Dynamic Software Component Composition Based On Aspect-Oriented Programming (관점지향 프로그램 기반의 동적 소프트웨어 컴포넌트 조합 패턴)

  • Bae, Sung-Moon;Park, Chul-Soon;Park, Chun-Ho
    • Journal of the Society of Korea Industrial and Systems Engineering
    • /
    • v.31 no.4
    • /
    • pp.100-105
    • /
    • 2008
  • Cost reduction, time to market, and quality improvement of software product are critical issues to the software companies which try to survive in recent competitive market environments. Software Product Line Engineering (SPLE) is one of the approaches to address these issues. The goal of software product line is to maximize the software reuse and achieve the best productivity with the minimum cost. In software product line, software components are classified into the common and variable modules for composition work. In this paper, we proposed a dynamic composition process based on aspect-oriented programming methodology in which software requirements are classified into the core-concerns and cross-cutting concerns, and then assembled into the final software product. It enables developers to concentrate on the core logics of given problem, not the side-issues of software product such as transactions and logging. We also proposed useful composition patterns based on aspect oriented programming paradigm. Finally, we implemented a prototype of the proposed process using Java and Aspect to show the proposed approach's feasibility. The scenario of the prototype is based on the embedded analysis software of telecommunication devices.

NuSEE: AN INTEGRATED ENVIRONMENT OF SOFTWARE SPECIFICATION AND V&V FOR PLC BASED SAFETYCRITICAL SYSTEMS

  • Koo, Seo-Ryong;Seong, Poong-Hyun;Yoo, Jun-Beom;Cha, Sung-Deok;Youn, Cheong;Han, Hyun-Chul
    • Nuclear Engineering and Technology
    • /
    • v.38 no.3
    • /
    • pp.259-276
    • /
    • 2006
  • As the use of digital systems becomes more prevalent, adequate techniques for software specification and analysis have become increasingly important in nuclear power plant (NPP) safety-critical systems. Additionally, the importance of software verification and validation (V&V) based on adequate specification has received greater emphasis in view of improving software quality. For thorough V&V of safety-critical systems, V&V should be performed throughout the software lifecycle. However, systematic V&V is difficult as it involves many manual-oriented tasks. Tool support is needed in order to more conveniently perform software V&V. In response, we developed four kinds of computer aided software engineering (CASE) tools to support system specification for a formal-based analysis according to the software lifecycle. In this work, we achieved optimized integration of each tool. The toolset, NuSEE, is an integrated environment for software specification and V&V for PLC based safety-critical systems. In accordance with the software lifecycle, NuSEE consists of NuSISRT for the concept phase, NuSRS for the requirements phase, NuSDS for the design phase and NuSCM for configuration management. It is believed that after further development our integrated environment will be a unique and promising software specification and analysis toolset that will support the entire software lifecycle for the development of PLC based NPP safety-critical systems.

A Method for Tool-Chain-driven Quality Control based on Visualization for Small and Medium Scale Software Development Projects (중소규모 SW개발 프로젝트를 위한 시각화 기반의 Tool-Chain 품질관리 방법 제안)

  • Kim, Jung-Bo;Jung, Jin-Young;Kim, Jung-In
    • Journal of Korea Multimedia Society
    • /
    • v.18 no.4
    • /
    • pp.546-556
    • /
    • 2015
  • Since the concept of software engineering was first used in 1968 by NATO Science Committee, a lot of research work and improvements have been made on software development methodology and software quality control, but they still fall short of ensuring successful development of small and medium scale software systems. Under these circumstances, Center for Software Engineering (CSE) at National IT Industry Promotion Agency(NIPA) has been conducting studies on quality control methodologies of software visualization well-suited for small and medium scale software systems, and also working on the systemization and quantification of software quality control. In this paper, we attempt to scope on the software development management of domestic and foreign small and medium-sized enterprises that are lying in the blind spot, compared to large enterprises with well-organized software development systems. In particular, based on software visualization that CSE is pursuing for small and medium-sized developers, we propose a practical quality control methodology well-suited for small and medium scale projects, and a low-cost quality control management tool by combining open-source quality control tools. Our proposal is expected to induce developers' mind change in SI-specialized small and medium-sized software enterprises, increase their profits and improve customer satisfaction through project quality control.

Software Complexity and Management for Real-Time Systems

  • Agarwal Ankur;Pandya A.S.;Lbo Young-Ubg
    • Journal of information and communication convergence engineering
    • /
    • v.4 no.1
    • /
    • pp.23-27
    • /
    • 2006
  • The discipline of software performance is very broad; it influences all aspects of the software development lifecycle, including architecture, design, deployment, integration, management, evolution and servicing. Thus, the complexity of software is an important aspect of development and maintenance activities. Much research has been dedicated to defining different software measures that capture what software complexity is. In most cases, the description of complexity is given to humans in forms of numbers. These quantitative measures reflect human-seen complexity with different levels of success. Software complexity growth has been recognized to be beyond human control. In this paper, we have focused our discussion on the increasing software complexity and the issue with the problems being faced in managing this complexity. This increasing complexity in turn affects the software productivity, which is declining with increase in its complexity.