Software testing and development for intended quality Tero Pesonen.

Slides:



Advertisements
Similar presentations
Performance Assessment
Advertisements

Digital inclusion – a CS perspective Alex Poulovassilis ESRC TLRP-TEL Inclusion and Impact conference, June 2010.
SEP1 - 1 Introduction to Software Engineering Processes SWENET SEP1 Module Developed with support from the National Science Foundation.
© 2012 Autodesk BIM Collaboration Siva Koppula Technical Consultant.
HOW DO PROFESSIONAL DEVELOPERS COMPREHEND TO SOFTWARE Report submitted by Tobias Roehm, Rebecca Tiarks, Rainer Koschke, Walid Maalej.
Alternative Software Life Cycle Models By Edward R. Corner vol. 2, chapter 8, pp Presented by: Gleyner Garden EEL6883 Software Engineering II.
Deanne Gannaway Facilitating Change in Higher Education Practices.
Software Testing in the Cloud Leah Riungu-Kalliosaari.
CAP 252 Lecture Topic: Requirement Analysis Class Exercise: Use Cases.
Benchmarking as a management tool for continuous improvement in public services u Presentation to Ministry of Culture of the Russian Federation u Peter.
R R R CSE870: Advanced Software Engineering (Cheng): Intro to Software Engineering1 Advanced Software Engineering Dr. Cheng Overview of Software Engineering.
Writing Good Software Engineering Research Papers A Paper by Mary Shaw In Proceedings of the 25th International Conference on Software Engineering (ICSE),
Systems Analysis and Design in a Changing World, Fourth Edition
1 Computer Systems & Architecture Lesson 1 1. The Architecture Business Cycle.
Software Architecture Quality. Outline Importance of assessing software architecture Better predict the quality of the system to be built How to improve.
University of Jyväskylä – Department of Mathematical Information Technology Computer Science Teacher Education ICNEE 2004 Topic Case Driven Approach for.
Networks ∙ Services ∙ People John DYER TF-MSP Video Conference Community Procurement Support Building on the SPOT-ON Proposal Smart Procurement,
Monitoring, Review and Reporting Project Cycle Management A short training course in project cycle management for subdivisions of MFAR in Sri Lanka.
User Experience Design Goes Agile in Lean Transformation – A Case Study (2012 Agile Conference) Minna Isomursu, Andrey Sirotkin (VTT Technical Research.
Software Verification and Validation (V&V) By Roger U. Fujii Presented by Donovan Faustino.
Software Product Line Architectures (SPLA) Nipun Shah
The Many Contexts of Software Architecture
Chapter 3 Needs Assessment
Desired Quality Characteristics in Cloud Application Development Leah Riungu-Kalliosaari.
Product Evaluation the outcome phase. Do the magic bullets work? How do you know when an innovative educational program has “worked”? How do you know.
Software Quality Construction: Empirical Study on the Role of Requirements, Stakeholders and Resources Seth, Frank P. APSEC 2012 Conference, Hong Kong.
UML - Development Process 1 Software Development Process Using UML (2)
Management Information Systems
Chapter 3 – Agile Software Development 1Chapter 3 Agile software development.
CompSci 230 Software Design and Construction
Curriculum development A brief guide to the construction of relevant curricula.
A Model for EAP Training Development Zhiyun Zhang IDE 632 — Instructional Design & Development II Instructor : Dr. Gerald S. Edmonds.
Software System Engineering: A tutorial
Employability skills workshop This work has been produced on behalf of the National Quality Council with funding provided through the Australian Government.
Term Paper – CSC 557 “Contemporary Software Development Using Cloud Resources” By: Richard Appiah.
Software Software is omnipresent in the lives of billions of human beings. Software is an important component of the emerging knowledge based service.
Computer Systems & Architecture Lesson Software Architecture in the Future.
Semester 2: Lecture 9 Analyzing Qualitative Data: Evaluation Research Prepared by: Dr. Lloyd Waller ©
ETICS2 All Hands Meeting VEGA GmbH INFSOM-RI Uwe Mueller-Wilm Palermo, Oct ETICS Service Management Framework Business Objectives and “Best.
EVALUATING PAPERS KMS quality- Impact on Competitive Advantage Proceedings of the 41 st Hawaii International Conference on System Sciences
What is a Business Analyst? A Business Analyst is someone who works as a liaison among stakeholders in order to elicit, analyze, communicate and validate.
Interaction Design CMU. Today’s objectives Continue Design approaches (UCD, ACD)  User-Centered Design  Activity-Centered Design.
A survey based analysis on training opportunities Dr. Jūratė Kuprienė Framing the digital curation curriculum International Conference Florence, Italy.
NIK’01, Tromsø, Nov An Empirical Study on the Utility of Formal Routines to Transfer Knowledge and Experience Reidar Conradi, NTNU Tore Dybå,
Professional Learning and Development: Best Evidence Synthesis Helen Timperley, Aaron Wilson and Heather Barrar Learning Languages March 2008.
Performance Stories Evaluation - A Monitoring Method to Enhance Evaluation Influence Riad Naji, Catriona King, Richard Habgood.
Configuration Management and Change Control Change is inevitable! So it has to be planned for and managed.
Chapter 6 CASE Tools Software Engineering Chapter 6-- CASE TOOLS
27/3/2008 1/16 A FRAMEWORK FOR REQUIREMENTS ENGINEERING PROCESS DEVELOPMENT (FRERE) Dr. Li Jiang School of Computer Science The.
1 EMS Fundamentals An Introduction to the EMS Process Roadmap AASHTO EMS Workshop.
CSE 303 – Software Design and Architecture
An Agile Requirements Approach 1. Step 1: Get Organized  Meet with your team and agree on the basic software processes you will employ.  Decide how.
Project Management Strategies Hidden in the CMMI Rick Hefner, Northrop Grumman CMMI Technology Conference & User Group November.
UK Interest & Input to the Factories of the Future Horizon 2020 Roadmap. © ActionPlant 2011.
44222: Information Systems Development
A Software Engineering Model Based Curriculum Development Approach Leon Pan University of the Fraser Valley.
Evaluation What is evaluation?
Software Engineering Salihu Ibrahim Dasuki (PhD) CSC102 INTRODUCTION TO COMPUTER SCIENCE.
EI Architecture Overview/Current Assessment/Technical Architecture
Chapter 10 Software Quality Assurance& Test Plan Software Testing
The Systems Engineering Context
Software Life Cycle Models
Systems Analysis and Design in a Changing World, 6th Edition
HCI in the software process
Script-less Automation: An Approach to Shift-Left.
Textbook Engineering Web Applications by Sven Casteleyn et. al. Springer Note: (Electronic version is available online) These slides are designed.
CSSSPEC6 SOFTWARE DEVELOPMENT WITH QUALITY ASSURANCE
HCI in the software process
Presentation transcript:

Software testing and development for intended quality Tero Pesonen

Objective  To show how software development, software testing and intended quality depend on one another.  The research area includes, in addition to traditional software development and service models, also the emerging XaaS (Everything as a Service) architectures, technologies and service models.  The project results help the participating companies in improving the efficiency of their quality management and software testing and hence the efficiency of their software development as a whole.  Testing techniques  Testing as a service

Research Problem Assessment framework through which each OU is evaluated Intended Software Quality ISO/IEC 25010, Software Product Quality Software Testing ISO/IEC 29119, Testing Spice, IEEE Std 1012 StaaS Software Development Software Products ISO/IEC ISO/IEC New Services SaaS

Preliminary Findings  In the software developing OU, requirements management plays an important role in achieving intended quality.  Requirements act as the basic communication medium through which the customer/user, developers and testers concretize different aspects of quality.  Requirements are never throughout, and different stakeholders interpret them differently. Requirements change.  Successful requirements management contributes positively to achieving the targeted quality by reducing overhead caused by doing wrong work.

Preliminary Findings  Building ”good” quality is different to building targeted type and level of quality as efficiently as possible.  For many organizations, concretizizing intended quality attributes (also non-functional) is not yet as well implemented as actual development and testing activities are.  Many organizations are also developer centric, and here QA emphasizes functional quality.  Intended quality appears therefore to be also a knowledge transfer issue within the development process, not just a testing or software development challenge, as often perceived.

Preliminary Findings  Agile methods favour direct, short development cycles that produce immediate feedback on quality for testers, developers and users.  Agility establishes an efficient communication channel.  Non-agile methods seem to require stricter, more formal quality management approaches for similar level of success.  Large, complex, multistakeholder projects do not benefit from agility to the same extend, as the communication overhead is rather increased than reduced in such a context.  Well-defined waterfall-like processes may fare better.

Observations from the data  Developers and testers need to be able to communicate directly, face-to-face, without effort; physical co-location is seen very important for mutual productivity.  Developers should not review their own code; one becomes blind to one’s own mistakes. That time is better spent reviewing a colleague’s work.  Requirements management solutions (e.g. Shared management centers) seem a good starting point in improving the efficiency of the overall development process. Note: How is non-functional quality communicated in the solution?  The same organization may need to apply different processes to different types of development work, not just have all development governed by one procedure. Rapid, explorative development work benefits from agility. Maintenance work can be more strictly phased and documented.

Observations from the data  In projects were testing is done as a service, it is paramount that no communication obstacles are created between testers, managers and developers, despite them being part of different organizations. Knowledge transfer between stakeholders should be considred already in project planning. Develoeprs and testers should be communicated the formal aspects and be inquired for feedback; they observe, notice and draw conclusions – and frustrate when things do not work.  Cloud architectures support very quick development for targeted quality with module re-use and well-defined API’s But force vendor lock-in. Offer poor portability to non-cloud platforms if software grows.

Publication 1 / STX  Research question: How do developing organizations build intended quality? Sub questions:  Do different size and type of OU’s build quality differently?  Do cloud environments affect how quality is built?  What is the role of testing methods and tools for quality?  Conference paper. Contents: 1. Introduction 2. Related research 3. Research process  Qualitative, Grounded Theory method.  18 STX interviews + 10 interviews of supplementary data.  xx sheets of transcripted data.

Publication 1 / STX 4. Results 4.1 Quality is communicated as requirements, which are translated into architecture and then into software code. Testing ensures the requirements are, first, correct, and, second, being addressed correctly. 4.2 For most organizations, the potential in improved requirements management seems currently greater than that provided by better testing techniques or other kinds of testing tools. 4.3 Process improvement seems to follow improved requirements management. 4.4 Service-oriented OU’s view quality less formally than product-oriented ones. Knowledge transfer plays a role in organization’s growth, and has to be reckoned with. 4.5 Cloud environments facilitate certain kinds of development work and aid in achieving targeted quality efficiently, but not without major compromises. 5. Discussion and Summary.

Research: Next Steps  Assessment of testing  On-going work: Master’s Thesis by Aoke Li on the status of standardization in China. Due to February  A new Master of Science Thesis study for STX will be started this spring.  Research topics: Software product lines (ISO/IEC 2655x.) Distributed global software development. Cloud laboratory (external project with China.) Quantitative survey.