206,440 research outputs found
パターンに基づく要求仕様の形式化方法及び支援ツールに関する研究
Despite the effectiveness of requirements formalization in producing accurate requirements documentation and deepening the developers\u27 understanding of the envisioned systems, this technique can hardly be accepted by software industry mainly because it requires mathematical sophistication and considerable experience in using formal notations, which remains a challenge to many practitioners. Many methods and tools have been proposed to deal with the problem by providing general guidance or automatic support in transforming informal requirements into formal specifications. However, they fail to accomplish the task when encountering incompleteness and ambiguities in the informal requirements. To handle this challenge, this thesis describes a pattern-based approach to facilitating the formalization of requirements. In this approach, a specification pattern system is pre-defined to guide requirements formalization where each pattern provides a specific solution for formalizing one kind of function into a formal specification. All of the patterns are classified and organized into a hierarchical structure according to the functions they can be used for formalization. The distinct characteristic of our approach is that all of the patterns are stored on computer as knowledge for creating effective guidance to facilitate the developer in requirements formalization; they are "understood" only by the computer but transparent to the developer. Based on the pattern system, a method that guides the requirements formalization process by applying the pattern system is described. To facilitate the understanding of the guidance produced by the pattern system and the utilization and maintenance of the pattern knowledge, a method for representing the pattern system is proposed where attribute tree and HFSM are adopted. These two notations are used to represent different parts of the pattern knowledge. The method for applying the pattern knowledge represented in the two notations is given. We also describe a prototype tool that supports the pattern-based approach. The tool derives necessary functional details of the intended requirement through interactions with the developer and generates a formal specification according to the obtained information. Two experiments on the tool supported approach are presented to demonstrate the effectiveness of the approach.博士(理学)法政大学 (Hosei University
Safety-Critical Systems and Agile Development: A Mapping Study
In the last decades, agile methods had a huge impact on how software is
developed. In many cases, this has led to significant benefits, such as quality
and speed of software deliveries to customers. However, safety-critical systems
have widely been dismissed from benefiting from agile methods. Products that
include safety critical aspects are therefore faced with a situation in which
the development of safety-critical parts can significantly limit the potential
speed-up through agile methods, for the full product, but also in the
non-safety critical parts. For such products, the ability to develop
safety-critical software in an agile way will generate a competitive advantage.
In order to enable future research in this important area, we present in this
paper a mapping of the current state of practice based on {a mixed method
approach}. Starting from a workshop with experts from six large Swedish product
development companies we develop a lens for our analysis. We then present a
systematic mapping study on safety-critical systems and agile development
through this lens in order to map potential benefits, challenges, and solution
candidates for guiding future research.Comment: Accepted at Euromicro Conf. on Software Engineering and Advanced
Applications 2018, Prague, Czech Republi
Formalising responsibility modelling for automatic analysis
Modelling the structure of social-technical systems as a basis for informing software system design is a difficult compromise. Formal methods struggle to capture the scale and complexity of the heterogeneous organisations that use technical systems. Conversely, informal approaches lack the rigour needed to inform the software design and
construction process or enable automated analysis.
We revisit the concept of responsibility modelling, which models social technical systems as a collection of actors who discharge their responsibilities, whilst using and producing resources in the process. Responsibility modelling is formalised as a structured approach for socio-technical system requirements specification and modelling, with well-defined semantics and support for automated structure and validity analysis. The
effectiveness of the approach is demonstrated by two case studies of software engineering methodologies
Do we really need to write documentation for a system? CASE tool add-ons: generator+editor for a precise documentation
One of the common problems of system development projects is that the system
documentation is often outdated and does not describe the latest version of the
system. The situation is even more complicated if we are speaking not about a
natural language description of the system, but about its formal specification.
In this paper we discuss how the problem could be solved by updating the
documentation automatically, by generating a new formal specification from the
model if the model is frequently changed.Comment: In Proceedings International Conference on Model-Driven Engineering
and Software Development (MODELSWARD'13
A Holistic Approach in Embedded System Development
We present pState, a tool for developing "complex" embedded systems by
integrating validation into the design process. The goal is to reduce
validation time. To this end, qualitative and quantitative properties are
specified in system models expressed as pCharts, an extended version of
hierarchical state machines. These properties are specified in an intuitive way
such that they can be written by engineers who are domain experts, without
needing to be familiar with temporal logic. From the system model, executable
code that preserves the verified properties is generated. The design is
documented on the model and the documentation is passed as comments into the
generated code. On the series of examples we illustrate how models and
properties are specified using pState.Comment: In Proceedings F-IDE 2015, arXiv:1508.0338
Software Engineers' Information Seeking Behavior in Change Impact Analysis - An Interview Study
Software engineers working in large projects must navigate complex
information landscapes. Change Impact Analysis (CIA) is a task that relies on
engineers' successful information seeking in databases storing, e.g., source
code, requirements, design descriptions, and test case specifications. Several
previous approaches to support information seeking are task-specific, thus
understanding engineers' seeking behavior in specific tasks is fundamental. We
present an industrial case study on how engineers seek information in CIA, with
a particular focus on traceability and development artifacts that are not
source code. We show that engineers have different information seeking
behavior, and that some do not consider traceability particularly useful when
conducting CIA. Furthermore, we observe a tendency for engineers to prefer less
rigid types of support rather than formal approaches, i.e., engineers value
support that allows flexibility in how to practically conduct CIA. Finally, due
to diverse information seeking behavior, we argue that future CIA support
should embrace individual preferences to identify change impact by empowering
several seeking alternatives, including searching, browsing, and tracing.Comment: Accepted for publication in the proceedings of the 25th International
Conference on Program Comprehensio
- …