Learn More
A common approach to software architecture documentation in industry projects is the use of file-based documents. This approach offers a single-dimensional perspective on the architectural knowledge contained. Knowledge retrieval from file-based architecture documentation is efficient if the perspective chosen fits the needs of the readers, it is less so if(More)
Teaching requirements engineering (RE) course is challenging for teachers and a bit of boring for students due to the lack of involvement to a real software development project. Role playing method has been introduced as an effective pedagogical approach that allows students to practise RE methods in a simulated project environment by playing different(More)
Ontology makes traditional web service to be semantic web services, where semantic annotation can be employed to discover, reason and composite web services semantically. The construction of ontology is a key factor to implement semantic web service applications. Traditionally, ontology is constructed and maintained by domain experts with considerable(More)
In the field of software architecture, there has been a paradigm shift from describing the outcome of architecting process mostly described by component and connector (know-what) to documenting architectural design decisions and their rationale (know-how) which leads to the production of an architecture. This paradigm shift results in emergence of various(More)
The justification for software architectural design decisions made throughout the architecting process is necessary for understanding, (re)using, communicating, and modifying an architecture design. Although there are many existing tools to capture, store, manage, and share the architectural design decisions explicitly, there still remains a need to(More)
Service oriented requirements engineering (SORE) is a main topic in service oriented development, which aims to capture stakeholders' service oriented requirements in a proper specification. In this paper, we proposed a novel process for service oriented requirements modeling. Methodologies in the process enable to establish a layered requirements model(More)
In large-scale collaborative software projects, thousands of requirements with complex interdependencies and different granularity spreading in different levels are elicited, documented, and evolved during the project lifecycle. Non-technical stakeholders involved in requirements engineering activities rarely apply formal techniques; therefore it is(More)
Context: Knowledge management technologies have been employed across software engineering activities for more than two decades. Knowledge-based approaches can be used to facilitate software architecting activities (e.g., architectural evaluation). However, there is no comprehensive understanding on how various knowledge-based approaches (e.g., knowledge(More)
In the field of software architecture, there has been a paradigm shift from describing structural information, such as components and connectors, to documenting Architectural Knowledge (AK), such as design decisions and rationale. To this end, a series of industrial and academic domain models have been proposed for defining the concepts and their(More)