97 resultados para Linhas de produtos de software
Resumo:
The size and complexity of projects in the software development are growing very fast. At the same time, the proportion of successful projects is still quite low according to the previous research. Although almost every project's team knows main areas of responsibility which would help to finish project on time and on budget, this knowledge is rarely used in practice. So it is important to evaluate the success of existing software development projects and to suggest a method for evaluating success chances which can be used in the software development projects. The main aim of this study is to evaluate the success of projects in the selected geographical region (Russia-Ukraine-Belarus). The second aim is to compare existing models of success prediction and to determine their strengths and weaknesses. Research was done as an empirical study. A survey with structured forms and theme-based interviews were used as the data collection methods. The information gathering was done in two stages. At the first stage, project manager or someone with similar responsibilities answered the questions over Internet. At the second stage, the participant was interviewed; his or her answers were discussed and refined. It made possible to get accurate information about each project and to avoid errors. It was found out that there are many problems in the software development projects. These problems are widely known and were discussed in literature many times. The research showed that most of the projects have problems with schedule, requirements, architecture, quality, and budget. Comparison of two models of success prediction presented that The Standish Group overestimates problems in project. At the same time, McConnell's model can help to identify problems in time and avoid troubles in future. A framework for evaluating success chances in distributed projects was suggested. The framework is similar to The Standish Group model but it was customized for distributed projects.
Resumo:
Software testing is one of the essential parts in software engineering process. The objective of the study was to describe software testing tools and the corresponding use. The thesis contains examples of software testing tools usage. The study was conducted as a literature study, with focus on current software testing practices and quality assurance standards. In the paper a tool classifier was employed, and testing tools presented in study were classified according to it. We found that it is difficult to distinguish current available tools by certain testing activities as many of them contain functionality that exceeds scopes of a single testing type.
Resumo:
Today cloud computing is the next stage in development information-oriented society in field of information technologies. Great attention is paid to cloud computing in general, but the lack of scientific consideration to components brings to the problem, that not all aspects are well examined. This thesis is an attempt to consider Platform as a Service (a technology of providing development environment through the Internet) from divergent angles. Technical characteristics, costs, time, estimation of effectiveness, risks, strategies that can be applied, migration process, advantages and disadvantages and the future of the approach are examined to get the overall picture of cloud platforms. During the work literature study was used to examine Platform as a Service, characteristics of existent cloud platforms were explored and a model of a typical software development company was developed to create a scenario of migration to cloud technologies. The research showed that besides all virtues in reducing costs and time, cloud platforms have some significant obstacles in adoption. Privacy, security and insufficient legislation impede the concept to be widespread.
Resumo:
This Masters thesis studies the possibilities that social media tools can bring to help knowledge management in software development companies. It will introduce the most popular tools of social media and their usage possibilities in companies, not forgetting the possible downsides. One relevant aspect in this study is to investigate the possibilities of social media to help converting existing tacit knowledge into explicit. The purpose of the work is to create a proposal of social media utilization for a mid-sized software company, which has not utilized social media tools before. To be able to create the proposal, employees of the company are interviewed and a survey is executed to analyze the current situation. In addition a pilot project for trying out new social media tools is executed. The final result of this thesis introduces a tailored solution for the target company to start utilizing social media in its documentation and knowledge sharing processes. This new solution consists of multiple individual suggestions that are categorized and prioritized based on the significance and benefit that they bring to the company.
Resumo:
The purpose of this thesis is to examine software licensing, how a software developer can benefit from it and to define specifications for licensing system of software based medical technology product. The thesis has been divided into theoretical and empirical parts. In the theoretical part the concept of software licensing and different aspects that are connected to it are examined with a help of research material. On the ground of this research, in the empirical part, a licensing system for a medical software product called iCentral is designed. The empirical part is based on interviews, questionnaire and on authors own experience gained while working for the case-company.The thesis has great practical importance for the case-company by proposing both an ideal, and more importantly, practical implementation for a licensing system of a product. Thesis shows that electronic licensing is a viable option to sell medical technology products without a need to revise existing procedures or the enterprise resource system in the case company.
Resumo:
Nowadays software testing and quality assurance have a great value in software development process. Software testing does not mean a concrete discipline, it is the process of validation and verification that starts from the idea of future product and finishes at the end of products maintenance. The importance of software testing methods and tools that can be applied on different testing phases is highly stressed in industry. The initial objectives for this thesis were to provide a sufficient literature review on different testing phases and for each of the phases define the method that can be effectively used for improving softwares quality. Software testing phases, chosen for study are: unit testing, integration testing, functional testing, system testing, acceptance testing and usability testing. The research showed that there are many software testing methods that can be applied at different phases and in the most of the cases the choice of the method should be done depending on software type and its specification. In the thesis the problem, concerned to each of the phases was identified; the method that can help in eliminating this problem was suggested and particularly described.
Resumo:
A software development process is a predetermined sequence of steps to create a piece of software. A software development process is used, so that an implementing organization could gain significant benefits. The benefits for software development companies, that can be attributed to software process improvement efforts, are improved predictability in the development effort and improved quality software products. The implementation, maintenance, and management of a software process as well as the software process improvement efforts are expensive. Especially the implementation phase is expensive with a best case scenario of a slow return on investment. Software processes are rare in very small software development companies because of the cost of implementation and an improbable return on investment. This study presents a new method to enable benefits that are usually related to software process improvement to small companies with a low cost. The study presents reasons for the development of the method, a description of the method, and an implementation process for the method, as well as a theoretical case study of a method implementation. The study's focus is on describing the method. The theoretical use case is used to illustrate the theory of the method and the implementation process of the method. The study ends with a few conclusions on the method and on the method's implementation process. The main conclusion is that the method requires further study as well as implementation experiments to asses the value of the method.
Resumo:
Agile software development has grown in popularity starting from the agile manifesto declared in 2001. However there is a strong belief that the agile methods are not suitable for embedded, critical or real-time software development, even though multiple studies and cases show differently. This thesis will present a custom agile process that can be used in embedded software development. The reasons for presumed unfitness of agile methods in embedded software development have mainly based on the feeling of these methods providing no real control, no strict discipline and less rigor engineering practices. One starting point is to provide a light process with disciplined approach to the embedded software development. Agile software development has gained popularity due to the fact that there are still big issues in software development as a whole. Projects fail due to schedule slips, budget surpassing or failing to meet the business needs. This does not change when talking about embedded software development. These issues are still valid, with multiple new ones rising from the quite complex and hard domain the embedded software developers work in. These issues are another starting point for this thesis. The thesis is based heavily on Feature Driven Development, a software development methodology that can be seen as a runner up to the most popular agile methodologies. The FDD as such is quite process oriented and is lacking few practices considered commonly as extremely important in agile development methodologies. In order for FDD to gain acceptance in the software development community it needs to be modified and enhanced. This thesis presents an improved custom agile process that can be used in embedded software development projects with size varying from 10 to 500 persons. This process is based on Feature Driven Development and by suitable parts to Extreme Programming, Scrum and Agile Modeling. Finally this thesis will present how the new process responds to the common issues in the embedded software development. The process of creating the new process is evaluated at the retrospective and guidelines for such process creation work are introduced. These emphasize the agility also in the process development through early and frequent deliveries and the team work needed to create suitable process.
Resumo:
In this thesis, a computer software for dening the geometry for a centrifugal compressor impeller is designed and implemented. The project is done under the supervision of Laboratory of Fluid Dynamics in Lappeenranta University of Technology. This thesis is similar to the thesis written by Tomi Putus (2009) in which a centrifugal compressor impeller ow channel is researched and commonly used design practices are reviewed. Putus wrote a computer software which can be used to dene impellers three-dimensional geometry based on the basic geometrical dimensions given by a preliminary design. The software designed in this thesis is almost similar but it uses a different programming language (C++) and a different way to dene the shape of the impeller meridional projection.
Resumo:
Dagens programvaruindustri str infr alltmer komplicerade utmaningar i en vrld dr programvara r nstan allstdes nrvarande i vra dagliga liv. Konsumenten vill ha produkter som r plitliga, innovativa och rika i funktionalitet, men samtidigt ocks frmnliga. Utmaningen fr oss inom IT-industrin r att skapa mer komplexa, innovativa lsningar till en lgre kostnad. Detta r en av orsakerna till att processfrbttring som forskningsomrde inte har minskat i betydelse. IT-proffs stller sig frgan: Hur hller vi vra lften till vra kunder, samtidigt som vi minimerar vr risk och kar vr kvalitet och produktivitet? Inom processfrbttringsomrdet finns det olika tillvgagngsstt. Traditionella processfrbttringsmetoder fr programvara som CMMI och SPICE fokuserar p kvalitets- och riskaspekten hos frbttringsprocessen. Mer lttviktiga metoder som t.ex. lttrrliga metoder (agile methods) och Lean-metoder fokuserar p att hlla lften och frbttra produktiviteten genom att minimera slseri inom utvecklingsprocessen. Forskningen som presenteras i denna avhandling utfrdes med ett specifikt ml framfr gonen: att frbttra kostnadseffektiviteten i arbetsmetoderna utan att kompromissa med kvaliteten. Den utmaningen attackerades frn tre olika vinklar. Fr det frsta frbttras arbetsmetoderna genom att man introducerar lttrrliga metoder. Fr det andra bibehlls kvaliteten genom att man anvnder mtmetoder p produktniv. Fr det tredje frbttras kunskapsspridningen inom stora fretag genom metoder som stter samarbete i centrum. Rrelsen bakom lttrrliga arbetsmetoder vxte fram under 90-talet som en reaktion p de orealistiska krav som den tidigare frhrskande vattenfallsmetoden stllde p IT-branschen. Programutveckling r en kreativ process och skiljer sig frn annan industri i det att den strsta delen av det dagliga arbetet gr ut p att skapa ngot nytt som inte har funnits tidigare. Varje programutvecklare mste vara expert p sitt omrde och anvnder en stor del av sin arbetsdag till att skapa lsningar p problem som hon aldrig tidigare har lst. Trots att detta har varit ett vlknt faktum redan i mnga decennier, styrs nd mnga programvaruprojekt som om de vore produktionslinjer i fabriker. Ett av mlen fr rrelsen bakom lttrrliga metoder r att lyfta fram just denna diskrepans mellan programutvecklingens innersta natur och sttet p vilket programvaruprojekt styrs. Lttrrliga arbetsmetoder har visat sig fungera vl i de sammanhang de skapades fr, dvs. sm, samlokaliserade team som jobbar i nra samarbete med en engagerad kund. I andra sammanhang, och speciellt i stora, geografiskt utspridda fretag, r det mera utmanande att infra lttrrliga metoder. Vi har nalkats utmaningen genom att infra lttrrliga metoder med hjlp av pilotprojekt. Detta har tv klara frdelar. Fr det frsta kan man inkrementellt samla kunskap om metoderna och deras samverkan med sammanhanget i frga. P s stt kan man lttare utveckla och anpassa metoderna till de specifika krav som sammanhanget stller. Fr det andra kan man lttare verbrygga motstnd mot frndring genom att introducera kulturella frndringar varsamt och genom att mlgruppen fr direkt frstahandskontakt med de nya metoderna. Relevanta mtmetoder fr produkter kan hjlpa programvaruutvecklingsteam att frbttra sina arbetsmetoder. Nr det gller team som jobbar med lttrrliga och Lean-metoder kan en bra uppsttning mtmetoder vara avgrande fr beslutsfattandet nr man prioriterar listan ver uppgifter som ska gras. Vrt fokus har legat p att stda lttrrliga och Lean-team med interna produktmtmetoder fr beslutsstd gllande s kallad omfaktorering, dvs. kontinuerlig kvalitetsfrbttring av programmets kod och design. Det kan vara svrt att ta ett beslut att omfaktorera, speciellt fr lttrrliga och Lean-team, eftersom de frvntas kunna rttfrdiga sina prioriteter i termer av affrsvrde. Vi freslr ett stt att mta designkvaliteten hos system som har utvecklats med hjlp av det s kallade modelldrivna paradigmet. Vi konstruerar ven ett stt att integrera denna mtmetod i lttrrliga och Lean-arbetsmetoder. En viktig del av alla processfrbttringsinitiativ r att sprida kunskap om den nya programvaruprocessen. Detta gller oavsett hurdan process man frsker introducera vare sig processen r plandriven eller lttrrlig. Vi freslr att metoder som baserar sig p samarbete nr processen skapas och vidareutvecklas r ett bra stt att stda kunskapsspridning p. Vi ger en versikt ver frfattarverktyg fr processer p marknaden med det frslaget i tanke.
Resumo:
The objective of the thesis was to create three tutorials for MeVEA Simulation Software to instruct the new users to the modeling methodology used in the MeVEA Simulation Software. MeVEA Simulation Software is a real-time simulation software based on multibody dynamics. The simulation software is designed to create simulation models of complete mechatronical system. The thesis begins with a more detail description of the MeVEA Simulation Software and its components. The thesis presents the three simulation models and written theory of the steps of model creation. The first tutorial introduces the basic features which are used in most simulation models. The basic features include bodies, constrains, forces, basic hydraulics and motors. The second tutorial introduces the power transmission components, tyres and user input definitions for the different components in power transmission systems. The third tutorial introduces the definitions of two different types of collisions and collision graphics used in MeVEA Simulation Software.
Resumo:
The goal of this study is to develop managerial recommendations for international vendors and system integrators, which offer Software as a Service for enterprise information systems on the Russian market. Those recommendations can be used to develop marketing, sales, new product and service level agreement strategies. For those reasons factors affecting SaaS adoption were determined and their influence on intention to adoption was examined.
Resumo:
The importance of the companys intellectual capital (IC) increased during the last decades due to knowledge-based economy development. Despite the clear understanding of the IC importance, researchers agree on the fact that many difficulties in management of intangibles still exist from the both theoretical and practical points of view. The goal of the study is to conduct a comparison of IC management approaches used in international and Russian software companies. To carry out a proper comparison and identify similarities and differences, software firms are explored from the point of view of IC, and then be compared in the context of international and Russian sectors. At the end of the study, current IC management findings in international and Russian software companies are presented, and comparison of IC management is done. It was investigated from the comparison that international and Russian software companies have similarities and few principal differences in several IC management areas. The comparison of IC management approaches between international and Russian software companies provide helpful information to both, researchers and practitioners.
Resumo:
Cloud computing enables on-demand network access to shared resources (e.g., computation, networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort. Cloud computing refers to both the applications delivered as services over the Internet and the hardware and system software in the data centers. Software as a service (SaaS) is part of cloud computing. It is one of the cloud service models. SaaS is software deployed as a hosted service and accessed over the Internet. In SaaS, the consumer uses the providers applications running in the cloud. SaaS separates the possession and ownership of software from its use. The applications can be accessed from any device through a thin client interface. A typical SaaS application is used with a web browser based on monthly pricing. In this thesis, the characteristics of cloud computing and SaaS are presented. Also, a few implementation platforms for SaaS are discussed. Then, four different SaaS implementation cases and one transformation case are deliberated. The pros and cons of SaaS are studied. This is done based on literature references and analysis of the SaaS implementations and the transformation case. The analysis is done both from the customers and service providers point of view. In addition, the pros and cons of on-premises software are listed. The purpose of this thesis is to find when SaaS should be utilized and when it is better to choose a traditional on-premises software. The qualities of SaaS bring many benefits both for the customer as well as the provider. A customer should utilize SaaS when it provides cost savings, ease, and scalability over on-premises software. SaaS is reasonable when the customer does not need tailoring, but he only needs a simple, general-purpose service, and the application supports customers core business. A provider should utilize SaaS when it offers cost savings, scalability, faster development, and wider customer base over on-premises software. It is wise to choose SaaS when the application is cheap, aimed at mass market, needs frequent updating, needs high performance computing, needs storing large amounts of data, or there is some other direct value from the cloud infrastructure.
Resumo:
In this thesis, the components important for testing work and organisational test process are identified and analysed. This work focuses on the testing activities in reallife software organisations, identifying the important test process components, observing testing work in practice, and analysing how the organisational test process could be developed. Software professionals from 14 different software organisations were interviewed to collect data on organisational test process and testingrelated factors. Moreover, additional data on organisational aspects was collected with a survey conducted on 31 organisations. This data was further analysed with the Grounded Theory method to identify the important test process components, and to observe how reallife test organisations develop their testing activities. The results indicate that the test management at the project level is an important factor; the organisations do have sufficient test resources available, but they are not necessarily applied efficiently. In addition, organisations in general are reactive; they develop their process mainly to correct problems, not to enhance their efficiency or output quality. The results of this study allows organisations to have a better understanding of the test processes, and develop towards better practices and a culture of preventing problems, not reacting to them.