Systems Modeling for novice engineers to comprehend software products better

04/26/2023
by   Mrityunjay Kumar, et al.
0

One of the key challenges for a novice engineer in a product company is to comprehend the product sufficiently and quickly. It can take anywhere from six months to several years for them to attain mastery but they need to start delivering results much before. SaaS (Software-as-a-Service) products have sophisticated system architecture which adds to the time and effort of understanding them. On the other hand, time available to new hires for product understanding continues to be short and getting shorter, given the pressure to deliver more in less time. Constructivist theory views learning as a personal process in which the learner constructs new knowledge for themselves. Building and refining a mental model is the key way in which they learn, similar to how the brain operates. This paper presents an approach to improve system comprehension process by using a system model that a) acts as a transitional object to aid and refine the mental model of the learner, and b) captures the current understanding of the dynamics of the software system in a way that can be reasoned with and simulated. We have adapted discrete systems modeling techniques and used a transition system as a lightweight modeling language. Such a model can be used by novice engineers during their product ramp-up phase to build a model of the software system that captures their knowledge of the system and aid their mental model. The paper also presents a learning approach in which the learners create and refine these models iteratively using the available and newly uncovered knowledge about the software system. We hypothesize that by leveraging this modeling language and approach, novice engineers can reduce the time it takes them to achieve desired proficiency level of system comprehension. This paper presents early ideas on this language and approach.

READ FULL TEXT
research
08/12/2015

OOASP: Connecting Object-oriented and Logic Programming

Most of contemporary software systems are implemented using an object-or...
research
11/03/2018

Learning Representations from Product Titles for Modeling Shopping Transactions

Shopping transaction analysis is important for understanding the shoppin...
research
06/23/2018

Probabilistic Software Modeling

Software Engineering and the implementation of software has become a cha...
research
09/16/2019

Towards Quality Assurance of Software Product Lines with Adversarial Configurations

Software product line (SPL) engineers put a lot of effort to ensure that...
research
08/25/2020

Failures and Fixes: A Study of Software System Incident Response

This paper presents the results of a research study related to software ...
research
02/18/2023

M-SENSE: Modeling Narrative Structure in Short Personal Narratives Using Protagonist's Mental Representations

Narrative is a ubiquitous component of human communication. Understandin...
research
07/03/2017

Modeling preference time in middle distance triathlons

Modeling preference time in triathlons means predicting the intermediate...

Please sign up or login with your details

Forgot password? Click here to reset