Search results for: software developers
Commenced in January 2007
Frequency: Monthly
Edition: International
Paper Count: 4830

Search results for: software developers

4830 Knowledge and Skills Requirements for Software Developer Students

Authors: J. Liebenberg, M. Huisman, E. Mentz

Abstract:

It is widely acknowledged that there is a shortage of software developers, not only in South Africa, but also worldwide. Despite reports on a gap between industry needs and software education, the gap has mostly been explored in quantitative studies. This paper reports on the qualitative data of a mixed method study of the perceptions of professional software developers regarding what topics they learned from their formal education and the importance of these topics to their actual work. The analysis suggests that there is a gap between industry’s needs and software development education and the following recommendations are made: 1) Real-life projects must be included in students’ education; 2) Soft skills and business skills must be included in curricula; 3) Universities must keep the curriculum up to date; 4) Software development education must be made accessible to a diverse range of students.

Keywords: software development education, software industry, IT workforce, computing curricula

Procedia PDF Downloads 431
4829 New Standardized Framework for Developing Mobile Applications (Based On Real Case Studies and CMMI)

Authors: Ammar Khader Almasri

Abstract:

The software processes play a vital role for delivering a high quality software system that meets the user’s needs. There are many software development models which are used by most system developers, which can be categorized into two categories (traditional and new methodologies). Mobile applications like other desktop applications need appropriate and well-working software development process. Nevertheless, mobile applications have different features which limit their performance and efficiency like application size, mobile hardware features. Moreover, this research aims to help developers in using a standardized model for developing mobile applications.

Keywords: software development process, agile methods , moblile application development, traditional methods

Procedia PDF Downloads 354
4828 CompleX-Machine: An Automated Testing Tool Using X-Machine Theory

Authors: E. K. A. Ogunshile

Abstract:

This paper is aimed at creating an Automatic Java X-Machine testing tool for software development. The nature of software development is changing; thus, the type of software testing tools required is also changing. Software is growing increasingly complex and, in part due to commercial impetus for faster software releases with new features and value, increasingly in danger of containing faults. These faults can incur huge cost for software development organisations and users; Cambridge Judge Business School’s research estimated the cost of software bugs to the global economy is $312 billion. Beyond the cost, faster software development methodologies and increasing expectations on developers to become testers is driving demand for faster, automated, and effective tools to prevent potential faults as early as possible in the software development lifecycle. Using X-Machine theory, this paper will explore a new tool to address software complexity, changing expectations on developers, faster development pressures and methodologies, with a view to reducing the huge cost of fixing software bugs.

Keywords: conformance testing, finite state machine, software testing, x-machine

Procedia PDF Downloads 238
4827 Challenges in Promoting Software Usability and Applying Principles of Usage-Centred Design in Saudi Arabia

Authors: Kholod J. Alotaibi, Andrew M. Gravell

Abstract:

A study was conducted in which 212 software developers in higher education institutions in Saudi Arabia were surveyed to gather an indication of their understanding of the concept of usability, their acceptance of its importance, and to see how well its principles are applied. Interviews were then held with 20 of these developers, and a demonstration of Usage-Centred Design was attempted, a highly usability focused software development methodology, at one select institution for its redesign of an e-learning exam system interface during the requirements gathering phase. The study confirms the need to raise awareness of usability and its importance, and for Usage-Centred Design to be applied in its entirety, also need to encourage greater consultation with potential end-users of software and collaborative practices. The demonstration of Usage-Centred Design confirmed its ability to capture usability requirements more completely and precisely than would otherwise be the case, and hence its usefulness for developers concerned with improving software usability. The concluding discussion delves on the challenges for promoting usability and Usage-Centred Design in light of the research results and findings and recommendations are made for the same.

Keywords: usability, usage-centred, applying principles of usage-centred, Saudi Arabia

Procedia PDF Downloads 355
4826 Inadequate Requirements Engineering Process: A Key Factor for Poor Software Development in Developing Nations: A Case Study

Authors: K. Adu Michael, K. Alese Boniface

Abstract:

Developing a reliable and sustainable software products is today a big challenge among up–coming software developers in Nigeria. The inability to develop a comprehensive problem statement needed to execute proper requirements engineering process is missing. The need to describe the ‘what’ of a system in one document, written in a natural language is a major step in the overall process of Software Engineering. Requirements Engineering is a process use to discover, analyze and validate system requirements. This process is needed in reducing software errors at the early stage of the development of software. The importance of each of the steps in Requirements Engineering is clearly explained in the context of using detailed problem statement from client/customer to get an overview of an existing system along with expectations from the new system. This paper elicits inadequate Requirements Engineering principle as the major cause of poor software development in developing nations using a case study of final year computer science students of a tertiary-education institution in Nigeria.

Keywords: client/customer, problem statement, requirements engineering, software developers

Procedia PDF Downloads 372
4825 Quality Assurance in Software Design Patterns

Authors: Rabbia Tariq, Hannan Sajjad, Mehreen Sirshar

Abstract:

Design patterns are widely used to make the process of development easier as they greatly help the developers to develop the software. Different design patterns have been introduced till now but the behavior of same design pattern may differ in different domains that can lead to the wrong selection of the design pattern. The paper aims to discover the design patterns that suits best with respect to their domain thereby helping the developers to choose an effective design pattern. It presents the comprehensive analysis of design patterns based on different methodologies that include simulation, case study and comparison of various algorithms. Due to the difference of the domain the methodology used in one domain may be inapplicable to the other domain. The paper draws a conclusion based on strength and limitation of each design pattern in their respective domain.

Keywords: design patterns, evaluation, quality assurance, software domains

Procedia PDF Downloads 487
4824 Software Quality Measurement System for Telecommunication Industry in Malaysia

Authors: Nor Fazlina Iryani Abdul Hamid, Mohamad Khatim Hasan

Abstract:

Evolution of software quality measurement has been started since McCall introduced his quality model in year 1977. Starting from there, several software quality models and software quality measurement methods had emerged but none of them focused on telecommunication industry. In this paper, the implementation of software quality measurement system for telecommunication industry was compulsory to accommodate the rapid growth of telecommunication industry. The quality value of the telecommunication related software could be calculated using this system by entering the required parameters. The system would calculate the quality value of the measured system based on predefined quality metrics and aggregated by referring to the quality model. It would classify the quality level of the software based on Net Satisfaction Index (NSI). Thus, software quality measurement system was important to both developers and users in order to produce high quality software product for telecommunication industry.

Keywords: software quality, quality measurement, quality model, quality metric, net satisfaction index

Procedia PDF Downloads 553
4823 FreGsd: A Framework for Golbal Software Requirement Engineering

Authors: Alsahli Abdulaziz Abdullah, Hameed Ullah Khan

Abstract:

Software development nowadays is more and more using global ways of development instead of normal development enviroment where development occur in one location. This paper is a aimed to propose a Requirement Engineering framework to support Global Software Development environment with regards to all requirment engineering activities from elicitation to fially magning requirment change. Global software enviroment is more and more gaining better reputation in software developmet with better quality is resulting from developing in this eviroment yet with lower cost.However, failure rate developing in this enviroment is high due to inapproprate requirment development and managment.This paper will add to the software engineering development envrioments discipline and many developers in GSD will benefit from it.

Keywords: global software development environment, GSD, requirement engineering, FreGsd, computer engineering

Procedia PDF Downloads 501
4822 Software Transactional Memory in a Dynamic Programming Language at Virtual Machine Level

Authors: Szu-Kai Hsu, Po-Ching Lin

Abstract:

As more and more multi-core processors emerge, traditional sequential programming paradigm no longer suffice. Yet only few modern dynamic programming languages can leverage such advantage. Ruby, for example, despite its wide adoption, only includes threads as a simple parallel primitive. The global virtual machine lock of official Ruby runtime makes it impossible to exploit full parallelism. Though various alternative Ruby implementations do eliminate the global virtual machine lock, they only provide developers dated locking mechanism for data synchronization. However, traditional locking mechanism error-prone by nature. Software Transactional Memory is one of the promising alternatives among others. This paper introduces a new virtual machine: GobiesVM to provide a native software transactional memory based solution for dynamic programming languages to exploit parallelism. We also proposed a simplified variation of Transactional Locking II algorithm. The empirical results of our experiments show that support of STM at virtual machine level enables developers to write straightforward code without compromising parallelism or sacrificing thread safety. Existing source code only requires minimal or even none modi cation, which allows developers to easily switch their legacy codebase to a parallel environment. The performance evaluations of GobiesVM also indicate the difference between sequential and parallel execution is significant.

Keywords: global interpreter lock, ruby, software transactional memory, virtual machine

Procedia PDF Downloads 247
4821 Automated Detection of Related Software Changes by Probabilistic Neural Networks Model

Authors: Yuan Huang, Xiangping Chen, Xiaonan Luo

Abstract:

Current software are continuously updating. The change between two versions usually involves multiple program entities (e.g., packages, classes, methods, attributes) with multiple purposes (e.g., changed requirements, bug fixing). It is hard for developers to understand which changes are made for the same purpose. Whether two changes are related is not decided by the relationship between this two entities in the program. In this paper, we summarized 4 coupling rules(16 instances) and 4 state-combination types at the class, method and attribute levels for software change. Related Change Vector (RCV) are defined based on coupling rules and state-combination types, and applied to classify related software changes by using Probabilistic Neural Network during a software updating.

Keywords: PNN, related change, state-combination, logical coupling, software entity

Procedia PDF Downloads 408
4820 Towards the Use of Software Product Metrics as an Indicator for Measuring Mobile Applications Power Consumption

Authors: Ching Kin Keong, Koh Tieng Wei, Abdul Azim Abd. Ghani, Khaironi Yatim Sharif

Abstract:

Maintaining factory default battery endurance rate over time in supporting huge amount of running applications on energy-restricted mobile devices has created a new challenge for mobile applications developer. While delivering customers’ unlimited expectations, developers are barely aware of efficient use of energy from the application itself. Thus developers need a set of valid energy consumption indicators in assisting them to develop energy saving applications. In this paper, we present a few software product metrics that can be used as an indicator to measure energy consumption of Android-based mobile applications in the early of design stage. In particular, Trepn Profiler (Power profiling tool for Qualcomm processor) has used to collect the data of mobile application power consumption, and then analyzed for the 23 software metrics in this preliminary study. The results show that McCabe cyclomatic complexity, number of parameters, nested block depth, number of methods, weighted methods per class, number of classes, total lines of code and method lines have direct relationship with power consumption of mobile application.

Keywords: battery endurance, software metrics, mobile application, power consumption

Procedia PDF Downloads 365
4819 A Unified Approach to Support the Coordination of Usability Work in Agile Software Development

Authors: Fouad Abdulameer Salman, Aziz Bin Deraman, Masita Binti Abdul Jalil

Abstract:

Usability evaluation is essential for developing usable software systems, yet its integration within agile software development remains a challenging interdisciplinary endeavour. In this paper, the authors present a study to investigate obstacles of such integration from the management perspective. The study incorporates two methods, namely an online questionnaire survey and a series of interviews with participants that answered the questionnaire. Based on the obtained results, a unified approach is proposed for enabling coordinate the efforts of agile developers and usability engineers to produce usable software systems.

Keywords: usability, usability evaluation, software development process, usability management

Procedia PDF Downloads 424
4818 The Impact of Regulatory Changes on the Development of Mobile Medical Apps

Authors: M. McHugh, D. Lillis

Abstract:

Mobile applications are being used to perform a wide variety of tasks in day-to-day life, ranging from checking email to controlling your home heating. Application developers have recognized the potential to transform a smart device into a medical device, by using a mobile medical application i.e. a mobile phone or a tablet. When initially conceived these mobile medical applications performed basic functions e.g. BMI calculator, accessing reference material etc.; however, increasing complexity offers clinicians and patients a range of functionality. As this complexity and functionality increases, so too does the potential risk associated with using such an application. Examples include any applications that provide the ability to inflate and deflate blood pressure cuffs, as well as applications that use patient-specific parameters and calculate dosage or create a dosage plan for radiation therapy. If an unapproved mobile medical application is marketed by a medical device organization, then they face significant penalties such as receiving an FDA warning letter to cease the prohibited activity, fines and possibility of facing a criminal conviction. Regulatory bodies have finalized guidance intended for mobile application developers to establish if their applications are subject to regulatory scrutiny. However, regulatory controls appear contradictory with the approaches taken by mobile application developers who generally work with short development cycles and very little documentation and as such, there is the potential to stifle further improvements due to these regulations. The research presented as part of this paper details how by adopting development techniques, such as agile software development, mobile medical application developers can meet regulatory requirements whilst still fostering innovation.

Keywords: agile, applications, FDA, medical, mobile, regulations, software engineering, standards

Procedia PDF Downloads 333
4817 Models Development of Graphical Human Interface Using Fuzzy Logic

Authors: Érick Aragão Ribeiro, George André Pereira Thé, José Marques Soares

Abstract:

Graphical Human Interface, also known as supervision software, are increasingly present in industrial processes supported by Supervisory Control and Data Acquisition (SCADA) systems and so it is evident the need for qualified developers. In order to make engineering students able to produce high quality supervision software, method for the development must be created. In this paper we propose model, based on the international standards ISO/IEC 25010 and ISO/IEC 25040, for the development of graphical human interface. When compared with to other methods through experiments, the model here presented leads to improved quality indexes, therefore help guiding the decisions of programmers. Results show the efficiency of the models and the contribution to student learning. Students assessed the training they have received and considered it satisfactory.

Keywords: software development models, software quality, supervision software, fuzzy logic

Procedia PDF Downloads 345
4816 Developers’ Gains and Losses from the Economic Incentives of Green Building: Explanations from the Transitional Gains Trap and Transaction Cost Economics

Authors: Ke Fan, Edwin H. W. Chan

Abstract:

Economic incentives of green building (GB) have been implemented to promote green building and address the market barriers. However, if developers could gain from the incentives, why not all the buildings are green? This paper aims to study this problem and provide a new perspective to look at the economic incentives. The theories of Transitional Gains Trap (TGP) and Transaction Cost Economics (TCE) are employed to explain the developers’ gains and losses from the economic incentives. This paper takes the GFA (gross floor area) concession incentive in Hong Kong, which is one of the most popular incentives, as the case to conduct in-depth case study and it did interview to validate the results. The results show that after implementing the GFA concession scheme, the benefit of the GFA concession is capitalized into land value. Therefore, developers have to bear the increased land cost, which supports the theory of the TGP. Even though, some developers are still not willing to participate in the incentive scheme because of high transaction costs (TCs).

Keywords: green building, economic incentives, transitional gains trap, transaction cost

Procedia PDF Downloads 258
4815 Improving Software Technology to Support Release Process in Global Software Development Environment: An Experience Report

Authors: Hualter Barbosa, Bruno Bonifacio

Abstract:

The process of globalization and new business has transformed the dynamics of software development. To meet the new demands, the software industry has adapted new methodologies that can shorten development cycles to ensure greater competitiveness. Given this scenario, Global Software Development (GSD) has become a strategic element for new products' success. However, the reliability, opportunity, and perceived value can be influenced substantially with the automation of steps in the development process activities. In this sense, the development of new technologies can help developers and managers to improve the quality of development. This paper presents a report on improving one of the release process activities of Sidia's mobile product area using software technology. The objective is to present the improvement of the CLCATCH tool developed based on experimental studies and qualitative analysis on the points of improvement for the release process in Android update projects for Samsung mobile devices. The results show improvement for the new version and approach of the tool, with points that can facilitate new features of the proposed technology.

Keywords: Android updated, empirical studies, GSD, process improvement

Procedia PDF Downloads 114
4814 JavaScript Object Notation Data against eXtensible Markup Language Data in Software Applications a Software Testing Approach

Authors: Theertha Chandroth

Abstract:

This paper presents a comparative study on how to check JSON (JavaScript Object Notation) data against XML (eXtensible Markup Language) data from a software testing point of view. JSON and XML are widely used data interchange formats, each with its unique syntax and structure. The objective is to explore various techniques and methodologies for validating comparison and integration between JSON data to XML and vice versa. By understanding the process of checking JSON data against XML data, testers, developers and data practitioners can ensure accurate data representation, seamless data interchange, and effective data validation.

Keywords: XML, JSON, data comparison, integration testing, Python, SQL

Procedia PDF Downloads 83
4813 A Case Study of Open Source Development Practices within a Large Company Setting

Authors: Alma Orucevic-Alagic, Martin Höst

Abstract:

Open source communities have demonstrated that complex and enterprise grade software can be produced, supported, and maintained by self-organizing groups of developers using primarily electronic form of communication. Due to the inherent nature of open source development, a specific set of open source software development practices has evolved. While there is an ongoing research on the topic of applicability of open source development practices within a company setting, still little is known about their benefits and challenges. The objective of this research is to understand if and to what degree open source development practices observed within a mature open source community are aligned with development practices within a large software and hardware company setting. For the purpose of this case study a set of open source development practices that are present in a mature open source community has been identified. Then, development practices of a large, international, hardware and software company based in Sweden were assessed and compared to the identified open source community practices. It is shown that there are many similarities between a mature open source community and a large company setting in regard to software development practices. We also identify practices that exist in open source communities and that are not standard within a company setting, but whose implementation can result in an improved software development efficiency within the company setting.

Keywords: development practices, open source software, innersource, closed open source

Procedia PDF Downloads 517
4812 Bug Localization on Single-Line Bugs of Apache Commons Math Library

Authors: Cherry Oo, Hnin Min Oo

Abstract:

Software bug localization is one of the most costly tasks in program repair technique. Therefore, there is a high claim for automated bug localization techniques that can monitor programmers to the locations of bugs, with slight human arbitration. Spectrum-based bug localization aims to help software developers to discover bugs rapidly by investigating abstractions of the program traces to make a ranking list of most possible buggy modules. Using the Apache Commons Math library project, we study the diagnostic accuracy using our spectrum-based bug localization metric. Our outcomes show that the greater performance of a specific similarity coefficient, used to inspect the program spectra, is mostly effective on localizing of single line bugs.

Keywords: software testing, bug localization, program spectra, bug

Procedia PDF Downloads 111
4811 Factors Influencing the Housing Price: Developers’ Perspective

Authors: Ernawati Mustafa Kamal, Hasnanywati Hassan, Atasya Osmadi

Abstract:

The housing industry is crucial for sustainable development of every country. Housing is a basic need that can enhance the quality of life. Owning a house is therefore the main aim of individuals. However, affordability has become a critical issue towards homeownership. In recent years, housing price in the main cities has increased tremendously to unaffordable level. This paper investigates factors influencing the housing price from developer’s perspective and provides recommendation on strategies to tackle this issue. Online and face-to-face survey was conducted on housing developers operating in Penang, Malaysia. The results indicate that (1) location; (2) macroeconomics factor; (3) demographic factors; (4) land/zoning and; (5) industry factors are the main factors influencing the housing price. This paper contributes towards better understanding on developers’ view on how the housing price is determined and form a basis for government to help tackle the housing affordability issue.

Keywords: factors influence, house price, housing developers, Malaysia

Procedia PDF Downloads 361
4810 Blueprinting of a Normalized Supply Chain Processes: Results in Implementing Normalized Software Systems

Authors: Bassam Istanbouli

Abstract:

With the technology evolving every day and with the increase in global competition, industries are always under the pressure to be the best. They need to provide good quality products at competitive prices, when and how the customer wants them.  In order to achieve this level of service, products and their respective supply chain processes need to be flexible and evolvable; otherwise changes will be extremely expensive, slow and with many combinatorial effects. Those combinatorial effects impact the whole organizational structure, from a management, financial, documentation, logistics and specially the information system Enterprise Requirement Planning (ERP) perspective. By applying the normalized system concept/theory to segments of the supply chain, we believe minimal effects, especially at the time of launching an organization global software project. The purpose of this paper is to point out that if an organization wants to develop a software from scratch or implement an existing ERP software for their business needs and if their business processes are normalized and modular then most probably this will yield to a normalized and modular software system that can be easily modified when the business evolves. Another important goal of this paper is to increase the awareness regarding the design of the business processes in a software implementation project. If the blueprints created are normalized then the software developers and configurators will use those modular blueprints to map them into modular software. This paper only prepares the ground for further studies;  the above concept will be supported by going through the steps of developing, configuring and/or implementing a software system for an organization by using two methods: The Software Development Lifecycle method (SDLC) and the Accelerated SAP implementation method (ASAP). Both methods start with the customer requirements, then blue printing of its business processes and finally mapping those processes into a software system.  Since those requirements and processes are the starting point of the implementation process, then normalizing those processes will end up in a normalizing software.

Keywords: blueprint, ERP, modular, normalized

Procedia PDF Downloads 104
4809 Predicting Stack Overflow Accepted Answers Using Features and Models with Varying Degrees of Complexity

Authors: Osayande Pascal Omondiagbe, Sherlock a Licorish

Abstract:

Stack Overflow is a popular community question and answer portal which is used by practitioners to solve technology-related challenges during software development. Previous studies have shown that this forum is becoming a substitute for official software programming languages documentation. While tools have looked to aid developers by presenting interfaces to explore Stack Overflow, developers often face challenges searching through many possible answers to their questions, and this extends the development time. To this end, researchers have provided ways of predicting acceptable Stack Overflow answers by using various modeling techniques. However, less interest is dedicated to examining the performance and quality of typically used modeling methods, and especially in relation to models’ and features’ complexity. Such insights could be of practical significance to the many practitioners that use Stack Overflow. This study examines the performance and quality of various modeling methods that are used for predicting acceptable answers on Stack Overflow, drawn from 2014, 2015 and 2016. Our findings reveal significant differences in models’ performance and quality given the type of features and complexity of models used. Researchers examining classifiers’ performance and quality and features’ complexity may leverage these findings in selecting suitable techniques when developing prediction models.

Keywords: feature selection, modeling and prediction, neural network, random forest, stack overflow

Procedia PDF Downloads 107
4808 Improving the Run Times of Existing and Historical Demand Models Using Simple Python Scripting

Authors: Abhijeet Ostawal, Parmjit Lall

Abstract:

The run times for a large strategic model that we were managing had become too long leading to delays in project delivery, increased costs and loss in productivity. Software developers are continuously working towards developing more efficient tools by changing their algorithms and processes. The issue faced by our team was how do you apply the latest technologies on validated existing models which are based on much older versions of software that do not have the latest software capabilities. The multi-model transport model that we had could only be run in sequential assignment order. Recent upgrades to the software now allowed the assignment to be run in parallel, a concept called parallelization. Parallelization is a Python script working only within the latest version of the software. A full model transfer to the latest version was not possible due to time, budget and the potential changes in trip assignment. This article is to show the method to adapt and update the Python script in such a way that it can be used in older software versions by calling the latest version and then recalling the old version for assignment model without affecting the results. Through a process of trial-and-error run time savings of up to 30-40% have been achieved. Assignment results were maintained within the older version and through this learning process we’ve applied this methodology to other even older versions of the software resulting in huge time savings, more productivity and efficiency for both client and consultant.

Keywords: model run time, demand model, parallelisation, python scripting

Procedia PDF Downloads 87
4807 Software Cloning and Agile Environment

Authors: Ravi Kumar, Dhrubajit Barman, Nomi Baruah

Abstract:

Software Cloning has grown an active area in software engineering research community yielding numerous techniques, various tools and other methods for clone detection and removal. The copying, modifying a block of code is identified as cloning as it is the most basic means of software reuse. Agile Software Development is an approach which is currently being used in various software projects, so that it helps to respond the unpredictability of building software through incremental, iterative, work cadences. Software Cloning has been introduced to Agile Environment and many Agile Software Development approaches are using the concept of Software Cloning. This paper discusses the various Agile Software Development approaches. It also discusses the degree to which the Software Cloning concept is being introduced in the Agile Software Development approaches.

Keywords: agile environment, refactoring, reuse, software cloning

Procedia PDF Downloads 496
4806 Analyzing the Impact of Code Commenting on Software Quality

Authors: Thulya Premathilake, Tharushi Perera, Hansi Thathsarani, Tharushi Nethmini, Dilshan De Silva, Piyumika Samarasekara

Abstract:

One of the most efficient ways to assist developers in grasping the source code is to make use of comments, which can be found throughout the code. When working in fields such as software development, having comments in your code that are of good quality is a fundamental requirement. Tackling software problems while making use of programs that have already been built. It is essential for the intention of the source code to be made crystal apparent in the comments that are added to the code. This assists programmers in better comprehending the programs they are working on and enables them to complete software maintenance jobs in a more timely manner. In spite of the fact that comments and documentation are meant to improve readability and maintainability, the vast majority of programmers place the majority of their focus on the actual code that is being written. This study provides a complete and comprehensive overview of the previous research that has been conducted on the topic of code comments. The study focuses on four main topics, including automated comment production, comment consistency, comment classification, and comment quality rating. One is able to get the knowledge that is more complete for use in following inquiries if they conduct an analysis of the proper approaches that were used in this study issue.

Keywords: code commenting, source code, software quality, quality assurance

Procedia PDF Downloads 53
4805 Delineato: Designing Distraction-Free GUIs

Authors: Fernando Miguel Campos, Fernando Jesus Aguiar Campos, Pedro Filipe Campos

Abstract:

A large amount of software products offer a wide range and number of features. This is called featurities or creeping featurism and tends to rise with each release of the product. Feautiris often adds unnecessary complexity to software, leading to longer learning curves and overall confusing the users and degrading their experience. We take a look to a new design approach tendency that has been coming up, the so-called “What You Get Is What You Need” concept that argues that products should be very focused, simple and with minimalistic interfaces in order to help users conduct their tasks in distraction-free ambiances. This is not as simple to implement as it might sound and the developers need to cut down features. Our contribution illustrates and evaluates this design method through a novel distraction-free diagramming tool named Delineato Pro for Mac OS X in which the user is confronted with an empty canvas when launching the software and where tools only show up when really needed.

Keywords: diagramming, HCI, usability, user interface

Procedia PDF Downloads 485
4804 Applying Failure Modes and Effect Analysis Concept in a Global Software Development Process

Authors: Camilo Souza, Lidia Melo, Fernanda Terra, Francisco Caio, Marcelo Reis

Abstract:

SIDIA is a research and development (R&D) institute that belongs to Samsung’s global software development process. The SIDIA’s Model Team (MT) is a part of Samsung’s Mobile Division Area, which is responsible for the development of Android releases embedded in Samsung mobile devices. Basically, in this software development process, the kickoff occurs in some strategic countries (e.g., South Korea) where some software requirements are applied and the initial software tests are performed. When the software achieves a more mature level, a new branch is derived, and the development continues in subsidiaries from other strategic countries (e.g., SIDIA-Brazil). However, even in the newly created branches, there are several interactions between developers from different nationalities in order to fix bugs reported during test activities, apply some specific requirements from partners and develop new features as well. Despite the GSD strategy contributes to improving software development, some challenges are also introduced as well. In this paper, we share the initial results about the application of the failure modes and effect analysis (FMEA) concept in the software development process followed by the SIDIA’s model team. The main goal was to identify and mitigate the process potential failures through the application of recommended actions. The initial results show that the application of the FMEA concept allows us to identify the potential failures in our GSD process as well as to propose corrective actions to mitigate them. Finally, FMEA encouraged members of different teams to take actions that contribute to improving our GSD process.

Keywords: global software development, potential failures, FMEA, recommended actions

Procedia PDF Downloads 193
4803 Simplifying the Migration of Architectures in Embedded Applications Introducing a Pattern Language to Support the Workforce

Authors: Farha Lakhani, Michael J. Pont

Abstract:

There are two main architectures used to develop software for modern embedded systems: these can be labelled as “event-triggered” (ET) and “time-triggered” (TT). The research presented in this paper is concerned with the issues involved in migration between these two architectures. Although TT architectures are widely used in safety-critical applications they are less familiar to developers of mainstream embedded systems. The research presented in this paper began from the premise that–for a broad class of systems that have been implemented using an ET architecture–migration to a TT architecture would improve reliability. It may be tempting to assume that conversion between ET and TT designs will simply involve converting all event-handling software routines into periodic activities. However, the required changes to the software architecture are, in many cases rather more profound. The main contribution of the work presented in this paper is to identify ways in which the significant effort involved in migrating between existing ET architectures and “equivalent” (and effective) TT architectures could be reduced. The research described in this paper has taken an innovative step in this regard by introducing the use of ‘Design patterns’ for this purpose for the first time.

Keywords: embedded applications, software architectures, reliability, pattern

Procedia PDF Downloads 291
4802 Risk Management in Industrial Supervision Projects

Authors: Érick Aragão Ribeiro, George André Pereira Thé, José Marques Soares

Abstract:

Several problems in industrial supervision software development projects may lead to the delay or cancellation of projects. These problems can be avoided or contained by using identification methods, analysis and control of risks. These procedures can give an overview of the possible problems that can happen in the projects and what are the immediate solutions. Therefore, we propose a risk management method applied to the teaching and development of industrial supervision software. The method is developed through a literature review and previous projects can be divided into phases of management and have basic features that are validated with experimental research carried out by mechatronics engineering students and professionals. The management is conducted through the stages of identification, analysis, planning, monitoring, control and communication of risks. Programmers use a method of prioritizing risks considering the gravity and the possibility of occurrence of the risk. The outputs of the method indicate which risks occurred or are about to happen. The first results indicate which risks occur at different stages of the project and what risks have a high probability of occurring. The results show the efficiency of the proposed method compared to other methods, showing the improvement of software quality and leading developers in their decisions. This new way of developing supervision software helps students identify design problems, evaluate software developed and propose effective solutions. We conclude that the risk management optimizes the development of the industrial process control software and provides higher quality to the product.

Keywords: supervision software, risk management, industrial supervision, project management

Procedia PDF Downloads 320
4801 Conflicts Identification Approach among Stakeholders in Goal-Oriented Requirements Analysis

Authors: Muhammad Suhaib

Abstract:

Requirements Analysis are the most important part of software Engineering for both system application development, and project requirements. Conflicts often arise during the requirements gathering and analysis phase. This research aims to identify conflicts during the requirements gathering phase in software development life cycle, Research, Development, and Technology converted the world into a global village. During requirements elicitation/gathering phase it’s very difficult to understand the main objective of stakeholders, after completion of requirements elicitation task final results are used for Software Requirements Specification (SRS), SRS is the highly important outcome of the requirements analysis phase. this is the foundation between the developers and stakeholders or customers, proposed methodology will be helpful to identify those conflicts in a very easy manner during the initial phase of the project.

Keywords: goal oriented requirements analysis, conflicts identification model, requirements analysis, requirements engineering

Procedia PDF Downloads 106