|
|
Stan Jarzabek
I received M.Sc. from Dept. of Mathematics and PhD from Dept. of Informatics at Warsaw University. My recent work is in area of mobile Health, concerning healthcare interventions delivered via smartphones, so-called Mobile Therapies. I focus on stress relief, emotional awareness and cognitive behavioral therapy (CBT) interventions. Mobile Therapies, in real life situations can reinforce strategies and deliver therapies recommended to patients during face-to-face consultations in clinics. I collaborate with psychologists and psychotherapists on user studies, exploring advanced computer technologies for effective delivery of Mobile Therapies: cloud computing for scalability, context-awareness for understanding the user environment and emotion sensing for inferring the user’s emotional states from smartphone and physiological sensor data. Software
engineering, particularly software design for ease of adaptation and
reuse, re-engineering and maintenance (evolution) are my main areas of
research. Software reuse is based on the premise that much similarity
exists in software systems. This is particularly true for systems in a
given application domain. Software Product Line (SPL) approach is based
on reuse of core assets – architecture, code components, documentation
and other software artifacts – during software development and
evolution. Reuse attempts to identify and automate routine, repetitive
development tasks. While the progress towards practical solutions is
slow, reuse remains the most promising approach in the horizon to
improving software quality and productivity. I investigate
variability techniques that can enhance
reusability of conventional software components. To this end, we
developed XVCL
(XML-based Variant Configuration
Language) that can uniformly manage variability in all kinds of
software assets - code, architecture, documentation written in WORD (tool demo
and paper),
),
UML models, or test cases. In Software Product Line (SPL) approach to reuse,
XVCL streamlines and automates customization of reusable components, improving
productivity gains due to reuse. Model-Driven Development and generators are
mostly applied in initial development. I investigate new forms of MDD and
flexible generators
flexible generators
that can be also useful in SPL reuse and software evolution.
Semi-automated detection of similar software structures
(so-called software clones) has many interesting applications in software
understanding, evolution and reuse. Current research on clones focused on
similar code fragments. We proposed the concept of structural clones that
encompass recurring similar program structures of any kind and granularity.
Structural clones are particularly useful in re-engineering of legacy code for
reuse into SPL. We developed a structural clone detection technique and research
fundamental properties of structural clones. Monograph describing my research: Jarzabek, S. Effective Software Maintenance and Evolution: Reused-based Approach, Auerbach, CRC Press Taylor and Francis, May 2007. Order Here I teach graduate course in areas of my research and CS301/CS3202 Software Engineering Project course. ConsultingSoftware expert witness
Collaborations
We have been working with industry partners, namely ST Electronics
(Info-Software Systems) Pte Ltd, Paul Basset (Cutter Consortium), and Fudan
Wingsoft Ltd. Collaboration with ST Electronics led to the
first application of XVCL in industry setting. Paul Bassett is an inventor of frame concepts, and former Research Director of Netron Inc., a
company that developed Frame Technology™, a predecessor of XVCL. We have 10 year
history of fruitful collaboration with ST Electronics and Paul Bassett,
documented in published papers. Fudan Wingsoft Ltd is a university-affiliated
software company China, a developer of financial software for universities. Our
collaboration centers on Fudan Wingsoft’s financial software SPL. We study conventional variability management
techniques Wingsoft uses to manage variability in core assets, and apply XVCL to
achieve similar goals, evaluating the benefits and trade-offs. |