73 research outputs found
Automatic Transformation of Natural to Unified Modeling Language: A Systematic Review
Context: Processing Software Requirement Specifications (SRS) manually takes
a much longer time for requirement analysts in software engineering.
Researchers have been working on making an automatic approach to ease this
task. Most of the existing approaches require some intervention from an analyst
or are challenging to use. Some automatic and semi-automatic approaches were
developed based on heuristic rules or machine learning algorithms. However,
there are various constraints to the existing approaches of UML generation,
such as restriction on ambiguity, length or structure, anaphora,
incompleteness, atomicity of input text, requirements of domain ontology, etc.
Objective: This study aims to better understand the effectiveness of existing
systems and provide a conceptual framework with further improvement guidelines.
Method: We performed a systematic literature review (SLR). We conducted our
study selection into two phases and selected 70 papers. We conducted
quantitative and qualitative analyses by manually extracting information,
cross-checking, and validating our findings. Result: We described the existing
approaches and revealed the issues observed in these works. We identified and
clustered both the limitations and benefits of selected articles. Conclusion:
This research upholds the necessity of a common dataset and evaluation
framework to extend the research consistently. It also describes the
significance of natural language processing obstacles researchers face. In
addition, it creates a path forward for future research
Enhancement of natural language processing approach for automated generation of object constraint language
Object Constraint Language (OCL) is the most prevalent modeling language to document requirement constraints that are annotated in the Unified Modeling Language. Various researchers have proved that OCL syntax is complex and difficult for some reasons such as its declarative nature. As the measure of ease-of-use factor of a language has a direct relationship with the language’s usability, the difficulties in the use of OCL result in the low usability of OCL. There are few research works for OCL generation using some different techniques such as pattern-based and Model-Driven Architecture (MDA)-based. The accuracy of the existing patternbased work generating OCL specification is low. MDA focuses on software development based on generating models and transforming these models between each other. There are some researches based on MDA to increase the usability of modeling languages. However, only one of the existing works supports OCL. The existing MDA-based work generating OCL specification does not support some OCL elements, such as collect and reject, and some UML elements such as enumeration. Therefore, this research proposes an MDA-based approach to transform requirement constraints formed in English sentences into OCL specifications using transformation rules. A software tool is developed to validate the proposed approach and compare with the existing works. The comparison shows that the proposed approach solves some limitations of the existing works such as support of some OCL and UML elements, which are not supported by the existing works. The comparison also shows that some accuracy improvement is achieved by the proposed approach in comparison with the existing works
An affinity analysis based CIM-to-PIM transformation
To tackle the problems such as the imperfection and inconsistency in software requirements in traditional Computation Independent Model (CIM) modelling, the low degree of automation as well as the imperfection in the description of Platform Independent Model (PIM) in CIM-to-PIM transforming, in this article, we propose a Business-Process-based CIM modelling method and a CIM-to-PIM transformation approach. Business Process Model is used to express CIM, and UML‘s Sequence Diagram, State Chart Diagram as well as Class Diagram are used to express PIM. Firstly, the users’ requirements are obtained through business process models. We extract use cases from business processes and create use case specifications. A verification mechanism is also added for the use case specification. Secondly, we transform CIMs into PIMs automatically with use case specifications as the inputs as well as combining with use case based thinking, responsibility based thinking and affinity analysis. Finally, by comparing with the methods in other studies, we conclude that methods proposed in this article can ensure model integrity and increase the degree of model transformation automation
A Framework for Specifying Business Rules Based on Logic with a Syntax Close to Natural Language
The systematic interaction of software developers with the business domain experts
that are usually no software developers is crucial to software system maintenance and
creation and has surfaced as the big challenge of modern software engineering. Existing
frameworks promoting the typical programming languages with artificial syntax are
suitable to be processed by computers but do not cater to domain experts, who are used
to documents written in natural language as a means of interaction.Other frameworks
that claim to be fully automated, such as those using natural language processing, are
too imprecise to handle the typical requirements documents written in heterogeneous
natural language flavours. In this thesis, a framework is proposed that can support
the specification of business rules that is, on the one hand, understandable for nonprogrammers
and on the other hand semantically founded, which enables computer
processability. This is achieved by the novel language Adaptive Business Process and
Rule Integration Language (APRIL). Specifications in APRIL can be written in a style
close to natural language and are thus suitable for humans, which was empirically
evaluated with a representative group of test persons. A useful and uncommon feature
of APRIL is the ability to define reusable abstract mixfix operators as sentence patterns,
that can mimic natural language. The semantic underpinning of the mixfix operators
is achieved by customizable atomic formulas, allowing to tailor APRIL to specific
domains. Atomic formulas are underpinned by a denotational semantics, which is based
on Tempura (executable subset of Interval Temporal Logic (ITL)) to describe behaviour
and the Object Constraint Language (OCL) to describe invariants and pre- and postconditions.
APRIL statements can be used as the basis for automatically generating
test code for software systems. An additional aspect of enhancing the quality of
specification documents comes with a novel formal method technique (ISEPI) applicable
to behavioural business rules semantically based on Propositional Interval Temporal
Logic (PITL) and complying with the newly discovered 2-to-1 property. This work
discovers how the ISE subset of ISEPI can be used to express complex behavioural
business rules in a more concise and understandable way. The evaluation of ISE is done
by an example specification taken from the car industry describing system behaviour,
using the tools MONA and PITL2MONA. Finally, a methodology is presented that helps
to guide a continuous transformation starting from purely natural language business rule
specification to the APRIL specification which can then be transformed to test code. The
methodologies, language concepts, algorithms, tools and techniques devised in this work
are part of the APRIL-framework
Generation of UML class diagram from software requirement specification using natural language processing
Any software development process starts with requirement analysis. The phase from requirement analysis to chalking out a design is acknowledged as the most intricate and troublesome exercises in programming advancement. Failures brought about throughout this action could be very unmanageable to alter in later periods of programming advancement. One primary purpose behind such potential issues is on account of the prerequisite determination being in natural language form. To conquer this, a tool has been designed, which plans can give semi-automatized aid for designers to produce UML class model from software specifications utilizing Natural Language Processing techniques. The proposed technique outlines the class diagram in a standard configuration and additionally records out the relationship between classes
From Natural Language Requirements to Formal Specification Using an Ontology
In order to check requirement specifications written in natural language, we have chosen to model domain knowledge through an ontology and to formally represent user requirements by its population. Our approach of ontology population focuses on instance property identification from texts. We do so using extraction rules automatically acquired from a training corpus and a bootstrapping terminology. These rules aim at identifying instance property mentions represented by triples of terms, using lexical, syntactic and semantic levels of analysis. They are generated from recurrent syntactic paths between terms denoting instances of concepts and properties. We show how focusing on instance property identification allows us to precisely identify concept instances explicitly or implicitly mentioned in texts
Prototipado automático de sistemas de información transaccionales usando una especificación en lenguaje natural restringido
Las actividades del ciclo de vida del desarrollo de software (o SDLC por sus siglas en ingl´es) incluyen: an´alisis de requisitos, dise˜no de modelos, desarrollo, pruebas y mantenimiento. Las tareas tempranas de este ciclo (an´alisis de requisitos y dise˜no) tienen un amplio impacto en el ´exito del proyecto y por esto es fundamental que se lleven a cabo de una forma correcta. Estas actividades por supuesto est´an incluidas en el proceso de desarrollo de sistemas de informaci´on de procesamiento de transacciones. Estos sistemas de informaci´on son una de las maneras de generar valor desde la informaci´on producida en una organizaci´on. Adem´as, dan pie para generar sistemas de informaci´on de mayor complejidad y tambi´en permiten mejorar los procesos de toma de decisiones en las organizaciones. Sin embargo, los errores en las etapas tempranas del desarrollo de software son bastante comunes. Estos errores pueden llevar a dificultades a nivel de presupuesto y calendario en los proyectos de desarrollo de software, inclusive, a fracasos totales. Por esta raz´on, en esta tesis se propone dise˜nar, desarrollar y evaluar una metodolog´ıa para el prototipado autom´atico de sistemas de informaci´on transaccionales desde una especificaci´on en lenguaje natural restringido. Lo cual busca mejorar los procesos de an´alisis de requisitos y dise˜no de modelos puesto que permitir´ıa validar r´apidamente la funcionalidad del software, y as´ı, facilitar la detecci´on de errores y por ende su correcci´on temprana durante el desarrollo del proyecto. Para esto, en esta tesis se propone una metodolog´ıa de prototipado r´apido basada en un lenguaje natural restringido. Para crear este lenguaje natural restringido se usan como insumo dos lenguajes de especificaci´on populares: BPMN (Business Process Modeling Notation) y E-R (Entity - Relationship). Adem´as, para la generaci´on del prototipo funcional, se usar´an t´ecnicas de generaci´on de c´odigo fuente guidas por la sintaxis de este lenguaje. Como resultados de esta tesis, se llevaron a cabo dos implementaciones de la herramienta de generaci´on de c´odigo fuente. Adem´as, se presentan tres casos de estudio que permiten validar la aplicabilidad y efectividad de la metodolog´ıa propuesta: “Question cycle”, “Email Voting” y “Odoo clone”.Abstract. Software development life cycle (or SDLC) activities include: requirements analysis, models design, development, testing and maintenance. The early tasks of this cycle (requirements analysis and design) have a large impact on the success of the project and for this reason it is essential to perform them correctly. These activities are of course included in the process of developing transaction processing information systems. These information systems are one of the ways to generate value from the information produced in an organization. They also provide the basis for generating more complex information systems and also improve the decision-making processes in organizations. However, errors in the early stages of the software development process are quite common. These errors can lead to difficulties in the budget and schedule of software projects, or even, total failures. For this reason, the objective of this thesis is to design, develop and evaluate a methodology for the automatic prototyping of transactional information systems from a restricted natural language specification. This is aimed at improving the processes of analysis of requirements and design of models since it would allow to quickly validate the software functionality, and thus, facilitate the detection of errors and reduce costs by correct them early during the development. With that goal in mind, this thesis proposes a rapid prototyping methodology based on a restricted natural language. To create this restricted natural language, two popular specifi- cation languages are used as input resources: BPMN (Business Process Modeling Notation) and E-R (Entity - Relationship). In addition, source code generation techniques guided by the syntax of this language will be used for the generation of the functional prototype. As results of this thesis, two implementations of the source code generation tool were developed. In addition, three case studies were performed to validate the applicability and effectivity of the proposed methodology: “Question cycle”, “Email Voting”, and “Odoo clone”.Maestrí
An OMG model-based approach for aligning information systems requirements and architectures with business
Tese de Doutoramento (Programa Doutoral em Tecnologias e Sistemas de Informação)The challenges involved in developing information systems (which are able to adapt to rapidly
changing business and technological conditions) are directly related to the importance of their
alignment with the business counterpart. These challenges comprise issues that cross management
and information systems domains, relating and aligning them in order to attain superior
performance for the organization, while identifying its strategy and tailoring its business processes.
As this relation is increasingly intertwined its concepts are conducted to pragmatic methods,
incorporating both management and information systems components, for how, when and where
this alignment really matters.
The related topics of the alignment between business and information systems comprise diverse
paths of research, though with little common ground established inside the community, where
problems arouse due to the fast moving business and technological environments. According to
these circumstances, the process of developing information systems to support the alignment
benefits from incorporating the use of structured and model-based approaches. So, as the
development of evermore complex information systems presents a challenge for the currently
available methods, the use of models to support the alignment with business stands as an
increasingly important issue.
Following those challenges, we set out to question how to develop solutions aligning information
systems with business in a model-based approach. Accordingly, we support our research on the
need to understand what are the perspectives involved in aligning information systems with
business, and, moreover, to comprehend in what sense model adoption drives information systems
development. So, the proposed goals for this thesis are: (1) set the basis for the elicitation of
business requirements in order to support a well-grounded development of information systems; (2)
provide for the generation of business models based on the business requirements, while assuring
their alignment and traceability; and (3) arrange for the derivation of information system
architectures from the business requirements, while attaining alignment and traceability for their
mutual transformation and adaptation.
Several issues surrounding these goals have already been described and approached in diverse
ways by other researchers, where existing approaches and associated methods achieved good
results. Nevertheless, these approaches are not without their shortfalls, sometimes failing to present
a complete solution, others being unable to adapt to new challenges, or even incapable of reacting
to recent trends. In order to tackle these issues we propose to build upon those approaches by
adapting, evolving and innovating on solutions in each of the three proposed goals, respectively
intertwining with perspectives from related standards and reference models.
Answering the first goal, in what regards the main contributions of this thesis, we propose to
broaden the elicitation of requirements by relating functional and nonfunctional requirements from
business processes. So, we present a unified metamodel representation for those requirements,
accompanied by a customizable method for their joint elicitation, based-on business-driven
use-cases, goals and rules. This approach adopts the Rational Unified Process (RUP) development methodology and the Business Motivation Model (BMM) standard model language representation
for business requirements. Moreover, the metamodel representation and method operationalization
are accompanied by a prototype support tool that completes this first contribution.
For the second goal, a more business-oriented one correlated to the higher-level requirements, we
propose to generate business models directly from the inferred functional and nonfunctional
requirements. So, we present a three-dimensional approach built on the relation of the referred
requirements with the Balanced Scorecard (BSC) reference model, where an additional mapping to
the Business Model Canvas (BMC) is also made available. This proposal provides an associated
metamodel representation for the relation between the elements involved and a customizable
method for their operationalization, all accompanied by a prototype support tool.
On the third goal, focused on system architectures and connected to the lower-level requirements,
we propose to derive service-oriented participants from the functional requirements, while aligning
the nonfunctional requirements with the quality characteristics of the solution to-be. First, we
present an evolution of an existing method for the derivation of a logical architecture, in order to
adapt it to a service-oriented approach (SOA). Then, following on the existing relation between the
nonfunctional and functional side of the low-level requirements, our approach is able to associate
these last with its related services on the derived architecture, in another three-dimensional
approach. Additionally, a mapping of the nonfunctional requirements with the system quality
characteristics (CISQ) is made available. Once more, an associated metamodel, a customizable
method and a prototype support tool are also provided.
The development of these three approaches is supported through the execution of tasks which
originate artifacts and lead to publications associated to their respective research and development
efforts, all according to the Design Science Research (DSR) methodology. These are applied in
ongoing projects involving experimental scenarios in industrial settings and associated to
established research reference patterns, balancing the interests of both researchers and
practitioners while focused both on technology and management audiences. The results obtained
from their evaluation reflect the quality and depth of our findings, helping to validate the scientific
contribution of this work.Os desafios implicados no desenvolvimento de sistemas de informação (que sejam capazes de se
adaptar a condições tecnológicas e de negócios em rápida mutação) estão diretamente
relacionados à importância do seu alinhamento com a contraparte do negócio. Esses desafios
envolvem questões que cruzam os domínios da gestão e dos sistemas de informação,
relacionando-os e alinhando-os com o intuito de alcançar um desempenho superior para a
organização, ao mesmo tempo que identificam a sua estratégia e adequam os seus processos de
negócio. Como esta relação está cada vez mais interligada, os seus conceitos são canalizados para
métodos pragmáticos, incorporando ambos os componentes de sistemas de informação e de
gestão, para saber como, quando e onde este alinhamento realmente interessa.
Os tópicos relacionados com o alinhamento entre negócio e sistemas de informação abrangem
diversos caminhos de pesquisa, embora com poucos alicerces em comum estabelecidos dentro da
comunidade, onde os problemas surgem devido às rápidas mudanças nos negócios e nos
ambientes tecnológicos. De acordo com estas circunstâncias, o processo de desenvolvimento de
sistemas de informação para apoiar o alinhamento beneficia de incorporar o uso de abordagens
estruturadas e baseadas em modelos. Assim, dado que o desenvolvimento de sistemas de
informação cada vez mais complexos apresenta um desafio para os métodos atualmente
disponíveis, o uso de modelos para apoiar o alinhamento com o negócio destaca-se como uma
questão cada vez mais importante.
Em linha com esses desafios, estabelecemos a questão de como desenvolver soluções para alinhar
sistemas de informações com o negócio numa abordagem baseada em modelos. Neste sentido,
apoiamos a nossa pesquisa na necessidade de compreender quais são as perspetivas envolvidas
no alinhamento dos sistemas de informação com o negócio, e, além disso, de compreender em
que sentido a adoção de modelos capacita o desenvolvimento desses sistemas. Assim, os objetivos
propostos para esta tese são: (1) definir as bases para o levantamento de requisitos de negócio a
fim de suportar um desenvolvimento bem fundamentado de sistemas de informação; (2)
disponibilizar a geração de modelos de negócio baseados nos requisitos de negócio, garantindo o
alinhamento e a rastreabilidade entre ambos; e (3) estruturar a derivação de arquiteturas de
sistema de informação a partir dos requisitos de negócio, preservando o alinhamento e
rastreabilidade para a sua mútua transformação e adaptação.
Várias questões envolvendo estes objetivos foram já descritas e tratadas de diversas maneiras por
outros investigadores, tendo as abordagens existentes e os métodos associados alcançado bons
resultados. No entanto, essas abordagens têm as suas lacunas, umas vezes falham em apresentar
uma solução completa, noutras são ineficientes ao se adaptarem a novos desafios, ou mesmo
incapazes de reagir às novas tendências. Para lidar com estas questões, propomo-nos apoiar
nessas abordagens, adaptando, evoluindo e inovando em soluções para cada um dos três objetivos
propostos, intersetando-as, respetivamente, com perspetivas de modelos de referência e padrões
relacionados.
Relativamente ao primeiro objetivo, no que concerne aos principais contributos desta tese,
propomos alargar o levantamento de requisitos, relacionando os requisitos funcionais e nãofuncionais
dos processos de negócios. Assim, apresentamos um meta-modelo para a
representação unificada desses requisitos, acompanhado por um método personalizável para o seu levantamento conjunto, baseada em casos-de-uso, metas e regras orientadas a negócio. Esta
abordagem adota a metodologia de desenvolvimento do Rational Unified Process (RUP) e a
representação padrão do modelo de linguagem do Business Motivation Model (BMM), para os
requisitos de negócio. Além disso, a representação meta-modelo e a operacionalização do método
são acompanhados por um protótipo de uma ferramenta de suporte que completa esta primeira
contribuição.
Quanto ao segundo objetivo, mais orientado ao negócio e correlacionado com os requisitos de nível
superior, propomos gerar modelos de negócio a partir dos requisitos funcionais e não-funcionais
inferidos. Assim, apresentamos uma abordagem tridimensional, construída sobre a relação dos
referidos requisitos com o modelo de referência do Balanced Scorecard (BSC), em que um
mapeamento adicional para o Business Model Canvas (BMC) é também disponibilizado. Esta
proposta inclui um meta-modelo para representação da relação entre os elementos envolvidos e
um método personalizável para a sua operacionalização, tudo acompanhado por um protótipo de
uma ferramenta de suporte.
No terceiro objetivo, focado em arquiteturas de sistema e ligado aos requisitos de nível inferior,
propomos derivar participantes orientados-a-serviços desde os requisitos funcionais, alinhando os
requisitos não-funcionais com as características de qualidade da solução a obter. Primeiro,
apresentamos uma evolução de um método existente para a derivação de uma arquitetura lógica,
adaptando-o a uma abordagem-orientada-a-serviços (SOA). Assim, prosseguindo a relação existente
entre o lado não-funcional e funcional dos requisitos de baixo nível, a nossa abordagem associa
estes últimos com os serviços relacionados na arquitetura derivada, numa outra abordagem
tridimensional. Além disso, um mapeamento dos requisitos não-funcionais com as características
de qualidade do sistema (CISQ) é disponibilizado. Mais uma vez, um meta-modelo associado, um
método personalizável e um protótipo da ferramenta de suporte são disponibilizados.
O desenvolvimento destas três abordagens é suportado pela execução de tarefas, as quais dão
origem a artefatos e levam a publicações associadas aos seus esforços de pesquisa e
desenvolvimento respetivamente, tudo de acordo com a metodologia DSR. Estas são aplicadas a
projetos em andamento, os quais envolvem cenários experimentais em ambientes industriais e
associados a padrões de investigação de referência, equilibrando os interesses de investigadores e
profissionais assim como dos diferentes públicos de tecnologia e gestão. Os resultados obtidos na
sua avaliação refletem a qualidade e a profundidade dos nossos resultados, ajudando a validar a
contribuição científica deste trabalho
Enterprise modelling framework for dynamic and complex business environment: socio-technical systems perspective
The modern business environment is characterised by dynamism and ambiguity. The causes
include global economic change, rapid change requirements, shortened development life
cycles and the increasing complexity of information technology and information systems
(IT/IS). However, enterprises have been seen as socio-technical systems.
The dynamic complex business environment cannot be understood without intensive
modelling and simulation. Nevertheless, there is no single description of reality, which has
been seen as relative to its context and point of view. Human perception is considered an
important determinant for the subjectivist view of reality. Many scholars working in the
socio-technical systems and enterprise modelling domains have conceived the holistic sociotechnical
systems analysis and design possible using a limited number of procedural and
modelling approaches. For instance, the ETHICS and Human-centred design approaches of
socio-technical analysis and design, goal-oriented and process-oriented modelling of
enterprise modelling perspectives, and the Zachman and DoDAF enterprise architecture
frameworks all have limitations that can be improved upon, which have been significantly
explained in this thesis. [Continues.
- …