Teaching A Real World Software Design Approach Within An Academic Environment
Author(s) -
John A. Hamilton Jr.,
Jeanne L. Murtagh
Publication year - 2020
Language(s) - English
Resource type - Conference proceedings
DOI - 10.18260/1-2--8739
Subject(s) - software engineering , software development , computer science , software construction , session (web analytics) , scope (computer science) , personal software process , software , software design , software requirements , verification and validation , engineering management , systems engineering , engineering , programming language , world wide web , operations management
In this paper, we discuss how object-orientation and the industrial standard for software development, "Software Lifecycle Processes, IEEE/EIA 12207.0-1996" can be used to enhance the students’ design experience in a 400-level course in a software engineering program. Although every phase of the software development lifecycle is important, we have found that the two lifecycle phases which present the greatest challenges in a classroom environment are the software requirements analysis phase and the software design phase. Practical experience with requirements definition is an important part of the software engineering process, but it is beyond the scope of this paper; we shall focus on the latter phase. Furthermore, we claim that students benefit from first developing proficiency in the software design phase -before they face the major challenges of the software requirements analysis phase. This design proficiency can be developed by employing the industrial evaluation criteria, described in IEEE/EIA 12207, for both the high-level and detailed designs produced by the students. We also recommend that the students work from clear, consistent, and reasonably complete requirements provided by the instructor in the project assignment. It is critical that the students continue beyond the design phase and actually implement, test and document their projects, because some design flaws are not obvious to inexperienced software developers until they attempt to write code based on the flawed design. This paper discusses how we focused on the design phase of software development and encouraged design practices that would be effective for industrial projects, as well as our much smaller academic projects.
Accelerating Research
Robert Robinson Avenue,
Oxford Science Park, Oxford
OX4 4GP, United Kingdom
Address
John Eccles HouseRobert Robinson Avenue,
Oxford Science Park, Oxford
OX4 4GP, United Kingdom