From Service-Orientation to Agile Development by Conceptually Linking Business IT Services and User Stories: A Meta-Model and a Process Fragment

Author(s):  
Konstantinos Tsilionis ◽  
Yves Wautelet
2020 ◽  
Vol 2020 ◽  
pp. 1-16 ◽  
Author(s):  
Bo Jiang ◽  
Pengxiang Liu ◽  
Ye Wang ◽  
Yezhi Chen

At present, Mashup development has attracted much attention in the field of software engineering. It is the focus of this article to use existing open APIs to meet the needs of Mashup developers. Therefore, how to select the most appropriate open API for a specific user requirement is a crucial problem to be solved. We propose a Hybrid Open API Selection Approach for Mashup development (HyOASAM), which consists of two basic approaches: one is a user-story-driven open API discovery approach, and the other is multidimensional-information-matrix- (MIM-) based open API recommendation approach. The open API discovery approach introduces user stories in agile development to capture Mashup requirements. First, it extracts three components from user stories, and then, it extracts three corresponding properties from open API descriptions. Next, the similarity calculation is performed on two sets of data. The open API recommendation approach first uses MIM to store open APIs, Mashups, and the invoking relationship between them. Second, it enters the matrix obtained in the previous step into a factorization machine model to calculate the association scores between the Mashups and the open APIs, and TOP-N open API lists for creating the Mashup are obtained. Finally, experimental comparison and analysis are carried out on the PWeb dataset. The experimental results show that our approach has improved significantly.


Author(s):  
Erika Halme ◽  
Ville Vakkuri ◽  
Joni Kultanen ◽  
Marianna Jantunen ◽  
Kai-Kristian Kemell ◽  
...  

AbstractArtificial Intelligence (AI) systems are increasing in significance within software services. Unfortunately, these systems are not flawless. Their faults, failures and other systemic issues have emphasized the urgency for consideration of ethical standards and practices in AI engineering. Despite the growing number of studies in AI ethics, comparatively little attention has been placed on how ethical issues can be mitigated in software engineering (SE) practice. Currently understanding is lacking regarding the provision of useful tools that can help companies transform high-level ethical guidelines for AI ethics into the actual workflow of developers. In this paper, we explore the idea of using user stories to transform abstract ethical requirements into tangible outcomes in Agile software development. We tested this idea by studying master’s level student projects (15 teams) developing web applications for a real industrial client over the course of five iterations. These projects resulted in 250+ user stories that were analyzed for the purposes of this paper. The teams were divided into two groups: half of the teams worked using the ECCOLA method for AI ethics in SE, while the other half, a control group, was used to compare the effectiveness of ECCOLA. Both teams were tasked with writing user stories to formulate customer needs into system requirements. Based on the data, we discuss the effectiveness of ECCOLA, and Primary Empirical Contributions (PECs) from formulating ethical user stories in Agile development.


Software development becomes a complex process when the software grows in size or complexity making it difficult to estimate usage of resources or development costs. Software effort estimation is that part of development which helps in assessing resource prior to development. An estimate is a quantified evaluation of the effort necessary to carry out a given development task and most often expressed in terms of durations. Effort estimation is done with an intent to aggregate individual estimates and obtain the overall duration, effort or cost of a software project. The workforce is measured as effort and the total time required is defined for a task in effort estimations which is usually expressed in units (Man-day, Man-month, and Man-year). Most other factors like cost or total time required to developed software are dependent on these estimations. Further, Algorithms used for estimating software developments efforts, may also be imprecise. Thus, Effort estimations plays an important part of software development in planning and monitoring projects. Agile methodology is relatively a new set of practices in software development. Agile estimations are based on many factors. Improperly recorded information from Agile methods can result in erratic estimations thus creating an impending need for precise effort estimations. It is difficult to find a single technique which can suit all conditions. Hence, this paper attempts to estimate agile development efforts by using a hybrid technique based on function points and user stories. Results of the proposed technique demonstrate that the arrived effort estimations based on user stories are efficient.


Author(s):  
Manuel Mora ◽  
Jorge Marx Gómez ◽  
Fen Wang ◽  
Edgar Oswaldo Díaz

The current and most used IT Service Management (ITSM) frameworks (ITIL v2011, CMMI-SVC, and ISO/IEC 20000) correspond to a rigor-oriented paradigm. However, the high dynamism in business requirements for IT services has fostered the emergence of agile-assumed ITSM frameworks. In contrast with the Software Engineering field where the rigorous and agile development paradigms co-exist because both paradigms are well-known and well-accepted, in the ITSM field, agile ITSM frameworks are practically unknown. This chapter, thus, reviews the main emergent proffered agile ITSM frameworks (Lean IT, FitSM, IT4IT, and VeriSM) focusing on the IT service design process category. This process category is relevant because an IT service is designed after its business strategic authorization and the IT service design determines the future warranty and utility metrics for the IT service. The main findings suggest the need for clear and effortless agile ITSM frameworks with agile design practices to guide potential ITSM practitioners to cope with the new digital business environment.


Author(s):  
Chung-Yeung Pang

The combination of software engineering and agile development process can bring great benefits to the development and maintenance of enterprise applications. This chapter introduces the engineering of requirements in an agile Scrum development process. In Scrum, requirements are usually defined as user stories in a product backlog. Since many enterprise applications do not have intensive user actions, stories cannot be linked to users. Topics such as user and enabler stories, non-functional requirements, considerations of architecture and business components, business workflow, and breakdown of user stories are addressed. The requirements engineering of PBIs is illustrated by practical examples. Using UML use cases and collaboration models is recommended to transform the stories in the product backlog into formal requirements specifications. The proposed approach can be part of the agile development framework for flexible software products that are easy to customize and maintain.


Author(s):  
Konstantinos Tsilionis ◽  
Yves Wautelet

Large organizations often describe IT needs in terms of services. IT governance mechanisms ensure investments lead to systems aligned with the long-term objectives. This business and IT alignment is often evaluated at the early stages when a service development decision needs to be taken. Evaluating such an alignment nevertheless requires knowledge and details on the tasks, activities, and requirements that the service is supposed to support. This is incompatible with agile development principles that prescribe to focus on an ad-hoc design built during a sprint. The latter indeed uses an operational approach where value delivered to stakeholders is the driver. This chapter advocates that investment decisions based on (coarse-grained) services is reconcilable with their agile development. It proposes Agile-MoDrIGo, a model-driven IT governance framework using services as scope elements and relying on agile to determine run-time behavior. To this end, the framework uses parallel top-down and bottom-up approaches based on conceptual models where integration is ensured by a middle layer.


2018 ◽  
Vol 232 ◽  
pp. 01018 ◽  
Author(s):  
Jiujiu Yu

From the two points of view of software engineering and teaching strategy, the functional features and key elements on designing of the subject-based learning website are analysed in detail. A design method based on scrum is proposed and implemented of a subject-based learning website for the "Office Automation" course. The method improves the traditional process of scrum, it mainly integrates the designing of self-learning tasks in the form of user stories cards into the product backlogs of functionality requirements of the subject-based learning website, and establishes a scrum committee which contains of high educational experts and college leaders to ensure the agile development of the project. Finally, further researches on how to refine and evaluate the user stories reasonably, how to implement the test automation combined with manual test for agile project, how to manage and coordinate the work arrangements of team members to stimulate them self-driven awareness are expected in the paper.


2019 ◽  
Vol 26 (11) ◽  
pp. 1344-1354 ◽  
Author(s):  
Vaishnavi Kannan ◽  
Mujeeb A Basit ◽  
Puneet Bajaj ◽  
Angela R Carrington ◽  
Irma B Donahue ◽  
...  

AbstractObjectiveWe sought to demonstrate applicability of user stories, progressively elaborated by testable acceptance criteria, as lightweight requirements for agile development of clinical decision support (CDS).Materials and MethodsUser stories employed the template: As a [type of user], I want [some goal] so that [some reason]. From the “so that” section, CDS benefit measures were derived. Detailed acceptance criteria were elaborated through ensuing conversations. We estimated user story size with “story points,” and depicted multiple user stories with a use case diagram or feature breakdown structure. Large user stories were split to fit into 2-week iterations.ResultsOne example user story was: As a rheumatologist, I want to be advised if my patient with rheumatoid arthritis is not on a disease-modifying anti-rheumatic drug (DMARD), so that they receive optimal therapy and can experience symptom improvement. This yielded a process measure (DMARD use), and an outcome measure (Clinical Disease Activity Index). Following implementation, the DMARD nonuse rate decreased from 3.7% to 1.4%. Patients with a high Clinical Disease Activity Index improved from 13.7% to 7%. For a thromboembolism prevention CDS project, diagrams organized multiple user stories.DiscussionUser stories written in the clinician’s voice aid CDS governance and lead naturally to measures of CDS effectiveness. Estimation of relative story size helps plan CDS delivery dates. User stories prove to be practical even on larger projects.ConclusionsUser stories concisely communicate the who, what, and why of a CDS request, and serve as lightweight requirements for agile development to meet the demand for increasingly diverse CDS.


Sign in / Sign up

Export Citation Format

Share Document