paper describes the author’s experiences with teaching an industry-based capstone designcourse. In this course, students work as members of small teams to complete softwaredevelopment projects. These projects proceed from requirements gathering, to analysis, design,implementation, and delivery of products to real-world clients. In recent years, several of theseprojects have involved the development of serious games for real-world clients. Serious gamesare games whose purpose is education in its various forms, rather than entertainment. Seriousgames and simulations can be good candidates for student projects that provide them withopportunities to manage projects with real-world development constraints and deadlines. A finalcumulative written
AC 2010-2313: THE BENEFITS OF TRANSPARENCY IN MANAGINGSOFTWARE CAPSTONE PROJECTSKevin Gary, Arizona State UniversityHarry Koehnemann, Arizona State University Page 15.1207.1© American Society for Engineering Education, 2010 The Benefits of Transparency in Managing Software Engineering Capstone ProjectsAbstractThis paper describes the impact of an agile process support environment in helping facultymanage software engineering capstone projects and the learning outcomes associated with thecapstone experience. Software engineering capstone projects are notoriously time-consuming tomanage for faculty mentors. Team projects often fall behind due to the
AC 2011-705: MULTIPLAYER ON-LINE ROLE PLAYING GAME STYLEGRADING IN A PROJECT BASED SOFTWARE ENGINEERING TECH-NOLOGY CAPSTONE COURSEJames N. Long, Oregon Institute of Technology James Long is an associate professor in software engineering technology. Courses and interest are Soft- ware Engineering Project Course, Computer Networks, Operating Systems, Embedded Systems and ap- plications. James is the program director for the Embedded Systems Engineering Technology program.Linda Sue Young, Oregon Institute of Technology Professor Linda S. Young has taught at the Oregon Institute of Technology since 1983. She earned her Ph.D. in Rhetoric and Composition from the University of Washington in 1997, and has a master’s degree
performance. This approach isevaluated versus the previous, a more highly subjective, assessment approach for this course.The paper concludes with a discussion of how this process will be implemented for later years.Introduction:At Embry-Riddle Aeronautical University (ERAU), Daytona Beach campus, two courses, CEC420/421: Computer System Design Lab and SE 450/451: Software Team Project, comprise thetwo halves of a single year-long capstone course provided by the Department of Computer andSoftware Engineering. There is typically a significantly higher number of software engineeringstudents versus computer engineering students. The course also invites participants from otherdepartments such as human factors in order to encourage a multidisciplinary
assistant, he developed autonomous ground vehicles for operation in Greenland and Antarctica. Page 22.1653.1 c American Society for Engineering Education, 2011 Using Vertically Integrated Project Teams: Inspiring Student Interest in Computing CareersAbstractThis paper reports on a project, InspireCT, which is focused on undergraduate computingeducation. The central tenet of the project is that computing education will benefit by engagingstudents in hands-on, team-based projects much earlier in their education. The excitement ofstudent teams working on capstone
softwareproducts. When used in an academic setting it provides the opportunity to introduce and practiceproject management skills involving planning, estimation, tracking and identifying opportunitiesfor continuous process improvement. As the ideal number of team members on a Scrum projectis 5-9 developers, Scrum maps well from a size perspective for the typical student teamcollaborating on a course or capstone project. While Scrum has specific project roles andceremonies, it is intentionally non-prescriptive on the development practices to be used in theexecution of the project. In a software development project these practices are realized in thefamiliar software engineering life-cycles activities of requirements-analysis-design-code-test-deploy. In an
Page 13.105.10platform. The author is considering redoing the project in fall 2008 and treating the currentproduct as an extensive prototype. The question would again arise of whether or not it should bebuilt upon an existing framework such as Software Process Dashboard.AcknowledgementThe author would like to acknowledge the students in the software engineering capstone projectcourses that worked on the tool: Tim Bauman, Bryan Boyer, Aaron Carlson, Nate Edwards, WillFritz, Kyle Heins, Chris Herrick, Dennis Kalinowski, Gavin Kinsley, Nick Klauer, ScottMessner, Simon Polkowske, Bill Pyne, Dallas Ramsden, Eric Rice, Andy Schaumberg, KyleStangel, Chris Treml, Nate Weiss, and Aaron Westerdale.References[1] Clifton, J (2006), “Software Engineering
where a key aspect of the education we provide may prove irrelevant inthe near future? This paper studies the issue of outsourcing in the software engineeringeducational environment as a required component of a software engineering project.The first aspect presented is the outsourcing of a capstone project for the Bachelor of Science inSoftware Engineering Technology program to a developer or development team in an emergingeconomy. An operational process is presented showing how this was done to bring outsourcingas a viable activity for student projects. The second aspect examines application of the developedframework for outsourcing as a key component of developing large scale software systems. Thejunior project sequence is used as a test
c American Society for Engineering Education, 2013 Industry Involvement in an Undergraduate Software Engineering Project Course: Everybody WinsThe “Software Engineering Project” (SE 4485) is a one-semester capstone course in our undergraduateSoftware Engineering curriculum at the University of Texas at Dallas (hereafter, simply referred to asUTD). It is intended to complement the theoretical knowledge that students receive in their prior (andongoing) courses and provide them with an in-depth, hands-on experience in all aspects of softwareengineering. They are expected to walk-through the various phases of a software development life-cyclesuch as
AC 2012-3117: A STUDY OF INDIVIDUAL LEARNING IN SOFTWAREENGINEERING TEAM PROJECTSDr. Colin J. Neill, Pennsylvania State University Colin J. Neill is Associate Professor of software and systems engineering at Penn State University’s School of Graduate Professional Studies, where he is the Director Engineering Programs. Neill has devel- oped and taught more than a dozen courses in support of the graduate programs in software engineering, systems engineering, engineering management, and information science in topics including software sys- tems design, system architecture, project management, and systems thinking. He has published more than 70 articles in refereed journals and conference proceedings, including Systems
in computer science education, (2011), pp. 268-272.24. Stroulia, E., Bauer, K., Craig, M., Reid, K., and Wilson, G., “Teaching distributed software engineering withUCOSP: the undergraduate capstone open-source project,” Proceedings of the 2011 Community Building Workshopon Collaborative Teaching of Globally Distributed Software Development, (2011), pp. 20-25.25. Ellis, H.J.C., Morelli, R.A., de Lanerolle, T.R., Damon, J., and Raye, J., “Can Humanitarian Open-SourceSoftware Development Draw New Students to CS?” SIGCSE 2007, Technical Symposium on Computer ScienceEducation, (March 2007), pp. 551-555.26. Ellis, H.J.C., Morelli, R.A., and de Lanerolle, T., “Holistic Software Engineering Education Based on an OpenSource Project,” 20th Annual
varied user community, which demonstrates the role and value of communicationand supporting tools, such as discussion forums, version control, and task or defect trackingsystems. Third, students may already be familiar with FOSS as users.Faculty can help students by using a five step “USABL” model in which students use FOSSprojects, study the project as a worked example, add minor enhancements, build largercomponents, and finally leverage FOSS for other purposes. This paper describes experiencesusing FOSS and this approach across a computer science (CS) curriculum and particularly in asophomore-level SE course and in capstone software projects. First, it briefly reviews SE courseand project design, and FOSS. Second, it describes the five step
influences students’ subsequent submission of assessable work”, Assessment & Evaluation in Higher Education vol. 32, no. 5, pp. 571-581.6. Trotter, E. (2006) “Student perceptions of continuous summative assessment”, Assessment & Evaluation in Higher Education, vol. 31, no. 5, pp. 505-521.7. Gary, K. “The Benefits of Transparency in Managing Software Engineering Capstone Projects”, proceedings of the National Conference of the American Society for Engineering Education (ASEE 2010), Louisville, KY, June 2010.8. Gary, K. “The Software Enterprise: Practicing Best Practices in Software Engineering Education”, The International Journal of Engineering Education Special Issue on Trends in Software Engineering Education, Volume 24
a wide variety of courses including data structures, computer architecture and organization, software development, and the senior capstone project. His re- search interests include communication and critical thinking skills in computer science education, and the impact of technology on work/home boundary management. He received his Ph.D. from Polytechnic University in Brooklyn, NY. c American Society for Engineering Education, 2016 Evaluating the Collaboration between a Software Project Management Course and a Software Development Course in Terms of Student Learning and ExperienceAbstractThe ability to manage software teams and the ability to productively
covered in each course of the sequence.The Software Enterprise combines the presentation and practice of software engineeringconcepts with project activity. Instead of gaining exposure to software engineering disciplineareas in separate courses and then applying them in a later semester in a capstone course, thesequence provides the initial exposure to concepts, follows it with in-depth problem solving, andasks students to apply the knowledge immediately in an ongoing, significantly challengingproject. We elaborate on this approach in the next section. Page 11.1331.2 Course 1 Course 2 Course 3
through the life cycle they better realized what they can and what they cannot deliver. • They thought that they are better prepared to join the work force. • Number of students point to some of the issues associated with the personality conflicts between the team members. The mentors (PI, assigned staff, the two SMEs, and the two graduate students), were pleasantly surprised by what the interns were able to accomplish duding this nine weeks. The level and complexity of the project given to the team was almost close to what is assigned at the capstone project for students pursuing bachelor degree in computing field.REFERENCES[1] Degrees of Protection Provided by Enclosures (IP Code), IEC Standard 60529, 2004.[2] A. Cockburn
than simply use agame for the term project of a software engineering course, as some authors have suggested.1, 6, 11Real software engineering involves acquiring application domain knowledge in order tounderstand the client’s needs. Adding game topics to crowded software engineering courses, assome authors have suggested,2, 6 requires sacrificing important software engineering topics.Focusing on one application area in the first software engineering class is not fair to all students.Not every software engineering student wants to become a game developer. The author believesthat the capstone design course should not be the only opportunity for students to managecomplex software development projects. This suggests the use of elective courses as a
Table 1. Participating InstitutionsInstitution A is a small, private liberal arts college with approximately 1,500 undergraduatestudents. The department of mathematics and computer science has approximately 25 CS majors,and the CS major is designed to offer students hands-on experience on real-world projects whileproviding a grounding in theoretical ideas. The course used in the survey is a senior-levelsoftware engineering capstone course that used OpenMRS as a project base. Students addressedbug reports to learn the system and then designed and implemented a new add-on module.Institution B is a public liberal arts university serving approximately 6,100 undergraduatestudents and 800 graduate students. Founded in 1980, the Computer Science
intended to foster discussion within the software engineeringcommunity about developing and maintaining shared curriculum resources on an on-going basis.The paper approaches this topic by summarizing the experience of the SWENET project increating shared curriculum materials for software engineering. SWENET, The NetworkCommunity for Software Engineering Education, was an NSF funded project to developcurriculum modules for faculty members wanting to incorporate software engineering conceptsin new or existing courses. The paper discusses the project results, focusing on lessons learned.Although the benefit of sharing course materials is obvious, the practice is not particularly widespread in higher education. Reasons for this low level of sharing
havecollected over the years. In addition, we have built in opportunities for students to specify,design, and assess the quality of their own work.The merged requirements and architecture course leads into a two-semester capstone seniorproject. This senior project engages students and external sponsors in an end-to-end,requirements-to-delivery project. Requirements engineering and architecture design are centralto this team-based senior project, and the merged requirements and architecture course givesstudents the system-wide problem-space/solution-space mindset necessary to succeed in theirsenior projects.Course StructureThe merged requirements and architecture course is designed with three main threads that occurin parallel, as Figure 1 shows. We use
computer science foundations and programming skills, but also avariety of competencies having to do with design, the preparation of software-relateddocumentation, and soft skills relating to effective teamwork. In many traditionally structuredcomputer science programs, the acquisition of these software engineering skills is localized invery few points in the already dense computer science curriculum: most commonly in anintroductory software engineering course that precedes a final, senior year capstone course.This curricular structure presents educators with two significant challenges: First, it makes thestudy and application of software engineering skills overly focused within the context of isolated,discrete courses. While understandably driven
mastered after the baseline preparation is achieved.GSwE2009 strongly recommends that students demonstrate their accumulated skills andknowledge in a capstone experience, which might be a project, a practicum, or a thesis. Students Page 23.1074.3completing the curriculum must be able to understand and appreciate the importance ofteamwork, negotiation, effective work habits, leadership, and good communication withstakeholders in a typical software development environment. Figure 1: Architectural Structure of a GSwE2009 Master’s Program GSwE2009 Core Body of KnowledgeThe GSwE2009 curriculum content consists primarily of the
do bythe time of graduation.”3 Many are done in our year-long senior capstone project courses, SE4330 and SE 4730. In some cases, such as assessments for outcome A (Foundation), the studentsin the capstone courses are told that they will have an in-class assessment, but are not told whatthe assessment would be. They are told that the assessment will count as a small percentage oftheir grade, enough so that they take it seriously but not enough that they openly complain. Theyare also made aware of how important the assessment is to ABET accreditation.An example of a direct measurement that was used for B.2.b is the following question from theSE 4330 exam in fall 2007: An alternative project we discussed was to build a system for
1 2 Design and Architecture of Large Software Systems 1 1 Software Testing 3 1 Low Level Design Software 2 1 Software Process Management 1 2 Formal Methods in Software Engineering 1 Software Engineering Capstone Project 3 23.4. Coverage of SEEK Knowledge Areas [note 10]For
economics of systems. Similar to computer science, a specialtopics course is also available. Ethics in engineering is also included to emphasize theimportance of ethics in the engineering of complex software systems.The curriculum includes a 3-credit hour capstone design and implementation project. The projectis a group project requiring that students work in teams to address the systems and softwareengineering aspects of the project. Page 25.1346.6 Table 1: MSSE degree program with systems and software engineering focus CORE COURSES (12 Hours) CS 5373 Software Modeling and Architecture. This course introduces the theory
Assignment 13-1: Project related exercise - Executing Test Cases. Assignment 13-2: Project Progress Update. (email) Assignment 14-1: Project related exercise – Preparing Test Report. Page 25.500.11 W14 Assignment 14-2: Project Progress Update (email) W15 Assignment 15-1: Project Final PresentationOther CoverageIn their senior year besides the three electives of their choice the students are required to take acourse on distributed systems and an interdisciplinary capstone course. Students are required touse their knowledge and experiences in software verification when they work on softwareprojects in these
what is learned in courses and applying these softwareengineering processes within the context of real software development projects. The key issue asdocumented by previous studies is how to capture both the conceptual ideas of softwareengineering processes while at the same time (or in following semesters) implementing theseconcepts successfully within software development projects. Typically, the processes are taughtin one course with minimal implementation within a project; at the same time, softwaredevelopment courses emphasize the development with little to no formal utilization of processes.This is not a criticism of faculty; it is simply a very difficult task to cover both the processes andimplementation in a cohesive manner. Covering
which are required or semi-required. • Capstone practicums and projects are frequently required. While most programs offer a thesis option, students generally preferred the practicum or project.Developing the CurriculumIn the first meeting of the EST in August 2007, the team heard presentations on the SWEBOK,the Software Engineering Undergraduate Curriculum SE2004, SEIs 1991 Report on GraduateSwE Education, and the INCOSE Systems Engineering Graduate Curriculum Framework7 . Fromthese presentations and the initial results of the survey of existing graduate programs, the teamagreed to an outline for the curriculum document (Shown in Figure 2) and established four teamsto develop the main parts of the document – Guidance and
seamless integration of the codedeveloped by different groups. Additionally, user testing of prototype implementations adds asense of real development to the project. Since simple graph theory topics are an important aspectof a computer science education, the project also gives an opportunity for the students to presenttheir tool at local and regional computer science meetings that encourage student participation.1 IntroductionMany computer science programs include some type of capstone course in the senior year as a wayto challenge their students to apply all of the knowledge they have gained on a substantial project.However, there are typically not many opportunities in the second and third year of these programsto introduce students to a team
Requirements and Interdisciplinary WorkAbstractThe author discusses an interdisciplinary approach to helping students learn to write a systemrequirements specification (SRS). This approach has been refined during use over the last threeyears and involves students in the first quarter of their junior year. Software engineeringstudents enrolled in a required requirements course act as the requirements team over an eight-week period while biomedical engineering students who are ready to begin the requirementsphase of their capstone design project act as clients. Each of the requirements and client teamsconsists of four to six members. The experience was documented in ASEE conference papers inOctober of 20041 and June of 20052.Benefits of the process and