Abstract: This work describes a framework for teaching of global software engineering (GSE) in university undergraduate programs. This framework proposes a method of teaching that incorporates adequate techniques of software requirements elicitation and validated tools of communication, critical aspects to global software development scenarios. The use of proposed framework allows teachers to simulate small software development companies formed by Latin American students, which build information systems. Students from three Latin American universities played the roles of engineers by applying an iterative development of a requirements specification in a global software project. The proposed framework involves the use of a specific purpose Wiki for asynchronous communication between the participants of the process. It is also a practice to improve the quality of software requirements that are formulated by the students. The additional motivation of students to participate in these practices, in conjunction with peers from other countries, is a significant additional factor that positively contributes to the learning process. The framework promotes skills for communication, negotiation, and other complementary competencies that are useful for working on GSE scenarios.
Abstract: Requirement Engineering (RE) is a part being created for programming structure during the software development lifecycle. Software product line development is a new topic area within the domain of software engineering. It also plays important role in decision making and it is ultimately helpful in rising business environment for productive programming headway. Decisions are central to engineering processes and they hold them together. It is argued that better decisions will lead to better engineering. To achieve better decisions requires that they are understood in detail. In order to address the issues, companies are moving towards Software Product Line Engineering (SPLE) which helps in providing large varieties of products with minimum development effort and cost. This paper proposed a new framework for software product line and compared with other models. The results can help to understand the needs in SPL testing, by identifying points that still require additional investigation. In our future scenario, we will combine this model in a controlled environment with industrial SPL projects which will be the new horizon for SPL process management testing strategies.
Abstract: This paper presents an approach to reduce some of its current flaws in the requirements phase inside the software development process. It takes the software requirements of an application, makes a conceptual modeling about it and formalizes it within JSON documents. This formal model is lodged in a NoSQL database which is document-oriented, that is, MongoDB, because of its advantages in flexibility and efficiency. In addition, this paper underlines the contributions of the detailed approach and shows some applications and benefits for the future work in the field of automatic code generation using model-driven engineering tools.
Abstract: This paper discusses the use of a template-based
approach for documenting high-quality requirements as part of course
projects in an undergraduate Software Engineering course. In order
to ease some of the Requirements Engineering activities that are
performed when defining requirements by using the template, a new
CASE tool, RED:WIRE, was first developed and later tested by
students attending the course. Two questionnaires were conceived
around a study that aims to analyze the new tool’s learnability as
well as other obtained results concerning its usability in particular
and the Requirements Engineering skills developed by the students
in general.
Abstract: The organizations of European and Czech critical
infrastructure have specific position, mission, characteristics and
behaviour in European Union and Czech state/business environments,
regarding specific requirements for regional and global security
environments. They must respect policy of national security and
global rules, requirements and standards in all their inherent and
outer processes of supply - customer chains and networks. A
controlling is generalized capability to have control over situational
policy. This paper aims and purposes are to introduce the controlling
as quite new necessary process attribute providing for critical
infrastructure is environment the capability and profit to achieve its
commitment regarding to the effectiveness of the quality
management system in meeting customer/ user requirements and also
the continual improvement of critical infrastructure organization’s
processes overall performance and efficiency, as well as its societal
security via continual planning improvement via DYVELOP
modelling.
Abstract: Developing a reliable and sustainable software products is today a big challenge among up–coming software developers in Nigeria. The inability to develop a comprehensive problem statement needed to execute proper requirements engineering process is missing. The need to describe the ‘what’ of a system in one document, written in a natural language is a major step in the overall process of Software Engineering. Requirements Engineering is a process use to discover, analyze and validate system requirements. This process is needed in reducing software errors at the early stage of the development of software. The importance of each of the steps in Requirements Engineering is clearly explained in the context of using detailed problem statement from client/customer to get an overview of an existing system along with expectations from the new system. This paper elicits inadequate Requirements Engineering principle as the major cause of poor software development in developing nations using a case study of final year computer science students of a tertiary-education institution in Nigeria.
Abstract: The success of IT-projects concerning the
implementation of business application Software is strongly
depending upon the application of an efficient requirements
management, to understand the business requirements and to realize
them in the IT. But in fact, the Potentials of the requirements
management are not fully exhausted by small and medium sized
enterprises (SME) of the IT sector. To work out recommendations for
action and furthermore a possible solution, allowing a better exhaust
of potentials, it shall be examined in a scientific research project,
which problems occur out of which causes. In the same place, the
storage of knowledge from the requirements management, and its
later reuse are important, to achieve sustainable improvements of the
competitive of the IT-SMEs. Requirements Engineering is one of the
most important topics in Product Management for Software to
achieve the goal of optimizing the success of the software product.
Abstract: Requirement engineering has been the subject of large
volume of researches due to the significant role it plays in the
software development life cycle. However, dynamicity of software
industry is much faster than advances in requirements engineering
approaches. Therefore, this paper aims to systematically review and
evaluate the current research in requirement engineering and identify
new research trends and direction in this field. In addition, various
research methods associated with the Evaluation-based techniques
and empirical study are highlighted for the requirements engineering
field. Finally, challenges and recommendations on future directions
research are presented based on the research team observations
during this study.
Abstract: The Requirements Abstraction Model (RAM) helps in managing abstraction in requirements by organizing them at four levels (product, feature, function and component). The RAM is adaptable and can be tailored to meet the needs of the various organizations. Because software requirements are an important source of information for developing high-level tests, organizations willing to adopt the RAM model need to know the suitability of the RAM requirements for developing high-level tests. To investigate this suitability, test cases from twenty randomly selected requirements were developed, analyzed and graded. Requirements were selected from the requirements document of a Course Management System, a web based software system that supports teachers and students in performing course related tasks. This paper describes the results of the requirements document analysis. The results show that requirements at lower levels in the RAM are suitable for developing executable tests whereas it is hard to develop from requirements at higher levels.
Abstract: Most standard software development methodologies
are often not applied to software projects in many developing
countries of the world. The approach generally practice is close to
what eXtreme Programming (XP) is likely promoting, just keep
coding and testing as the requirement evolves. XP is an agile
software process development methodology that has inherent
capability for improving efficiency of Business Software
Development (BSD). XP can facilitate Business-to-Development
(B2D) relationship due to its customer-oriented advocate. From
practitioner point of view, we applied XP to BSD and result shows
that customer involvement has positive impact on productivity, but
can as well frustrate the success of the project. In an effort to
promote software engineering practice in developing countries of
Africa, we present the experiment performed, lessons learned,
problems encountered and solution adopted in applying XP
methodology to BSD.
Abstract: The importance of good requirements engineering is well documented. Agile practices, promoting collaboration and communications, facilitate the elicitation and management of volatile requirements. However, current Agile practices work in a well-defined environment. It is necessary to have a co-located customer. With distributed development it is not always possible to realize this co-location. In this environment a suitable process, possibly supported by tools, is required to support changing requirements. This paper introduces the issues of concern when managing requirements in a distributed environment and describes work done at the Software Technology Research Centre as part of the NOMAD project.
Abstract: Decision Support System (DSS) are interactive
software systems that are built to assist the management of an
organization in the decision making process when faced with nonroutine
problems in a specific application domain. Non-functional
requirements (NFRs) for a DSS deal with the desirable qualities and
restrictions that the DSS functionalities must satisfy. Unlike the
functional requirements, which are tangible functionalities provided
by the DSS, NFRs are often hidden and transparent to DSS users but
affect the quality of the provided functionalities. NFRs are often
overlooked or added later to the system in an ad hoc manner, leading
to a poor overall quality of the system. In this paper, we discuss the
development of NFRs as part of the requirements engineering phase
of the system development life cycle of DSSs. To help eliciting
NFRs, we provide a comprehensive taxonomy of NFRs for DSSs.
Abstract: This paper describes the challenges on the requirements engineering for developing an enterprise applications in higher
education environment. The development activities include software implementation, maintenance, and enhancement and support for online
transaction processing and overnight batch processing.
Generally, an enterprise application for higher education environment
may include Student Information System (SIS), HR/Payroll system,
Financial Systems etc. By the way, there are so many challenges in
requirement engineering phases in order to provide two distinctive
services that are production processing support and systems
development.
Abstract: High quality requirements analysis is one of the most
crucial activities to ensure the success of a software project, so that
requirements verification for software system becomes more and more
important in Requirements Engineering (RE) and it is one of the most
helpful strategies for improving the quality of software system.
Related works show that requirement elicitation and analysis can be
facilitated by ontological approaches and semantic web technologies.
In this paper, we proposed a hybrid method which aims to verify
requirements with structural and formal semantics to detect
interactions. The proposed method is twofold: one is for modeling
requirements with the semantic web language OWL, to construct a
semantic context; the other is a set of interaction detection rules which
are derived from scenario-based analysis and represented with
semantic web rule language (SWRL). SWRL based rules are working
with rule engines like Jess to reason in semantic context for
requirements thus to detect interactions. The benefits of the proposed
method lie in three aspects: the method (i) provides systematic steps
for modeling requirements with an ontological approach, (ii) offers
synergy of requirements elicitation and domain engineering for
knowledge sharing, and (3)the proposed rules can systematically assist
in requirements interaction detection.