358,226 research outputs found
Requirements Engineering During Global Software Development: Some Impediments to the Requirements Engineering Process - A Case Study
Requirements engineering is not straightforward for any software development team. Developing software when team members are located in widely distributed geographic locations poses many challenges for developers, particularly during the requirements engineering phase. This paper reports on a case study concerning a large software development project that was completed in just seven months between users located in the UK and software developers from an international software house based in New Zealand. The case indicates that while “true” global requirements engineering may be desirable in achieving economy of resources, a “hybrid” structure of requirements engineering processes is more realistic so that lasting relationships with clients may be formed, and requirements engineering activities achieved. The main impediment to the process of requirements engineering during global software development, as recounted by the team members in this case, is communication. Communication issues may be further described in terms of four categories: distribution of the clients and the development team, distribution of the development team, cultural differences between the clients and the development team and cultural differences among the development tea
User Story Software Estimation:a Simplification of Software Estimation Model with Distributed Extreme Programming Estimation Technique
Software estimation is an area of software engineering concerned with the identification, classification and measurement of features of software that affect the cost of developing and sustaining computer programs [19]. Measuring the software through software estimation has purpose to know the complexity of the software, estimate the human resources, and get better visibility of execution and process model. There is a lot of software estimation that work sufficiently in certain conditions or step in software engineering for example measuring line of codes, function point, COCOMO, or use case points.
This paper proposes another estimation technique called Distributed eXtreme Programming Estimation (DXP Estimation). DXP estimation provides a basic technique for the team that using eXtreme Programming method in onsite or distributed development. According to writer knowledge this is a first estimation technique that applied into agile method in eXtreme Programming
GOES-R Algorithms: A Common Science and Engineering Design and Development Approach for Delivering Next Generation Environmental Data Products
GOES-R, the next generation of the National Oceanic and Atmospheric Administration’s (NOAA) Geostationary Operational Environmental Satellite (GOES) System, represents a new technological era in operational geostationary environmental satellite systems. GOES-R will provide advanced products that describe the state of the atmosphere, land, oceans, and solar/ space environments over the western hemisphere. The Harris GOES-R Ground Segment team will provide the software, based on government-supplied algorithms, and engineering infrastructures designed to produce and distribute these next-generation data products. The Harris GOES-R Team has adopted an integrated applied science and engineering approach that combines rigorous system engineering methods, with modern software design elements to facilitate the transition of algorithms for Level 1 and 2+ products to operational software. The Harris Team GOES-R GS algorithm framework, which includes a common data model interface, provides general design principles and standardized methods for developing general algorithm services, interfacing to external data, generating intermediate and L1b and L2 products and implementing common algorithm features such as metadata generation and error handling.
This work presents the suite of GOES-R products, their properties and the process by which the related requirements are maintained during the complete design/development life-cycle. It also describes the algorithm architecture/engineering approach that will be used to deploy these algorithms, and provides a preliminary implementation road map for the development of the GOES-R GS software infrastructure, and a view into the integration of the framework and data model into the final design
3D Interactive virtual environments for E-learning, teaching and technical support: Multiplayer teaching and learning games for the School of Art, Design & Architecture.
This paper outlines the key stages of a University funded teaching and learning project, the main objective of the project is to build an online 3D virtual Ramsden workshop (RW) game learning environment. Using 3D modeling software and interactive 3D game programming technologies the project team have accurately modeled and simulated the Ramsden workshop (RW) building; The 3D virtual RW workshop has been accurately built to scale and is fitted with virtual furniture, virtual computers, virtual engineering machinery. These components have been developed as an initial range of interactive game based learning tools. In this project the team has also begun to simulate Health and Safety procedures, created software CAD/CAM tutorials and are developing and testing innovative learning support tools for all levels of learners.
The 3D Virtual Ramsden workshop (RW) game is part of ongoing research work that applies the use of 3D virtual software for developing appropriate interactive 3D spaces, avatars, objects and simulations for learning, teaching, training, exhibitions, experimental art and practice in virtual environments. Additionally within this project the research team also modelled a virtual Creative Arts Building and a University of Huddersfield virtual campus
Happiness and the productivity of software engineers
Software companies and startups often follow the idea of flourishing
happiness among developers. Perks, playground rooms, free breakfast, remote
office options, sports facilities near the companies, company retreats, you
name it. The rationale is that happy developers should be more productive and
also retained.
But is it the case that happy software engineers are more productive?
Moreover, are perks the way to go to make developers happy? Are developers
happy at all? What are the consequences of unhappiness among software
engineers?
These questions are important to ask both from the perspective of
productivity and from the perspective of sustainable software development and
well-being in the workplace. Managers, team leaders, as well as team members
should be interested in these concerns.
This chapter provides an overview of our studies on the happiness of software
developers. You will learn why it is important to make software developers
happy, how happy they really are, what makes them unhappy, and what is expected
regarding happiness and productivity while developing software.Comment: 12 pages, 2 figures. To appear in Rethinking Productivity in Software
Engineering, edited by Caitlin Sadowski and Thomas Zimmermann. arXiv admin
note: text overlap with arXiv:1707.0043
Object-oriented modelling with unified modelling language 2.0 for simple software application based on agile methodology
Unified modelling language (UML) 2.0 introduced in 2002 has been developing
and influencing object-oriented software engineering and has become a standard
and reference for information system analysis and design modelling. There are
many concepts and theories to model the information system or software
application with UML 2.0, which can make ambiguities and inconsistencies for a
novice to learn to how to model the system with UML especially with UML 2.0.
This article will discuss how to model the simple software application by using
some of the diagrams of UML 2.0 and not by using the whole diagrams as
suggested by agile methodology. Agile methodology is considered as convenient
for novices because it can deliver the information technology environment to
the end-user quickly and adaptively with minimal documentation. It also has the
ability to deliver best performance software application according to the
customer's needs. Agile methodology will make simple model with simple
documentation, simple team and simple tools.Comment: 15 pages, 30 figure
Autonomous Boat Control Software Design Using Model-Based Systems Engineering
While there is considerable buzz about self-driving cars, self-driving boats are actually more fully developed. The Boat Hardware Control Platform Team was tasked with developing a fleet of small autonomous boats that travel to a destination while avoiding obstacles and staying in formation. The author’s specific task was to develop software used by the boats to detect obstacles and plan a route to a destination. This was done using a method inspired by self-driving cars, which shows promise, but is still being tested at the time of writing. The entire project incorporated model-based systems engineering, which proved to be useful
Agile software development and service science
This paper shows the necessary steps, which should be taken in order to get the most out of agile software development in interdisciplinary settings involving scientific experts. If applied properly, Agile delivers increased productivity, higher quality and, last but not least, higher customer satisfaction. The task of developing high quality software is already difficult. Developing software for a new IT-enabled service in an interdisciplinary team however, is even more challenging.
In interdisciplinary projects scientific experts from different fields need to work together with computer scientists, developers, testers, business analysts and domain experts. Software engineering is very time-consuming and scientific experts who have never been involved in a software project, often find it hard to understand why progress sometimes seems so slow. Therefore, it is important that they understand what it takes to write high- quality code, i.e. code that is clean, tested, documented and extendable at the right points. The best way to achieve this goal is to expand the software team, make the scientific experts an integral part of it and thus profit from their know-how
Agile Software Development and Service Science How to develop IT-enabled Services in an Interdisciplinary Environment
This paper shows the necessary steps, which should be taken in order to get the most out of agile software development in interdisciplinary settings involving scientific experts. If applied properly, Agile delivers increased productivity, higher quality and, last but not least, higher customer satisfaction. The task of developing high quality software is already difficult. Developing software for a new IT-enabled service in an interdisciplinary team however, is even more challenging.In interdisciplinary projects scientific experts from different fields need to work together with computer scientists, developers, testers, business analysts and domain experts. Software engineering is very time-consuming and scientific experts who have never been involved in a software project, often find it hard to understand why progress sometimes seems so slow. Therefore, it is important that they understand what it takes to write high-quality code, i.e. code that is clean, tested, documented and extendable at the right points. The best way to achieve this goal is to expand the software team, make the scientific experts an integral part of it and thus profit from their know-how
- …