Abstract:
Blockchain Oriented Software Engineering (BOSE) introduces new research directions for the
systematic, disciplined, and quantifiable approaches to the development of blockchain-based
software systems i.e., Decentralized Applications (DApps). The development lifecycle of DApps
is different and complex as compared to traditional software systems. BOSE develops new
software engineering approaches to manage the development of DApps, these approaches are
hybrid and based on standards that are being followed in software engineering to manage the
development of traditional software systems with collaborations new trends, and architecture
of DApps. This thesis contributes to this area of research by introducing software engineering
approaches such as agile software development and project management methods to provide
efficient and quality-oriented development of blockchain-enabled smart contracts-based DApps
systems. This thesis proposes a hybrid framework to ensure specified, simple, and standardized
agile-based management of efficient and quality-oriented development of DApps. The proposed
framework facilitates efficiency and quality through specified project goals, management of
resource consumption of DApps systems, agile testing, simplicity in software requirements, and
design process. SMART (Specific, Measurable, Achievable, Realistic, Time-bound, or Traceable)
objectives, Class Responsibility Collaborator modeling, Pair Programming, Acceptance Test
Driven Development, Prioritization of Requirements, and Project Velocity are practices and
methods introduced in the proposed framework. A questionnaire survey in the community of
software industry professionals and a case study is also conducted to implement the proposed
framework in a real-time industry environment. Responses and results of the survey and case
study establish the effectiveness and usability of all the practices and methods of the proposed
framework for efficient and quality-oriented development of DApps systems.