Papers by Alberto Da Silva
The high number of unsuccessful IT projects, due to the in-consistent and ambiguous requirements ... more The high number of unsuccessful IT projects, due to the in-consistent and ambiguous requirements specifications, justi-fies the proposal of new socio-technical approaches to over-come these software quality issues. To address these prob-lems it is required a platform that simultaneously fosters stakeholders ’ involvement to capture their tacit knowledge, but also to enforce Requirements Engineering best practices. In this paper, we present our approach for enhancing the quality and rigor of requirements specifications by combin-ing emergent Web 2.0 concepts with CASE tools for require-ments specification and validation. This approach provides a flexible platform for collaborative Requirements Engineer-ing: non-technical stakeholders are assisted during the elic-itation process and requirements engineers benefit from the seamlessly integration with a broader CASE tool.
Professional system developers and their customers share a common goal of building information sy... more Professional system developers and their customers share a common goal of building information systems that effectively support business process objectives. In order to
Abstract-The emerging Model-Driven Engineering paradigm advocates the use of models as first-clas... more Abstract-The emerging Model-Driven Engineering paradigm advocates the use of models as first-class citizens in the software development process, while artifacts such as documentation and source-code can be quickly produced from those models by using automated transformations. One of the many types of deployment platforms that can potentially benefit from such model-driven approaches are Content Management Systems, as these approaches can significantly accelerate the development of new web-applications and features, as well as simplify their maintenance. This work proposes the creation of a model-driven approach for the development of web-applications based on Content Management Systems. This approach is based on the creation of two modeling languages (which are situated at different levels of abstraction, and are used to both quickly model a web-application and provide a common ground for the creation of additional languages), and a mechanism for the processing of models specified u...
Comput. Informatics, 2015
The software requirements engineering process is a part of a software development process and one... more The software requirements engineering process is a part of a software development process and one of the key processes in software development. The elicitation, analysis, specification and validation of software requirements occur during the requirements engineering process. Use cases are used as a technique for functional system specification. Different notations can be used for a use case specification. In this paper, we present SilabReq Domain Specific Language (SilabReq DSL) for use case specification. On the one hand, we develop this language to describe the use cases in clear and precise way through the meta-model, and on the other hand to specify the use cases to be readable and understandable for all stakeholders in the software development project. This allows us to develop different transformations to get the structure and the behavior of the system from defined use cases. In this paper apart from the SilabReq DSL, we present some of these transformations.
We propose in this paper a generic architecture to support, develop, manage, and interact with ag... more We propose in this paper a generic architecture to support, develop, manage, and interact with agentbased applications. In this context, we detail two main components of the architecture, namely: the AES (Agent Execution System) and the AEE (Agent Execution Environment). For both of them we describe their main concepts, data structures and interfaces. We also propose a set of characteristics that we believe will also be present in the next-generation AES, such as: independence between AES and AEE, i.e., support to multi-language agents; execution places hierarchically organized; interaction mechanisms amongst AESs and agents based on the event driven model with potentially abortable events; and management and administration AESs capabilities.
This paper introduces the TSL language (short name for “Test Specification Language”) that intend... more This paper introduces the TSL language (short name for “Test Specification Language”) that intends to improve the test specification of information systems in a systematic, rigorous and consistent way. TSL specifications are produced from close requirement specifications expressed in the RSL language (Requirements Specification Language). Both RSL and TSL support human-readable executable specifications closer to natural language than models usually used in model-based testing approaches. TSL includes several constructs logically arranged into views according to multiple testing engineering strategies, commonly found in the information systems domain, such as: data entity tests and state machine tests, all of them produced from equivalent requirement specification in RSL. A case study is also presented to illustrate the proposed approach.
Computer Languages Systems & Structures
During the last decade a new trend of approaches has emerged, which considers models not just doc... more During the last decade a new trend of approaches has emerged, which considers models not just documentation artefacts, but also central artefacts in the software engineering field, allowing the creation or automatic execution of software systems starting from those models. These proposals have been classified generically as Model-Driven Engineering (MDE) and share common concepts and terms that need to be abstracted, discussed and understood. This paper presents a survey on MDE based on a unified conceptual model that clearly identifies and relates these essential concepts, namely the concepts of system, model, metamodel, modeling language, transformations, software platform, and software product. In addition, this paper discusses the terminologies relating MDE, MDD, MDA and others. This survey is based on earlier work, however, contrary to those, it intends to give a simple, broader and integrated view of the essential concepts and respective terminology commonly involved in the MD...
2014 9th International Conference on the Quality of Information and Communications Technology, 2014
Proceedings of the 29th Annual ACM Symposium on Applied Computing, 2014
Journal of Software Engineering and Applications, 2014
The great evolution of the mobile market during the last years caused some fragmentation of the m... more The great evolution of the mobile market during the last years caused some fragmentation of the mobile platforms namely through the existence of different programming languages and software development tools for each platform. This fact can be an obstacle and increases the development complexity and costs when we want to develop mobile applications for multiple platforms. The XIS-Mobile domain specific language (defined as a UML profile) and its MDD-based framework address this problem by proposing platform-independent models to describe mobile applications and from them automatically generate the application's source code. Many issues arose during an iterative process of evaluation which originated changes and the evolution of XIS-Mobile. This paper presents the results of the evaluation of XIS-Mobile (both the language and the companion framework) obtained through the implementation of a case study and by conducting a user session, and discusses its benefits and challenges.
In this work is proposed the design of a system to handle Distributed Energy Resources (DER) that... more In this work is proposed the design of a system to handle Distributed Energy Resources (DER) that is a new reality due to the Electric Vehicles (EV), Micro Generation (MG) and the open Electrical Markets (EM). This upcoming reality brings the need of the 'old' central energy control to be installed locally. For that we propose a local energy broker, responsible to handle local energy flow, exchange energy with 'big' market players and based on a collaborative approach, promote user's participation to increase systems knowledge. The broker uses an Information Communication Technology (ICT) network in order to establish a collaborative communication between all the involved parts.
This paper discusses different UIs design approaches. We describe how to design user interfaces, ... more This paper discusses different UIs design approaches. We describe how to design user interfaces, based on a MDD approach, by applying the XIS language. XIS is a coherent UML profile focused on model interactive systems. XIS integrates best practices and principles of the MDA/MDD paradigm to improve the UI design, such as separation of concerns, model-to-model and model-to-code transformations. In that way, we discuss some issues regarding the transformation processes, from XIS-based models into software systems artifacts.
The UML is used to detail high level software specifications that will be interpolated for XMI an... more The UML is used to detail high level software specifications that will be interpolated for XMI and XIS (XML Information Systems) as interchange formats based on XML. UML and XML are expected to be the next generation of modeling and data interchange standards respectively. In this paper, we describe the UML Profile for XIS architecture as a proposal for software development guided by UML models. The XIS system is based on a multi-phase generative programming approach, starting from high-level UML models till software artifacts (such as Java code and SQL scripts), passing through different representations, namely OMG's XMI, and our (XIS) specific XML vocabulary. The main contribute of this paper is the overview of the XIS system and the proposal and discussion of the XIS UML profile.
The LOP system (Learning Object Pool) is a Learning Object Repository with innovative features wi... more The LOP system (Learning Object Pool) is a Learning Object Repository with innovative features with the aim to maximize authors and end-users or learners participation. LOP is intrinsically based on a credits mechanism and uses the "stock exchange market" metaphor for dynamically varying the LOs value according to their popularity. This paper describes the BOA-GPI case study, which is the first real experience in using the LOP system during the fall semester of 2008 in the context of a university course. The results of this case study conduct us to design and develop the LOP 2.0 version, with new and relevant features.
Software Engineering …, 2009
… Engineering and Advanced Applications, …, 2009
The high number of unsuccessful IT projects, due to the inconsistent and ambiguous requirements s... more The high number of unsuccessful IT projects, due to the inconsistent and ambiguous requirements specifications, justifies the proposal of new socio-technical approaches to overcome these software quality issues. To address these problems it is required a platform that simultaneously enforces Requirements Engineering best practices, fosters stakeholders' participation, and supports requirements negotiation and management. In this paper, we present the rationale and design of an enhanced Wiki for dealing with Requirements Engineering aspects, according to a CSCW approach. Moreover, we discuss the benefits of this Wikibased solution in the broader context of ProjectIT initiative, and how it can leverage the quality and rigor of requirements specifications through its integration with CASE tools.
ICSOFT 2006, 2006
Abstract: The lack of quality results in the development of information systems is certainly a go... more Abstract: The lack of quality results in the development of information systems is certainly a good reason to justify the presentation of new research proposals, especially those that address the most critical areas of that process, such as the requirements specification task ...
Uploads
Papers by Alberto Da Silva