Spelling suggestions: "subject:"5oftware engineering."" "subject:"1software engineering.""
191 |
Tidsloggning via NFCHedlund, Robin, Johansson, Peter January 2016 (has links)
Denna rapport beskriver utvecklandet av ett tidsrapporteringssystem som tillämpar Near-Field-Communication[NFC]-tekniken. Systemet är i första hand avsett för ett företag där systemet i sig är framtaget med moderna tekniker och utvecklades med syn på expandering och vidareutveckling. En webbapplikation har utvecklats som består utav en server, databas och webbsida. Servern kan ta emot förfrågningar för att hantera information som finns lagrad i databasen. Webbsidan kan hantera och se över tidsrapporter i ett användargränssnitt som kan nås med hjälp utav en webbläsare. Systemet innehåller en station som använder sig utav en NFC-läsare för att läsa av information ifrån externa NFC-enheter. Informationen som läses av skickas vidare, via Wi-Fi, till servern för att antingen registrera en ny station eller skapa en tidsloggning. En mobil applikation har utvecklats till mobiltelefoner som använder sig utav operativsystemet Android och har inbyggt NFC-stöd. En mobiltelefon som stödjer dessa kriterier kan svepas över en station för att utföra en tidsloggning. Mobiltelefonen kan själv utföra skapa, modifiera, ta bort och hämta tidsloggningar. GPS är integrerat för navigering och för att koppla ihop position med en tidsloggning. / This report describes the development of a time reporting system that applies the Near-Field Communication [NFC] technology. The system is primarily intended for a company where the system itself is designed with modern techniques and was developed with the vision of expansion and further development. A web application has been developed that consists of a server, database, and a web page. The server can receive requests to manage the information stored in the database. The web page can manage and review the time logs in a user interface that can be accessed with a browser. The system includes a station that uses a NFC-reader to read information from the external NFC devices. The information is then forwarded, with the help of Wi-Fi, to the server to either register a new station or create a time log. It also has a mobile application developed for mobile phones that use Android as operating system and has built-in NFC support. A mobile phone that supports these criteria may be swept over a station to perform a time log. The mobile phone can carry out create, modify, delete, and view time logs. GPS is integrated for navigation and to connect a position with a time log.
|
192 |
Implications of Client Involvement in Student Projects : Comparative Study between Project without a Real Client and Project with a Real ClientMarriska, Aftri January 2015 (has links)
No description available.
|
193 |
Unit Test of Capsules using Google Test FrameworkStröm, Joakim, Sjölund, Jakob January 2016 (has links)
Software testing is an important part of modern system development. It is a collection of methods used to detect and correct bugs and faults found in software code. Unit testing is a widely used technique in software testing where individual units of source code are isolated, often divided up into classes and functions, and tested separately. When developing in a modeling environment, the system components and their respective behavior are expressed by models written in the Unified Modeling Language (UML). These model descriptions are then used to automatically generate programming code for compilation into real-time systems. The generated code can in turn be subjected to unit testing in order to aid in the verification of the systems behavior and functionality. The modeling tool Rational Software Architect RealTime Edition (RSARTE), developed by IBM, is one example of such an environment. The generated code from the UML models in RSARTE is designed to execute in a real-time computing C++ runtime environment. An essential building block for real-time functionality is the Capsule model. A capsule is an element with an internal state-machine and ports defining its behavior and communication with other capsules. This construction is of great help when programming concurrent real-time applications. Due to the complexity provided by the real-time runtime environment, it is difficult to isolate and unit test the behavior of designed capsules. In this thesis we will show that a capsule in this environment can be isolated and then subjected to unit testing with the help of an integrated third party unit test framework. Also, before integrating a suitable framework, we will select one by doing a review, discussion and a comparison of different mature and available unit test frameworks for use in the C++ language.
|
194 |
Outcomes of applying lightweight code review in terms of error detection and perceived value and learningTholin, Emil January 2015 (has links)
The problems a new start-up company face are numerous. Everything from restricted resources and a very high speed of development, to different backgrounds and levels of expertise and experience of the employees. Procedures have to be set in place in order to give everyone involved the same vision of the product, and to get the development up to speed as fast as possible. This case study implements a light weight code review protocol that is adopted by the programmers of the company, primarily to mitigate the problem of varying expertise. During the course of the study, measurements of errors detected and perceived value and learning were made. Finally, extrapolations of the data was done in order to see what could be generalised from this very specific case study to a broader context.
|
195 |
User Requirements for Internet Of Things (IoT) Applications : An Observational studyNamirimu, Victoria January 2015 (has links)
Context. Internet of Things (IoT) is a new trending phase of technology. IoT refers to communication and connectivity between things such as technological devices, actuators, sensors, and people or processes with unique identifiers. The importance of IoT is to improve the daily living standards of an average user. IoT is made for the people and used by the people for many reasons such as improved health, business innovations, and personal health trackers. Examples of IoT applications and services today include Smart thermostats like NEST, connected cars like Car2Go, activity trackers like BASIS, smart outlets like Belkin, Parking sensors like streetline and so much more services being developed. Objectives. The main goal of this study is to identify the challenges users face in understanding IoT and monitoring it as it undergoes change through self-adaptation. Once the challenges have been known then the gap between system requirements and user requirements can be bridged. The study also states the different ways the developers can improve the IoT services and applications for the users through user feedback. Methods. In this paper, an observational study is conducted. Within the study, two data collection methods were used; observational of the users and post observation questionnaires. The observational study was done by video recording users while using the IoT application. This was to obtain information about the IoT. The post observational questionnaires were to obtain information about the users’ judgement of their IoT experience. The IoT application used in this study is a Smart Home Starter Kit. The users are to secure a room with the Smart Home Starter kit. Later on, the users are presented with a post observational questionnaire to further elaborate on their experience in case the researcher missed something while recording. The study was performed with 5 users. The users were found through convenience sampling at the Karlskrona central train station and the Hogsland Park. They were then asked, if they were willing to take part in the study. This number of users was enough to reach saturation needed for the research. The author used a deductive approach together with conventional content analysis method to analyze the data and its quality. Results. The research questions of the study focused mainly on learning, maintaining awareness and re-process of the IoT. Re-process of the IoT refers to implementing the IoT with the new information received from user feedback. This enables the IoT to become more user compatible and friendly. When the results of the study were mapped to the research questions, the author deduced that learnability requirements were lacking. The users suggested simpler step by step guidelines would have made their experience with IoT much better. Thus the IoT developers would implement the user feedback through simple online tutorials, an online technician that could guide the users through the IoT application. Conclusions. In comparison to related work, the author concluded that there is still a big knowledge gap between the system requirements and the user requirements of the IoT. Many related papers are more focused on what IoT applications to develop and design than the users of the IoT applications. That is where this paper comes in, to bridge the gap. Without focus on users and their needs, then complex IoT systems will fail to accomplish their goal. The users suggested simple step by step approach on how to use the IoT due to the learnability problem that is faced by the majority of them. The product developers can make simpler and more user friendly IoT applications with these results. In the future, User requirements could further get categorized according to the different types of IoT and users. This would make it simpler for the researcher as the scope is narrowed down and at the same time for the IoT developers, as they know what to implement in the IoT applications.
|
196 |
Multi-Agent-Based Simulation and Optimization of Production and TransportationHolmgren, Johan January 2008 (has links)
This thesis addresses the integration of software agent technology, simulation and mathematical optimization within the domain of production and transportation. It has been argued that agentbased approaches and mathematical optimization can complement each other in the studied domain. These technologies have often been used separately, but the existing amount of literature concerning how to combine them is rather limited, especially in the domain of production and transportation. This domain is considered complex since; for instance, the decision making is characterized by many decision makers that are influencing each other. Also, problems in the domain are typically large and combinatorial. The transportation of goods has both positive and negative effects on society. A positive effect is the possibility for people to consume products that have been produced at distant locations. Examples of negative effects are: emissions, congestion, accidents, and large costs for infrastructure investments. Increasing competition, experienced by manufacturers and haulers, acts as a motivation for improving the utilization of often limited and expensive production and transportation resources. It is important to maximize the positive effects of transportation while the negative effects are minimized. We present a rather general agent-based simulator (TAPAS) for simulation of production and transportation. By using agent technology, we have been able to simulate the decision making and interaction between decision makers, which is difficult using traditional simulation techniques. We provide a technical description of how TAPAS was modeled, and examples of how it can be used. An optimization model for a real world ``Integrated Production, Inventory, and Distribution Routing Problem’’ (IPIDRP) has been developed. The identified IPIDRP is in the domain of production and transportation problems. For solving and analyzing the problem, we developed a solution method based on the principles of Dantzig- Wolfe decomposition, which was implemented as a multi-agent system inside TAPAS. The purpose is to improve resource utilization and to analyze the potential effects of introducing VMI (Vendor Managed Inventory). Experiments are performed for quantifying the benefits of VMI and for estimating the effects of an agentification of the decomposition approach. Some advantages and disadvantages of an agentification are discussed in this thesis. The work indicates high potentials for integrating agent technology and mathematical optimization. One direction for future work is to use TAPAS as a tool for evaluating the results that are produced by the optimization algorithm. For real world systems, evaluation of optimization results can be expensive and difficult to carry out, and we believe that simulation can be useful for evaluation purposes.
|
197 |
Towards a Framework for Fault and Failure Prediction and EstimationScott, Hanna January 2008 (has links)
In software companies today we see a trend of changing development processes, as well as test processes, in order to reduce the number of faults in their software; and by reducing the number of faults, reducing the number of failures. It is hard to know if a change to a process has a positive or negative effect on the faults and failures of the software. Measuring the total number of faults and failures is a way of telling if the process has been changed for better or worse. The problem with measuring all faults in a software project is that it takes a lot of reviewing and testing. To know how many failures can be provoked from the software, the software needs to be run for a long time after release. In both these instances the information on the total number of faults or failures of the software is simply available too late. The use of fault and failure prediction and estimation methods allows project members and managers to get information about the total number of faults and failures of the software. The predictions and estimations can be repeated at different points during a development project. The contribution of the thesis consists of models and methods for fault and failure prediction and estimation. In this thesis three new methods of easy, early and cost-efficient fault and failure prediction and estimation are presented. The methods are created to take in new information as it becomes available, and are not meant for point estimates or predictions, but to continuously follow-up the estimates and predictions. The three methods presented are a first step towards the creation of a framework for fault and failure estimation and prediction. The framework consists of estimation and prediction models used at different points throughout a project. The goal of the framework is to be able to follow, and continuously improve the estimates and predictions of faults and failures in software projects.
|
198 |
Measuring usability - balancing agility and formality : for stakeholders’ needs in software developmentWinter, Jeff January 2009 (has links)
The main focus of the research presented in this thesis is a usability evaluation framework for mass market mobile devices, allowing measurement, comparison and presentation of the usability of hand held devices. The research has been a cooperation between an academic and an industrial partner, based on an action research approach, following the processes of Cooperative Method Development (CMD). It has used a case study approach, where the data has been analysed using techniques taken from grounded theory. Ethnography and participatory design have been central to both the research and the cooperation. With its basis in the evaluation framework, and its use of quantitative measurements and qualitative judgments framed by a focus on usability testing, this thesis contributes to aspects related to capturing real world usage in a continuously changing society, and supporting information needs in the process of building software. The evaluation framework can be used as a quality assurance tool in a wide perspective. It measures usability and the user experience, quickly and flexibly, and in so doing measures aspects of quality in use. It has been tested in a complex industrial development project and is a valuable and flexible tool that is easy for a usability expert to learn and use, to measure and help build quality on the customer’s terms. The results we have arrived at are of practical and theoretical interest within software engineering and the industrial telecom sphere. Several features and aspects of the evaluation framework are new and challenging. These are: its mix of qualitative and quantitative methods, allowing it to target many different stakeholders; experience in applying these methods in the technology-focused and rapidly changing mobile phone area; the challenge of addressing end users in a mass market; the challenge of finding presentation models for the many different stakeholders; the challenge of making sure the framework can be used in different stages in the industrial software development process. The framework is related to three areas of software engineering, Market Driven Requirements Engineering, Statistical Usage Testing, and Organisation and Product Together. Our work includes a discussion of the need for agility, which has not so far been focused upon and discussed within the area of software engineering and usability. The combination of factors included in the framework means that is unique in solving a number of the problems that are found in these different areas within software engineering, especially in a rapidly changing marketplace. We also contribute to the field, through the qualitative element of the evaluation framework, which is inspired by ethnography and participatory design. It thereby makes a contribution that can improve practice in the field of software engineering, and that contributes to the theoretical work that is being performed within these different research areas.
|
199 |
Perspectives on Software and their Priorities : Balancing Conflicting Stakeholder ViewsBarney, Sebastian January 2009 (has links)
The sustainable development of a software product depends on a number of groups working together to achieve a common goal. However, each of the groups interacts with the product in different ways, and can have conflicting aims and objectives. For example, developers trying to correct issues in the software architecture, which will impact future releases of the product, can be stopped by a project manager who is charged with delivering a release on time and within budget. While the functional requirements of a software product are usually documented, there are a number of other investments in software development that are not always as explicitly agreed upon but are still essential to a product's long-term success. The major investment types include software product quality -- a main control variable in software development, and intellectual capital (IC) -- being the key input and tool used in software development. As management requires measurement, it is necessary understand the priorities placed on investment options by the various groups involved in the development of a software product. The objective of this thesis is to develop a method capable of both determining the priorities of different groups, and the level of alignment between these groups in terms of their priorities. Evolving the method from a study into the values used to select requirements for a release of software, Ericsson supported the development of a methodology to determine and compare the priorities of different groups for software product quality, and IC. The method elicited the required information from a series of case studies to build up a picture of the priorities placed on major investment options and constraints -- features, quality, IC, time and cost. The results highlight strengths, and areas for improvement -- through the identification of differing priorities and ambiguities in management of different aspects studied. In conducting this research, systematic biases in the selection of requirements appear to be occurring, adding an objective to understand how bias impacts decision making in a requirements engineering context. This thesis provides a method that determines the priorities on the level of investment on different options in the development of software products. It is concluded that people involved in the development of software need to be aligned on issues of software product quality as these priorities set expectations. The same was not found true for issues of IC, where groups can complete tasks without negatively impacting others, as long as the organisation works effectively as a single entity. On the issue of biases in the prioritisation of these aspects, prospect theory is found to apply to requirements selection in an academic experiment -- suggesting people will prefer functionality over software product quality, and to meet the known requirements of customers over predicting general market requirements.
|
200 |
Strategic Decision Support for Software Intensive Product ManagementKhurum, Mahvish January 2009 (has links)
Context: At the core of choosing what features and level of quality to realize, and thus offer a market or customer, rests on the ability to take decisions. Decision-making is complicated by heterogeneous understanding of issues such as priority, implication of realization, and interpretations of strategy as pertaining to the short- and long-term development of software intensive systems. The complexity is further compounded by the amount of decision support material that has to be taken into account and the sheer volume of possible alternatives that have to be triaged and prioritized, thousands, or even tens of thousands of requirements can be the reality facing industry. There is a need to develop the functionality that is strategically most important while satisfying customers and being competitive, cost efficient, and minimizing risk. In order to achieve a balance between these factors, it is important that within an organization, all stakeholders agree on the strategic aspects to be considered and their corresponding relative importance. Objective: The objective of this thesis is to provide strategic decision-making support for product management of software intensive products. Method: A number of empirical studies, set in both academia and industry have been performed. The research methods used span from systematic reviews, case studies to experiments, all aligned to identify possibilities for improvement, devise solutions, and validate these solutions in several steps. Result: The methods presented in this thesis can be used to evaluate strategic alignment and identify possible root causes for misalignments. To strengthen strategic alignment, the methods and results in the thesis can be used by product managers for making effective and efficient strategic decisions regarding portfolios and products, following a systematic and aligned process. Conclusions: The area of product management in the context of market-driven software intensive product development is a field with unique challenges. The specifics of the solutions are based on industry case studies performed to gauge state of the art as well as map the main challenges. The decision-making support developed takes the form of models and methods that support software product management in strategic alignment, requirements triage and portfolio level decisions.
|
Page generated in 0.1032 seconds