1 / 22

Desired Quality Characteristics in Cloud Application Development

Leah Riungu-Kalliosaari. Desired Quality Characteristics in Cloud Application Development. Contents. Introduction Research process Findings Conclusion Standardization of Cloud Computing. Introduction. Software quality: functional and non-functional requirements

Télécharger la présentation

Desired Quality Characteristics in Cloud Application Development

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Leah Riungu-Kalliosaari Desired Quality Characteristics in Cloud Application Development

  2. Contents • Introduction • Research process • Findings • Conclusion • Standardization of Cloud Computing

  3. Introduction • Software quality: functional and non-functional requirements • Software quality is an elusive target (Blaine and Cleland-Huang, 2008) • Achieving quality in software requires balancing between many factors e.g. budget, time, communication, outsourcing,

  4. Introduction • Cloud computing: on-demand access to computing resources. • Three service layers: software-as-a-service (SaaS), platform-as-a-service (PaaS), infrastructure-as-a-service (IaaS) (Mell and Grance, 2011) • Cost reduction, increase scalability, improve efficiency • Cloud-based environments for developing and hosting applications • Cloud applications are applications built, deployed and hosted in cloud environments (Hobfield, et. al, 2012)

  5. Introduction • Cloud application development • Pre-defined architectural structures, resources, interfaces, service access and discovery mechanisms. • Emphasis on certain requirements e.g. need for strict conformance, high interoperability

  6. Introduction • Aim: evaluate important product quality characteristics as perceived by organizations developing cloud applications • ISO/IEC 25010 • Product quality model: functional suitability, reliability, performance efficiency, usability, security, compatibility, maintainability, portability • Quality in use model: effectiveness, efficiency, satisfaction, freedom from risk and context coverage

  7. Research Process • Research questions • What quality characteristics do developers consider to be important for cloud-based applications? • What activities support developers in achieving these quality characteristics? • Qualitativecase study • Grounded Theory for analysis • Five organizations: 1 Large, 1 Medium and 3 Micro

  8. Categories • Five categories • Life-cycle model and tools: describes the software development life-cycle model and the tools used to produce the software. • Waterfall, incremental, agile • Software application: the type of software that the organization is developing.

  9. Categories • Important quality characteristics: most desirable aspects of quality • These varied, but usability was common among all the cases • Practices for handling requirements: mechanisms for handling requirements. • Origin: From the developers themselves (Case B, C & D) and from the customer (Case A & E) • Some problems • Case D  Functional system at first • User preferences might affect the built-in functionality.

  10. Categories • Customer involvement: effect of the customer during the development life cycle. • Case A & E: High levels of flexibility to accommodate different customer needs • Case B & C: Customer not involved in developing the first product. Considered customer feedback to improve the applications • Case D: Developing first version, customer not involved, (yet)

  11. Observations • Observation 1: The most important quality characteristics vary among the organizations, but usability was important in all the organizations • Case A: Reliability, availability (quality of service) • Case B: Usability, security when hosting in the cloud • Security as well  data integrity and confidentiality • Conformance to and interoperability with cloud platforms • “Because I'm using the [cloud] APIs … if the security could be breached, then that would first of all break the whole service, and second of all compromise my relationship with the platform [provider]. And that's the key quality issue that I'm worried about before I release the product” – Owner Case C • Usability • All organizations stated usability to be important.

  12. Observations • Observation 2: Agile development methods are preferred when developing cloud-based applications. • Changes in the cloud platforms and user preferences affect the software applications • Agile methods help in reacting to changes, and keeping up with evolving quality expectations • Focus on most important features first • Surprising: Customers more tolerant to errors. (Case C)

  13. Observations • Observation 3: Customer input is valued at different stages of the development. • This depends on where the requirements come from. • From customer (Case A & E): customer is involved from the start • Customers not able to clearly state their needs • From the developers (Case B & C), steady interaction with the customer after releasing the software • Case D expects some changes after releasing the application

  14. Observations • Observation 4: The developers choose development tools according to their knowledge, skills and familiarity with the tools. • Additional tools are chosen based on learnability, usability and appropriateness for the intended use. • Case B: Improve the development process  test management tool • Case C: Cloud APIs  conforming to platform-specific security requirements • Case E: Drupal  appropriate for building web-based applications

  15. Conclusions • Desired quality varied among the organizations • Depends on the application • Usability was important in all cases • Good first impression • Three activities employed to support the development • Selecting a suitable life-cycle model • Engaging the customer • Applying the most suitable tools • Cloud application development is a complex process. • Interaction amongst stakeholders • Requires aligning the development activities with the targeted quality

  16. Standardization of Cloud Computing

  17. Standardization of Cloud Computing • Distributed application platforms and services • ISO/IEC JTC1 / SC 38 • WG 1 Web services • WG 2 Service Oriented Architecture (SOA) • WG 3 Cloud computing • Study group on cloud computing • http://www.iso.org/iso/jtc1_sc38_home • Finnish Standards Association SFS Mirror committee SR310 • Chair: TuomasNurmela • Secretary: ElinaHuttunen (contact at firstname.lastname@sfs.fi, if interested) • Currently 25 members, most active 5-6 persons

  18. Cloud Computing Reference Architecture • The aim of the CCRA is to: • Illustrate and understand cloud services in the context of an overall conceptual methodology • Provide a technical reference to enable the international community to understand, discuss, categorize and compare cloud services • Facilitate the analysis of candidate standards in areas such as security, interoperability, portability and service management and support analysis of reference architecture

  19. Views of the Reference Architecture

  20. Relationship: User / Functional view

  21. Core Roles

  22. Layering of the Functional view

More Related