165,062 research outputs found
Architecture independent environment for developing engineering software on MIMD computers
Engineers are constantly faced with solving problems of increasing complexity and detail. Multiple Instruction stream Multiple Data stream (MIMD) computers have been developed to overcome the performance limitations of serial computers. The hardware architectures of MIMD computers vary considerably and are much more sophisticated than serial computers. Developing large scale software for a variety of MIMD computers is difficult and expensive. There is a need to provide tools that facilitate programming these machines. First, the issues that must be considered to develop those tools are examined. The two main areas of concern were architecture independence and data management. Architecture independent software facilitates software portability and improves the longevity and utility of the software product. It provides some form of insurance for the investment of time and effort that goes into developing the software. The management of data is a crucial aspect of solving large engineering problems. It must be considered in light of the new hardware organizations that are available. Second, the functional design and implementation of a software environment that facilitates developing architecture independent software for large engineering applications are described. The topics of discussion include: a description of the model that supports the development of architecture independent software; identifying and exploiting concurrency within the application program; data coherence; engineering data base and memory management
Software Architecture in Practice: Challenges and Opportunities
Software architecture has been an active research field for nearly four
decades, in which previous studies make significant progress such as creating
methods and techniques and building tools to support software architecture
practice. Despite past efforts, we have little understanding of how
practitioners perform software architecture related activities, and what
challenges they face. Through interviews with 32 practitioners from 21
organizations across three continents, we identified challenges that
practitioners face in software architecture practice during software
development and maintenance. We reported on common software architecture
activities at software requirements, design, construction and testing, and
maintenance stages, as well as corresponding challenges. Our study uncovers
that most of these challenges center around management, documentation, tooling
and process, and collects recommendations to address these challenges.Comment: Preprint of Full Research Paper, the 31st ACM Joint European Software
Engineering Conference and Symposium on the Foundations of Software
Engineering (ESEC/FSE '23
Software engineering 2.0: a social global repository based on semantic annotation and social web for knowledge management
Proceedings of: First World Summit on the Knowledge Society, (WSKS 2008), September 24-26, 2008, Athens (Greece)The effective management of the software development process has become an essential for business survival in an ever more competitive industry. In order to gain business strengths from the development process, organizations need to carry out software development in the most efficient manner possible, avoiding redundancy and time losses. This paper presents an architecture which combines the strengths of two technologies, Web 2.0 and the Semantic Web, as a solution to reuse and extrapolate knowledge and software products across projects and organizations.Publicad
Software Product Line Engineering: Future Research Directions
The recent trend of switching from single software product development tolines of software products in the software industry has made the software product line concept viable and widely accepted methodology in the future. Some of the potential benefits of this approach include cost reduction, improvement in quality and a decrease in product development time. Many organizations that deal in wide areas of operation, from consumer electronics, telecommunications, and avionics to information technology, are using software product lines practice because it deals with effective utilization ofsoftware assets and provides numerous benefits. Software product line engineering is an inter-disciplinary concept. It spans over the dimensions of business, architecture, process and organization. The business dimension of software product lines deals with managing a strong coordination between product line engineering and the business aspects of product line. Software product line architecture is regarded as one of the crucial piece of entity in software product lines. All the resulting products share thiscommon architecture. The organizational theories, behavior and management play critical role in the process of institutionalization of software product line engineering in an organization. The objective of this chapter is to discuss the state of the art of software product line engineering from the perspectives of business, architecture, organizational management and software engineering process. This work also highlights and discusses the future research directions in this area thus providing an opportunity to researchers and practitioners to better understand the future trends and requirements
Software Architecture for Academic Audit Information Management System
The main purpose of this research is to give an understanding of how important is software architecture in a system development process. Software architecture is the
second phase in system development life cycle which gave a huge contribution of the system fundamentals that determines the system's remaining development. its
deployment and maintenance life. The relationship among requirements, processes, users and results are a never ending relationship where they complete each other and work as a unit. It is much like a framework of ideas, concepts and requirements that are designed before developing and carrying out the actual actions. A comprehensive software architecture which meets the quality standards can be used
and referred to for other system's development which also shares the same fundamental concepts. Organization management and governing processes such as auditing management requires a comprehensive and efficient architecture to ensure the auditing processes are done accurately based on the standards set up by the quality control organization. Malaysian Qualifications Agency (MQA) is one of the organizations which monitors and coordinate both the quality assurance and accreditation of national higher learning institute. MQA auditing processes are
carried out based on the international quality assurance processes and standards. To ensure the accuracy of auditing processes, the Architecture Tradeoff Analysis Method (ATAM) has been chose as an assessment tool to test the correctness of the architecture
THE KNOWLEDGE-GAP REDUCTION IN SOFTWARE ENGINEERING
Many papers proposed in the software engineering and information systems literature are dedicated to analysis of software projects missing their schedules, exceeding their budgets, delivering software products with poor quality and in some cases even wrong functionality. The expression “software crisis” has been coined since the late 60’s to illustrate this phenomenon. Various solutions has been proposed by academics and practitioners in order to deal with the software crisis, counter these trends and improve productivity and software quality. Such solutions recommend software process improvement as the best way to build software products needed by modern organizations. Among the well-known solutions, many are based either on software development tools or on software development approaches, methods, processes, and notations. Nevertheless, the scope of these solutions seems to be limited and the improvements they provide are often not significant. We think that since software artifacts are accumulation of knowledge owned by organizational stakeholders, the software crisis is due to a knowledge gap between resulting from the discrepancy between the knowledge integrated in software systems and the knowledge owned by organizational actors. In particular, integrating knowledge management in software development process permits reducing the knowledge gap through building software products which reflect at least partly the organization’s know-how. In this paper, we propose a framework which provides a definition of knowledge based on information systems architecture and describes how to deal with the knowledge gap of a knowledge oriented software development process which may help organizations in reducing the software crisis impacts
Recommended from our members
Release engineering processes, their faults and failures
textRelease processes form an important, if overlooked, part of the complete software development life cycle. Many organizations implement the roles of release engineering and release management in different ways, with a wide amount of variance within the software industry. Ill-designed processes can lead to a higher number of software faults and costly delays. Failures in release engineering can have negative implications, yet the causes of release process failures are not well understood within in the software engineering research community.
This dissertation addresses the questions of what the common release process structure is, what the common failure modes are, and how organizations recover from and prevent these failures. We address these questions through a series of case studies with practicing release engineers at commercial software companies. The live interviews with these individual companies provide insight into the state of the practice in release engineering today across a broad spectrum of organization and software domains.
The results of these studies indicate four areas of theory in release engineering which future researchers can probe in more depth. These areas center around process organization, social causes of release process failure, the relationship between software architecture and the release process, and how organizations attempt to improve release processes.
For practicing release engineers, these results show that most organizations would benefit from three primary improvements: increased process automation, more modular software design, and improved organizational communication and support of release engineering groups. By implementing these improvements, software development companies and the release engineering processes they support will avoid the most common process failures in this critical phase of the software life cycle.Electrical and Computer Engineerin
Management model for the development of software applied to business sustainability in the context of global climate changes
This article introduces a social and environmental management model based on the results of an empirical study that was conducted using the grounded theory method. It outlines a social and environmental mapping of the different economic segments of the Brazilian business universe to support decisions that are inherent to the sustainable management of the supply chain of organizations in terms of clean development mechanisms. It is in this context that the concept is included for the architecture of software and a model of social and environmental balance to track the demands for carbon credit required by an organization in the scenario of its business and that of the national economy
Assessing the Impact of Microservices Architecture on Software Maintainability and Scalability
This evaluation delves into the influence of Microservices Architecture (MSA) on crucial factors like software maintainability and scalability, which are vital in today's software development. Exploring MSA's features and benefits reveals how it streamlines bug tracking, improves system comprehension, increases testability, enables independent scaling of services, and optimizes resource utilization. The assessment also identifies potential obstacles, including distribution challenges, communication overhead, network delays, and data consistency. Renowned organizations like Amazon and Netflix have provided real-life scenarios with significant evidence of MSA's practicality and limitations. Though MSA's importance in building durable, scalable systems is underlined, the evaluation also stresses the need for solid design principles, practical management approaches, and constant refinement of procedures
Software Architecture Evaluation Using Architecture Tradeoff Analysis Method (ATAM): A Case Study of UUM Learning Zone System
Software architecture evaluation has been employed by many organizations around the world to be the required standard procedure in the development of software system. It has widely gained general acceptance from both company and the research community because of its immense contributions. The UUM learning zone had only been operating for just a semester and has never been evaluated before. This study extends the use of Architecture Tradeoff Analysis Method (ATAM) a scenario-based evaluation method to evaluate the software architecture of learning zone which is the Universiti Utara Malaysia's learning management system used for online education within the university community. The findings relatively showed that they were no risk and tradeoff in the architecture and some sensitivity point were
identified
- …