An engineer in a product company is expected to design a good solution to a computing problem (Design skill) and articulate the solution well (Expression skill). We expect an industry-ready student (final year student or a fresh campus hire) as well to demonstrate both these skills when working on simple problems assigned to them. This paper reports on the results when we tested a cohort of participants (N=16) for these two skills. We created two participant groups from two different tiers of college, one from a Tier 1 college (who were taking an advanced elective course), and another from Tier 2 colleges (who had been hired for internship in a SaaS product company). We gave them a simple design problem and evaluated the quality of their design and expression. Design quality was evaluated along three design principles of Abstraction, Decomposition, and Precision (adapted from the Software Engineering Book of Knowledge). Expression quality was evaluated using criteria we developed for our study that is based on the diversity and density of the expressions used in the articulation. We found the students lacking in design and expression skills. Specifically, a) they struggled with abstraction as a design principle, b) they did not use enough modes of expressions to articulate their design, and c) they did not use enough formal notations (UML, equations, relations, etc.). We also found significant difference in the performance between the two participant groups.
翻译:一个产品公司的工程师预计将设计出一个解决计算问题(设计技能)的好办法,并阐明解决办法(教育技能)。我们期望一个工业成熟的学生(最后一年的学生或新校园雇用),并在研究分配给他们的简单问题时展示这两种技能。本文报告了我们测试一组参与者(N=16)以测试这两类技能时的结果。我们从两个不同层次的学院创建了两个参与者小组,一个来自一级大学(正在接受高级选修课程),另一个来自二级大学(曾受雇在萨氏公司实习)。我们给他们一个简单的设计问题,并评价了设计和表达质量。根据抽象、分解和精度(改编自知识软件工程手册)的三项设计原则对设计质量进行了评估。我们根据发言所用表达方式的多样性和密度,对表达质量进行了评估。我们发现,学生缺乏设计和表达技能。具体地说,他们与抽象的设计和表达质量有困难,他们在设计原则中没有使用足够的格式,他们没有使用足够的设计模式,他们没有使用足够的格式。我们没有使用足够的设计模式,没有使用足够的格式。