Applying software development lifecycles in teaching introductory programming courses

被引:3
|
作者
Rahman, Syed M. [1 ]
Juell, Paul L. [1 ]
机构
[1] N Dakota State Univ, Dept Comp Sci, Fargo, ND 58105 USA
关键词
software development method; programming language; software testing; software quality; software cost;
D O I
10.1109/CSEET.2006.7
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
In this paper, we introduce a new software development method that emphasizes software testing cycles and makes a cultural change in program development. In our approach, students follow the software lifecycles to develop their programs; specifically, a student who is to write a program begins by writing a test suite and completes other development cycles. Students in programming courses usually develop "toy" programs that are superficially tested, graded, and eventually discarded Generally, students are not worried about the quality or maintenance of their products. We believe this style of teaching programming courses leaves students unprepared for developing reliable software. Industry leaders also claimed that more than 50% of a software project's budget was spent on activities related to improving software quality. They stated the reason was the inadequate attention paid to software quality in the development phase. Our approach integrates into the existing programming courses without changing the course contents, syllabus, policies, or loads, and our model improves the students' program quality, in terms of black-box testing. Students indicated that our method helped them in understanding the problems and writing the programs, made the code easier to debug, and improved the students' code reliability and quality.
引用
收藏
页码:17 / +
页数:2
相关论文
共 50 条
  • [1] Software Testing in Introductory Programming Courses
    Horvath, R.
    [J]. 10TH IEEE INTERNATIONAL CONFERENCE ON EMERGING ELEARNING TECHNOLOGIES AND APPLICATIONS (ICETA 2012), 2012, : 133 - 134
  • [2] Applying the TBC method in introductory programming courses
    Rahman, Syed M.
    [J]. 2007 37TH ANNUAL FRONTIERS IN EDUCATION CONFERENCE, GLOBAL ENGINEERING : KNOWLEDGE WITHOUT BORDERS - OPPORTUNITIES WITHOUT PASSPORTS, VOLS 1- 4, 2007, : 99 - 100
  • [3] Reflections on Applying Constructive Alignment with Formative Feedback for Teaching Introductory Programming and Software Architecture
    Cain, Andrew
    Babar, Muhammad Ali
    [J]. 2016 IEEE/ACM 38TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING COMPANION (ICSE-C), 2016, : 336 - 345
  • [4] Challenges to integrate software testing into introductory programming courses
    Scatalon, Lilian Passos
    Barbosa, Ellen Francine
    Garcia, Rogerio Eduardo
    [J]. 2017 IEEE FRONTIERS IN EDUCATION CONFERENCE (FIE), 2017,
  • [5] Teaching and Learning Strategies for Introductory Programming in University Courses
    Figueiredo, Jose A. Q.
    Jose Garcia-Penalvo, Francisco
    [J]. TEEM'21: NINTH INTERNATIONAL CONFERENCE ON TECHNOLOGICAL ECOSYSTEMS FOR ENHANCING MULTICULTURALITY, 2021, : 746 - 751
  • [6] Teaching Security in Introductory C-Programming Courses
    Pawelczak, Dieter
    [J]. HEAD'20: 6TH INTERNATIONAL CONFERENCE ON HIGHER EDUCATION ADVANCES, 2020, : 595 - 603
  • [7] A teaching/learning support tool for introductory programming courses
    Boada, I
    Soler, J
    Prados, F
    Poch, J
    [J]. ITHET 2004: PROCEEDINGS OF THE FIFTH INTERNATIONAL CONFERENCE ON INFORMATION TECHNOLOGY BASED HIGHER EDUCATION AND TRAINING, 2004, : 604 - 609
  • [8] Software Testing in Introductory Programming Courses A Systematic Mapping Study
    Scatalon, Lilian Passos
    Carver, Jeffrey C.
    Garcia, Rogerio Eduardo
    Barbosa, Ellen Francine
    [J]. SIGCSE '19: PROCEEDINGS OF THE 50TH ACM TECHNICAL SYMPOSIUM ON COMPUTER SCIENCE EDUCATION, 2019, : 421 - 427
  • [9] Incorporating a disciplined software development process in to introductory computer science programming courses: Initial results
    Towhidnejad, M
    Salimi, A
    [J]. FRONTIERS IN EDUCATION FIE'96 - 26TH ANNUAL CONFERENCE, PROCEEDINGS, VOLS 1-3: TECHNOLOGY-BASED RE-ENGINEERING ENGINEERING EDUCATION, 1996, : 497 - 500
  • [10] A framework for teaching introductory software development
    Mahmood, Zaigham
    [J]. WSEAS Transactions on Computers, 2009, 8 (08): : 1225 - 1234