Spelling suggestions: "subject:"software engineering"" "subject:"software ingineering""
571 |
Performance characteristics between monolithic and microservice-based systemsFlygare, Robin, Holmqvist, Anthon January 2017 (has links)
A new promising technology to face the problem of scalability and availability is the microservice architecture. The problem with this architecture is that there is no significant study that clearly proves the performance differences compared to the monolithic architecture. Our thesis aims to provide a more conclusive answer of how the microservice architecture differs performance wise compared to the monolithic architecture. In this study, we conducted several experiments on a self-developed microservice and monolithic system. We used JMeter to simulate users and after running the tests we looked at the latency, successful throughput for the tests and measured the RAM and CPU usage with Datadog. Results that were found, were that the microservice architecture can be more beneficial than the monolithic architecture. Docker was also proven to not have any negative impact on performance and computer cluster can improve performance. We have presented a conclusive answer that microservices can be better in some cases than a monolithic architecture.
|
572 |
Quantitative Comparison of SensibleThings and Dweet.ioZhao, Yun January 2016 (has links)
The objective of this paper is to perform a quantitative comparison of Dweet.io and SensibleThings from different aspects. With the fast development of internet of things, the platforms for internet-of-things face bigger challenges. This paper will evaluate both systems in four parts. The first part shows the general comparison of input ways and output functions provided by the platforms. The second part shows the security comparison, which focuses on the protocol types of the packets and the stability during the communication. The third part shows the scalability comparison when the value becomes bigger. The fourth part shows the scalability comparison when speeding up the processes. After the comparisons, I concluded that Dweet.io is more easy to use on devices and supports more programming languages. Dweet.io realizes visualization and it can be shared. Dweet.io is safer and more stable than SensibleThings. SensibleThings provides more openness. SensibleThings has better scalability in handling big values and quick speed.
|
573 |
MDP for SymbianJonsson, Erik, Persson, Mikael January 2008 (has links)
The content of this report describes a bachelor thesis performed on commission by Cybercom Sweden West. The report describes techniques, methods and development tools used during the project. The purpose of this project is to demonstrate the usefulness with a new Bluetooth profile called Medical Device Profile (MDP) on the Medica trade fair 14-11-2007. The MDP profile that will be released in turn of the ear 07/08 is primarily intended to be used in medical devices.The demonstration is to be made by building a demonstrator consisting of an application running on a smartphone with Bluetooth abilities. The application will handle the Bluetooth connection between the smartphone and the oximeter, the data encryption and other functionalities and presenting the figures received form the oximeter in a Graphical User Interface (GUI).The final demonstrator consists of a smartphone application programmed in Symbian C++, which communicates with the oximeter using the Bluetooth Serial Port Profile (SPP). The application runs on UIQ 3.0 based smartphones and displays heart rate and %SpO2 (The percentage of oxygen saturation in blood), which the application receives from the oximeter.The original idea was to use the MDP profile by porting Cybercom's C version of the MDP to Symbian OS for the Bluetooth communication, depending on various factors described more in detail inside the report this was not done. The purpose of the project was still reached, even though another profile then MDP was used. This was done by replacing the considered oximeter for an older version which is using the SPP. By using SPP the same result will be demonstrated but with an older technique, and this will achieve the same result on Medica trade fair. The project was demonstrated on Medica with a successful result.
|
574 |
Defining Requirements for Vehicular Software Integration TestingKarshibayev, Bahodir January 2016 (has links)
In every software/system development life cycle, requirement representation is one of the crucial phases. The future success of the development process and end product quality very much depends on the quality of the requirements. Often, ambiguous and inconsistent requirements lead to a rework during the later stages of the development process. Furthermore, requirement specifications are used as an important input for testing activities, such as generating test case specifications. This thesis presents a Systematic Literature Review (SLR) of studies related to requirement representation (definition) for software integration testing. The purpose of this research is to improve current knowledge in requirement representation for integration testing in order to identify the state of the art in the area. We are interested in identifying possible suggestions for requirement representation, such as approaches, tools, lesson learned, and techniques that can be used for integration testing. The search strategy primarily retrieved 1060 studies in total, out of which 56 were considered as primarily relevant studies. However, during the data extraction phase of the SLR, 40 papers were found irrelevant according to inclusion/exclusion criteria. These studies were divided into different categories: model-based, executable specifications, natural-textual language, and combinational language. The systematic review aims at identifying probable gaps in research about requirement representation (definition) for software integration testing. The thesis work presents the results of performing data analysis and synthesis regarding all final selected studies. The proposed suggestions for requirement representation and their relation to integration testing are summarized. Although not many studies were found that addressed requirement representation for integration testing, this issue has been an interest of scientists as well as practitioners for many years. The majority of reviewed publications used a model-based approach in order to solve the issue of requirement representation for integration testing. On other hand, one of the most problematic ways of performing requirement representation is using natural-textual language. Expressing requirements in natural-textual language may introduce ambiguity or inconsistency, and these ambiguities/inconsistencies can be noticed in the later stages of the development process. The later they are identified, the higher the cost of eliminating these ambiguities or inconsistencies, which can significantly increase the development costs. Thus, the authors recommend using some support tool or methodology when expressing requirements in natural-textual language. Using a support tool or methodology can help to identify and eliminate ambiguities or inconsistencies in the early phase of the system/software development process. In the other publications, the authors combined two different requirement expressions together in order to improve the requirements' quality and perform virtual integration testing in the early phases of the development process.
|
575 |
Traceability : A key to software successOlsson, David January 2002 (has links)
From one year to another an intuitive feeling has grown stronger. That feeling tells us that poor traceability is the underlying reason for many of the problems that the software industry struggles with today. This thesis was carried out to see if this was true and if so investigate how traceability was related to the problems in today's software industry. In order to do this we have taken two different approaches. The first approach has been to try to establish if there exist support for this claim in existing literature. In the second approach we have tried to do the same thing by performing our own empirical study. Within this empirical study we have interviewed some project managers and some developers in order to find out which problems that are perceived by the software community as the most troublesome ones when it comes to software development. Finally we have created a conceptual framework for increased traceability and then investigated if whether or not this framework could provide a good foundation for tackling the problems identified in literature as well as the problems discovered within the empirical study.
|
576 |
Summarizing the Results of a Series of Experiments : Application to the effectiveness of the three software evaluation techniquesOlorisade, Babtunde Kazeen January 2009 (has links)
Software quality has become and persistently remains a big issue among software users and developers. So, the importance of software evaluation cannot be overemphasized. An accepted fact in software engineering is that software must undergo evaluation process during development to ascertain and improve its quality level. In fact, there are too many techniques than a single developer could master, yet, it is impossible to be certain that software is free of defects. Therefore, it may not be realistic or cost effective to remove all software defects prior to product release. So, it is crucial for developers to be able to choose from available evaluation techniques, the one most suitable and likely to yield optimum quality results for different products - it bogs down to choosing the most appropriate for different situations.
|
577 |
Modifying an architecture for interface customisation supportNilsson, Martin Persson and Johan January 2002 (has links)
This work is an investigation of how a software architecture can be changed in order to improve the support of the creation of a customised user interface. The parts of Symbian OS that are of interest for the work are described in detail. Then a comparison of the user interfaces of four different mobile devices is made, in order to get a picture of what the interfaces of such devices could look like. Also presented in the work is a modified reference architecture that supports customisation of all the features that have been identified in the comparison. Finally, the authors discuss how well the new architecture supports customisation of the user interface compared to the original Symbian OS architecture.
|
578 |
Techniques for Software Portability in Mobile DevelopmentJohansson, Andreas, Svensson, Jonas January 2009 (has links)
When attempting to get a software product to reach a larger part of the market, portability is a key factor. Unfortunately, it is often neglected from the software development cycle, and rather achieved by ad hoc methods in not very cost-effective ways. This thesis investigates portability in the context of mobile development. Previous research in this particular area has been hard to find, despite there obviously being special aspects surrounding it which are worth investigating further. The project was initiated with a literature study to find out the current state-of-the-art for portability. After this step the development of a mobile application was conducted, before which a market analysis had been carried out in order to explore which mobile platforms would be the most relevant to develop it for. The point of this case study was to attempt to achieve as high a degree of portability as possible, to later port the application to another platform. Based on the data gathered from this, conclusions were drawn and a general model with guidelines for developing mobile applications with portability as a main attribute was constructed. Among the more important lessons learned was that portability is more important in mobile development, due to the market being so diverse, while it also is a lot harder to achieve properly. This research will hopefully help development teams see the strengths and weaknesses of mobile application portability more clearly, allowing them to more easily design for it as well as making it a more intricate part of their process.
|
579 |
Prestanda och webbramverk / Performance and web frameworksSvedklint, Mattias, Bellstrand, Magnus January 2014 (has links)
I denna studie undersöktes det tio vanliga ramverk inom webb branschen, både de mest använda ramverken samt några nya uppstickare som har växt mycket de senaste åren. För att skala upp en hemsida till många användare är det viktigt att strukturen bakom sidan presterar bra, därför är det viktigt att välja rätt ramverk. Så hur ska en webbutvecklare då välja ramverk för att kunna uppnå en bra prestanda? Det är allmänt känt att användare lämnar sidor när responstiden ökar. Prestandan försämras snabbt när dynamiskt innehåll hanteras, vilket medför ökade hårdvarukostnader för att kunna hantera prestanda problemen. För att lösa detta så bidrar denna undersökning med riktlinjer för valet av rätt ramverk. Genom att prestandatester utfördes på tio utvalda ramverk, och där efter listades de snabbaste ramverken blev det ett resultat som visar på det ramverk som presterar bäst. Det utfördes även en observation av installationens utförande för att få reda på problematik som kan uppstå när respektive ramverk installeras. Det noterades även hur bra respektive ramverks manual hjälpte till för att guida installationen och att lösa problem som uppstod under installationen och konfigurationen av ramverken.
|
580 |
A Simple Throttling Concept for Multithreaded Application ServersStridh, Fredrik January 2009 (has links)
Multithreading is today a very common technology to achieve concurrency within software. Today there exists three commonly used threading strategies for multithreaded application servers. These are thread per client, thread per request and thread pool. Earlier studies has shown that the choice of threading strategy is not that important. Our measurements show that the choice of threading architecture becomes more important when the application comes under high load. We will in this study present a throttling concept which can give thread per client almost as good qualities as the thread pool strategy when it comes to performance. No architecture change is required. This concept has been evaluated on three types of hardware, ranging from 1 to 64 CPUs, using 6 alternatives loads and both in C and Java. We have also identified that there is a high correlation between average response times and the length of the run time queue. This can be used to construct a self tuning throttling algorithm that makes the introduction of the throttle concept even simpler, since it does require any configuring.
|
Page generated in 0.0685 seconds