88,388 research outputs found
Cultivating Third Party Development in Platform-centric Software Ecosystems: Extended Boundary Resources Model
Software ecosystems provide an effective way through which software solutions can be constructed by composing software components, typically applications, developed by internal and external developers on top of a software platform. Third party development increases the potential of a software ecosystem to effectively and quickly respond to context-specific software requirements. The boundary resources model gives a theoretical account for cultivation of third party development premised on the role of platform boundary resources such as application programming interfaces (API). However, from a longitudinal case study of the DHIS2 software ecosystem, this paper observes that no matter how good the boundary resources a software ecosystem provides, third party development remains a mere possibility until there exists adequate external generative capacity. Taking into consideration this observation, this paper makes a contribution by extending the boundary resources model to foreground external generative capacity alongside boundary resources as factors that influence third party development
Shape optimisation of a snowboard binding highback. A case study of generative design process comparison
FEA software is traditionally expensive to purchase, takes a high level of technical skill and understanding and requires users to dedicate years to develop specialist skills. With the increasing popularity of more user-friendly, elementary software packages such as Fusion360, more cost effective and efficient processes can be developed and harnessed, especially by SME’s and designers that don’t have the ability to purchase expensive software packages. One particular FEA element that has recently begun transitioning from highly specialised to more readily available is ‘generative design’ and ‘shape optimisation.' Shape optimisation has only been able to be utilised by large corporations with large research and development budgets. This case study looks at exploring and optimising the methods involved in generative design for product development and it’s aimed at facilitating practises for small to medium enterprises (SME’s).The work described in this paper presents a study using a snowboard binding highback component which was reverse engineered using 3D scanning. A blank model, free of any discerning features was created from the scan and then used as the platform for the generative design phase. This process was completed using easily accessible software (Fusion 360) as well as high-end professional software (Ansys 16). A comparison between the two workflows analyses the resultant model outcomes and outlines efficiencies regarding processing time, technical skill, and latent difficulties of the entry-level process for generative design of the snowboarding high back.This paper aims to demonstrate and describe an optimisation model for generative design and shape optimisation during entry-level product development
Improving the Design and Implementation of Software Systems uses Aspect Oriented Programming
A design pattern is used as a static reusable component of object oriented design in the many patterns catalogue. The regular design pattern does not show any collaboration of shared resource between patterns in the software design. But generative design pattern is a new design pattern that shows the relationship and shared resources between them. The generative design pattern is considered a dynamic and active design, which creating new design as a result of collaboration and resource usage between two designs. This paper will demonstrate benefit and the structure of generative pattern. It also demonstrates the creation of a desktop application for modeling generative design pattern. The Java language creates the desktop application. The application provides many features, for instance, users can place drawing objects such as class, Interface and Abstract Class object. The users also can draw different connection line between these objects, such as simple, inheritance, composition lines. This project shows the implementation details techniques of drawing objects and their connection. It also provides an open source code that many novice developers can understand and analysis for further development. The application source code gives the developers new ideas and skills in object oriented programming and graphical user interface in Java language
Sea Change in Software Development: Economic and Productivity Analysis of the AI-Powered Developer Lifecycle
This study examines the impact of GitHub Copilot on a large sample of Copilot
users (n=934,533). The analysis shows that users on average accept nearly 30%
of the suggested code, leading to increased productivity. Furthermore, our
research demonstrates that the acceptance rate rises over time and is
particularly high among less experienced developers, providing them with
substantial benefits. Additionally, our estimations indicate that the adoption
of generative AI productivity tools could potentially contribute to a $1.5
trillion increase in global GDP by 2030. Moreover, our investigation sheds
light on the diverse contributors in the generative AI landscape, including
major technology companies, startups, academia, and individual developers. The
findings suggest that the driving force behind generative AI software
innovation lies within the open-source ecosystem, particularly in the United
States. Remarkably, a majority of repositories on GitHub are led by individual
developers. As more developers embrace these tools and acquire proficiency in
the art of prompting with generative AI, it becomes evident that this novel
approach to software development has forged a unique inextricable link between
humans and artificial intelligence. This symbiotic relationship has the
potential to shape the construction of the world's software for future
generations
Model Driven Development of Distributed Business Applications
The present paper presents a model driven generative approach to the design and implementation of destributed business applications, which consequently and systematically implements many years of MDSD experience for the software engineering of large application development projects in an industrial context
- …