Connecting the usability and software engineering life cycles through a communication-fostering software development framework and cross-pollinated computer science courses

Interactive software systems have both functional and user interface components. User interface design and development requires specialized usability engineering (UE) knowledge, training, and experience in topics such as psychology, cognition, specialized design guidelines, and task analysis. The de...

Full description

Bibliographic Details
Main Author: Pyla, Pardha S.
Other Authors: Computer Science
Format: Others
Published: Virginia Tech 2014
Subjects:
Online Access:http://hdl.handle.net/10919/28967
http://scholar.lib.vt.edu/theses/available/etd-09132007-233325/
id ndltd-VTETD-oai-vtechworks.lib.vt.edu-10919-28967
record_format oai_dc
spelling ndltd-VTETD-oai-vtechworks.lib.vt.edu-10919-289672020-09-26T05:30:59Z Connecting the usability and software engineering life cycles through a communication-fostering software development framework and cross-pollinated computer science courses Pyla, Pardha S. Computer Science Hartson, H. Rex Smith-Jackson, Tonya L. Arthur, James D. Hix, Deborah S. Pérez-Quiñones, Manuel A. unified framework usability engineering integration life cycle representation Software engineering Ripple influencing factors Interactive software systems have both functional and user interface components. User interface design and development requires specialized usability engineering (UE) knowledge, training, and experience in topics such as psychology, cognition, specialized design guidelines, and task analysis. The design and development of a functional core requires specialized software engineering (SE) knowledge, training, and experience in topics such as algorithms, data structures, software architectures, calling structures, and database management. Given that the user interface and the functional core are two closely coupled components of an interactive software system, with each constraining the design of the other, there is a need for the SE and UE life cycles to be connected to support communication among roles between the two development life cycles. Additionally, there is a corresponding need for appropriate computer science curricula to train the SE and UE roles about the connections between the two processes. In this dissertation, we connected the SE and UE life cycles by creating the Ripple project development environment which fosters communication between the SE and UE roles and by creating a graduate-level cross-pollinated SE-UE joint course offering, with student teams spanning the two classes, to educate students about the intricacies of interactive-software development. Using this joint course we simulated different conditions of interactive-software development (i.e. with different types of project constraints and role playing) and assigned different teams to these conditions. As part of semester-long class projects these teams developed prototype systems for a real client using their assigned development condition. Two of the total of eight teams in this study used the Ripple framework. As part of this experimental course offering, various instruments were employed throughout the semester to assess the effectiveness of a framework like Ripple and to investigate candidate factors that impact the quality of product and process of interactive-software systems. The study highlighted the importance of communication among the SE and UE roles and exemplified the need for the two roles to respect each other and to have the willingness to work with one another. Also, there appears to exist an inherent conflict of interest when the same people play both UE and SE roles as they seem to choose user interface features that are easy to implement and not necessarily easy to use by systemâ s target users. Regarding pedagogy, students in this study indicated that this joint SE-UE course was more useful in learning about interactive-software development and that it provided a better learning experience than traditional SE-only or UE-only courses. Ph. D. 2014-03-14T20:16:14Z 2014-03-14T20:16:14Z 2007-09-10 2007-09-13 2007-09-17 2007-09-17 Dissertation etd-09132007-233325 http://hdl.handle.net/10919/28967 http://scholar.lib.vt.edu/theses/available/etd-09132007-233325/ Pardha_Pyla_Dissertation.v38-submitted.pp.pdf In Copyright http://rightsstatements.org/vocab/InC/1.0/ application/pdf Virginia Tech
collection NDLTD
format Others
sources NDLTD
topic unified framework
usability engineering
integration
life cycle representation
Software engineering
Ripple
influencing factors
spellingShingle unified framework
usability engineering
integration
life cycle representation
Software engineering
Ripple
influencing factors
Pyla, Pardha S.
Connecting the usability and software engineering life cycles through a communication-fostering software development framework and cross-pollinated computer science courses
description Interactive software systems have both functional and user interface components. User interface design and development requires specialized usability engineering (UE) knowledge, training, and experience in topics such as psychology, cognition, specialized design guidelines, and task analysis. The design and development of a functional core requires specialized software engineering (SE) knowledge, training, and experience in topics such as algorithms, data structures, software architectures, calling structures, and database management. Given that the user interface and the functional core are two closely coupled components of an interactive software system, with each constraining the design of the other, there is a need for the SE and UE life cycles to be connected to support communication among roles between the two development life cycles. Additionally, there is a corresponding need for appropriate computer science curricula to train the SE and UE roles about the connections between the two processes. In this dissertation, we connected the SE and UE life cycles by creating the Ripple project development environment which fosters communication between the SE and UE roles and by creating a graduate-level cross-pollinated SE-UE joint course offering, with student teams spanning the two classes, to educate students about the intricacies of interactive-software development. Using this joint course we simulated different conditions of interactive-software development (i.e. with different types of project constraints and role playing) and assigned different teams to these conditions. As part of semester-long class projects these teams developed prototype systems for a real client using their assigned development condition. Two of the total of eight teams in this study used the Ripple framework. As part of this experimental course offering, various instruments were employed throughout the semester to assess the effectiveness of a framework like Ripple and to investigate candidate factors that impact the quality of product and process of interactive-software systems. The study highlighted the importance of communication among the SE and UE roles and exemplified the need for the two roles to respect each other and to have the willingness to work with one another. Also, there appears to exist an inherent conflict of interest when the same people play both UE and SE roles as they seem to choose user interface features that are easy to implement and not necessarily easy to use by systemâ s target users. Regarding pedagogy, students in this study indicated that this joint SE-UE course was more useful in learning about interactive-software development and that it provided a better learning experience than traditional SE-only or UE-only courses. === Ph. D.
author2 Computer Science
author_facet Computer Science
Pyla, Pardha S.
author Pyla, Pardha S.
author_sort Pyla, Pardha S.
title Connecting the usability and software engineering life cycles through a communication-fostering software development framework and cross-pollinated computer science courses
title_short Connecting the usability and software engineering life cycles through a communication-fostering software development framework and cross-pollinated computer science courses
title_full Connecting the usability and software engineering life cycles through a communication-fostering software development framework and cross-pollinated computer science courses
title_fullStr Connecting the usability and software engineering life cycles through a communication-fostering software development framework and cross-pollinated computer science courses
title_full_unstemmed Connecting the usability and software engineering life cycles through a communication-fostering software development framework and cross-pollinated computer science courses
title_sort connecting the usability and software engineering life cycles through a communication-fostering software development framework and cross-pollinated computer science courses
publisher Virginia Tech
publishDate 2014
url http://hdl.handle.net/10919/28967
http://scholar.lib.vt.edu/theses/available/etd-09132007-233325/
work_keys_str_mv AT pylapardhas connectingtheusabilityandsoftwareengineeringlifecyclesthroughacommunicationfosteringsoftwaredevelopmentframeworkandcrosspollinatedcomputersciencecourses
_version_ 1719340631598301184